From 298af1f8f0f3cad186aab9804fbc2fe97621ca30 Mon Sep 17 00:00:00 2001
From: Shaun Struwig <41984034+Blargian@users.noreply.github.com>
Date: Thu, 21 May 2026 11:18:45 +0200
Subject: [PATCH 1/2] Composable navigation and more QA fixes
---
.../migrate-docusaurus-to-mintlify/SKILL.md | 24 +-
AGENTS.md | 7 +-
_migration/README.md | 26 +
{scripts => _migration}/apply-slug-aliases.py | 10 +-
{scripts => _migration}/find_dup_imports.py | 2 +-
_migration/find_orphans.py | 106 +
{scripts => _migration}/generate-slug-map.py | 6 +-
{scripts => _migration}/match_slugless.py | 0
{scripts => _migration}/migrate.py | 136 +-
{scripts => _migration}/slug-aliases.csv | 1280 ++--
slug-map.csv => _migration/slug-map.csv | 2444 +++----
.../suggest-slug-aliases.py | 12 +-
{scripts => _migration}/verify_mapping.py | 0
_site/customizations/README.md | 17 +
.../customizations/ask-ai-button.js | 0
.../customizations/cookie-banner.js | 0
.../customizations/custom-footer.js | 0
.../customizations/kapa-init.js | 0
.../customizations/navbar-cta.js | 0
favicon.svg => _site/favicon.svg | 0
{logo => _site/logo}/dark.svg | 0
{logo => _site/logo}/light.svg | 0
_site/redirects.json | 2682 ++++++++
.../scripts}/update_quickstarts.py | 0
.../scripts}/update_release_notes.py | 0
styles.css => _site/styles.css | 5 +-
.../styles}/.markdownlint-cli2.yaml | 0
{styles => _site/styles}/.vale.ini | 0
.../headings_have_custom_anchors.js | 0
.../custom_rules/utility_functions.js | 0
.../styles}/vale/ClickHouse/Ability.yml | 0
.../vale/ClickHouse/BackTicksFormats.yml | 0
.../vale/ClickHouse/BackTicksFunctions.yml | 0
.../ClickHouse/BackTicksServerSettings.yml | 0
.../ClickHouse/BackTicksSessionSettings.yml | 0
.../vale/ClickHouse/BackTicksTableEngines.yml | 0
.../ClickHouse/BackTicksTableFunctions.yml | 0
.../styles}/vale/ClickHouse/BadPlurals.yml | 0
.../styles}/vale/ClickHouse/British.yml | 0
.../vale/ClickHouse/CodeblockFences.yml | 0
.../styles}/vale/ClickHouse/Colons.yml | 0
.../styles}/vale/ClickHouse/Contractions.yml | 0
.../styles}/vale/ClickHouse/CurrentStatus.yml | 0
.../styles}/vale/ClickHouse/EOLWhitespace.yml | 0
.../styles}/vale/ClickHouse/Exclamation.yml | 0
.../styles}/vale/ClickHouse/FutureTense.yml | 0
.../vale/ClickHouse/HeadingPunctuation.yml | 0
.../styles}/vale/ClickHouse/Headings.yml | 0
.../styles}/vale/ClickHouse/Ordinal.yml | 0
.../styles}/vale/ClickHouse/OxfordComma.yml | 0
.../styles}/vale/ClickHouse/Quotes.yml | 0
.../styles}/vale/ClickHouse/Repetition.yml | 0
.../vale/ClickHouse/SentenceLength.yml | 0
.../styles}/vale/ClickHouse/Units.yml | 0
.../styles}/vale/ClickHouse/Uppercase.yml | 0
.../styles}/vale/ClickHouse/Wordy.yml | 0
concepts/advanced-guides/index.mdx | 23 -
.../settings/query-complexity.mdx | 115 -
.../features/performance/caches/caches.mdx | 36 -
.../external-authenticators/index.mdx | 20 -
.../features/tools-and-utilities/index.mdx | 21 -
core/README.md | 18 +
core/concepts/README.md | 19 +
.../best-practices/avoid-mutations.mdx | 0
.../best-practices/avoid-optimize-final.mdx | 0
.../best-practices/avoidnullablecolumns.mdx | 0
.../best-practices/choosing-a-primary-key.mdx | 10 +-
.../concepts}/best-practices/index.mdx | 0
.../concepts}/best-practices/json-type.mdx | 16 +-
.../minimize-optimize-joins.mdx | 14 +-
.../best-practices/partitioning-keys.mdx | 16 +-
.../best-practices/select-data-type.mdx | 6 +-
.../selecting-an-insert-strategy.mdx | 22 +-
.../best-practices/use-materialized-views.mdx | 8 +-
.../using-data-skipping-indices.mdx | 14 +-
.../core-concepts/academic-overview.mdx | 0
.../concepts}/core-concepts/glossary.mdx | 2 +-
.../concepts}/core-concepts/index.mdx | 6 +-
.../concepts}/core-concepts/merges.mdx | 40 +-
.../concepts}/core-concepts/partitions.mdx | 40 +-
.../concepts}/core-concepts/parts.mdx | 18 +-
.../core-concepts/primary-indexes.mdx | 20 +-
.../core-concepts/query-parallelism.mdx | 28 +-
.../backup-restore/alternative-methods.mdx | 4 +-
.../backup-restore/azure-blob-storage.mdx | 0
.../features/backup-restore/local-disk.mdx | 0
.../features/backup-restore/overview.mdx | 22 +-
.../features/backup-restore/s3-endpoint.mdx | 2 +-
.../features/backup-restore/snapshot.mdx | 16 +-
.../server-config/composable-protocols.mdx | 2 +-
.../server-config/configuration-files.mdx | 4 +-
.../server-config/named-collections.mdx | 16 +-
.../configuration/server-config/quotas.mdx | 4 +-
.../server-config/startup-scripts.mdx | 0
.../server-config/storing-data.mdx | 34 +-
.../server-config/workload-scheduling.mdx | 38 +-
.../settings/alternative-query-languages.mdx | 2 +-
.../settings/constraints-on-settings.mdx | 4 +-
.../settings/memory-overcommit.mdx | 0
.../configuration/settings/overview.mdx | 10 +-
.../settings/permissions-for-queries.mdx | 4 +-
.../settings/query-complexity.mdx | 115 +
.../settings/server-overload.mdx | 0
.../settings/settings-profiles.mdx | 2 +-
.../settings/settings-query-level.mdx | 10 +-
.../configuration/settings/settings-users.mdx | 10 +-
.../settings/tcp-connection-limits.mdx | 2 +-
.../features/dictionaries/best-practices.mdx | 6 +-
.../concepts}/features/dictionaries/index.mdx | 24 +-
.../concepts}/features/index.mdx | 20 +-
.../features/interfaces}/arrowflight.mdx | 6 +-
.../concepts/features/interfaces}/cli.mdx | 0
.../concepts/features/interfaces}/client.mdx | 20 +-
.../concepts/features/interfaces}/cpp.mdx | 0
.../concepts/features/interfaces}/grpc.mdx | 4 +-
.../concepts/features/interfaces}/http.mdx | 34 +-
.../concepts/features/interfaces}/jdbc.mdx | 0
.../concepts/features/interfaces}/mysql.mdx | 14 +-
.../native-clients-interfaces-index.mdx | 18 +
.../concepts/features/interfaces}/odbc.mdx | 6 +-
.../features/interfaces}/overview.mdx | 14 +-
.../features/interfaces}/postgresql.mdx | 2 +-
.../features/interfaces}/prometheus.mdx | 28 +-
.../features/interfaces}/schema-inference.mdx | 244 +-
.../concepts/features/interfaces}/ssh.mdx | 0
core/concepts/features/interfaces/tcp.mdx | 9 +
.../interfaces}/third-party/index.mdx | 2 +-
.../features/interfaces}/web-terminal.mdx | 2 +-
.../cascading-materialized-views.mdx | 2 +-
.../incremental-materialized-view.mdx | 30 +-
.../features/materialized-views/index.mdx | 4 +-
.../refreshable-materialized-view.mdx | 16 +-
.../operations/delete/delete-mutations.mdx | 2 +-
.../operations/delete/drop-partition.mdx | 4 +-
.../features/operations/delete/index.mdx | 18 +
.../operations/delete/lightweight-delete.mdx | 2 +-
.../features}/operations/delete/overview.mdx | 20 +-
.../features}/operations/delete/truncate.mdx | 0
.../features}/operations/delete/ttl.mdx | 4 +-
.../operations/insert/asyncinserts.mdx | 0
.../operations/insert/bulkinserts.mdx | 0
.../deduplicating-inserts-on-retries.mdx | 12 +-
.../operations/insert/deduplication.mdx | 4 +-
.../operations/insert}/inserting-data.mdx | 32 +-
.../operations/insert/transactions.mdx | 4 +-
.../operations/select/joining-tables.mdx | 8 +-
.../features}/operations/update/index.mdx | 4 +-
.../operations/update/on-fly-mutations.mdx | 2 +-
.../features}/operations/update/overview.mdx | 42 +-
.../update/replacing-merge-tree.mdx | 8 +-
.../performance/allocation-profiling-old.mdx | 6 +-
.../performance/allocation-profiling.mdx | 8 +-
.../features/performance/caches/caches.mdx | 36 +
.../performance/caches/query-cache.mdx | 84 +-
.../caches/query-condition-cache.mdx | 14 +-
.../caches/userspace-page-cache.mdx | 6 +-
core/concepts/features/performance/index.mdx | 33 +
.../performance/lazy-materialization.mdx | 12 +-
.../features/performance/prewhere.mdx | 8 +-
.../skipping-indexes-examples.mdx | 40 +-
.../skip-indexes/skipping-indexes.mdx | 16 +-
.../troubleshoot/debugging-memory-issues.mdx | 2 +-
.../troubleshoot/performance-test.mdx | 0
.../troubleshoot/sampling-query-profiler.mdx | 20 +-
.../materialized-views-versus-projections.mdx | 2 +-
.../features/projections/projections.mdx | 18 +-
.../features/security/access-rights.mdx | 82 +-
.../features/security/configuring-ldap.mdx | 6 +-
.../security/external-authenticators/http.mdx | 2 +-
.../external-authenticators/index.mdx | 20 +
.../external-authenticators/kerberos.mdx | 2 +-
.../security/external-authenticators/ldap.mdx | 6 +-
.../external-authenticators/ssl-x509.mdx | 4 +-
core/concepts/features/security/index.mdx | 25 +
.../features/security/network-ports.mdx | 4 +-
.../features/security/ssl-user-auth.mdx | 10 +-
.../tls/configuring-tls-acme-client.mdx | 2 +-
.../features/security/tls/configuring-tls.mdx | 6 +-
.../concepts}/features/security/tls/index.mdx | 6 +-
.../tools-and-utilities/backupview.mdx | 2 +-
.../clickhouse-benchmark.mdx | 2 +-
.../clickhouse-compressor.mdx | 0
.../tools-and-utilities/clickhouse-disks.mdx | 2 +-
.../tools-and-utilities/clickhouse-format.mdx | 0
.../clickhouse-keeper-client.mdx | 0
.../clickhouse-keeper-http-api.mdx | 0
.../tools-and-utilities/clickhouse-local.mdx | 14 +-
.../clickhouse-obfuscator.mdx | 0
.../features/tools-and-utilities/index.mdx | 21 +
.../tools-and-utilities/odbc-bridge.mdx | 0
.../static-files-disk-uploader.mdx | 2 +-
{concepts => core/concepts}/index.mdx | 8 +-
core/concepts/navigation.json | 278 +
core/get-started/README.md | 20 +
.../get-started}/about/deployment-modes.mdx | 4 +-
.../about/distinctive-features.mdx | 16 +-
.../get-started}/about/intro.mdx | 14 +-
.../get-started}/about/olap.mdx | 4 +-
.../about/why-clickhouse-is-so-fast.mdx | 34 +-
core/get-started/navigation.json | 201 +
.../_academy-ctas/_academy_cta_generic.mdx | 0
.../_prerequisites/cloud_prerequisite.mdx | 3 +
.../build-etl-pipeline-using-clickhouse.mdx | 4 +-
.../connect-your-iceberg-catalog.mdx | 8 +-
.../create-your-first-materialized-view.mdx | 22 +-
.../create-your-first-mergetree-table.mdx | 18 +-
.../create-your-first-projection.mdx | 24 +-
.../create-your-first-service-on-cloud.mdx | 12 +-
.../quickstarts}/creating-tables.mdx | 4 +-
.../get-started}/quickstarts/home.mdx | 47 +-
.../insert-data-using-clickhouse-client.mdx | 22 +-
.../get-started/quickstarts}/mutations.mdx | 12 +-
.../obtain-your-cloud-connection-details.mdx | 20 +-
.../get-started}/quickstarts/tutorial.mdx | 12 +-
.../quickstarts/working-with-the-map-type.mdx | 18 +-
.../quickstarts}/writing-queries.mdx | 8 +-
.../sample-datasets/amazon-reviews.mdx | 4 +-
.../sample-datasets/amplab-benchmark.mdx | 0
.../anon-web-analytics-metrica.mdx | 2 +-
.../sample-datasets/brown-benchmark.mdx | 0
.../sample-datasets/cell-towers.mdx | 4 +-
.../get-started}/sample-datasets/covid19.mdx | 0
.../get-started}/sample-datasets/criteo.mdx | 0
.../get-started}/sample-datasets/dbpedia.mdx | 4 +-
.../sample-datasets/environmental-sensors.mdx | 0
.../sample-datasets/foursquare-os-places.mdx | 2 +-
.../sample-datasets/github-events.mdx | 0
.../get-started}/sample-datasets/github.mdx | 2 +-
.../hacker-news-vector-search.mdx | 8 +-
.../sample-datasets/hacker-news.mdx | 14 +-
core/get-started/sample-datasets/index.mdx | 58 +
.../get-started}/sample-datasets/laion.mdx | 6 +-
.../get-started}/sample-datasets/laion5b.mdx | 8 +-
.../get-started}/sample-datasets/menus.mdx | 10 +-
.../get-started}/sample-datasets/noaa.mdx | 2 +-
.../get-started}/sample-datasets/nyc-taxi.mdx | 2 +-
.../sample-datasets/nypd-complaint-data.mdx | 12 +-
.../get-started}/sample-datasets/ontime.mdx | 0
.../sample-datasets/playground.mdx | 4 +-
.../sample-datasets/stackoverflow.mdx | 0
.../sample-datasets/star-schema.mdx | 2 +-
.../get-started}/sample-datasets/tpcds.mdx | 2 +-
.../get-started}/sample-datasets/tpch.mdx | 0
.../sample-datasets/tw-weather.mdx | 0
.../sample-datasets/uk-price-paid.mdx | 8 +-
.../get-started}/sample-datasets/wikistat.mdx | 0
.../sample-datasets/youtube-dislikes.mdx | 8 +-
.../get-started}/setup/cloud.mdx | 34 +-
core/get-started/setup/install.mdx | 57 +
.../setup/migration-guides/bigquery/index.mdx | 15 +
.../bigquery/loading-data.mdx | 10 +-
.../migrating-to-clickhouse-cloud.mdx | 46 +-
.../migration-guides/bigquery/overview.mdx | 84 +-
.../migration-guides/elastic/overview.mdx | 0
.../oss-to-cloud/clickhouse-to-cloud.mdx | 2 +-
.../other-methods/clickhouse-local-etl.mdx | 8 +-
.../other-methods/etl-tool-to-clickhouse.mdx | 0
.../object-storage-to-clickhouse.mdx | 10 +-
.../setup/migration-guides/overview.mdx | 31 +
.../migration-guides/postgres/appendix.mdx | 74 +-
.../setup/migration-guides/postgres/index.mdx | 16 +
.../migration-guide/migration-guide-part1.mdx | 18 +-
.../migration-guide/migration-guide-part2.mdx | 6 +-
.../migration-guide/migration-guide-part3.mdx | 34 +-
.../migration-guides/postgres/overview.mdx | 6 +-
.../redshift/migration-guide.mdx | 0
.../migration-guides/redshift/overview.mdx | 0
.../redshift/sql-translation-reference.mdx | 40 +-
.../snowflake/migration-guide.mdx | 6 +-
.../migration-guides/snowflake/overview.mdx | 6 +-
.../snowflake/sql-translation-reference.mdx | 44 +-
.../setup/self-managed/advanced.mdx | 2 +-
.../setup/self-managed/debian-ubuntu.mdx | 0
.../setup/self-managed/docker.mdx | 0
.../get-started}/setup/self-managed/macos.mdx | 0
.../get-started}/setup/self-managed/nixos.mdx | 0
.../setup/self-managed/other-linux.mdx | 0
.../setup/self-managed/overview.mdx | 18 +-
.../setup/self-managed/quick-install.mdx | 54 +-
.../setup/self-managed/redhat.mdx | 0
.../setup/self-managed/windows.mdx | 0
.../use-cases/data-warehousing.mdx | 14 +-
.../agent-facing-analytics.mdx | 0
.../machine-learning.mdx | 6 +-
.../get-started}/use-cases/observability.mdx | 0
.../get-started}/use-cases/overview.mdx | 8 +-
.../use-cases/real-time-analytics.mdx | 0
core/guides/README.md | 21 +
.../data-formats/arrow-avro-orc.mdx | 28 +-
.../clickhouse}/data-formats/binary.mdx | 34 +-
.../clickhouse}/data-formats/csv-tsv.mdx | 46 +-
.../guides/clickhouse}/data-formats/intro.mdx | 10 +-
.../data-formats/json/exporting.mdx | 16 +-
.../clickhouse}/data-formats/json/formats.mdx | 34 +-
.../data-formats/json/inference.mdx | 30 +-
.../clickhouse/data-formats/json/intro.mdx | 29 +
.../clickhouse}/data-formats/json/loading.mdx | 20 +-
.../clickhouse}/data-formats/json/other.mdx | 20 +-
.../clickhouse}/data-formats/json/schema.mdx | 36 +-
.../clickhouse}/data-formats/parquet.mdx | 24 +-
.../guides/clickhouse}/data-formats/sql.mdx | 22 +-
.../data-formats/templates-regex.mdx | 24 +-
.../data-modelling/backfilling.mdx | 32 +-
.../compression/compression-in-clickhouse.mdx | 8 +-
.../compression/compression-modes.mdx | 6 +-
.../data-modelling/denormalization.mdx | 8 +-
.../data-modelling}/generating-test-data.mdx | 6 +-
.../clickhouse/data-modelling/index.mdx | 18 +
.../data-modelling/merge-table-function.mdx | 8 +-
.../data-modelling/schema-design.mdx | 16 +-
.../data-modelling/sparse-primary-indexes.mdx | 80 +-
...red-procedures-and-prepared-statements.mdx | 28 +-
.../aggregate-function-combinators/anyIf.mdx | 6 +-
.../argMaxIf.mdx | 10 +-
.../argMinIf.mdx | 10 +-
.../aggregate-function-combinators/avgIf.mdx | 6 +-
.../aggregate-function-combinators/avgMap.mdx | 6 +-
.../avgMerge.mdx | 12 +-
.../avgMergeState.mdx | 12 +-
.../avgResample.mdx | 8 +-
.../avgState.mdx | 8 +-
.../countIf.mdx | 6 +-
.../countResample.mdx | 8 +-
.../groupArrayDistinct.mdx | 8 +-
.../groupArrayResample.mdx | 8 +-
.../aggregate-function-combinators/maxMap.mdx | 6 +-
.../maxSimpleState.mdx | 24 +
.../aggregate-function-combinators/minMap.mdx | 6 +-
.../minSimpleState.mdx | 10 +-
.../quantilesTimingArrayIf.mdx | 8 +-
.../quantilesTimingIf.mdx | 6 +-
.../sumArray.mdx | 12 +-
.../sumForEach.mdx | 8 +-
.../aggregate-function-combinators/sumIf.mdx | 6 +-
.../aggregate-function-combinators/sumMap.mdx | 6 +-
.../sumSimpleState.mdx | 10 +-
.../uniqArray.mdx | 12 +-
.../uniqArrayIf.mdx | 8 +-
core/guides/clickhouse/index.mdx | 34 +
.../performance-and-monitoring/analyzer.mdx | 2 +-
.../dynamic-column-selection.mdx | 12 +-
.../query-optimization.mdx | 28 +-
...ding-query-execution-with-the-analyzer.mdx | 4 +-
.../clickhouse}/working-with-arrays.mdx | 32 +-
.../guides/clickhouse}/working-with-joins.mdx | 14 +-
core/guides/navigation.json | 271 +
.../sizing-and-hardware-recommendations.mdx | 8 +-
.../guides}/oss/best-practices/tips.mdx | 2 +-
.../cluster-discovery.mdx | 2 +-
.../examples/1-shard-2-replicas.mdx | 10 +-
.../examples/2-shards-1-replica.mdx | 14 +-
.../examples/2-shards-2-replicas.mdx | 14 +-
.../oss/deployment-and-scaling/index.mdx | 8 +-
.../deployment-and-scaling/keeper/index.mdx | 16 +-
.../keeper/ssl-zookeeper.mdx | 0
.../monitoring/monitoring.mdx | 10 +-
.../monitoring/opentelemetry.mdx | 16 +-
.../scaling-clusters.mdx | 6 +-
.../separation-storage-compute.mdx | 4 +-
.../oss/deployment-and-scaling/shards.mdx | 16 +-
.../deployment-and-scaling/terminology.mdx | 0
{guides => core/guides}/oss/update.mdx | 0
.../ai-ml/MCP/ai-agent-libraries/agno.mdx | 0
.../ai-ml/MCP/ai-agent-libraries/chainlit.mdx | 0
.../ai-agent-libraries/claude-agent-sdk.mdx | 0
.../MCP/ai-agent-libraries/copilotkit.mdx | 0
.../ai-ml/MCP/ai-agent-libraries/crewai.mdx | 0
.../ai-ml/MCP/ai-agent-libraries/dspy.mdx | 0
.../ai-ml/MCP/ai-agent-libraries/index.mdx | 28 +
.../MCP/ai-agent-libraries/langchain.mdx | 0
.../MCP/ai-agent-libraries/llamaindex.mdx | 0
.../MCP/ai-agent-libraries/mcp-agent.mdx | 0
.../microsoft-agent-framework.mdx | 0
.../MCP/ai-agent-libraries/openai-agents.mdx | 0
.../MCP/ai-agent-libraries/pydantic-ai.mdx | 0
.../ai-ml/MCP/ai-agent-libraries/slackbot.mdx | 0
.../MCP/ai-agent-libraries/streamlit.mdx | 0
.../ai-ml/MCP/ai-agent-libraries/upsonic.mdx | 0
.../use-cases}/ai-ml/MCP/anythingllm.mdx | 2 +-
.../use-cases}/ai-ml/MCP/claude-desktop.mdx | 0
.../guides/use-cases}/ai-ml/MCP/index.mdx | 42 +-
.../guides/use-cases}/ai-ml/MCP/janai.mdx | 0
.../guides/use-cases}/ai-ml/MCP/librechat.mdx | 2 +-
.../guides/use-cases}/ai-ml/MCP/ollama.mdx | 0
.../use-cases}/ai-ml/MCP/open-webui.mdx | 0
.../ai-ml/ai-powered-sql-generation.mdx | 6 +-
.../data-exploration/jupyter-notebook.mdx | 2 +-
.../data-exploration/marimo-notebook.mdx | 4 +-
core/guides/use-cases/ai-ml/index.mdx | 19 +
.../guides/use-cases}/ai-ml/vector-search.mdx | 4 +-
.../data-warehousing/biglake-catalog.mdx | 2 +-
.../accelerating-analytics.mdx | 18 +-
.../getting-started/connecting-catalogs.mdx | 16 +-
.../getting-started/overview.mdx | 32 +-
.../getting-started/querying-directly.mdx | 38 +-
.../getting-started/writing-data.mdx | 4 +-
.../data-warehousing/glue-catalog.mdx | 0
.../use-cases/data-warehousing/index.mdx | 62 +
.../data-warehousing/lakekeeper-catalog.mdx | 0
.../data-warehousing/nessie-catalog.mdx | 0
.../data-warehousing/onelake-catalog.mdx | 0
.../data-warehousing/polaris-catalog.mdx | 0
.../data-warehousing/reference/index.mdx | 18 +
.../data-warehousing/rest-catalog.mdx | 0
.../data-warehousing/support-matrix.mdx | 175 +
.../data-warehousing/unity-catalog.mdx | 0
core/guides/use-cases/index.mdx | 24 +
.../build-your-own/demo-application.mdx | 0
.../observability/build-your-own/grafana.mdx | 4 +-
.../observability/build-your-own/index.mdx | 18 +
.../integrating-opentelemetry.mdx | 32 +-
.../build-your-own/introduction.mdx | 2 +-
.../build-your-own/managing-data.mdx | 28 +-
.../build-your-own/schema-design.mdx | 94 +-
.../observability/cloud-monitoring.mdx | 2 +-
.../guides/use-cases}/observability/index.mdx | 14 +-
.../observability/self-managed-monitoring.mdx | 0
.../time-series/analysis-functions.mdx | 4 +-
.../time-series/basic-operations.mdx | 14 +-
.../time-series/date-time-data-types.mdx | 18 +-
.../real-time-analytics/time-series/index.mdx | 10 +-
.../time-series/materialized-view-rollup.mdx | 2 +-
.../time-series/query-performance.mdx | 4 +-
.../time-series/storage-efficiency.mdx | 0
.../time-series/time-series-filling-gaps.mdx | 2 +-
core/reference/README.md | 22 +
.../data-types/aggregatefunction.mdx | 20 +-
.../reference}/data-types/array.mdx | 4 +-
.../reference}/data-types/boolean.mdx | 0
.../data-types/data-types-binary-encoding.mdx | 2 +-
.../reference}/data-types/date.mdx | 6 +-
.../reference}/data-types/date32.mdx | 8 +-
.../reference}/data-types/datetime.mdx | 28 +-
.../reference}/data-types/datetime64.mdx | 20 +-
.../reference}/data-types/decimal.mdx | 4 +-
.../reference}/data-types/domains/index.mdx | 0
.../reference}/data-types/dynamic.mdx | 0
.../reference}/data-types/enum.mdx | 4 +-
.../reference}/data-types/fixedstring.mdx | 4 +-
.../reference}/data-types/float.mdx | 6 +-
.../reference}/data-types/geo.mdx | 12 +-
.../reference}/data-types/index.mdx | 4 +-
.../reference}/data-types/int-uint.mdx | 0
.../reference}/data-types/ipv4.mdx | 2 +-
.../reference}/data-types/ipv6.mdx | 2 +-
.../reference}/data-types/lowcardinality.mdx | 18 +-
.../reference}/data-types/map.mdx | 14 +-
.../nested-data-structures/index.mdx | 4 +-
.../reference}/data-types/newjson.mdx | 96 +-
.../reference}/data-types/nullable.mdx | 10 +-
.../reference}/data-types/qbit.mdx | 4 +-
.../data-types/simpleaggregatefunction.mdx | 40 +-
.../special-data-types/expression.mdx | 0
.../data-types/special-data-types/index.mdx | 0
.../special-data-types/interval.mdx | 8 +-
.../data-types/special-data-types/nothing.mdx | 2 +-
.../data-types/special-data-types/set.mdx | 2 +-
.../reference}/data-types/string.mdx | 2 +-
.../reference}/data-types/time.mdx | 22 +-
.../reference}/data-types/time64.mdx | 26 +-
.../reference}/data-types/tuple.mdx | 6 +-
.../reference}/data-types/uuid.mdx | 6 +-
.../reference}/data-types/variant.mdx | 0
core/reference/datalakes.mdx | 42 +
.../engines/database-engines/atomic.mdx | 16 +-
.../engines/database-engines/backup.mdx | 4 +-
.../engines/database-engines/datalake.mdx | 4 +-
.../engines/database-engines/index.mdx | 34 +
.../materialized-postgresql.mdx | 4 +-
.../engines/database-engines/mysql.mdx | 34 +-
.../engines/database-engines/postgresql.mdx | 26 +-
.../engines/database-engines/replicated.mdx | 18 +-
.../engines/database-engines/shared.mdx | 0
.../engines/database-engines/sqlite.mdx | 32 +-
.../reference}/engines/engines.mdx | 4 +-
.../reference/engines/table-engines/index.mdx | 112 +
.../integrations/ExternalDistributed.mdx | 12 +-
.../integrations/arrowflight.mdx | 2 +-
.../integrations/azure-queue.mdx | 12 +-
.../integrations/azureBlobStorage.mdx | 12 +-
.../table-engines/integrations/deltalake.mdx | 6 +-
.../integrations/embedded-rocksdb.mdx | 4 +-
.../table-engines/integrations/hdfs.mdx | 18 +-
.../table-engines/integrations/hive.mdx | 2 +-
.../table-engines/integrations/hudi.mdx | 4 +-
.../table-engines/integrations/iceberg.mdx | 8 +-
.../table-engines/integrations/index.mdx | 47 +
.../table-engines/integrations/jdbc.mdx | 6 +-
.../table-engines/integrations/kafka.mdx | 24 +-
.../integrations/materialized-postgresql.mdx | 8 +-
.../table-engines/integrations/mongodb.mdx | 2 +-
.../table-engines/integrations/mysql.mdx | 14 +-
.../table-engines/integrations/nats.mdx | 12 +-
.../table-engines/integrations/odbc.mdx | 14 +-
.../table-engines/integrations/paimon.mdx | 2 +-
.../table-engines/integrations/postgresql.mdx | 16 +-
.../table-engines/integrations/rabbitmq.mdx | 16 +-
.../table-engines/integrations/redis.mdx | 4 +-
.../engines/table-engines/integrations/s3.mdx | 26 +-
.../table-engines/integrations/s3queue.mdx | 14 +-
.../table-engines/integrations/sqlite.mdx | 22 +-
.../integrations/time-series.mdx | 22 +-
.../table-engines/integrations/ytsaurus.mdx | 4 +-
.../table-engines/log-family/index.mdx | 10 +-
.../engines/table-engines/log-family/log.mdx | 6 +-
.../table-engines/log-family/stripelog.mdx | 6 +-
.../table-engines/log-family/tinylog.mdx | 6 +-
.../mergetree-family/aggregatingmergetree.mdx | 18 +-
.../mergetree-family/annindexes.mdx | 70 +-
.../mergetree-family/coalescingmergetree.mdx | 8 +-
.../mergetree-family/collapsingmergetree.mdx | 20 +-
.../custom-partitioning-key.mdx | 20 +-
.../mergetree-family/graphitemergetree.mdx | 10 +-
.../table-engines/mergetree-family/index.mdx | 41 +
.../mergetree-family/invertedindexes.mdx | 84 +-
.../mergetree-family/mergetree.mdx | 180 +-
.../mergetree-family/replacingmergetree.mdx | 10 +-
.../mergetree-family/replication.mdx | 32 +-
.../mergetree-family/summingmergetree.mdx | 12 +-
.../mergetree-family/textindexes.mdx | 132 +-
.../versionedcollapsingmergetree.mdx | 10 +-
.../engines/table-engines/special/alias.mdx | 2 +-
.../engines/table-engines/special/buffer.mdx | 2 +-
.../table-engines/special/dictionary.mdx | 6 +-
.../table-engines/special/distributed.mdx | 42 +-
.../table-engines/special/executable.mdx | 2 +-
.../table-engines/special/external-data.mdx | 0
.../engines/table-engines/special/file.mdx | 24 +-
.../engines/table-engines/special/filelog.mdx | 8 +-
.../table-engines/special/generate.mdx | 2 +-
.../engines/table-engines/special/index.mdx | 44 +
.../engines/table-engines/special/join.mdx | 26 +-
.../table-engines/special/keepermap.mdx | 0
.../engines/table-engines/special/memory.mdx | 2 +-
.../engines/table-engines/special/merge.mdx | 8 +-
.../engines/table-engines/special/null.mdx | 0
.../engines/table-engines/special/set.mdx | 2 +-
.../engines/table-engines/special/url.mdx | 14 +-
.../engines/table-engines/special/view.mdx | 0
.../reference}/formats/Arrow/Arrow.mdx | 58 +-
.../reference}/formats/Arrow/ArrowStream.mdx | 0
.../reference}/formats/Avro/Avro.mdx | 10 +-
.../reference}/formats/Avro/AvroConfluent.mdx | 6 +-
.../Avro/_snippets/data-types-matching.mdx | 39 +
.../reference}/formats/BSONEachRow.mdx | 86 +-
.../reference}/formats/Buffers.mdx | 6 +-
core/reference/formats/CSV/CSV.mdx | 71 +
.../reference}/formats/CSV/CSVWithNames.mdx | 6 +-
.../formats/CSV/CSVWithNamesAndTypes.mdx | 8 +-
.../reference}/formats/CapnProto.mdx | 54 +-
.../CustomSeparated/CustomSeparated.mdx | 22 +-
.../CustomSeparatedIgnoreSpaces.mdx | 0
.../CustomSeparatedIgnoreSpacesWithNames.mdx | 0
...SeparatedIgnoreSpacesWithNamesAndTypes.mdx | 0
.../CustomSeparatedWithNames.mdx | 6 +-
.../CustomSeparatedWithNamesAndTypes.mdx | 8 +-
.../reference}/formats/DWARF.mdx | 0
.../reference}/formats/Form.mdx | 0
.../reference}/formats/Hash.mdx | 0
.../reference}/formats/HiveText.mdx | 0
.../reference}/formats/JSON/JSON.mdx | 10 +-
.../reference}/formats/JSON/JSONAsObject.mdx | 4 +-
.../reference}/formats/JSON/JSONAsString.mdx | 6 +-
.../reference}/formats/JSON/JSONColumns.mdx | 4 +-
.../formats/JSON/JSONColumnsWithMetadata.mdx | 4 +-
.../reference}/formats/JSON/JSONCompact.mdx | 2 +-
.../formats/JSON/JSONCompactColumns.mdx | 2 +-
.../formats/JSON/JSONCompactEachRow.mdx | 2 +-
.../JSON/JSONCompactEachRowWithNames.mdx | 6 +-
.../JSONCompactEachRowWithNamesAndTypes.mdx | 8 +-
.../JSON/JSONCompactEachRowWithProgress.mdx | 0
.../formats/JSON/JSONCompactStrings.mdx | 2 +-
.../JSON/JSONCompactStringsEachRow.mdx | 2 +-
.../JSONCompactStringsEachRowWithNames.mdx | 6 +-
...CompactStringsEachRowWithNamesAndTypes.mdx | 8 +-
.../JSONCompactStringsEachRowWithProgress.mdx | 2 +-
.../reference}/formats/JSON/JSONEachRow.mdx | 2 +-
.../formats/JSON/JSONEachRowWithProgress.mdx | 2 +-
.../reference}/formats/JSON/JSONLines.mdx | 2 +-
.../formats/JSON/JSONObjectEachRow.mdx | 62 +-
.../reference}/formats/JSON/JSONStrings.mdx | 2 +-
.../formats/JSON/JSONStringsEachRow.mdx | 2 +-
.../JSON/JSONStringsEachRowWithProgress.mdx | 0
.../formats/JSON/PrettyJSONEachRow.mdx | 2 +-
.../formats/JSON/format-settings.mdx | 37 +
.../formats/LineAsString/LineAsString.mdx | 4 +-
.../LineAsString/LineAsStringWithNames.mdx | 2 +-
.../LineAsStringWithNamesAndTypes.mdx | 2 +-
.../reference}/formats/Markdown.mdx | 0
core/reference/formats/MsgPack.mdx | 60 +
.../reference}/formats/MySQLDump.mdx | 4 +-
.../reference}/formats/MySQLWire.mdx | 0
.../reference}/formats/Native.mdx | 18 +-
{reference => core/reference}/formats/Npy.mdx | 24 +-
.../reference}/formats/Null.mdx | 0
.../reference}/formats/ODBCDriver2.mdx | 0
{reference => core/reference}/formats/ORC.mdx | 52 +-
{reference => core/reference}/formats/One.mdx | 2 +-
.../reference}/formats/Parquet/Parquet.mdx | 64 +-
.../formats/Parquet/ParquetMetadata.mdx | 0
.../reference}/formats/PostgreSQLWire.mdx | 0
.../reference}/formats/Pretty/Pretty.mdx | 8 +-
.../formats/Pretty/PrettyCompact.mdx | 2 +-
.../formats/Pretty/PrettyCompactMonoBlock.mdx | 4 +-
.../formats/Pretty/PrettyCompactNoEscapes.mdx | 2 +-
.../PrettyCompactNoEscapesMonoBlock.mdx | 4 +-
.../formats/Pretty/PrettyMonoBlock.mdx | 4 +-
.../formats/Pretty/PrettyNoEscapes.mdx | 4 +-
.../Pretty/PrettyNoEscapesMonoBlock.mdx | 2 +-
.../reference}/formats/Pretty/PrettySpace.mdx | 2 +-
.../formats/Pretty/PrettySpaceMonoBlock.mdx | 4 +-
.../formats/Pretty/PrettySpaceNoEscapes.mdx | 2 +-
.../Pretty/PrettySpaceNoEscapesMonoBlock.mdx | 4 +-
.../common-pretty-format-settings.mdx | 14 +
.../reference}/formats/Prometheus.mdx | 8 +-
.../reference}/formats/Protobuf/Protobuf.mdx | 14 +-
.../formats/Protobuf/ProtobufList.mdx | 2 +-
.../formats/Protobuf/ProtobufSingle.mdx | 2 +-
.../reference}/formats/RawBLOB.mdx | 6 +-
.../reference}/formats/Regexp.mdx | 22 +-
.../formats/RowBinary/RowBinary.mdx | 14 +-
.../RowBinary/RowBinaryWithDefaults.mdx | 2 +-
.../formats/RowBinary/RowBinaryWithNames.mdx | 6 +-
.../RowBinary/RowBinaryWithNamesAndTypes.mdx | 8 +-
.../common-row-binary-format-settings.mdx | 11 +
.../reference}/formats/SQLInsert.mdx | 12 +-
.../reference}/formats/TabSeparated/TSKV.mdx | 10 +-
.../formats/TabSeparated/TabSeparated.mdx | 26 +-
.../formats/TabSeparated/TabSeparatedRaw.mdx | 4 +-
.../TabSeparated/TabSeparatedRawWithNames.mdx | 2 +-
.../TabSeparatedRawWithNamesAndTypes.mdx | 2 +-
.../TabSeparated/TabSeparatedWithNames.mdx | 6 +-
.../TabSeparatedWithNamesAndTypes.mdx | 8 +-
.../reference}/formats/Template/Template.mdx | 0
.../formats/Template/TemplateIgnoreSpaces.mdx | 2 +-
.../reference}/formats/Values.mdx | 10 +-
.../reference}/formats/Vertical.mdx | 2 +-
{reference => core/reference}/formats/XML.mdx | 0
core/reference/formats/index.mdx | 163 +
.../aggregate-functions/combinators.mdx | 14 +-
.../aggregate-functions/grouping_function.mdx | 2 +-
.../functions/aggregate-functions/index.mdx | 12 +-
.../parametric-functions.mdx | 42 +-
.../reference/aggThrow.mdx | 2 +-
.../reference/analysis_of_variance.mdx | 6 +-
.../aggregate-functions/reference/any.mdx | 4 +-
.../reference/anyHeavy.mdx | 4 +-
.../aggregate-functions/reference/anyLast.mdx | 6 +-
.../reference/approxtopk.mdx | 14 +-
.../reference/approxtopsum.mdx | 22 +-
.../reference/argAndMax.mdx | 16 +-
.../reference/argAndMin.mdx | 16 +-
.../aggregate-functions/reference/argMax.mdx | 8 +-
.../aggregate-functions/reference/argMin.mdx | 8 +-
.../aggregate-functions/reference/avg.mdx | 4 +-
.../reference/avgWeighted.mdx | 6 +-
.../reference/boundrat.mdx | 6 +-
.../reference/categoricalInformationValue.mdx | 6 +-
.../reference/contingency.mdx | 8 +-
.../aggregate-functions/reference/corr.mdx | 8 +-
.../reference/corrMatrix.mdx | 4 +-
.../reference/corrStable.mdx | 8 +-
.../aggregate-functions/reference/count.mdx | 20 +-
.../reference/covarPop.mdx | 8 +-
.../reference/covarPopMatrix.mdx | 4 +-
.../reference/covarPopStable.mdx | 8 +-
.../reference/covarSamp.mdx | 8 +-
.../reference/covarSampMatrix.mdx | 4 +-
.../reference/covarSampStable.mdx | 8 +-
.../reference/cramersV.mdx | 8 +-
.../reference/cramersVBiasCorrected.mdx | 8 +-
.../reference/deltaSum.mdx | 10 +-
.../reference/deltaSumTimestamp.mdx | 10 +-
.../reference/distinctDynamicTypes.mdx | 6 +-
.../reference/distinctJSONPaths.mdx | 6 +-
.../reference/distinctJSONPathsAndTypes.mdx | 6 +-
.../aggregate-functions/reference/entropy.mdx | 4 +-
.../reference/estimateCompressionRatio.mdx | 10 +-
.../reference/exponentialMovingAverage.mdx | 8 +-
.../reference/exponentialTimeDecayedAvg.mdx | 8 +-
.../reference/exponentialTimeDecayedCount.mdx | 6 +-
.../reference/exponentialTimeDecayedMax.mdx | 8 +-
.../reference/exponentialTimeDecayedSum.mdx | 8 +-
.../reference/first_value.mdx | 4 +-
.../reference/flame_graph.mdx | 8 +-
.../reference/groupArray.mdx | 6 +-
.../reference/groupArrayArray.mdx | 2 +-
.../reference/groupArrayInsertAt.mdx | 10 +-
.../reference/groupArrayIntersect.mdx | 4 +-
.../reference/groupArrayLast.mdx | 8 +-
.../reference/groupArrayMovingAvg.mdx | 6 +-
.../reference/groupArrayMovingSum.mdx | 6 +-
.../reference/groupArraySample.mdx | 10 +-
.../reference/groupArraySorted.mdx | 6 +-
.../reference/groupBitAnd.mdx | 4 +-
.../reference/groupBitOr.mdx | 4 +-
.../reference/groupBitXor.mdx | 4 +-
.../reference/groupBitmap.mdx | 6 +-
.../reference/groupBitmapAnd.mdx | 6 +-
.../reference/groupBitmapOr.mdx | 8 +-
.../reference/groupBitmapXor.mdx | 6 +-
.../reference/groupConcat.mdx | 10 +-
.../reference/groupUniqArray.mdx | 8 +-
.../aggregate-functions/reference/index.mdx | 166 +
.../reference/intervalLengthSum.mdx | 6 +-
.../reference/kolmogorovSmirnovTest.mdx | 10 +-
.../aggregate-functions/reference/kurtPop.mdx | 4 +-
.../reference/kurtSamp.mdx | 4 +-
.../reference/largestTriangleThreeBuckets.mdx | 8 +-
.../reference/last_value.mdx | 2 +-
.../reference/mannWhitneyUTest.mdx | 10 +-
.../aggregate-functions/reference/max.mdx | 4 +-
.../reference/maxIntersections.mdx | 6 +-
.../reference/maxIntersectionsPosition.mdx | 8 +-
.../aggregate-functions/reference/maxMap.mdx | 6 +-
.../reference/meanZTest.mdx | 12 +-
.../aggregate-functions/reference/median.mdx | 45 +
.../aggregate-functions/reference/min.mdx | 4 +-
.../aggregate-functions/reference/minMap.mdx | 6 +-
.../reference/quantile.mdx | 14 +-
.../reference/quantileBFloat16.mdx | 10 +-
.../reference/quantileDeterministic.mdx | 16 +-
.../reference/quantileExact.mdx | 12 +-
.../reference/quantileExactExclusive.mdx | 12 +-
.../reference/quantileExactHigh.mdx | 10 +-
.../reference/quantileExactInclusive.mdx | 12 +-
.../reference/quantileExactLow.mdx | 10 +-
.../reference/quantileExactWeighted.mdx | 16 +-
.../quantileExactWeightedInterpolated.mdx | 14 +-
.../reference/quantileGK.mdx | 12 +-
.../quantileInterpolatedWeighted.mdx | 14 +-
.../reference/quantilePrometheusHistogram.mdx | 16 +-
.../reference/quantileTDigest.mdx | 14 +-
.../reference/quantileTDigestWeighted.mdx | 18 +-
.../reference/quantileTiming.mdx | 16 +-
.../reference/quantileTimingWeighted.mdx | 14 +-
.../reference/quantileddsketch.mdx | 12 +-
.../reference/quantiles.mdx | 6 +-
.../reference/quantilesExactExclusive.mdx | 8 +-
.../reference/quantilesExactInclusive.mdx | 8 +-
.../reference/quantilesGK.mdx | 10 +-
.../reference/quantilesTimingWeighted.mdx | 16 +-
.../reference/rankCorr.mdx | 6 +-
.../reference/simpleLinearRegression.mdx | 6 +-
.../reference/singleValueOrNull.mdx | 4 +-
.../aggregate-functions/reference/skewPop.mdx | 4 +-
.../reference/skewSamp.mdx | 4 +-
.../reference/sparkbar.mdx | 12 +-
.../reference/stddevPop.mdx | 8 +-
.../reference/stddevPopStable.mdx | 6 +-
.../reference/stddevSamp.mdx | 8 +-
.../reference/stddevSampStable.mdx | 6 +-
.../reference/stochasticLinearRegression.mdx | 16 +-
.../stochasticLogisticRegression.mdx | 18 +-
.../reference/studentTTest.mdx | 12 +-
.../reference/studentTTestOneSample.mdx | 12 +-
.../aggregate-functions/reference/sum.mdx | 4 +-
.../reference/sumCount.mdx | 8 +-
.../reference/sumKahan.mdx | 8 +-
.../aggregate-functions/reference/sumMap.mdx | 10 +-
.../reference/sumMapWithOverflow.mdx | 10 +-
.../reference/sumWithOverflow.mdx | 4 +-
.../aggregate-functions/reference/theilsU.mdx | 6 +-
.../reference/timeSeriesChangesToGrid.mdx | 0
.../reference/timeSeriesDeltaToGrid.mdx | 14 +-
.../reference/timeSeriesDerivToGrid.mdx | 0
.../reference/timeSeriesGroupArray.mdx | 6 +-
.../timeSeriesInstantDeltaToGrid.mdx | 14 +-
.../reference/timeSeriesInstantRateToGrid.mdx | 14 +-
.../reference/timeSeriesLastTwoSamples.mdx | 6 +-
.../timeSeriesPredictLinearToGrid.mdx | 0
.../reference/timeSeriesRateToGrid.mdx | 14 +-
.../timeSeriesResampleToGridWithStaleness.mdx | 14 +-
.../reference/timeSeriesResetsToGrid.mdx | 0
.../aggregate-functions/reference/topK.mdx | 22 +-
.../reference/topKWeighted.mdx | 22 +-
.../aggregate-functions/reference/uniq.mdx | 14 +-
.../reference/uniqCombined.mdx | 18 +-
.../reference/uniqCombined64.mdx | 22 +-
.../reference/uniqExact.mdx | 14 +-
.../reference/uniqHLL12.mdx | 14 +-
.../reference/uniqthetasketch.mdx | 14 +-
.../aggregate-functions/reference/varPop.mdx | 6 +-
.../reference/varPopStable.mdx | 6 +-
.../aggregate-functions/reference/varSamp.mdx | 8 +-
.../reference/varSampStable.mdx | 8 +-
.../reference/welchTTest.mdx | 10 +-
core/reference/functions/index.mdx | 14 +
.../regular-functions/ai-functions.mdx | 52 +-
.../arithmetic-functions.mdx | 84 +-
.../regular-functions/array-functions.mdx | 546 +-
.../regular-functions/array-join.mdx | 8 +-
.../regular-functions/bit-functions.mdx | 72 +-
.../regular-functions/bitmap-functions.mdx | 84 +-
.../comparison-functions.mdx | 58 +-
.../conditional-functions.mdx | 20 +-
.../regular-functions/date-time-functions.mdx | 760 +-
.../regular-functions/distance-functions.mdx | 94 +-
.../embedded-dict-functions.mdx | 68 +-
.../regular-functions/encoding-functions.mdx | 92 +-
.../encryption-functions.mdx | 64 +-
.../regular-functions/ext-dict-functions.mdx | 288 +-
.../functions/regular-functions/files.mdx | 6 +-
.../regular-functions/financial-functions.mdx | 34 +-
.../regular-functions/functions-for-nulls.mdx | 46 +-
.../regular-functions/geo/coordinates.mdx | 8 +-
.../regular-functions/geo/flipCoordinates.mdx | 8 +-
.../regular-functions/geo/geohash.mdx | 22 +-
.../regular-functions/geo/geometry.mdx | 16 +-
.../functions/regular-functions/geo/h3.mdx | 226 +-
.../functions/regular-functions/geo/index.mdx | 9 +
.../regular-functions/geo/polygon.mdx | 16 +-
.../functions/regular-functions/geo/s2.mdx | 74 +-
.../functions/regular-functions/geo/svg.mdx | 6 +-
.../regular-functions/hash-functions.mdx | 396 +-
.../regular-functions/in-functions.mdx | 2 +-
.../regular-functions/introspection.mdx | 44 +-
.../ip-address-functions.mdx | 120 +-
.../regular-functions/json-functions.mdx | 288 +-
.../regular-functions/logical-functions.mdx | 22 +-
.../machine-learning-functions.mdx | 10 +-
.../regular-functions/math-functions.mdx | 186 +-
.../regular-functions/nlp-functions.mdx | 40 +-
.../numeric-indexed-vector-functions.mdx | 86 +-
.../regular-functions/other-functions.mdx | 590 +-
.../functions/regular-functions/overview.mdx | 4 +-
.../regular-functions/random-functions.mdx | 124 +-
.../regular-functions-index.mdx | 52 +
.../regular-functions/rounding-functions.mdx | 48 +-
.../splitting-merging-functions.mdx | 118 +-
.../regular-functions/string-functions.mdx | 526 +-
.../string-replace-functions.mdx | 86 +-
.../string-search-functions.mdx | 406 +-
.../time-series-functions.mdx | 172 +-
.../time-window-functions.mdx | 66 +-
.../regular-functions/tuple-functions.mdx | 124 +-
.../regular-functions/tuple-map-functions.mdx | 148 +-
.../type-conversion-functions.mdx | 1234 ++--
.../functions/regular-functions/udf.mdx | 16 +-
.../regular-functions/ulid-functions.mdx | 12 +-
.../regular-functions/uniqtheta-functions.mdx | 2 +-
.../regular-functions/url-functions.mdx | 166 +-
.../regular-functions/uuid-functions.mdx | 130 +-
.../functions/regular-functions/wasm_udf.mdx | 2 +-
.../functions/table-functions/arrowflight.mdx | 8 +-
.../table-functions/azureBlobStorage.mdx | 8 +-
.../azureBlobStorageCluster.mdx | 12 +-
.../functions/table-functions/cluster.mdx | 12 +-
.../functions/table-functions/deltalake.mdx | 4 +-
.../table-functions/deltalakeCluster.mdx | 8 +-
.../functions/table-functions/dictionary.mdx | 6 +-
.../functions/table-functions/executable.mdx | 4 +-
.../functions/table-functions/file.mdx | 24 +-
.../functions/table-functions/fileCluster.mdx | 10 +-
.../functions/table-functions/filesystem.mdx | 2 +-
.../functions/table-functions/format.mdx | 4 +-
.../functions/table-functions/fuzzJSON.mdx | 2 +-
.../functions/table-functions/fuzzQuery.mdx | 0
.../functions/table-functions/gcs.mdx | 14 +-
.../functions/table-functions/generate.mdx | 2 +-
.../table-functions/generate_series.mdx | 0
.../functions/table-functions/hdfs.mdx | 14 +-
.../functions/table-functions/hdfsCluster.mdx | 8 +-
.../functions/table-functions/hudi.mdx | 8 +-
.../functions/table-functions/hudiCluster.mdx | 10 +-
.../functions/table-functions/iceberg.mdx | 4 +-
.../table-functions/icebergCluster.mdx | 8 +-
.../functions/table-functions/index.mdx | 149 +
.../functions/table-functions/input.mdx | 2 +-
.../functions/table-functions/jdbc.mdx | 0
.../functions/table-functions/loop.mdx | 0
.../functions/table-functions/merge.mdx | 6 +-
.../table-functions/mergeTreeIndex.mdx | 0
.../table-functions/mergeTreeProjection.mdx | 0
.../table-functions/mergeTreeTextIndex.mdx | 0
.../functions/table-functions/mongodb.mdx | 4 +-
.../functions/table-functions/mysql.mdx | 18 +-
.../functions/table-functions/null.mdx | 6 +-
.../functions/table-functions/numbers.mdx | 4 +-
.../functions/table-functions/odbc.mdx | 6 +-
.../functions/table-functions/paimon.mdx | 2 +-
.../table-functions/paimonCluster.mdx | 6 +-
.../functions/table-functions/postgresql.mdx | 8 +-
.../functions/table-functions/primes.mdx | 2 +-
.../table-functions/prometheusQuery.mdx | 0
.../table-functions/prometheusQueryRange.mdx | 0
.../functions/table-functions/redis.mdx | 6 +-
.../functions/table-functions/remote.mdx | 22 +-
.../functions/table-functions/s3.mdx | 22 +-
.../functions/table-functions/s3Cluster.mdx | 18 +-
.../functions/table-functions/sqlite.mdx | 10 +-
.../table-functions/timeSeriesData.mdx | 4 +-
.../table-functions/timeSeriesMetrics.mdx | 4 +-
.../table-functions/timeSeriesSelector.mdx | 0
.../table-functions/timeSeriesTags.mdx | 4 +-
.../functions/table-functions/url.mdx | 26 +-
.../functions/table-functions/urlCluster.mdx | 16 +-
.../functions/table-functions/values.mdx | 6 +-
.../functions/table-functions/view.mdx | 6 +-
.../functions/table-functions/ytsaurus.mdx | 6 +-
.../functions/table-functions/zeros.mdx | 0
.../functions/window-functions/cume_dist.mdx | 4 +-
.../functions/window-functions/dense_rank.mdx | 6 +-
.../window-functions/first_value.mdx | 4 +-
.../functions/window-functions/index.mdx | 16 +-
.../functions/window-functions/lag.mdx | 6 +-
.../functions/window-functions/lagInFrame.mdx | 4 +-
.../functions/window-functions/last_value.mdx | 4 +-
.../functions/window-functions/lead.mdx | 6 +-
.../window-functions/leadInFrame.mdx | 4 +-
.../functions/window-functions/nth_value.mdx | 2 +-
.../window-functions/percent_rank.mdx | 2 +-
.../functions/window-functions/rank.mdx | 6 +-
.../functions/window-functions/row_number.mdx | 4 +-
core/reference/home.mdx | 35 +
core/reference/navigation.json | 1099 +++
.../reference}/operators/distributed-ddl.mdx | 0
.../reference}/operators/exists.mdx | 2 +-
.../reference}/operators/index.mdx | 40 +-
.../beta-and-experimental-features.mdx | 184 +
.../reference}/settings/formats.mdx | 102 +-
core/reference/settings/index.mdx | 32 +
.../settings/merge-tree-settings.mdx | 66 +-
.../_server_settings_outside_source.mdx | 142 +-
.../_snippets/_system-log-parameters.mdx | 10 +-
.../settings/server-settings/settings.mdx | 258 +-
.../reference}/settings/session-settings.mdx | 526 +-
.../statements/alter/apply-deleted-mask.mdx | 22 +
.../statements/alter/apply-patches.mdx | 12 +-
.../reference}/statements/alter/column.mdx | 30 +-
.../reference}/statements/alter/comment.mdx | 6 +-
.../statements/alter/constraint.mdx | 2 +-
.../statements/alter/database-comment.mdx | 6 +-
.../reference}/statements/alter/delete.mdx | 12 +-
.../reference}/statements/alter/index.mdx | 50 +-
.../statements/alter/masking-policy.mdx | 0
.../statements/alter/named-collection.mdx | 0
.../reference}/statements/alter/order-by.mdx | 4 +-
.../reference}/statements/alter/partition.mdx | 24 +-
.../statements/alter/projection.mdx | 22 +-
.../reference}/statements/alter/quota.mdx | 6 +-
.../reference}/statements/alter/role.mdx | 0
.../statements/alter/row-policy.mdx | 0
.../reference}/statements/alter/sample-by.mdx | 6 +-
.../reference}/statements/alter/setting.mdx | 4 +-
.../statements/alter/settings-profile.mdx | 0
.../statements/alter/skipping-index.mdx | 8 +-
.../statements/alter/statistics.mdx | 4 +-
.../reference}/statements/alter/ttl.mdx | 8 +-
.../reference}/statements/alter/update.mdx | 14 +-
.../reference}/statements/alter/user.mdx | 4 +-
.../reference}/statements/alter/view.mdx | 6 +-
.../reference}/statements/attach.mdx | 4 +-
.../reference}/statements/check-grant.mdx | 2 +-
.../reference}/statements/check-table.mdx | 10 +-
.../reference}/statements/create/database.mdx | 4 +-
.../statements/create/dictionary.mdx | 22 +-
.../create/dictionary/attributes.mdx | 10 +-
.../statements/create/dictionary/embedded.mdx | 0
.../create/dictionary/layouts/cache.mdx | 6 +-
.../create/dictionary/layouts/direct.mdx | 6 +-
.../create/dictionary/layouts/flat.mdx | 2 +-
.../dictionary/layouts/hashed-array.mdx | 4 +-
.../create/dictionary/layouts/hashed.mdx | 8 +-
.../dictionary/layouts/hierarchical.mdx | 4 +-
.../create/dictionary/layouts/ip-trie.mdx | 0
.../create/dictionary/layouts/overview.mdx | 157 +
.../create/dictionary/layouts/polygon.mdx | 4 +-
.../dictionary/layouts/range-hashed.mdx | 4 +-
.../create/dictionary/layouts/regexp-tree.mdx | 10 +-
.../create/dictionary/layouts/ssd-cache.mdx | 4 +-
.../statements/create/dictionary/lifetime.mdx | 6 +-
.../create/dictionary/sources/cassandra.mdx | 0
.../create/dictionary/sources/clickhouse.mdx | 4 +-
.../dictionary/sources/executable-file.mdx | 6 +-
.../dictionary/sources/executable-pool.mdx | 6 +-
.../create/dictionary/sources/http.mdx | 6 +-
.../create/dictionary/sources/local-file.mdx | 6 +-
.../create/dictionary/sources/mongodb.mdx | 2 +-
.../create/dictionary/sources/mysql.mdx | 2 +-
.../create/dictionary/sources/null.mdx | 0
.../create/dictionary/sources/odbc.mdx | 2 +-
.../create/dictionary/sources/overview.mdx | 32 +-
.../create/dictionary/sources/postgresql.mdx | 2 +-
.../create/dictionary/sources/redis.mdx | 0
.../dictionary/sources/yamlregexptree.mdx | 10 +-
.../create/dictionary/sources/ytsaurus.mdx | 2 +-
.../reference}/statements/create/function.mdx | 4 +-
core/reference/statements/create/index.mdx | 9 +
.../statements/create/masking-policy.mdx | 0
.../statements/create/named-collection.mdx | 6 +-
.../reference}/statements/create/quota.mdx | 10 +-
.../reference}/statements/create/role.mdx | 10 +-
.../statements/create/row-policy.mdx | 4 +-
.../statements/create/settings-profile.mdx | 4 +-
.../reference}/statements/create/table.mdx | 36 +-
.../reference}/statements/create/user.mdx | 10 +-
.../reference}/statements/create/view.mdx | 38 +-
.../reference}/statements/delete.mdx | 14 +-
.../reference}/statements/describe-table.mdx | 18 +-
.../reference}/statements/detach.mdx | 8 +-
.../reference}/statements/distributed-ddl.mdx | 0
.../reference}/statements/drop.mdx | 4 +-
.../reference}/statements/exchange.mdx | 6 +-
.../reference}/statements/execute_as.mdx | 4 +-
.../reference}/statements/exists.mdx | 0
.../reference}/statements/explain.mdx | 8 +-
.../reference}/statements/grant.mdx | 44 +-
.../reference}/statements/in.mdx | 18 +-
core/reference/statements/index.mdx | 9 +
.../reference}/statements/insert-into.mdx | 42 +-
.../reference}/statements/kill.mdx | 4 +-
.../reference}/statements/move.mdx | 0
.../reference}/statements/optimize.mdx | 22 +-
.../reference}/statements/parallel_with.mdx | 4 +-
.../reference}/statements/rename.mdx | 4 +-
.../reference}/statements/revoke.mdx | 2 +-
.../reference}/statements/select/all.mdx | 0
.../statements/select/apply_modifier.mdx | 0
.../statements/select/array-join.mdx | 14 +-
.../reference}/statements/select/distinct.mdx | 6 +-
.../reference}/statements/select/except.mdx | 4 +-
.../statements/select/except_modifier.mdx | 0
.../reference}/statements/select/format.mdx | 4 +-
.../reference}/statements/select/from.mdx | 16 +-
.../reference}/statements/select/group-by.mdx | 30 +-
.../reference}/statements/select/having.mdx | 2 +-
.../reference}/statements/select/index.mdx | 54 +-
.../statements/select/intersect.mdx | 4 +-
.../statements/select/into-outfile.mdx | 6 +-
.../reference}/statements/select/join.mdx | 44 +-
.../reference}/statements/select/limit-by.mdx | 10 +-
.../reference}/statements/select/limit.mdx | 10 +-
.../reference}/statements/select/offset.mdx | 6 +-
.../reference}/statements/select/order-by.mdx | 38 +-
.../reference}/statements/select/prewhere.mdx | 8 +-
.../reference}/statements/select/qualify.mdx | 2 +-
.../statements/select/replace_modifier.mdx | 2 +-
.../reference}/statements/select/sample.mdx | 8 +-
.../reference}/statements/select/union.mdx | 8 +-
.../reference}/statements/select/where.mdx | 30 +-
.../reference}/statements/select/with.mdx | 8 +-
.../reference}/statements/set-role.mdx | 0
.../reference}/statements/set.mdx | 8 +-
.../reference}/statements/show.mdx | 80 +-
.../reference}/statements/system.mdx | 58 +-
.../reference}/statements/truncate.mdx | 14 +-
.../reference}/statements/undrop.mdx | 2 +-
.../reference}/statements/update.mdx | 26 +-
.../reference}/statements/use.mdx | 0
.../reference}/statements/watch.mdx | 0
{reference => core/reference}/syntax.mdx | 38 +-
.../aggregate_function_combinators.mdx | 4 +-
.../aggregated_zookeeper_log.mdx | 28 +-
.../system-tables/asynchronous_insert_log.mdx | 74 +
.../system-tables/asynchronous_inserts.mdx | 53 +
.../system-tables/asynchronous_loader.mdx | 44 +-
.../system-tables/asynchronous_metric_log.mdx | 16 +-
.../system-tables/asynchronous_metrics.mdx | 14 +-
.../system-tables/azure_queue_log.mdx | 34 +
.../azure_queue_metadata_cache.mdx | 24 +
.../system-tables/azure_queue_settings.mdx | 26 +
.../background_schedule_pool.mdx | 57 +
.../background_schedule_pool_log.mdx | 63 +
.../reference}/system-tables/backup_log.mdx | 40 +-
core/reference/system-tables/backups.mdx | 33 +
.../system-tables/blob_storage_log.mdx | 69 +
.../system-tables/build_options.mdx | 4 +-
core/reference/system-tables/certificates.mdx | 27 +
core/reference/system-tables/clusters.mdx | 93 +
.../reference}/system-tables/codecs.mdx | 16 +-
.../reference}/system-tables/collations.mdx | 4 +-
core/reference/system-tables/columns.mdx | 99 +
.../reference}/system-tables/completions.mdx | 6 +-
.../reference}/system-tables/contributors.mdx | 2 +-
core/reference/system-tables/crash_log.mdx | 67 +
.../system-tables/current_roles.mdx | 6 +-
.../reference}/system-tables/dashboards.mdx | 8 +-
.../system-tables/data_skipping_indices.mdx | 22 +-
.../system-tables/data_type_families.mdx | 10 +-
.../system-tables/database_engines.mdx | 2 +-
.../system-tables/database_replicas.mdx | 49 +
.../reference}/system-tables/databases.mdx | 16 +-
.../system-tables/dead_letter_queue.mdx | 44 +-
.../system-tables/delta_metadata_log.mdx | 16 +-
.../system-tables/detached_parts.mdx | 35 +
.../system-tables/detached_tables.mdx | 10 +-
core/reference/system-tables/dictionaries.mdx | 107 +
.../system-tables/dimensional_metrics.mdx | 16 +-
core/reference/system-tables/disks.mdx | 50 +
.../system-tables/distributed_ddl_queue.mdx | 32 +-
.../system-tables/distribution_queue.mdx | 51 +
.../reference}/system-tables/dns_cache.mdx | 16 +-
.../system-tables/dropped_tables.mdx | 14 +-
.../system-tables/dropped_tables_parts.mdx | 104 +
.../system-tables/enabled_roles.mdx | 8 +-
core/reference/system-tables/error_log.mdx | 60 +
.../reference}/system-tables/errors.mdx | 20 +-
.../reference}/system-tables/events.mdx | 14 +-
.../reference}/system-tables/fail_points.mdx | 6 +-
.../system-tables/filesystem_cache.mdx | 33 +
.../system-tables/filesystem_cache_log.mdx | 32 +
.../filesystem_cache_settings.mdx | 49 +
.../filesystem_read_prefetches_log.mdx | 33 +
core/reference/system-tables/formats.mdx | 29 +
core/reference/system-tables/functions.mdx | 50 +
.../reference}/system-tables/grants.mdx | 18 +-
.../system-tables/graphite_retentions.mdx | 27 +
.../system-tables/histogram_metric_log.mdx | 46 +
.../system-tables/histogram_metrics.mdx | 8 +-
.../system-tables/iceberg_history.mdx | 22 +
.../system-tables/iceberg_metadata_log.mdx | 30 +-
core/reference/system-tables/index.mdx | 180 +
.../system-tables/information_schema.mdx | 364 +
.../system-tables/instrumentation.mdx | 20 +-
.../system-tables/jemalloc_bins.mdx | 16 +-
.../system-tables/jemalloc_profile_text.mdx | 2 +-
.../system-tables/jemalloc_stats.mdx | 2 +-
.../system-tables/kafka_consumers.mdx | 74 +
.../reference}/system-tables/keywords.mdx | 2 +-
.../reference}/system-tables/licenses.mdx | 8 +-
.../reference}/system-tables/macros.mdx | 4 +-
.../system-tables/masking_policies.mdx | 32 +
.../system-tables/merge_tree_settings.mdx | 24 +-
core/reference/system-tables/merges.mdx | 45 +
core/reference/system-tables/metric_log.mdx | 1814 +++++
.../reference}/system-tables/metrics.mdx | 6 +-
.../reference}/system-tables/models.mdx | 8 +-
core/reference/system-tables/moves.mdx | 43 +
core/reference/system-tables/mutations.mdx | 87 +
.../system-tables/named_collections.mdx | 8 +-
.../reference}/system-tables/numbers.mdx | 0
.../reference}/system-tables/numbers_mt.mdx | 2 +-
.../reference}/system-tables/one.mdx | 0
.../system-tables/opentelemetry_span_log.mdx | 62 +
.../reference}/system-tables/overview.mdx | 14 +-
core/reference/system-tables/part_log.mdx | 105 +
.../part_moves_between_shards.mdx | 30 +
core/reference/system-tables/parts.mdx | 154 +
.../reference/system-tables/parts_columns.mdx | 127 +
.../predicate_statistics_log.mdx | 90 +
.../reference}/system-tables/primes.mdx | 2 +-
.../reference}/system-tables/privileges.mdx | 8 +-
core/reference/system-tables/processes.mdx | 107 +
.../system-tables/processors_profile_log.mdx | 95 +
.../system-tables/projection_parts.mdx | 76 +
.../projection_parts_columns.mdx | 64 +
.../reference}/system-tables/projections.mdx | 14 +-
core/reference/system-tables/query_cache.mdx | 51 +
.../system-tables/query_condition_cache.mdx | 8 +-
core/reference/system-tables/query_log.mdx | 237 +
.../system-tables/query_metric_log.mdx | 1316 ++++
.../system-tables/query_thread_log.mdx | 144 +
.../system-tables/query_views_log.mdx | 95 +
core/reference/system-tables/quota_limits.mdx | 32 +
core/reference/system-tables/quota_usage.mdx | 54 +
core/reference/system-tables/quotas.mdx | 28 +
core/reference/system-tables/quotas_usage.mdx | 54 +
.../system-tables/remote_data_paths.mdx | 22 +-
core/reference/system-tables/replicas.mdx | 105 +
.../system-tables/replicated_fetches.mdx | 68 +
.../replicated_merge_tree_settings.mdx | 24 +-
.../system-tables/replication_queue.mdx | 73 +
core/reference/system-tables/resources.mdx | 46 +
.../reference}/system-tables/rocksdb.mdx | 8 +-
core/reference/system-tables/role_grants.mdx | 22 +
core/reference/system-tables/roles.mdx | 23 +
core/reference/system-tables/row_policies.mdx | 32 +
.../system-tables/s3_queue_settings.mdx | 25 +
core/reference/system-tables/s3queue_log.mdx | 34 +
.../system-tables/s3queue_metadata_cache.mdx | 24 +
core/reference/system-tables/scheduler.mdx | 89 +
.../system-tables/schema_inference_cache.mdx | 18 +-
.../system-tables/server_settings.mdx | 24 +-
core/reference/system-tables/session_log.mdx | 76 +
.../reference}/system-tables/settings.mdx | 42 +-
.../system-tables/settings_changes.mdx | 10 +-
.../settings_profile_elements.mdx | 31 +
.../system-tables/settings_profiles.mdx | 27 +
.../reference}/system-tables/stack_trace.mdx | 20 +-
.../system-tables/storage_policies.mdx | 24 +-
.../reference}/system-tables/symbols.mdx | 6 +-
.../system-tables/system_warnings.mdx | 22 +-
.../system-tables/table_engines.mdx | 24 +-
.../system-tables/table_functions.mdx | 6 +-
core/reference/system-tables/tables.mdx | 131 +
core/reference/system-tables/text_log.mdx | 80 +
.../reference}/system-tables/time_zones.mdx | 2 +-
.../reference}/system-tables/tokenizers.mdx | 4 +-
.../reference}/system-tables/trace_log.mdx | 62 +-
core/reference/system-tables/transactions.mdx | 21 +
.../system-tables/transactions_info_log.mdx | 31 +
.../reference}/system-tables/unicode.mdx | 6 +-
.../system-tables/user_defined_functions.mdx | 80 +
.../system-tables/user_directories.mdx | 8 +-
.../system-tables/user_processes.mdx | 8 +-
core/reference/system-tables/users.mdx | 37 +
.../system-tables/view_refreshes.mdx | 54 +
.../reference}/system-tables/warnings.mdx | 4 +-
.../reference}/system-tables/workloads.mdx | 8 +-
.../reference}/system-tables/zeros.mdx | 2 +-
.../reference}/system-tables/zeros_mt.mdx | 2 +-
.../reference}/system-tables/zookeeper.mdx | 0
.../system-tables/zookeeper_connection.mdx | 28 +-
.../zookeeper_connection_log.mdx | 28 +-
.../system-tables/zookeeper_info.mdx | 58 +
.../reference/system-tables/zookeeper_log.mdx | 130 +
.../system-tables/zookeeper_watches.mdx | 18 +-
customize-layout.js | 89 -
docs.json | 6082 +----------------
.../_prerequisites/cloud_prerequisite.mdx | 3 -
get-started/sample-datasets/index.mdx | 58 -
.../setup/migration-guides/bigquery/index.mdx | 15 -
.../setup/migration-guides/overview.mdx | 31 -
.../setup/migration-guides/postgres/index.mdx | 16 -
get-started/setup/overview.mdx | 22 -
get-started/setup/self-managed/install.mdx | 45 -
.../setup/self-managed/quick-install.mdx | 83 -
guides/ai-ml/MCP/ai-agent-libraries/index.mdx | 28 -
guides/ai-ml/index.mdx | 19 -
guides/cloud-oss/data-modelling/index.mdx | 18 -
.../maxSimpleState.mdx | 24 -
guides/cloud/index.mdx | 24 -
guides/data-modelling/deleting-data/index.mdx | 18 -
guides/data-warehousing/index.mdx | 62 -
guides/data-warehousing/reference/index.mdx | 18 -
guides/data-warehousing/support-matrix.mdx | 175 -
guides/observability/build-your-own/index.mdx | 18 -
guides/performance-and-monitoring/index.mdx | 16 -
guides/security/index.mdx | 12 -
i18n/ja/index.mdx | 46 +-
i18n/ko/index.mdx | 46 +-
i18n/ru/index.mdx | 46 +-
i18n/zh/index.mdx | 46 +-
index.mdx | 69 +-
.../clickpipes/bigquery/get-started.mdx | 2 +-
integrations/clickpipes/home.mdx | 20 +-
.../clickpipes/kafka/best-practices.mdx | 2 +-
integrations/clickpipes/kafka/reference.mdx | 10 +-
integrations/clickpipes/kinesis/overview.mdx | 6 +-
integrations/clickpipes/mongodb/datatypes.mdx | 2 +-
integrations/clickpipes/mongodb/faq.mdx | 2 +-
integrations/clickpipes/mongodb/index.mdx | 2 +-
.../clickpipes/mongodb/quickstart.mdx | 12 +-
integrations/clickpipes/navigation.json | 187 +
.../object-storage/amazon-s3/overview.mdx | 22 +-
.../azure-blob-storage/overview.mdx | 22 +-
.../google-cloud-storage/overview.mdx | 22 +-
.../postgres/connecting-to-postgresql.mdx | 6 +-
.../clickpipes/postgres/deduplication.mdx | 14 +-
integrations/clickpipes/postgres/faq.mdx | 4 +-
integrations/clickpipes/postgres/index.mdx | 2 +-
.../clickpipes/postgres/inserting-data.mdx | 4 +-
.../clickpipes/postgres/maintenance.mdx | 18 -
.../clickpipes/postgres/ordering-keys.mdx | 4 +-
.../AWS/integrating-s3-with-clickhouse.mdx | 42 +-
.../data-ingestion/AWS/performance.mdx | 34 +-
.../templates/bigquery-to-clickhouse.mdx | 14 +-
.../connectors/data-ingestion/GCP/index.mdx | 614 --
.../data-ingestion/apache-flink.mdx | 16 +-
.../azure/azure-data-factory/overview.mdx | 4 +-
.../using-azureblobstorage.mdx | 14 +-
.../using-http-interface.mdx | 16 +-
.../data-formats/json/intro.mdx | 29 -
.../etl-tools/airbyte-and-clickhouse.mdx | 4 +-
.../data-ingestion/etl-tools/apache-beam.mdx | 2 +-
.../etl-tools/apify-and-clickhouse.mdx | 6 +-
.../dbt/features-and-configurations.mdx | 8 +-
.../data-ingestion/etl-tools/dbt/guides.mdx | 6 +-
.../data-ingestion/etl-tools/dbt/index.mdx | 18 +-
.../dbt/materialization-materialized-view.mdx | 4 +-
.../etl-tools/dbt/materializations.mdx | 30 +-
.../etl-tools/dlt-and-clickhouse.mdx | 2 +-
.../etl-tools/fivetran/reference.mdx | 38 +-
.../etl-tools/fivetran/troubleshooting.mdx | 12 +-
.../etl-tools/vector-to-clickhouse.mdx | 10 +-
.../data-ingestion/insert-local-files.mdx | 6 +-
.../data-ingestion/jdbc-with-clickhouse.mdx | 14 +-
.../kafka/confluent/kafka-connect-http.mdx | 6 +-
.../connectors/data-ingestion/kafka/index.mdx | 2 +-
.../kafka/kafka-clickhouse-connect-sink.mdx | 10 +-
.../kafka/kafka-connect-jdbc.mdx | 2 +-
.../kafka-table-engine-named-collections.mdx | 4 +-
.../kafka/kafka-table-engine.mdx | 24 +-
.../data-ingestion/kafka/kafka-vector.mdx | 2 +-
.../connectors/data-ingestion/mysql.mdx | 156 -
.../postgresql/connecting-to-postgresql.mdx | 345 -
.../postgresql/inserting-data.mdx | 16 -
.../redshift/_snippets/_migration_guide.mdx | 2 +-
.../native-clients-interfaces-index.mdx | 18 -
.../drivers-and-interfaces/tcp.mdx | 9 -
.../data-integrations/sql-clients/jupysql.mdx | 2 +-
.../sql-clients/sql-console.mdx | 372 -
.../connectors/data-sources/cassandra.mdx | 2 +-
integrations/connectors/data-sources/gcs.mdx | 8 +-
.../connectors/data-sources/index.mdx | 20 +-
.../connectors/data-sources/mysql.mdx | 4 +-
.../connectors/data-sources/postgres.mdx | 2 +-
.../chartbrew-and-clickhouse.mdx | 2 +-
.../community-integrations/deepnote.mdx | 2 +-
.../explo-and-clickhouse.mdx | 2 +-
.../mitzu-and-clickhouse.mdx | 2 +-
.../data-visualization/grafana/config.mdx | 2 +-
.../data-visualization/grafana/index.mdx | 4 +-
.../grafana/query-builder.mdx | 40 +-
.../metabase-and-clickhouse.mdx | 2 +-
.../powerbi-and-clickhouse.mdx | 2 +-
.../quicksight-and-clickhouse.mdx | 4 +-
.../splunk-and-clickhouse.mdx | 2 +-
.../superset-and-clickhouse.mdx | 2 +-
.../tableau/tableau-analysis-tips.mdx | 46 +-
.../tableau/tableau-connection-tips.mdx | 2 +-
integrations/connectors/navigation.json | 242 +
.../tools/pg_clickhouse/reference.mdx | 292 +-
.../tools/pg_clickhouse/tutorial.mdx | 8 +-
.../tools/third-party-libraries.mdx | 4 +-
.../language-clients/csharp/overview.mdx | 12 +-
.../language-clients/go/clickhouse-api.mdx | 14 +-
.../language-clients/go/data-types.mdx | 8 +-
.../language-clients/go/database-sql-api.mdx | 6 +-
integrations/language-clients/go/index.mdx | 2 +-
integrations/language-clients/java/client.mdx | 184 +-
.../language-clients/java/client/v7.mdx | 508 --
.../language-clients/java/client/v8.mdx | 662 --
.../language-clients/java/date-time-guide.mdx | 4 +-
integrations/language-clients/java/index.mdx | 2 +-
integrations/language-clients/java/jdbc.mdx | 10 +-
.../language-clients/java/jdbc/v7.mdx | 389 --
.../language-clients/java/jdbc/v8.mdx | 227 -
integrations/language-clients/js.mdx | 28 +-
integrations/language-clients/navigation.json | 83 +
.../python/advanced-querying.mdx | 8 +-
.../python/advanced-usage.mdx | 6 +-
.../language-clients/python/driver-api.mdx | 6 +-
integrations/language-clients/rust.mdx | 10 +-
products/README.md | 32 +
products/agentic-data-stack/navigation.json | 12 +
products/bring-your-own-cloud/navigation.json | 58 +
.../onboarding/azure-private-preview.mdx | 2 +-
.../reference/aws-service-limits.mdx | 2 +-
.../reference/billable-aws-services.mdx | 2 +-
.../reference/cost-model-aws.mdx | 2 +-
products/chdb/getting-started.mdx | 4 +-
products/chdb/guides/clickhouse-local.mdx | 4 +-
products/chdb/guides/querying-parquet.mdx | 4 +-
products/chdb/guides/querying-s3-bucket.mdx | 8 +-
products/chdb/index.mdx | 2 +-
products/chdb/navigation.json | 85 +
products/chdb/reference/data-formats.mdx | 2 +-
products/chdb/reference/sql-reference.mdx | 18 +-
.../management/howto-guides.mdx | 4 +-
.../management/operational-guide.mdx | 4 +-
products/clickhouse-private/navigation.json | 31 +
.../api-reference}/hyperdx-openapi.json | 0
.../deployment/_snippets/_json_support.mdx | 2 +-
.../deployment/hyperdx-clickhouse-cloud.mdx | 354 -
products/clickstack/deployment/index.mdx | 20 -
products/clickstack/deployment/managed.mdx | 12 +-
.../features/dashboards/overview.mdx | 4 +-
.../dashboards/sql-visualizations.mdx | 2 +-
.../clickstack/getting-started/managed.mdx | 2 +-
products/clickstack/home.mdx | 32 -
products/clickstack/index.mdx | 2 +-
.../clickstack/ingesting-data/collector.mdx | 12 +-
.../clickstack/ingesting-data/kubernetes.mdx | 305 -
.../ingesting-data/schema/map-vs-json.mdx | 8 +-
products/clickstack/ingesting-data/vector.mdx | 16 +-
.../integration-examples/cloudflare.mdx | 2 +-
products/clickstack/managing/admin.mdx | 2 +-
products/clickstack/{ => managing}/config.mdx | 8 +-
.../managing/materialized-views.mdx | 34 +-
.../{managing.mdx => managing/overview.mdx} | 2 +-
.../managing/performance-tuning.mdx | 56 +-
products/clickstack/managing/production.mdx | 22 +-
products/clickstack/{ => managing}/ttl.mdx | 8 +-
.../clickstack/migration/elastic/concepts.mdx | 46 +-
.../migration/elastic/migrating-data.mdx | 30 +-
.../clickstack/migration/elastic/search.mdx | 12 +-
.../clickstack/migration/elastic/types.mdx | 78 +-
products/clickstack/navigation.json | 227 +
.../clickstack/styles/clickstack-homepage.css | 485 --
products/clickstack/text-to-chart.mdx | 2 +-
products/cloud/.DS_Store | Bin 6148 -> 6148 bytes
.../cloud/api-reference}/cloud-openapi.json | 0
products/cloud/cloud/auto-scaling.mdx | 3 -
products/cloud/cloud/backups.mdx | 3 -
products/cloud/cloud/create-service.mdx | 3 -
products/cloud/cloud/security.mdx | 3 -
products/cloud/concepts-overview.mdx | 70 -
products/cloud/concepts.mdx | 17 -
.../features/admin-features/upgrades.mdx | 2 +-
.../aichat/customizing-semantic-layer.mdx | 0
.../features}/ai-ml/aichat/using-ai-chat.mdx | 0
products/cloud/features/ai-ml/ask-ai.mdx | 2 +-
.../cloud/features/ai-ml}/mcp/remote-mcp.mdx | 2 +-
products/cloud/features/ai-ml/remote-mcp.mdx | 6 +-
.../cloud/features/autoscaling/idling.mdx | 2 +-
products/cloud/features/cli.mdx | 2 +-
products/cloud/features/data-catalogs.mdx | 16 +-
.../infrastructure/deployment-options.mdx | 2 +-
.../infrastructure/parallel-replicas.mdx | 12 +-
.../features/infrastructure/warehouses.mdx | 4 +-
.../monitoring/advanced-dashboard.mdx | 4 +-
.../features/monitoring/notifications.mdx | 2 +-
.../features/monitoring/system-tables.mdx | 6 +-
.../sql-console-features/dashboards.mdx | 6 +-
.../user-defined-functions.mdx | 6 +-
.../getting-started/cloud-get-started.mdx | 4 +-
.../cloud/getting-started/resource-tour.mdx | 2 +-
.../backup-restore-using-commands.mdx | 2 +-
.../export-backups-to-own-cloud-account.mdx | 4 +-
.../backups/review-and-restore-backups.mdx | 2 +-
.../guides/best-practices/multitenancy.mdx | 8 +-
products/cloud/guides/cloud-compatibility.mdx | 6 +-
products/cloud/guides/data-sources/index.mdx | 2 +-
.../guides/data-sources/secure-azure.mdx | 4 +-
products/cloud/guides/index.mdx | 10 +-
.../deployment-options/byoc/architecture.mdx | 117 -
.../deployment-options/byoc/faq/aws.mdx | 51 -
.../byoc/observability/aws.mdx | 199 -
.../byoc/onboarding/aws.mdx | 244 -
.../deployment-options/byoc/overview.mdx | 4 +-
.../migration/oss-to-cloud-backup-restore.mdx | 8 +-
.../guides/migration/upload-a-csv-file.mdx | 2 +-
.../cloud/guides/production-readiness.mdx | 4 +-
.../audit-logging/byoc-security-playbook.mdx | 2 +-
.../audit-logging/database-audit-log.mdx | 16 +-
.../common-access-management-queries.mdx | 2 +-
.../manage-database-service-accounts.mdx | 2 +-
.../manage-database-users.mdx | 6 +-
products/cloud/guides/security/cmek.mdx | 2 +-
.../private-networking/aws-privatelink.mdx | 2 +-
.../gcp-private-service-connect.mdx | 2 +-
.../cloud/guides/security/data-masking.mdx | 22 +-
.../guides/sql-console/query-endpoints.mdx | 6 +-
products/cloud/home.mdx | 57 -
products/cloud/navigation.json | 327 +
.../reference/billing/billing-overview.mdx | 6 +-
products/cloud/reference/settings.mdx | 6 +-
.../guides/configuration.mdx | 6 +-
.../guides/introduction.mdx | 4 +-
.../clickhouse-integration.mdx | 2 +-
products/managed-postgres/navigation.json | 66 +
reference/datalakes.mdx | 42 -
reference/engines/database-engines/index.mdx | 34 -
reference/engines/table-engines/index.mdx | 112 -
.../table-engines/integrations/index.mdx | 47 -
.../table-engines/mergetree-family/index.mdx | 41 -
.../engines/table-engines/special/index.mdx | 44 -
.../Avro/_snippets/data-types-matching.mdx | 39 -
reference/formats/CSV/CSV.mdx | 71 -
reference/formats/JSON/format-settings.mdx | 37 -
reference/formats/MsgPack.mdx | 60 -
.../common-pretty-format-settings.mdx | 14 -
.../common-row-binary-format-settings.mdx | 11 -
reference/formats/index.mdx | 163 -
.../aggregate-functions/reference/index.mdx | 166 -
.../aggregate-functions/reference/median.mdx | 45 -
reference/functions/index.mdx | 14 -
.../functions/regular-functions/geo/index.mdx | 9 -
.../regular-functions-index.mdx | 52 -
reference/functions/table-functions/index.mdx | 149 -
reference/home.mdx | 24 -
reference/index.mdx | 11 -
.../beta-and-experimental-features.mdx | 184 -
reference/settings/index.mdx | 32 -
.../statements/alter/apply-deleted-mask.mdx | 22 -
.../create/dictionary/layouts/overview.mdx | 157 -
reference/statements/create/index.mdx | 9 -
reference/statements/index.mdx | 9 -
.../system-tables/asynchronous_insert_log.mdx | 74 -
.../system-tables/asynchronous_inserts.mdx | 53 -
reference/system-tables/azure_queue_log.mdx | 34 -
.../azure_queue_metadata_cache.mdx | 24 -
.../system-tables/azure_queue_settings.mdx | 26 -
.../background_schedule_pool.mdx | 57 -
.../background_schedule_pool_log.mdx | 63 -
reference/system-tables/backups.mdx | 33 -
reference/system-tables/blob_storage_log.mdx | 69 -
reference/system-tables/certificates.mdx | 27 -
reference/system-tables/clusters.mdx | 93 -
reference/system-tables/columns.mdx | 99 -
reference/system-tables/crash_log.mdx | 67 -
reference/system-tables/database_replicas.mdx | 49 -
reference/system-tables/detached_parts.mdx | 35 -
reference/system-tables/dictionaries.mdx | 107 -
reference/system-tables/disks.mdx | 50 -
.../system-tables/distribution_queue.mdx | 51 -
.../system-tables/dropped_tables_parts.mdx | 104 -
reference/system-tables/error_log.mdx | 60 -
reference/system-tables/filesystem_cache.mdx | 33 -
.../system-tables/filesystem_cache_log.mdx | 32 -
.../filesystem_cache_settings.mdx | 49 -
.../filesystem_read_prefetches_log.mdx | 33 -
reference/system-tables/formats.mdx | 29 -
reference/system-tables/functions.mdx | 50 -
.../system-tables/graphite_retentions.mdx | 27 -
.../system-tables/histogram_metric_log.mdx | 46 -
reference/system-tables/iceberg_history.mdx | 22 -
reference/system-tables/index.mdx | 180 -
.../system-tables/information_schema.mdx | 364 -
reference/system-tables/kafka_consumers.mdx | 74 -
reference/system-tables/masking_policies.mdx | 32 -
reference/system-tables/merges.mdx | 45 -
reference/system-tables/metric_log.mdx | 1814 -----
reference/system-tables/moves.mdx | 43 -
reference/system-tables/mutations.mdx | 87 -
.../system-tables/opentelemetry_span_log.mdx | 62 -
reference/system-tables/part_log.mdx | 105 -
.../part_moves_between_shards.mdx | 30 -
reference/system-tables/parts.mdx | 154 -
reference/system-tables/parts_columns.mdx | 127 -
.../predicate_statistics_log.mdx | 90 -
reference/system-tables/processes.mdx | 107 -
.../system-tables/processors_profile_log.mdx | 95 -
reference/system-tables/projection_parts.mdx | 76 -
.../projection_parts_columns.mdx | 64 -
reference/system-tables/query_cache.mdx | 51 -
reference/system-tables/query_log.mdx | 237 -
reference/system-tables/query_metric_log.mdx | 1316 ----
reference/system-tables/query_thread_log.mdx | 144 -
reference/system-tables/query_views_log.mdx | 95 -
reference/system-tables/quota_limits.mdx | 32 -
reference/system-tables/quota_usage.mdx | 54 -
reference/system-tables/quotas.mdx | 28 -
reference/system-tables/quotas_usage.mdx | 54 -
reference/system-tables/replicas.mdx | 105 -
.../system-tables/replicated_fetches.mdx | 68 -
reference/system-tables/replication_queue.mdx | 73 -
reference/system-tables/resources.mdx | 46 -
reference/system-tables/role_grants.mdx | 22 -
reference/system-tables/roles.mdx | 23 -
reference/system-tables/row_policies.mdx | 32 -
reference/system-tables/s3_queue_settings.mdx | 25 -
reference/system-tables/s3queue_log.mdx | 34 -
.../system-tables/s3queue_metadata_cache.mdx | 24 -
reference/system-tables/scheduler.mdx | 89 -
reference/system-tables/session_log.mdx | 76 -
.../settings_profile_elements.mdx | 31 -
reference/system-tables/settings_profiles.mdx | 27 -
reference/system-tables/tables.mdx | 131 -
reference/system-tables/text_log.mdx | 80 -
reference/system-tables/transactions.mdx | 21 -
.../system-tables/transactions_info_log.mdx | 31 -
.../system-tables/user_defined_functions.mdx | 80 -
reference/system-tables/users.mdx | 37 -
reference/system-tables/view_refreshes.mdx | 54 -
reference/system-tables/zookeeper_info.mdx | 58 -
reference/system-tables/zookeeper_log.mdx | 130 -
resources/about/index.mdx | 2 +-
resources/about/navigation.json | 16 +
.../changelogs/{cloud.mdx => cloud/2026.mdx} | 6 +-
resources/changelogs/cloud/archive/2022.mdx | 2 +-
resources/changelogs/cloud/archive/2023.mdx | 10 +-
resources/changelogs/cloud/archive/2024.mdx | 10 +-
resources/changelogs/cloud/changelog.mdx | 22 +-
.../changelogs/cloud/release-notes/24_02.mdx | 2 +-
.../changelogs/cloud/release-notes/24_12.mdx | 2 +-
.../changelogs/cloud/release-notes/25_08.mdx | 74 +-
resources/changelogs/navigation.json | 59 +
resources/changelogs/oss/2017.mdx | 2 +-
resources/changelogs/oss/2021.mdx | 2 +-
resources/changelogs/oss/2023.mdx | 4 +-
resources/changelogs/oss/2024.mdx | 2 +-
resources/changelogs/oss/2025.mdx | 6 +-
resources/changelogs/oss/2026.mdx | 4 +-
resources/contribute/index.mdx | 38 -
.../contribute/native-protocol/columns.mdx | 46 -
.../build}/build-cross-arm.mdx | 0
.../build}/build-cross-loongarch.mdx | 0
.../build}/build-cross-osx.mdx | 4 +-
.../build}/build-cross-riscv.mdx | 0
.../build}/build-cross-s390x.mdx | 2 +-
.../build}/build-e2k.mdx | 0
.../build}/build-osx.mdx | 4 +-
.../build}/build.mdx | 4 +-
.../contribute/backports.mdx | 0
.../building-and-benchmarking-deflate-qpl.mdx | 10 +-
.../contribute/continuous-integration.mdx | 14 +-
.../contribute/contrib.mdx | 0
.../contribute/integrating-rust-libraries.mdx | 0
.../profile-guided-optimization.mdx | 0
.../contribute/style.mdx | 2 +-
.../contribute/tests.mdx | 4 +-
.../images/concurrency.png | Bin
.../images/find-build-artifact.png | Bin
resources/develop-contribute/index.mdx | 38 +
.../introduction}/architecture.mdx | 2 +-
.../introduction}/developer-instruction.mdx | 8 +-
.../native-protocol/basics.mdx | 0
.../native-protocol/client.mdx | 2 +-
.../native-protocol/columns.mdx | 46 +
.../native-protocol/hash.mdx | 0
.../native-protocol/server.mdx | 6 +-
resources/develop-contribute/navigation.json | 56 +
.../roadmap.mdx | 0
.../custom-dns-alias-for-instance.mdx | 2 +-
.../execute-system-queries-in-cloud.mdx | 6 +-
.../ingest-failures-23-9-release.mdx | 4 +-
.../multi-region-replication.mdx | 2 +-
.../about-quotas-and-query-complexity.mdx | 2 +-
.../alter-user-settings-exception.mdx | 6 +-
.../cannot-append-data-to-parquet-format.mdx | 2 +-
.../data-import-export/file-export.mdx | 8 +-
...ng-and-working-with-json-array-objects.mdx | 2 +-
...ting-geojason-with-nested-object-array.mdx | 6 +-
.../json-extract-example.mdx | 2 +-
.../data-import-export/json-import.mdx | 8 +-
.../kafka-clickhouse-json.mdx | 4 +-
.../mysql-to-parquet-csv-json.mdx | 4 +-
.../parquet-to-csv-json.mdx | 6 +-
.../postgresql-to-parquet-csv-json.mdx | 6 +-
...ate-ratio-of-zero-sparse-serialization.mdx | 4 +-
.../data-management/read-consistency.mdx | 4 +-
.../data-management/when-is-ttl-applied.mdx | 4 +-
.../general-faqs/columnar-database.mdx | 2 +-
.../general-faqs/distributed-join.mdx | 2 +-
.../knowledge-base/general-faqs/faq-index.mdx | 2 +-
.../knowledge-base/general-faqs/index.mdx | 6 +-
.../knowledge-base/general-faqs/key-value.mdx | 4 +-
.../knowledge-base/general-faqs/olap.mdx | 2 +-
.../general-faqs/operations-index.mdx | 8 +-
.../general-faqs/separate-storage.mdx | 2 +-
.../general-faqs/time-series.mdx | 8 +-
.../use-clickhouse-for-log-analytics.mdx | 2 +-
.../general-faqs/vector-search.mdx | 2 +-
...mmend-clickhouse-keeper-over-zookeeper.mdx | 2 +-
...set-up-ch-on-docker-odbc-connect-mssql.mdx | 2 +-
.../knowledge-base/integrations/index.mdx | 4 +-
...rialized-views-inserted-asynchronously.mdx | 2 +-
.../check-query-cache-in-use.mdx | 4 +-
.../profiling-clickhouse-with-llvm-xray.mdx | 14 +-
.../monitoring-debugging/send-logs-level.mdx | 2 +-
.../view-number-of-active-mutations.mdx | 2 +-
.../which-processes-are-currently-running.mdx | 16 +-
.../why-default-logging-verbose.mdx | 2 +-
.../async-vs-optimize-read-in-order.mdx | 6 +-
.../find-expensive-queries.mdx | 4 +-
...ding-expensive-queries-by-memory-usage.mdx | 2 +-
.../improve-map-performance.mdx | 2 +-
.../insert-select-settings-tuning.mdx | 10 +-
.../memory-limit-exceeded-for-query.mdx | 12 +-
.../why-is-my-primary-key-not-used.mdx | 6 +-
.../queries-sql/compare-resultsets.mdx | 2 +-
.../queries-sql/filtered-aggregates.mdx | 4 +-
...-a-clickhouse-table-by-an-array-column.mdx | 2 +-
.../knowledge-base/queries-sql/pivot.mdx | 6 +-
.../security/row-column-policy.mdx | 4 +-
...-between-official-builds-and-3rd-party.mdx | 2 +-
.../how-to-increase-thread-pool-size.mdx | 2 +-
.../setup-installation/production.mdx | 2 +-
.../tables-schema/add-column.mdx | 6 +-
.../tables-schema/delete-old-data.mdx | 12 +-
.../exchangeStatementToSwitchTables.mdx | 2 +-
...able-to-query-multiple-remote-clusters.mdx | 4 +-
.../certificate-verify-failed-error.mdx | 2 +-
...connection-timeout-remote-remoteSecure.mdx | 2 +-
resources/support-center/navigation.json | 250 +
.../tips-and-tricks/community-wisdom.mdx | 2 +-
.../tips-and-tricks/cost-optimization.mdx | 8 +-
.../tips-and-tricks/debugging-insights.mdx | 8 +-
.../tips-and-tricks/materialized-views.mdx | 2 +-
.../performance-optimization.mdx | 8 +-
.../tips-and-tricks/too-many-parts.mdx | 6 +-
.../support-center/troubleshooting/index.mdx | 84 +-
.../troubleshooting}/troubleshooting.mdx | 16 +-
.../generate-slug-map.cpython-314.pyc | Bin 13671 -> 0 bytes
.../update_release_notes.cpython-314.pyc | Bin 17970 -> 0 bytes
snippets/_async_inserts.mdx | 20 +-
snippets/_avoid_mutations.mdx | 8 +-
snippets/_avoid_nullable_columns.mdx | 2 +-
snippets/_avoid_optimize_final.mdx | 6 +-
snippets/_bulk_inserts.mdx | 4 +-
snippets/_cli_install.mdx | 2 +-
snippets/_clickhouse_mysql_cloud_setup.mdx | 6 +-
.../_clickhouse_mysql_on_premise_setup.mdx | 4 +-
snippets/_create_clickpipe.mdx | 2 +-
snippets/_docker.mdx | 8 +-
snippets/_generic_settings.mdx | 4 +-
snippets/_json_support.mdx | 2 +-
snippets/_macos.mdx | 2 +-
snippets/_migration_guide.mdx | 2 +-
...rmance_optimizations_table_of_contents.mdx | 30 +-
snippets/_quick_install.mdx | 6 +-
snippets/_redshift_migration_guide.mdx | 2 +-
.../_replication-sharding-terminology.mdx | 2 +-
snippets/_syntax.mdx | 2 +-
snippets/_system-log-parameters.mdx | 10 +-
snippets/_system_table_cloud.mdx | 2 +-
snippets/_table_of_contents.mdx | 20 +-
snippets/_windows_install.mdx | 4 +-
snippets/alter-delete.mdx | 12 +-
snippets/clickstack/_json_support.mdx | 2 +-
snippets/clickstack/_navigate_managed.mdx | 2 +-
.../clickstack/_setup_managed_ingestion.mdx | 6 +-
snippets/common-pretty-format-settings.mdx | 16 +-
.../common-row-binary-format-settings.mdx | 10 +-
snippets/compatibility.mdx | 2 +-
.../QuickStartsGrid/QuickStartsGrid.jsx | 2 +-
snippets/connecting-to-postgresql.mdx | 6 +-
snippets/data-types-matching.mdx | 52 +-
snippets/delete.mdx | 14 +-
.../table-engines/integrations/odbc.mdx | 14 +-
snippets/recommendations.mdx | 2 +-
snippets/truncate.mdx | 14 +-
use-cases/index.mdx | 16 -
1706 files changed, 30757 insertions(+), 35537 deletions(-)
create mode 100644 _migration/README.md
rename {scripts => _migration}/apply-slug-aliases.py (93%)
rename {scripts => _migration}/find_dup_imports.py (98%)
create mode 100644 _migration/find_orphans.py
rename {scripts => _migration}/generate-slug-map.py (97%)
rename {scripts => _migration}/match_slugless.py (100%)
rename {scripts => _migration}/migrate.py (94%)
rename {scripts => _migration}/slug-aliases.csv (60%)
rename slug-map.csv => _migration/slug-map.csv (50%)
rename {scripts => _migration}/suggest-slug-aliases.py (93%)
rename {scripts => _migration}/verify_mapping.py (100%)
create mode 100644 _site/customizations/README.md
rename ask-ai-button.js => _site/customizations/ask-ai-button.js (100%)
rename cookie-banner.js => _site/customizations/cookie-banner.js (100%)
rename custom-footer.js => _site/customizations/custom-footer.js (100%)
rename kapa-init.js => _site/customizations/kapa-init.js (100%)
rename navbar-cta.js => _site/customizations/navbar-cta.js (100%)
rename favicon.svg => _site/favicon.svg (100%)
rename {logo => _site/logo}/dark.svg (100%)
rename {logo => _site/logo}/light.svg (100%)
create mode 100644 _site/redirects.json
rename {scripts => _site/scripts}/update_quickstarts.py (100%)
rename {scripts => _site/scripts}/update_release_notes.py (100%)
rename styles.css => _site/styles.css (99%)
rename {styles => _site/styles}/.markdownlint-cli2.yaml (100%)
rename {styles => _site/styles}/.vale.ini (100%)
rename {styles => _site/styles}/markdownlint/custom_rules/headings_have_custom_anchors.js (100%)
rename {styles => _site/styles}/markdownlint/custom_rules/utility_functions.js (100%)
rename {styles => _site/styles}/vale/ClickHouse/Ability.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/BackTicksFormats.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/BackTicksFunctions.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/BackTicksServerSettings.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/BackTicksSessionSettings.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/BackTicksTableEngines.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/BackTicksTableFunctions.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/BadPlurals.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/British.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/CodeblockFences.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Colons.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Contractions.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/CurrentStatus.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/EOLWhitespace.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Exclamation.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/FutureTense.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/HeadingPunctuation.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Headings.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Ordinal.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/OxfordComma.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Quotes.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Repetition.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/SentenceLength.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Units.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Uppercase.yml (100%)
rename {styles => _site/styles}/vale/ClickHouse/Wordy.yml (100%)
delete mode 100644 concepts/advanced-guides/index.mdx
delete mode 100644 concepts/features/configuration/settings/query-complexity.mdx
delete mode 100644 concepts/features/performance/caches/caches.mdx
delete mode 100644 concepts/features/security/external-authenticators/index.mdx
delete mode 100644 concepts/features/tools-and-utilities/index.mdx
create mode 100644 core/README.md
create mode 100644 core/concepts/README.md
rename {concepts => core/concepts}/best-practices/avoid-mutations.mdx (100%)
rename {concepts => core/concepts}/best-practices/avoid-optimize-final.mdx (100%)
rename {concepts => core/concepts}/best-practices/avoidnullablecolumns.mdx (100%)
rename {concepts => core/concepts}/best-practices/choosing-a-primary-key.mdx (90%)
rename {concepts => core/concepts}/best-practices/index.mdx (100%)
rename {concepts => core/concepts}/best-practices/json-type.mdx (89%)
rename {concepts => core/concepts}/best-practices/minimize-optimize-joins.mdx (86%)
rename {concepts => core/concepts}/best-practices/partitioning-keys.mdx (78%)
rename {concepts => core/concepts}/best-practices/select-data-type.mdx (97%)
rename {concepts => core/concepts}/best-practices/selecting-an-insert-strategy.mdx (74%)
rename {concepts => core/concepts}/best-practices/use-materialized-views.mdx (87%)
rename {concepts => core/concepts}/best-practices/using-data-skipping-indices.mdx (93%)
rename {concepts => core/concepts}/core-concepts/academic-overview.mdx (100%)
rename {concepts => core/concepts}/core-concepts/glossary.mdx (99%)
rename {concepts => core/concepts}/core-concepts/index.mdx (73%)
rename {concepts => core/concepts}/core-concepts/merges.mdx (57%)
rename {concepts => core/concepts}/core-concepts/partitions.mdx (76%)
rename {concepts => core/concepts}/core-concepts/parts.mdx (66%)
rename {concepts => core/concepts}/core-concepts/primary-indexes.mdx (83%)
rename {concepts => core/concepts}/core-concepts/query-parallelism.mdx (80%)
rename {concepts => core/concepts}/features/backup-restore/alternative-methods.mdx (93%)
rename {concepts => core/concepts}/features/backup-restore/azure-blob-storage.mdx (100%)
rename {concepts => core/concepts}/features/backup-restore/local-disk.mdx (100%)
rename {concepts => core/concepts}/features/backup-restore/overview.mdx (91%)
rename {concepts => core/concepts}/features/backup-restore/s3-endpoint.mdx (98%)
rename {concepts => core/concepts}/features/backup-restore/snapshot.mdx (81%)
rename {concepts => core/concepts}/features/configuration/server-config/composable-protocols.mdx (98%)
rename {concepts => core/concepts}/features/configuration/server-config/configuration-files.mdx (95%)
rename {concepts => core/concepts}/features/configuration/server-config/named-collections.mdx (95%)
rename {concepts => core/concepts}/features/configuration/server-config/quotas.mdx (97%)
rename {concepts => core/concepts}/features/configuration/server-config/startup-scripts.mdx (100%)
rename {concepts => core/concepts}/features/configuration/server-config/storing-data.mdx (95%)
rename {concepts => core/concepts}/features/configuration/server-config/workload-scheduling.mdx (87%)
rename {concepts => core/concepts}/features/configuration/settings/alternative-query-languages.mdx (97%)
rename {concepts => core/concepts}/features/configuration/settings/constraints-on-settings.mdx (97%)
rename {concepts => core/concepts}/features/configuration/settings/memory-overcommit.mdx (100%)
rename {concepts => core/concepts}/features/configuration/settings/overview.mdx (71%)
rename {concepts => core/concepts}/features/configuration/settings/permissions-for-queries.mdx (88%)
create mode 100644 core/concepts/features/configuration/settings/query-complexity.mdx
rename {concepts => core/concepts}/features/configuration/settings/server-overload.mdx (100%)
rename {concepts => core/concepts}/features/configuration/settings/settings-profiles.mdx (95%)
rename {concepts => core/concepts}/features/configuration/settings/settings-query-level.mdx (93%)
rename {concepts => core/concepts}/features/configuration/settings/settings-users.mdx (94%)
rename {concepts => core/concepts}/features/configuration/settings/tcp-connection-limits.mdx (95%)
rename {concepts => core/concepts}/features/dictionaries/best-practices.mdx (95%)
rename {concepts => core/concepts}/features/dictionaries/index.mdx (85%)
rename {concepts => core/concepts}/features/index.mdx (53%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/arrowflight.mdx (98%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/cli.mdx (100%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/client.mdx (96%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/cpp.mdx (100%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/grpc.mdx (95%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/http.mdx (95%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/jdbc.mdx (100%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/mysql.mdx (83%)
create mode 100644 core/concepts/features/interfaces/native-clients-interfaces-index.mdx
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/odbc.mdx (97%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/overview.mdx (68%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/postgresql.mdx (95%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/prometheus.mdx (79%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/schema-inference.mdx (91%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/ssh.mdx (100%)
create mode 100644 core/concepts/features/interfaces/tcp.mdx
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/third-party/index.mdx (68%)
rename {integrations/connectors/data-integrations/drivers-and-interfaces => core/concepts/features/interfaces}/web-terminal.mdx (91%)
rename {concepts => core/concepts}/features/materialized-views/cascading-materialized-views.mdx (99%)
rename {concepts => core/concepts}/features/materialized-views/incremental-materialized-view.mdx (95%)
rename {concepts => core/concepts}/features/materialized-views/index.mdx (65%)
rename {concepts => core/concepts}/features/materialized-views/refreshable-materialized-view.mdx (91%)
rename {concepts => core/concepts/features}/operations/delete/delete-mutations.mdx (82%)
rename {concepts => core/concepts/features}/operations/delete/drop-partition.mdx (94%)
create mode 100644 core/concepts/features/operations/delete/index.mdx
rename {concepts => core/concepts/features}/operations/delete/lightweight-delete.mdx (82%)
rename {concepts => core/concepts/features}/operations/delete/overview.mdx (57%)
rename {concepts => core/concepts/features}/operations/delete/truncate.mdx (100%)
rename {concepts => core/concepts/features}/operations/delete/ttl.mdx (99%)
rename {concepts => core/concepts/features}/operations/insert/asyncinserts.mdx (100%)
rename {concepts => core/concepts/features}/operations/insert/bulkinserts.mdx (100%)
rename {concepts => core/concepts/features}/operations/insert/deduplicating-inserts-on-retries.mdx (94%)
rename {concepts => core/concepts/features}/operations/insert/deduplication.mdx (98%)
rename {get-started/oss/starter-guides => core/concepts/features/operations/insert}/inserting-data.mdx (88%)
rename {concepts => core/concepts/features}/operations/insert/transactions.mdx (97%)
rename {concepts => core/concepts/features}/operations/select/joining-tables.mdx (92%)
rename {concepts => core/concepts/features}/operations/update/index.mdx (57%)
rename {concepts => core/concepts/features}/operations/update/on-fly-mutations.mdx (98%)
rename {concepts => core/concepts/features}/operations/update/overview.mdx (80%)
rename {concepts => core/concepts/features}/operations/update/replacing-merge-tree.mdx (92%)
rename {concepts => core/concepts}/features/performance/allocation-profiling-old.mdx (97%)
rename {concepts => core/concepts}/features/performance/allocation-profiling.mdx (98%)
create mode 100644 core/concepts/features/performance/caches/caches.mdx
rename {concepts => core/concepts}/features/performance/caches/query-cache.mdx (66%)
rename {concepts => core/concepts}/features/performance/caches/query-condition-cache.mdx (83%)
rename {concepts => core/concepts}/features/performance/caches/userspace-page-cache.mdx (94%)
create mode 100644 core/concepts/features/performance/index.mdx
rename {concepts => core/concepts}/features/performance/lazy-materialization.mdx (81%)
rename {concepts => core/concepts}/features/performance/prewhere.mdx (92%)
rename {concepts => core/concepts}/features/performance/skip-indexes/skipping-indexes-examples.mdx (76%)
rename {concepts => core/concepts}/features/performance/skip-indexes/skipping-indexes.mdx (92%)
rename {concepts => core/concepts}/features/performance/troubleshoot/debugging-memory-issues.mdx (97%)
rename {concepts => core/concepts}/features/performance/troubleshoot/performance-test.mdx (100%)
rename {concepts => core/concepts}/features/performance/troubleshoot/sampling-query-profiler.mdx (87%)
rename {concepts => core/concepts}/features/projections/materialized-views-versus-projections.mdx (98%)
rename {concepts => core/concepts}/features/projections/projections.mdx (96%)
rename {concepts => core/concepts}/features/security/access-rights.mdx (82%)
rename {concepts => core/concepts}/features/security/configuring-ldap.mdx (96%)
rename {concepts => core/concepts}/features/security/external-authenticators/http.mdx (94%)
create mode 100644 core/concepts/features/security/external-authenticators/index.mdx
rename {concepts => core/concepts}/features/security/external-authenticators/kerberos.mdx (95%)
rename {concepts => core/concepts}/features/security/external-authenticators/ldap.mdx (95%)
rename {concepts => core/concepts}/features/security/external-authenticators/ssl-x509.mdx (62%)
create mode 100644 core/concepts/features/security/index.mdx
rename {concepts => core/concepts}/features/security/network-ports.mdx (91%)
rename {concepts => core/concepts}/features/security/ssl-user-auth.mdx (92%)
rename {concepts => core/concepts}/features/security/tls/configuring-tls-acme-client.mdx (99%)
rename {concepts => core/concepts}/features/security/tls/configuring-tls.mdx (98%)
rename {concepts => core/concepts}/features/security/tls/index.mdx (50%)
rename {concepts => core/concepts}/features/tools-and-utilities/backupview.mdx (97%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-benchmark.mdx (97%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-compressor.mdx (100%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-disks.mdx (97%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-format.mdx (100%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-keeper-client.mdx (100%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-keeper-http-api.mdx (100%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-local.mdx (89%)
rename {concepts => core/concepts}/features/tools-and-utilities/clickhouse-obfuscator.mdx (100%)
create mode 100644 core/concepts/features/tools-and-utilities/index.mdx
rename {concepts => core/concepts}/features/tools-and-utilities/odbc-bridge.mdx (100%)
rename {concepts => core/concepts}/features/tools-and-utilities/static-files-disk-uploader.mdx (98%)
rename {concepts => core/concepts}/index.mdx (52%)
create mode 100644 core/concepts/navigation.json
create mode 100644 core/get-started/README.md
rename {get-started => core/get-started}/about/deployment-modes.mdx (91%)
rename {get-started => core/get-started}/about/distinctive-features.mdx (79%)
rename {get-started => core/get-started}/about/intro.mdx (93%)
rename {get-started => core/get-started}/about/olap.mdx (93%)
rename {get-started => core/get-started}/about/why-clickhouse-is-so-fast.mdx (77%)
create mode 100644 core/get-started/navigation.json
rename {get-started => core/get-started}/quickstarts/_academy-ctas/_academy_cta_generic.mdx (100%)
create mode 100644 core/get-started/quickstarts/_prerequisites/cloud_prerequisite.mdx
rename {get-started => core/get-started}/quickstarts/build-etl-pipeline-using-clickhouse.mdx (88%)
rename {get-started => core/get-started}/quickstarts/connect-your-iceberg-catalog.mdx (88%)
rename {get-started => core/get-started}/quickstarts/create-your-first-materialized-view.mdx (88%)
rename {get-started => core/get-started}/quickstarts/create-your-first-mergetree-table.mdx (93%)
rename {get-started => core/get-started}/quickstarts/create-your-first-projection.mdx (86%)
rename {get-started => core/get-started}/quickstarts/create-your-first-service-on-cloud.mdx (90%)
rename {get-started/oss/starter-guides => core/get-started/quickstarts}/creating-tables.mdx (94%)
rename {get-started => core/get-started}/quickstarts/home.mdx (72%)
rename {get-started => core/get-started}/quickstarts/insert-data-using-clickhouse-client.mdx (82%)
rename {get-started/oss/starter-guides => core/get-started/quickstarts}/mutations.mdx (88%)
rename {get-started => core/get-started}/quickstarts/obtain-your-cloud-connection-details.mdx (84%)
rename {get-started => core/get-started}/quickstarts/tutorial.mdx (96%)
rename {get-started => core/get-started}/quickstarts/working-with-the-map-type.mdx (93%)
rename {get-started/oss/starter-guides => core/get-started/quickstarts}/writing-queries.mdx (88%)
rename {get-started => core/get-started}/sample-datasets/amazon-reviews.mdx (97%)
rename {get-started => core/get-started}/sample-datasets/amplab-benchmark.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/anon-web-analytics-metrica.mdx (98%)
rename {get-started => core/get-started}/sample-datasets/brown-benchmark.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/cell-towers.mdx (99%)
rename {get-started => core/get-started}/sample-datasets/covid19.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/criteo.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/dbpedia.mdx (98%)
rename {get-started => core/get-started}/sample-datasets/environmental-sensors.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/foursquare-os-places.mdx (99%)
rename {get-started => core/get-started}/sample-datasets/github-events.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/github.mdx (99%)
rename {get-started => core/get-started}/sample-datasets/hacker-news-vector-search.mdx (96%)
rename {get-started => core/get-started}/sample-datasets/hacker-news.mdx (96%)
create mode 100644 core/get-started/sample-datasets/index.mdx
rename {get-started => core/get-started}/sample-datasets/laion.mdx (97%)
rename {get-started => core/get-started}/sample-datasets/laion5b.mdx (96%)
rename {get-started => core/get-started}/sample-datasets/menus.mdx (94%)
rename {get-started => core/get-started}/sample-datasets/noaa.mdx (98%)
rename {get-started => core/get-started}/sample-datasets/nyc-taxi.mdx (99%)
rename {get-started => core/get-started}/sample-datasets/nypd-complaint-data.mdx (96%)
rename {get-started => core/get-started}/sample-datasets/ontime.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/playground.mdx (80%)
rename {get-started => core/get-started}/sample-datasets/stackoverflow.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/star-schema.mdx (98%)
rename {get-started => core/get-started}/sample-datasets/tpcds.mdx (93%)
rename {get-started => core/get-started}/sample-datasets/tpch.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/tw-weather.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/uk-price-paid.mdx (93%)
rename {get-started => core/get-started}/sample-datasets/wikistat.mdx (100%)
rename {get-started => core/get-started}/sample-datasets/youtube-dislikes.mdx (99%)
rename {get-started => core/get-started}/setup/cloud.mdx (82%)
create mode 100644 core/get-started/setup/install.mdx
create mode 100644 core/get-started/setup/migration-guides/bigquery/index.mdx
rename {get-started => core/get-started}/setup/migration-guides/bigquery/loading-data.mdx (84%)
rename {get-started => core/get-started}/setup/migration-guides/bigquery/migrating-to-clickhouse-cloud.mdx (82%)
rename {get-started => core/get-started}/setup/migration-guides/bigquery/overview.mdx (74%)
rename {get-started => core/get-started}/setup/migration-guides/elastic/overview.mdx (100%)
rename {get-started => core/get-started}/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud.mdx (96%)
rename {get-started => core/get-started}/setup/migration-guides/other-methods/clickhouse-local-etl.mdx (85%)
rename {get-started => core/get-started}/setup/migration-guides/other-methods/etl-tool-to-clickhouse.mdx (100%)
rename {get-started => core/get-started}/setup/migration-guides/other-methods/object-storage-to-clickhouse.mdx (76%)
create mode 100644 core/get-started/setup/migration-guides/overview.mdx
rename {get-started => core/get-started}/setup/migration-guides/postgres/appendix.mdx (79%)
create mode 100644 core/get-started/setup/migration-guides/postgres/index.mdx
rename {get-started => core/get-started}/setup/migration-guides/postgres/migration-guide/migration-guide-part1.mdx (80%)
rename {get-started => core/get-started}/setup/migration-guides/postgres/migration-guide/migration-guide-part2.mdx (95%)
rename {get-started => core/get-started}/setup/migration-guides/postgres/migration-guide/migration-guide-part3.mdx (81%)
rename {get-started => core/get-started}/setup/migration-guides/postgres/overview.mdx (91%)
rename {get-started => core/get-started}/setup/migration-guides/redshift/migration-guide.mdx (100%)
rename {get-started => core/get-started}/setup/migration-guides/redshift/overview.mdx (100%)
rename {get-started => core/get-started}/setup/migration-guides/redshift/sql-translation-reference.mdx (78%)
rename {get-started => core/get-started}/setup/migration-guides/snowflake/migration-guide.mdx (87%)
rename {get-started => core/get-started}/setup/migration-guides/snowflake/overview.mdx (97%)
rename {get-started => core/get-started}/setup/migration-guides/snowflake/sql-translation-reference.mdx (76%)
rename {get-started => core/get-started}/setup/self-managed/advanced.mdx (95%)
rename {get-started => core/get-started}/setup/self-managed/debian-ubuntu.mdx (100%)
rename {get-started => core/get-started}/setup/self-managed/docker.mdx (100%)
rename {get-started => core/get-started}/setup/self-managed/macos.mdx (100%)
rename {get-started => core/get-started}/setup/self-managed/nixos.mdx (100%)
rename {get-started => core/get-started}/setup/self-managed/other-linux.mdx (100%)
rename {get-started => core/get-started}/setup/self-managed/overview.mdx (50%)
rename get-started/oss/oss.mdx => core/get-started/setup/self-managed/quick-install.mdx (81%)
rename {get-started => core/get-started}/setup/self-managed/redhat.mdx (100%)
rename {get-started => core/get-started}/setup/self-managed/windows.mdx (100%)
rename {get-started => core/get-started}/use-cases/data-warehousing.mdx (66%)
rename {get-started => core/get-started}/use-cases/machine-learning-and-genai/agent-facing-analytics.mdx (100%)
rename {get-started => core/get-started}/use-cases/machine-learning-and-genai/machine-learning.mdx (97%)
rename {get-started => core/get-started}/use-cases/observability.mdx (100%)
rename {get-started => core/get-started}/use-cases/overview.mdx (52%)
rename {get-started => core/get-started}/use-cases/real-time-analytics.mdx (100%)
create mode 100644 core/guides/README.md
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/arrow-avro-orc.mdx (74%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/binary.mdx (78%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/csv-tsv.mdx (81%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/intro.mdx (68%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/json/exporting.mdx (81%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/json/formats.mdx (89%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/json/inference.mdx (84%)
create mode 100644 core/guides/clickhouse/data-formats/json/intro.mdx
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/json/loading.mdx (88%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/json/other.mdx (90%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/json/schema.mdx (88%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/parquet.mdx (83%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/sql.mdx (73%)
rename {integrations/connectors/data-ingestion => core/guides/clickhouse}/data-formats/templates-regex.mdx (85%)
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/backfilling.mdx (84%)
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/compression/compression-in-clickhouse.mdx (98%)
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/compression/compression-modes.mdx (85%)
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/denormalization.mdx (96%)
rename {get-started/oss/starter-guides => core/guides/clickhouse/data-modelling}/generating-test-data.mdx (95%)
create mode 100644 core/guides/clickhouse/data-modelling/index.mdx
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/merge-table-function.mdx (94%)
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/schema-design.mdx (94%)
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/sparse-primary-indexes.mdx (89%)
rename {guides/cloud-oss => core/guides/clickhouse}/data-modelling/stored-procedures-and-prepared-statements.mdx (93%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/anyIf.mdx (79%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/argMaxIf.mdx (78%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/argMinIf.mdx (80%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/avgIf.mdx (80%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/avgMap.mdx (86%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/avgMerge.mdx (50%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/avgMergeState.mdx (92%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/avgResample.mdx (81%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/avgState.mdx (93%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/countIf.mdx (81%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/countResample.mdx (79%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/groupArrayDistinct.mdx (73%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/groupArrayResample.mdx (84%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/maxMap.mdx (86%)
create mode 100644 core/guides/clickhouse/examples/aggregate-function-combinators/maxSimpleState.mdx
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/minMap.mdx (86%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/minSimpleState.mdx (90%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx (84%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/quantilesTimingIf.mdx (87%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/sumArray.mdx (74%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/sumForEach.mdx (79%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/sumIf.mdx (95%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/sumMap.mdx (86%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/sumSimpleState.mdx (84%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/uniqArray.mdx (80%)
rename {guides/cloud-oss => core/guides/clickhouse}/examples/aggregate-function-combinators/uniqArrayIf.mdx (84%)
create mode 100644 core/guides/clickhouse/index.mdx
rename {guides/cloud-oss => core/guides/clickhouse}/performance-and-monitoring/analyzer.mdx (98%)
rename {guides/cloud-oss => core/guides/clickhouse}/performance-and-monitoring/dynamic-column-selection.mdx (90%)
rename {guides/cloud-oss => core/guides/clickhouse}/performance-and-monitoring/query-optimization.mdx (89%)
rename {guides/cloud-oss => core/guides/clickhouse}/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx (98%)
rename {guides/cloud-oss => core/guides/clickhouse}/working-with-arrays.mdx (88%)
rename {guides/cloud-oss => core/guides/clickhouse}/working-with-joins.mdx (94%)
create mode 100644 core/guides/navigation.json
rename {guides => core/guides}/oss/best-practices/sizing-and-hardware-recommendations.mdx (90%)
rename {guides => core/guides}/oss/best-practices/tips.mdx (99%)
rename {guides => core/guides}/oss/deployment-and-scaling/cluster-discovery.mdx (98%)
rename {guides => core/guides}/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx (98%)
rename {guides => core/guides}/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx (97%)
rename {guides => core/guides}/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx (97%)
rename {guides => core/guides}/oss/deployment-and-scaling/index.mdx (52%)
rename {guides => core/guides}/oss/deployment-and-scaling/keeper/index.mdx (98%)
rename {guides => core/guides}/oss/deployment-and-scaling/keeper/ssl-zookeeper.mdx (100%)
rename {guides => core/guides}/oss/deployment-and-scaling/monitoring/monitoring.mdx (62%)
rename {guides => core/guides}/oss/deployment-and-scaling/monitoring/opentelemetry.mdx (79%)
rename {guides => core/guides}/oss/deployment-and-scaling/scaling-clusters.mdx (57%)
rename {guides => core/guides}/oss/deployment-and-scaling/separation-storage-compute.mdx (97%)
rename {guides => core/guides}/oss/deployment-and-scaling/shards.mdx (74%)
rename {guides => core/guides}/oss/deployment-and-scaling/terminology.mdx (100%)
rename {guides => core/guides}/oss/update.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/agno.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/chainlit.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/copilotkit.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/crewai.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/dspy.mdx (100%)
create mode 100644 core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/index.mdx
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/langchain.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/llamaindex.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/mcp-agent.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/openai-agents.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/pydantic-ai.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/slackbot.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/streamlit.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ai-agent-libraries/upsonic.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/anythingllm.mdx (97%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/claude-desktop.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/index.mdx (53%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/janai.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/librechat.mdx (98%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/ollama.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/MCP/open-webui.mdx (100%)
rename {guides => core/guides/use-cases}/ai-ml/ai-powered-sql-generation.mdx (93%)
rename {guides => core/guides/use-cases}/ai-ml/data-exploration/jupyter-notebook.mdx (98%)
rename {guides => core/guides/use-cases}/ai-ml/data-exploration/marimo-notebook.mdx (97%)
create mode 100644 core/guides/use-cases/ai-ml/index.mdx
rename {guides => core/guides/use-cases}/ai-ml/vector-search.mdx (98%)
rename {guides => core/guides/use-cases}/data-warehousing/biglake-catalog.mdx (97%)
rename {guides => core/guides/use-cases}/data-warehousing/getting-started/accelerating-analytics.mdx (78%)
rename {guides => core/guides/use-cases}/data-warehousing/getting-started/connecting-catalogs.mdx (80%)
rename {guides => core/guides/use-cases}/data-warehousing/getting-started/overview.mdx (65%)
rename {guides => core/guides/use-cases}/data-warehousing/getting-started/querying-directly.mdx (65%)
rename {guides => core/guides/use-cases}/data-warehousing/getting-started/writing-data.mdx (96%)
rename {guides => core/guides/use-cases}/data-warehousing/glue-catalog.mdx (100%)
create mode 100644 core/guides/use-cases/data-warehousing/index.mdx
rename {guides => core/guides/use-cases}/data-warehousing/lakekeeper-catalog.mdx (100%)
rename {guides => core/guides/use-cases}/data-warehousing/nessie-catalog.mdx (100%)
rename {guides => core/guides/use-cases}/data-warehousing/onelake-catalog.mdx (100%)
rename {guides => core/guides/use-cases}/data-warehousing/polaris-catalog.mdx (100%)
create mode 100644 core/guides/use-cases/data-warehousing/reference/index.mdx
rename {guides => core/guides/use-cases}/data-warehousing/rest-catalog.mdx (100%)
create mode 100644 core/guides/use-cases/data-warehousing/support-matrix.mdx
rename {guides => core/guides/use-cases}/data-warehousing/unity-catalog.mdx (100%)
create mode 100644 core/guides/use-cases/index.mdx
rename {guides => core/guides/use-cases}/observability/build-your-own/demo-application.mdx (100%)
rename {guides => core/guides/use-cases}/observability/build-your-own/grafana.mdx (94%)
create mode 100644 core/guides/use-cases/observability/build-your-own/index.mdx
rename {guides => core/guides/use-cases}/observability/build-your-own/integrating-opentelemetry.mdx (93%)
rename {guides => core/guides/use-cases}/observability/build-your-own/introduction.mdx (98%)
rename {guides => core/guides/use-cases}/observability/build-your-own/managing-data.mdx (81%)
rename {guides => core/guides/use-cases}/observability/build-your-own/schema-design.mdx (89%)
rename {guides => core/guides/use-cases}/observability/cloud-monitoring.mdx (97%)
rename {guides => core/guides/use-cases}/observability/index.mdx (59%)
rename {guides => core/guides/use-cases}/observability/self-managed-monitoring.mdx (100%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/analysis-functions.mdx (96%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/basic-operations.mdx (85%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/date-time-data-types.mdx (80%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/index.mdx (68%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/materialized-view-rollup.mdx (99%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/query-performance.mdx (93%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/storage-efficiency.mdx (100%)
rename {guides => core/guides/use-cases}/real-time-analytics/time-series/time-series-filling-gaps.mdx (99%)
create mode 100644 core/reference/README.md
rename {reference => core/reference}/data-types/aggregatefunction.mdx (78%)
rename {reference => core/reference}/data-types/array.mdx (89%)
rename {reference => core/reference}/data-types/boolean.mdx (100%)
rename {reference => core/reference}/data-types/data-types-binary-encoding.mdx (99%)
rename {reference => core/reference}/data-types/date.mdx (81%)
rename {reference => core/reference}/data-types/date32.mdx (60%)
rename {reference => core/reference}/data-types/datetime.mdx (82%)
rename {reference => core/reference}/data-types/datetime64.mdx (85%)
rename {reference => core/reference}/data-types/decimal.mdx (96%)
rename {reference => core/reference}/data-types/domains/index.mdx (100%)
rename {reference => core/reference}/data-types/dynamic.mdx (100%)
rename {reference => core/reference}/data-types/enum.mdx (97%)
rename {reference => core/reference}/data-types/fixedstring.mdx (88%)
rename {reference => core/reference}/data-types/float.mdx (91%)
rename {reference => core/reference}/data-types/geo.mdx (92%)
rename {reference => core/reference}/data-types/index.mdx (62%)
rename {reference => core/reference}/data-types/int-uint.mdx (100%)
rename {reference => core/reference}/data-types/ipv4.mdx (95%)
rename {reference => core/reference}/data-types/ipv6.mdx (96%)
rename {reference => core/reference}/data-types/lowcardinality.mdx (54%)
rename {reference => core/reference}/data-types/map.mdx (92%)
rename {reference => core/reference}/data-types/nested-data-structures/index.mdx (94%)
rename {reference => core/reference}/data-types/newjson.mdx (92%)
rename {reference => core/reference}/data-types/nullable.mdx (77%)
rename {reference => core/reference}/data-types/qbit.mdx (91%)
rename {reference => core/reference}/data-types/simpleaggregatefunction.mdx (58%)
rename {reference => core/reference}/data-types/special-data-types/expression.mdx (100%)
rename {reference => core/reference}/data-types/special-data-types/index.mdx (100%)
rename {reference => core/reference}/data-types/special-data-types/interval.mdx (90%)
rename {reference => core/reference}/data-types/special-data-types/nothing.mdx (78%)
rename {reference => core/reference}/data-types/special-data-types/set.mdx (72%)
rename {reference => core/reference}/data-types/string.mdx (81%)
rename {reference => core/reference}/data-types/time.mdx (75%)
rename {reference => core/reference}/data-types/time64.mdx (77%)
rename {reference => core/reference}/data-types/tuple.mdx (92%)
rename {reference => core/reference}/data-types/uuid.mdx (88%)
rename {reference => core/reference}/data-types/variant.mdx (100%)
create mode 100644 core/reference/datalakes.mdx
rename {reference => core/reference}/engines/database-engines/atomic.mdx (58%)
rename {reference => core/reference}/engines/database-engines/backup.mdx (93%)
rename {reference => core/reference}/engines/database-engines/datalake.mdx (96%)
create mode 100644 core/reference/engines/database-engines/index.mdx
rename {reference => core/reference}/engines/database-engines/materialized-postgresql.mdx (97%)
rename {reference => core/reference}/engines/database-engines/mysql.mdx (70%)
rename {reference => core/reference}/engines/database-engines/postgresql.mdx (80%)
rename {reference => core/reference}/engines/database-engines/replicated.mdx (84%)
rename {reference => core/reference}/engines/database-engines/shared.mdx (100%)
rename {reference => core/reference}/engines/database-engines/sqlite.mdx (74%)
rename {reference => core/reference}/engines/engines.mdx (54%)
create mode 100644 core/reference/engines/table-engines/index.mdx
rename {reference => core/reference}/engines/table-engines/integrations/ExternalDistributed.mdx (75%)
rename {reference => core/reference}/engines/table-engines/integrations/arrowflight.mdx (96%)
rename {reference => core/reference}/engines/table-engines/integrations/azure-queue.mdx (89%)
rename {reference => core/reference}/engines/table-engines/integrations/azureBlobStorage.mdx (93%)
rename {reference => core/reference}/engines/table-engines/integrations/deltalake.mdx (94%)
rename {reference => core/reference}/engines/table-engines/integrations/embedded-rocksdb.mdx (97%)
rename {reference => core/reference}/engines/table-engines/integrations/hdfs.mdx (90%)
rename {reference => core/reference}/engines/table-engines/integrations/hive.mdx (99%)
rename {reference => core/reference}/engines/table-engines/integrations/hudi.mdx (93%)
rename {reference => core/reference}/engines/table-engines/integrations/iceberg.mdx (96%)
create mode 100644 core/reference/engines/table-engines/integrations/index.mdx
rename {reference => core/reference}/engines/table-engines/integrations/jdbc.mdx (93%)
rename {reference => core/reference}/engines/table-engines/integrations/kafka.mdx (93%)
rename {reference => core/reference}/engines/table-engines/integrations/materialized-postgresql.mdx (82%)
rename {reference => core/reference}/engines/table-engines/integrations/mongodb.mdx (99%)
rename {reference => core/reference}/engines/table-engines/integrations/mysql.mdx (83%)
rename {reference => core/reference}/engines/table-engines/integrations/nats.mdx (95%)
rename {reference => core/reference}/engines/table-engines/integrations/odbc.mdx (81%)
rename {reference => core/reference}/engines/table-engines/integrations/paimon.mdx (99%)
rename {reference => core/reference}/engines/table-engines/integrations/postgresql.mdx (82%)
rename {reference => core/reference}/engines/table-engines/integrations/rabbitmq.mdx (91%)
rename {reference => core/reference}/engines/table-engines/integrations/redis.mdx (90%)
rename {reference => core/reference}/engines/table-engines/integrations/s3.mdx (94%)
rename {reference => core/reference}/engines/table-engines/integrations/s3queue.mdx (96%)
rename {reference => core/reference}/engines/table-engines/integrations/sqlite.mdx (67%)
rename {reference => core/reference}/engines/table-engines/integrations/time-series.mdx (90%)
rename {reference => core/reference}/engines/table-engines/integrations/ytsaurus.mdx (94%)
rename {reference => core/reference}/engines/table-engines/log-family/index.mdx (82%)
rename {reference => core/reference}/engines/table-engines/log-family/log.mdx (89%)
rename {reference => core/reference}/engines/table-engines/log-family/stripelog.mdx (92%)
rename {reference => core/reference}/engines/table-engines/log-family/tinylog.mdx (91%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/aggregatingmergetree.mdx (84%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/annindexes.mdx (89%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/coalescingmergetree.mdx (86%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/collapsingmergetree.mdx (93%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/custom-partitioning-key.mdx (82%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/graphitemergetree.mdx (90%)
create mode 100644 core/reference/engines/table-engines/mergetree-family/index.mdx
rename {reference => core/reference}/engines/table-engines/mergetree-family/invertedindexes.mdx (72%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/mergetree.mdx (78%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/replacingmergetree.mdx (91%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/replication.mdx (88%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/summingmergetree.mdx (82%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/textindexes.mdx (79%)
rename {reference => core/reference}/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx (90%)
rename {reference => core/reference}/engines/table-engines/special/alias.mdx (98%)
rename {reference => core/reference}/engines/table-engines/special/buffer.mdx (98%)
rename {reference => core/reference}/engines/table-engines/special/dictionary.mdx (88%)
rename {reference => core/reference}/engines/table-engines/special/distributed.mdx (83%)
rename {reference => core/reference}/engines/table-engines/special/executable.mdx (96%)
rename {reference => core/reference}/engines/table-engines/special/external-data.mdx (100%)
rename {reference => core/reference}/engines/table-engines/special/file.mdx (64%)
rename {reference => core/reference}/engines/table-engines/special/filelog.mdx (92%)
rename {reference => core/reference}/engines/table-engines/special/generate.mdx (92%)
create mode 100644 core/reference/engines/table-engines/special/index.mdx
rename {reference => core/reference}/engines/table-engines/special/join.mdx (74%)
rename {reference => core/reference}/engines/table-engines/special/keepermap.mdx (100%)
rename {reference => core/reference}/engines/table-engines/special/memory.mdx (98%)
rename {reference => core/reference}/engines/table-engines/special/merge.mdx (92%)
rename {reference => core/reference}/engines/table-engines/special/null.mdx (100%)
rename {reference => core/reference}/engines/table-engines/special/set.mdx (93%)
rename {reference => core/reference}/engines/table-engines/special/url.mdx (79%)
rename {reference => core/reference}/engines/table-engines/special/view.mdx (100%)
rename {reference => core/reference}/formats/Arrow/Arrow.mdx (50%)
rename {reference => core/reference}/formats/Arrow/ArrowStream.mdx (100%)
rename {reference => core/reference}/formats/Avro/Avro.mdx (88%)
rename {reference => core/reference}/formats/Avro/AvroConfluent.mdx (92%)
create mode 100644 core/reference/formats/Avro/_snippets/data-types-matching.mdx
rename {reference => core/reference}/formats/BSONEachRow.mdx (50%)
rename {reference => core/reference}/formats/Buffers.mdx (82%)
create mode 100644 core/reference/formats/CSV/CSV.mdx
rename {reference => core/reference}/formats/CSV/CSVWithNames.mdx (91%)
rename {reference => core/reference}/formats/CSV/CSVWithNamesAndTypes.mdx (88%)
rename {reference => core/reference}/formats/CapnProto.mdx (58%)
rename {reference => core/reference}/formats/CustomSeparated/CustomSeparated.mdx (68%)
rename {reference => core/reference}/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.mdx (100%)
rename {reference => core/reference}/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.mdx (100%)
rename {reference => core/reference}/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.mdx (100%)
rename {reference => core/reference}/formats/CustomSeparated/CustomSeparatedWithNames.mdx (92%)
rename {reference => core/reference}/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx (89%)
rename {reference => core/reference}/formats/DWARF.mdx (100%)
rename {reference => core/reference}/formats/Form.mdx (100%)
rename {reference => core/reference}/formats/Hash.mdx (100%)
rename {reference => core/reference}/formats/HiveText.mdx (100%)
rename {reference => core/reference}/formats/JSON/JSON.mdx (88%)
rename {reference => core/reference}/formats/JSON/JSONAsObject.mdx (81%)
rename {reference => core/reference}/formats/JSON/JSONAsString.mdx (86%)
rename {reference => core/reference}/formats/JSON/JSONColumns.mdx (94%)
rename {reference => core/reference}/formats/JSON/JSONColumnsWithMetadata.mdx (82%)
rename {reference => core/reference}/formats/JSON/JSONCompact.mdx (97%)
rename {reference => core/reference}/formats/JSON/JSONCompactColumns.mdx (97%)
rename {reference => core/reference}/formats/JSON/JSONCompactEachRow.mdx (95%)
rename {reference => core/reference}/formats/JSON/JSONCompactEachRowWithNames.mdx (86%)
rename {reference => core/reference}/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx (84%)
rename {reference => core/reference}/formats/JSON/JSONCompactEachRowWithProgress.mdx (100%)
rename {reference => core/reference}/formats/JSON/JSONCompactStrings.mdx (94%)
rename {reference => core/reference}/formats/JSON/JSONCompactStringsEachRow.mdx (95%)
rename {reference => core/reference}/formats/JSON/JSONCompactStringsEachRowWithNames.mdx (87%)
rename {reference => core/reference}/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx (89%)
rename {reference => core/reference}/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx (92%)
rename {reference => core/reference}/formats/JSON/JSONEachRow.mdx (97%)
rename {reference => core/reference}/formats/JSON/JSONEachRowWithProgress.mdx (77%)
rename {reference => core/reference}/formats/JSON/JSONLines.mdx (97%)
rename {reference => core/reference}/formats/JSON/JSONObjectEachRow.mdx (56%)
rename {reference => core/reference}/formats/JSON/JSONStrings.mdx (98%)
rename {reference => core/reference}/formats/JSON/JSONStringsEachRow.mdx (97%)
rename {reference => core/reference}/formats/JSON/JSONStringsEachRowWithProgress.mdx (100%)
rename {reference => core/reference}/formats/JSON/PrettyJSONEachRow.mdx (97%)
create mode 100644 core/reference/formats/JSON/format-settings.mdx
rename {reference => core/reference}/formats/LineAsString/LineAsString.mdx (83%)
rename {reference => core/reference}/formats/LineAsString/LineAsStringWithNames.mdx (88%)
rename {reference => core/reference}/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx (93%)
rename {reference => core/reference}/formats/Markdown.mdx (100%)
create mode 100644 core/reference/formats/MsgPack.mdx
rename {reference => core/reference}/formats/MySQLDump.mdx (93%)
rename {reference => core/reference}/formats/MySQLWire.mdx (100%)
rename {reference => core/reference}/formats/Native.mdx (89%)
rename {reference => core/reference}/formats/Npy.mdx (58%)
rename {reference => core/reference}/formats/Null.mdx (100%)
rename {reference => core/reference}/formats/ODBCDriver2.mdx (100%)
rename {reference => core/reference}/formats/ORC.mdx (52%)
rename {reference => core/reference}/formats/One.mdx (91%)
rename {reference => core/reference}/formats/Parquet/Parquet.mdx (85%)
rename {reference => core/reference}/formats/Parquet/ParquetMetadata.mdx (100%)
rename {reference => core/reference}/formats/PostgreSQLWire.mdx (100%)
rename {reference => core/reference}/formats/Pretty/Pretty.mdx (90%)
rename {reference => core/reference}/formats/Pretty/PrettyCompact.mdx (82%)
rename {reference => core/reference}/formats/Pretty/PrettyCompactMonoBlock.mdx (77%)
rename {reference => core/reference}/formats/Pretty/PrettyCompactNoEscapes.mdx (78%)
rename {reference => core/reference}/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx (76%)
rename {reference => core/reference}/formats/Pretty/PrettyMonoBlock.mdx (77%)
rename {reference => core/reference}/formats/Pretty/PrettyNoEscapes.mdx (72%)
rename {reference => core/reference}/formats/Pretty/PrettyNoEscapesMonoBlock.mdx (82%)
rename {reference => core/reference}/formats/Pretty/PrettySpace.mdx (84%)
rename {reference => core/reference}/formats/Pretty/PrettySpaceMonoBlock.mdx (77%)
rename {reference => core/reference}/formats/Pretty/PrettySpaceNoEscapes.mdx (79%)
rename {reference => core/reference}/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx (76%)
create mode 100644 core/reference/formats/Pretty/_snippets/common-pretty-format-settings.mdx
rename {reference => core/reference}/formats/Prometheus.mdx (94%)
rename {reference => core/reference}/formats/Protobuf/Protobuf.mdx (92%)
rename {reference => core/reference}/formats/Protobuf/ProtobufList.mdx (87%)
rename {reference => core/reference}/formats/Protobuf/ProtobufSingle.mdx (73%)
rename {reference => core/reference}/formats/RawBLOB.mdx (91%)
rename {reference => core/reference}/formats/Regexp.mdx (62%)
rename {reference => core/reference}/formats/RowBinary/RowBinary.mdx (96%)
rename {reference => core/reference}/formats/RowBinary/RowBinaryWithDefaults.mdx (86%)
rename {reference => core/reference}/formats/RowBinary/RowBinaryWithNames.mdx (69%)
rename {reference => core/reference}/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx (68%)
create mode 100644 core/reference/formats/RowBinary/_snippets/common-row-binary-format-settings.mdx
rename {reference => core/reference}/formats/SQLInsert.mdx (57%)
rename {reference => core/reference}/formats/TabSeparated/TSKV.mdx (91%)
rename {reference => core/reference}/formats/TabSeparated/TabSeparated.mdx (72%)
rename {reference => core/reference}/formats/TabSeparated/TabSeparatedRaw.mdx (93%)
rename {reference => core/reference}/formats/TabSeparated/TabSeparatedRawWithNames.mdx (97%)
rename {reference => core/reference}/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx (96%)
rename {reference => core/reference}/formats/TabSeparated/TabSeparatedWithNames.mdx (90%)
rename {reference => core/reference}/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx (87%)
rename {reference => core/reference}/formats/Template/Template.mdx (100%)
rename {reference => core/reference}/formats/Template/TemplateIgnoreSpaces.mdx (96%)
rename {reference => core/reference}/formats/Values.mdx (62%)
rename {reference => core/reference}/formats/Vertical.mdx (78%)
rename {reference => core/reference}/formats/XML.mdx (100%)
create mode 100644 core/reference/formats/index.mdx
rename {reference => core/reference}/functions/aggregate-functions/combinators.mdx (89%)
rename {reference => core/reference}/functions/aggregate-functions/grouping_function.mdx (95%)
rename {reference => core/reference}/functions/aggregate-functions/index.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/parametric-functions.mdx (93%)
rename {reference => core/reference}/functions/aggregate-functions/reference/aggThrow.mdx (96%)
rename {reference => core/reference}/functions/aggregate-functions/reference/analysis_of_variance.mdx (81%)
rename {reference => core/reference}/functions/aggregate-functions/reference/any.mdx (95%)
rename {reference => core/reference}/functions/aggregate-functions/reference/anyHeavy.mdx (90%)
rename {reference => core/reference}/functions/aggregate-functions/reference/anyLast.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/approxtopk.mdx (75%)
rename {reference => core/reference}/functions/aggregate-functions/reference/approxtopsum.mdx (69%)
rename {reference => core/reference}/functions/aggregate-functions/reference/argAndMax.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/argAndMin.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/argMax.mdx (74%)
rename {reference => core/reference}/functions/aggregate-functions/reference/argMin.mdx (77%)
rename {reference => core/reference}/functions/aggregate-functions/reference/avg.mdx (77%)
rename {reference => core/reference}/functions/aggregate-functions/reference/avgWeighted.mdx (85%)
rename {reference => core/reference}/functions/aggregate-functions/reference/boundrat.mdx (81%)
rename {reference => core/reference}/functions/aggregate-functions/reference/categoricalInformationValue.mdx (92%)
rename {reference => core/reference}/functions/aggregate-functions/reference/contingency.mdx (76%)
rename {reference => core/reference}/functions/aggregate-functions/reference/corr.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/corrMatrix.mdx (85%)
rename {reference => core/reference}/functions/aggregate-functions/reference/corrStable.mdx (70%)
rename {reference => core/reference}/functions/aggregate-functions/reference/count.mdx (68%)
rename {reference => core/reference}/functions/aggregate-functions/reference/covarPop.mdx (69%)
rename {reference => core/reference}/functions/aggregate-functions/reference/covarPopMatrix.mdx (89%)
rename {reference => core/reference}/functions/aggregate-functions/reference/covarPopStable.mdx (66%)
rename {reference => core/reference}/functions/aggregate-functions/reference/covarSamp.mdx (75%)
rename {reference => core/reference}/functions/aggregate-functions/reference/covarSampMatrix.mdx (87%)
rename {reference => core/reference}/functions/aggregate-functions/reference/covarSampStable.mdx (76%)
rename {reference => core/reference}/functions/aggregate-functions/reference/cramersV.mdx (82%)
rename {reference => core/reference}/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx (75%)
rename {reference => core/reference}/functions/aggregate-functions/reference/deltaSum.mdx (73%)
rename {reference => core/reference}/functions/aggregate-functions/reference/deltaSumTimestamp.mdx (60%)
rename {reference => core/reference}/functions/aggregate-functions/reference/distinctDynamicTypes.mdx (85%)
rename {reference => core/reference}/functions/aggregate-functions/reference/distinctJSONPaths.mdx (85%)
rename {reference => core/reference}/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx (94%)
rename {reference => core/reference}/functions/aggregate-functions/reference/entropy.mdx (87%)
rename {reference => core/reference}/functions/aggregate-functions/reference/estimateCompressionRatio.mdx (75%)
rename {reference => core/reference}/functions/aggregate-functions/reference/exponentialMovingAverage.mdx (94%)
rename {reference => core/reference}/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx (93%)
rename {reference => core/reference}/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx (92%)
rename {reference => core/reference}/functions/aggregate-functions/reference/first_value.mdx (82%)
rename {reference => core/reference}/functions/aggregate-functions/reference/flame_graph.mdx (94%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArray.mdx (85%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArrayArray.mdx (90%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArrayInsertAt.mdx (91%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArrayIntersect.mdx (89%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArrayLast.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx (92%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArrayMovingSum.mdx (90%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArraySample.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupArraySorted.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupBitAnd.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupBitOr.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupBitXor.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupBitmap.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupBitmapAnd.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupBitmapOr.mdx (80%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupBitmapXor.mdx (89%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupConcat.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/groupUniqArray.mdx (81%)
create mode 100644 core/reference/functions/aggregate-functions/reference/index.mdx
rename {reference => core/reference}/functions/aggregate-functions/reference/intervalLengthSum.mdx (86%)
rename {reference => core/reference}/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/kurtPop.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/kurtSamp.mdx (79%)
rename {reference => core/reference}/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx (72%)
rename {reference => core/reference}/functions/aggregate-functions/reference/last_value.mdx (95%)
rename {reference => core/reference}/functions/aggregate-functions/reference/mannWhitneyUTest.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/max.mdx (93%)
rename {reference => core/reference}/functions/aggregate-functions/reference/maxIntersections.mdx (84%)
rename {reference => core/reference}/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx (78%)
rename {reference => core/reference}/functions/aggregate-functions/reference/maxMap.mdx (86%)
rename {reference => core/reference}/functions/aggregate-functions/reference/meanZTest.mdx (82%)
create mode 100644 core/reference/functions/aggregate-functions/reference/median.mdx
rename {reference => core/reference}/functions/aggregate-functions/reference/min.mdx (91%)
rename {reference => core/reference}/functions/aggregate-functions/reference/minMap.mdx (87%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantile.mdx (63%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileBFloat16.mdx (78%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileDeterministic.mdx (67%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileExact.mdx (64%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileExactExclusive.mdx (68%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileExactHigh.mdx (73%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileExactInclusive.mdx (68%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileExactLow.mdx (73%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileExactWeighted.mdx (66%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx (79%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileGK.mdx (80%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx (79%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileTDigest.mdx (61%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx (66%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileTiming.mdx (75%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileTimingWeighted.mdx (78%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantileddsketch.mdx (76%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantiles.mdx (75%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantilesExactExclusive.mdx (74%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantilesExactInclusive.mdx (74%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantilesGK.mdx (74%)
rename {reference => core/reference}/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx (74%)
rename {reference => core/reference}/functions/aggregate-functions/reference/rankCorr.mdx (90%)
rename {reference => core/reference}/functions/aggregate-functions/reference/simpleLinearRegression.mdx (89%)
rename {reference => core/reference}/functions/aggregate-functions/reference/singleValueOrNull.mdx (91%)
rename {reference => core/reference}/functions/aggregate-functions/reference/skewPop.mdx (81%)
rename {reference => core/reference}/functions/aggregate-functions/reference/skewSamp.mdx (88%)
rename {reference => core/reference}/functions/aggregate-functions/reference/sparkbar.mdx (78%)
rename {reference => core/reference}/functions/aggregate-functions/reference/stddevPop.mdx (70%)
rename {reference => core/reference}/functions/aggregate-functions/reference/stddevPopStable.mdx (64%)
rename {reference => core/reference}/functions/aggregate-functions/reference/stddevSamp.mdx (73%)
rename {reference => core/reference}/functions/aggregate-functions/reference/stddevSampStable.mdx (67%)
rename {reference => core/reference}/functions/aggregate-functions/reference/stochasticLinearRegression.mdx (89%)
rename {reference => core/reference}/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx (86%)
rename {reference => core/reference}/functions/aggregate-functions/reference/studentTTest.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/studentTTestOneSample.mdx (70%)
rename {reference => core/reference}/functions/aggregate-functions/reference/sum.mdx (70%)
rename {reference => core/reference}/functions/aggregate-functions/reference/sumCount.mdx (76%)
rename {reference => core/reference}/functions/aggregate-functions/reference/sumKahan.mdx (64%)
rename {reference => core/reference}/functions/aggregate-functions/reference/sumMap.mdx (91%)
rename {reference => core/reference}/functions/aggregate-functions/reference/sumMapWithOverflow.mdx (86%)
rename {reference => core/reference}/functions/aggregate-functions/reference/sumWithOverflow.mdx (85%)
rename {reference => core/reference}/functions/aggregate-functions/reference/theilsU.mdx (82%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesChangesToGrid.mdx (100%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx (84%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesDerivToGrid.mdx (100%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx (84%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx (84%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx (84%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx (94%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid.mdx (100%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx (84%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx (83%)
rename {reference => core/reference}/functions/aggregate-functions/reference/timeSeriesResetsToGrid.mdx (100%)
rename {reference => core/reference}/functions/aggregate-functions/reference/topK.mdx (66%)
rename {reference => core/reference}/functions/aggregate-functions/reference/topKWeighted.mdx (72%)
rename {reference => core/reference}/functions/aggregate-functions/reference/uniq.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/uniqCombined.mdx (70%)
rename {reference => core/reference}/functions/aggregate-functions/reference/uniqCombined64.mdx (64%)
rename {reference => core/reference}/functions/aggregate-functions/reference/uniqExact.mdx (65%)
rename {reference => core/reference}/functions/aggregate-functions/reference/uniqHLL12.mdx (67%)
rename {reference => core/reference}/functions/aggregate-functions/reference/uniqthetasketch.mdx (66%)
rename {reference => core/reference}/functions/aggregate-functions/reference/varPop.mdx (73%)
rename {reference => core/reference}/functions/aggregate-functions/reference/varPopStable.mdx (71%)
rename {reference => core/reference}/functions/aggregate-functions/reference/varSamp.mdx (75%)
rename {reference => core/reference}/functions/aggregate-functions/reference/varSampStable.mdx (74%)
rename {reference => core/reference}/functions/aggregate-functions/reference/welchTTest.mdx (78%)
create mode 100644 core/reference/functions/index.mdx
rename {reference => core/reference}/functions/regular-functions/ai-functions.mdx (80%)
rename {reference => core/reference}/functions/regular-functions/arithmetic-functions.mdx (85%)
rename {reference => core/reference}/functions/regular-functions/array-functions.mdx (82%)
rename {reference => core/reference}/functions/regular-functions/array-join.mdx (85%)
rename {reference => core/reference}/functions/regular-functions/bit-functions.mdx (83%)
rename {reference => core/reference}/functions/regular-functions/bitmap-functions.mdx (72%)
rename {reference => core/reference}/functions/regular-functions/comparison-functions.mdx (88%)
rename {reference => core/reference}/functions/regular-functions/conditional-functions.mdx (92%)
rename {reference => core/reference}/functions/regular-functions/date-time-functions.mdx (75%)
rename {reference => core/reference}/functions/regular-functions/distance-functions.mdx (76%)
rename {reference => core/reference}/functions/regular-functions/embedded-dict-functions.mdx (88%)
rename {reference => core/reference}/functions/regular-functions/encoding-functions.mdx (87%)
rename {reference => core/reference}/functions/regular-functions/encryption-functions.mdx (88%)
rename {reference => core/reference}/functions/regular-functions/ext-dict-functions.mdx (79%)
rename {reference => core/reference}/functions/regular-functions/files.mdx (58%)
rename {reference => core/reference}/functions/regular-functions/financial-functions.mdx (82%)
rename {reference => core/reference}/functions/regular-functions/functions-for-nulls.mdx (84%)
rename {reference => core/reference}/functions/regular-functions/geo/coordinates.mdx (89%)
rename {reference => core/reference}/functions/regular-functions/geo/flipCoordinates.mdx (83%)
rename {reference => core/reference}/functions/regular-functions/geo/geohash.mdx (82%)
rename {reference => core/reference}/functions/regular-functions/geo/geometry.mdx (85%)
rename {reference => core/reference}/functions/regular-functions/geo/h3.mdx (78%)
create mode 100644 core/reference/functions/regular-functions/geo/index.mdx
rename {reference => core/reference}/functions/regular-functions/geo/polygon.mdx (98%)
rename {reference => core/reference}/functions/regular-functions/geo/s2.mdx (79%)
rename {reference => core/reference}/functions/regular-functions/geo/svg.mdx (81%)
rename {reference => core/reference}/functions/regular-functions/hash-functions.mdx (82%)
rename {reference => core/reference}/functions/regular-functions/in-functions.mdx (82%)
rename {reference => core/reference}/functions/regular-functions/introspection.mdx (93%)
rename {reference => core/reference}/functions/regular-functions/ip-address-functions.mdx (84%)
rename {reference => core/reference}/functions/regular-functions/json-functions.mdx (81%)
rename {reference => core/reference}/functions/regular-functions/logical-functions.mdx (77%)
rename {reference => core/reference}/functions/regular-functions/machine-learning-functions.mdx (90%)
rename {reference => core/reference}/functions/regular-functions/math-functions.mdx (67%)
rename {reference => core/reference}/functions/regular-functions/nlp-functions.mdx (86%)
rename {reference => core/reference}/functions/regular-functions/numeric-indexed-vector-functions.mdx (79%)
rename {reference => core/reference}/functions/regular-functions/other-functions.mdx (84%)
rename {reference => core/reference}/functions/regular-functions/overview.mdx (95%)
rename {reference => core/reference}/functions/regular-functions/random-functions.mdx (71%)
create mode 100644 core/reference/functions/regular-functions/regular-functions-index.mdx
rename {reference => core/reference}/functions/regular-functions/rounding-functions.mdx (78%)
rename {reference => core/reference}/functions/regular-functions/splitting-merging-functions.mdx (70%)
rename {reference => core/reference}/functions/regular-functions/string-functions.mdx (83%)
rename {reference => core/reference}/functions/regular-functions/string-replace-functions.mdx (83%)
rename {reference => core/reference}/functions/regular-functions/string-search-functions.mdx (82%)
rename {reference => core/reference}/functions/regular-functions/time-series-functions.mdx (78%)
rename {reference => core/reference}/functions/regular-functions/time-window-functions.mdx (66%)
rename {reference => core/reference}/functions/regular-functions/tuple-functions.mdx (66%)
rename {reference => core/reference}/functions/regular-functions/tuple-map-functions.mdx (79%)
rename {reference => core/reference}/functions/regular-functions/type-conversion-functions.mdx (75%)
rename {reference => core/reference}/functions/regular-functions/udf.mdx (93%)
rename {reference => core/reference}/functions/regular-functions/ulid-functions.mdx (81%)
rename {reference => core/reference}/functions/regular-functions/uniqtheta-functions.mdx (97%)
rename {reference => core/reference}/functions/regular-functions/url-functions.mdx (87%)
rename {reference => core/reference}/functions/regular-functions/uuid-functions.mdx (78%)
rename {reference => core/reference}/functions/regular-functions/wasm_udf.mdx (99%)
rename {reference => core/reference}/functions/table-functions/arrowflight.mdx (83%)
rename {reference => core/reference}/functions/table-functions/azureBlobStorage.mdx (96%)
rename {reference => core/reference}/functions/table-functions/azureBlobStorageCluster.mdx (88%)
rename {reference => core/reference}/functions/table-functions/cluster.mdx (80%)
rename {reference => core/reference}/functions/table-functions/deltalake.mdx (96%)
rename {reference => core/reference}/functions/table-functions/deltalakeCluster.mdx (86%)
rename {reference => core/reference}/functions/table-functions/dictionary.mdx (74%)
rename {reference => core/reference}/functions/table-functions/executable.mdx (94%)
rename {reference => core/reference}/functions/table-functions/file.mdx (79%)
rename {reference => core/reference}/functions/table-functions/fileCluster.mdx (86%)
rename {reference => core/reference}/functions/table-functions/filesystem.mdx (94%)
rename {reference => core/reference}/functions/table-functions/format.mdx (96%)
rename {reference => core/reference}/functions/table-functions/fuzzJSON.mdx (96%)
rename {reference => core/reference}/functions/table-functions/fuzzQuery.mdx (100%)
rename {reference => core/reference}/functions/table-functions/gcs.mdx (92%)
rename {reference => core/reference}/functions/table-functions/generate.mdx (99%)
rename {reference => core/reference}/functions/table-functions/generate_series.mdx (100%)
rename {reference => core/reference}/functions/table-functions/hdfs.mdx (81%)
rename {reference => core/reference}/functions/table-functions/hdfsCluster.mdx (88%)
rename {reference => core/reference}/functions/table-functions/hudi.mdx (90%)
rename {reference => core/reference}/functions/table-functions/hudiCluster.mdx (90%)
rename {reference => core/reference}/functions/table-functions/iceberg.mdx (99%)
rename {reference => core/reference}/functions/table-functions/icebergCluster.mdx (87%)
create mode 100644 core/reference/functions/table-functions/index.mdx
rename {reference => core/reference}/functions/table-functions/input.mdx (97%)
rename {reference => core/reference}/functions/table-functions/jdbc.mdx (100%)
rename {reference => core/reference}/functions/table-functions/loop.mdx (100%)
rename {reference => core/reference}/functions/table-functions/merge.mdx (85%)
rename {reference => core/reference}/functions/table-functions/mergeTreeIndex.mdx (100%)
rename {reference => core/reference}/functions/table-functions/mergeTreeProjection.mdx (100%)
rename {reference => core/reference}/functions/table-functions/mergeTreeTextIndex.mdx (100%)
rename {reference => core/reference}/functions/table-functions/mongodb.mdx (95%)
rename {reference => core/reference}/functions/table-functions/mysql.mdx (85%)
rename {reference => core/reference}/functions/table-functions/null.mdx (69%)
rename {reference => core/reference}/functions/table-functions/numbers.mdx (90%)
rename {reference => core/reference}/functions/table-functions/odbc.mdx (94%)
rename {reference => core/reference}/functions/table-functions/paimon.mdx (97%)
rename {reference => core/reference}/functions/table-functions/paimonCluster.mdx (89%)
rename {reference => core/reference}/functions/table-functions/postgresql.mdx (91%)
rename {reference => core/reference}/functions/table-functions/primes.mdx (97%)
rename {reference => core/reference}/functions/table-functions/prometheusQuery.mdx (100%)
rename {reference => core/reference}/functions/table-functions/prometheusQueryRange.mdx (100%)
rename {reference => core/reference}/functions/table-functions/redis.mdx (87%)
rename {reference => core/reference}/functions/table-functions/remote.mdx (80%)
rename {reference => core/reference}/functions/table-functions/s3.mdx (92%)
rename {reference => core/reference}/functions/table-functions/s3Cluster.mdx (86%)
rename {reference => core/reference}/functions/table-functions/sqlite.mdx (68%)
rename {reference => core/reference}/functions/table-functions/timeSeriesData.mdx (84%)
rename {reference => core/reference}/functions/table-functions/timeSeriesMetrics.mdx (83%)
rename {reference => core/reference}/functions/table-functions/timeSeriesSelector.mdx (100%)
rename {reference => core/reference}/functions/table-functions/timeSeriesTags.mdx (84%)
rename {reference => core/reference}/functions/table-functions/url.mdx (72%)
rename {reference => core/reference}/functions/table-functions/urlCluster.mdx (76%)
rename {reference => core/reference}/functions/table-functions/values.mdx (96%)
rename {reference => core/reference}/functions/table-functions/view.mdx (72%)
rename {reference => core/reference}/functions/table-functions/ytsaurus.mdx (78%)
rename {reference => core/reference}/functions/table-functions/zeros.mdx (100%)
rename {reference => core/reference}/functions/window-functions/cume_dist.mdx (95%)
rename {reference => core/reference}/functions/window-functions/dense_rank.mdx (90%)
rename {reference => core/reference}/functions/window-functions/first_value.mdx (94%)
rename {reference => core/reference}/functions/window-functions/index.mdx (96%)
rename {reference => core/reference}/functions/window-functions/lag.mdx (88%)
rename {reference => core/reference}/functions/window-functions/lagInFrame.mdx (95%)
rename {reference => core/reference}/functions/window-functions/last_value.mdx (94%)
rename {reference => core/reference}/functions/window-functions/lead.mdx (92%)
rename {reference => core/reference}/functions/window-functions/leadInFrame.mdx (96%)
rename {reference => core/reference}/functions/window-functions/nth_value.mdx (97%)
rename {reference => core/reference}/functions/window-functions/percent_rank.mdx (97%)
rename {reference => core/reference}/functions/window-functions/rank.mdx (90%)
rename {reference => core/reference}/functions/window-functions/row_number.mdx (92%)
create mode 100644 core/reference/home.mdx
create mode 100644 core/reference/navigation.json
rename {reference => core/reference}/operators/distributed-ddl.mdx (100%)
rename {reference => core/reference}/operators/exists.mdx (94%)
rename {reference => core/reference}/operators/index.mdx (81%)
create mode 100644 core/reference/settings/beta-and-experimental-features.mdx
rename {reference => core/reference}/settings/formats.mdx (94%)
create mode 100644 core/reference/settings/index.mdx
rename {reference => core/reference}/settings/merge-tree-settings.mdx (97%)
rename {reference => core/reference}/settings/server-settings/_server_settings_outside_source.mdx (92%)
rename {reference => core/reference}/settings/server-settings/_snippets/_system-log-parameters.mdx (75%)
rename {reference => core/reference}/settings/server-settings/settings.mdx (93%)
rename {reference => core/reference}/settings/session-settings.mdx (93%)
create mode 100644 core/reference/statements/alter/apply-deleted-mask.mdx
rename {reference => core/reference}/statements/alter/apply-patches.mdx (63%)
rename {reference => core/reference}/statements/alter/column.mdx (85%)
rename {reference => core/reference}/statements/alter/comment.mdx (90%)
rename {reference => core/reference}/statements/alter/constraint.mdx (90%)
rename {reference => core/reference}/statements/alter/database-comment.mdx (89%)
rename {reference => core/reference}/statements/alter/delete.mdx (68%)
rename {reference => core/reference}/statements/alter/index.mdx (56%)
rename {reference => core/reference}/statements/alter/masking-policy.mdx (100%)
rename {reference => core/reference}/statements/alter/named-collection.mdx (100%)
rename {reference => core/reference}/statements/alter/order-by.mdx (59%)
rename {reference => core/reference}/statements/alter/partition.mdx (89%)
rename {reference => core/reference}/statements/alter/projection.mdx (89%)
rename {reference => core/reference}/statements/alter/quota.mdx (88%)
rename {reference => core/reference}/statements/alter/role.mdx (100%)
rename {reference => core/reference}/statements/alter/row-policy.mdx (100%)
rename {reference => core/reference}/statements/alter/sample-by.mdx (51%)
rename {reference => core/reference}/statements/alter/setting.mdx (87%)
rename {reference => core/reference}/statements/alter/settings-profile.mdx (100%)
rename {reference => core/reference}/statements/alter/skipping-index.mdx (76%)
rename {reference => core/reference}/statements/alter/statistics.mdx (84%)
rename {reference => core/reference}/statements/alter/ttl.mdx (82%)
rename {reference => core/reference}/statements/alter/update.mdx (66%)
rename {reference => core/reference}/statements/alter/user.mdx (93%)
rename {reference => core/reference}/statements/alter/view.mdx (93%)
rename {reference => core/reference}/statements/attach.mdx (94%)
rename {reference => core/reference}/statements/check-grant.mdx (91%)
rename {reference => core/reference}/statements/check-table.mdx (94%)
rename {reference => core/reference}/statements/create/database.mdx (85%)
rename {reference => core/reference}/statements/create/dictionary.mdx (70%)
rename {reference => core/reference}/statements/create/dictionary/attributes.mdx (83%)
rename {reference => core/reference}/statements/create/dictionary/embedded.mdx (100%)
rename {reference => core/reference}/statements/create/dictionary/layouts/cache.mdx (85%)
rename {reference => core/reference}/statements/create/dictionary/layouts/direct.mdx (62%)
rename {reference => core/reference}/statements/create/dictionary/layouts/flat.mdx (89%)
rename {reference => core/reference}/statements/create/dictionary/layouts/hashed-array.mdx (83%)
rename {reference => core/reference}/statements/create/dictionary/layouts/hashed.mdx (88%)
rename {reference => core/reference}/statements/create/dictionary/layouts/hierarchical.mdx (90%)
rename {reference => core/reference}/statements/create/dictionary/layouts/ip-trie.mdx (100%)
create mode 100644 core/reference/statements/create/dictionary/layouts/overview.mdx
rename {reference => core/reference}/statements/create/dictionary/layouts/polygon.mdx (94%)
rename {reference => core/reference}/statements/create/dictionary/layouts/range-hashed.mdx (95%)
rename {reference => core/reference}/statements/create/dictionary/layouts/regexp-tree.mdx (91%)
rename {reference => core/reference}/statements/create/dictionary/layouts/ssd-cache.mdx (86%)
rename {reference => core/reference}/statements/create/dictionary/lifetime.mdx (94%)
rename {reference => core/reference}/statements/create/dictionary/sources/cassandra.mdx (100%)
rename {reference => core/reference}/statements/create/dictionary/sources/clickhouse.mdx (88%)
rename {reference => core/reference}/statements/create/dictionary/sources/executable-file.mdx (77%)
rename {reference => core/reference}/statements/create/dictionary/sources/executable-pool.mdx (87%)
rename {reference => core/reference}/statements/create/dictionary/sources/http.mdx (83%)
rename {reference => core/reference}/statements/create/dictionary/sources/local-file.mdx (86%)
rename {reference => core/reference}/statements/create/dictionary/sources/mongodb.mdx (94%)
rename {reference => core/reference}/statements/create/dictionary/sources/mysql.mdx (98%)
rename {reference => core/reference}/statements/create/dictionary/sources/null.mdx (100%)
rename {reference => core/reference}/statements/create/dictionary/sources/odbc.mdx (99%)
rename {reference => core/reference}/statements/create/dictionary/sources/overview.mdx (55%)
rename {reference => core/reference}/statements/create/dictionary/sources/postgresql.mdx (97%)
rename {reference => core/reference}/statements/create/dictionary/sources/redis.mdx (100%)
rename {reference => core/reference}/statements/create/dictionary/sources/yamlregexptree.mdx (75%)
rename {reference => core/reference}/statements/create/dictionary/sources/ytsaurus.mdx (94%)
rename {reference => core/reference}/statements/create/function.mdx (93%)
create mode 100644 core/reference/statements/create/index.mdx
rename {reference => core/reference}/statements/create/masking-policy.mdx (100%)
rename {reference => core/reference}/statements/create/named-collection.mdx (74%)
rename {reference => core/reference}/statements/create/quota.mdx (84%)
rename {reference => core/reference}/statements/create/role.mdx (50%)
rename {reference => core/reference}/statements/create/row-policy.mdx (94%)
rename {reference => core/reference}/statements/create/settings-profile.mdx (83%)
rename {reference => core/reference}/statements/create/table.mdx (91%)
rename {reference => core/reference}/statements/create/user.mdx (92%)
rename {reference => core/reference}/statements/create/view.mdx (91%)
rename {reference => core/reference}/statements/delete.mdx (80%)
rename {reference => core/reference}/statements/describe-table.mdx (78%)
rename {reference => core/reference}/statements/detach.mdx (82%)
rename {reference => core/reference}/statements/distributed-ddl.mdx (100%)
rename {reference => core/reference}/statements/drop.mdx (94%)
rename {reference => core/reference}/statements/exchange.mdx (86%)
rename {reference => core/reference}/statements/execute_as.mdx (79%)
rename {reference => core/reference}/statements/exists.mdx (100%)
rename {reference => core/reference}/statements/explain.mdx (96%)
rename {reference => core/reference}/statements/grant.mdx (90%)
rename {reference => core/reference}/statements/in.mdx (88%)
create mode 100644 core/reference/statements/index.mdx
rename {reference => core/reference}/statements/insert-into.mdx (79%)
rename {reference => core/reference}/statements/kill.mdx (87%)
rename {reference => core/reference}/statements/move.mdx (100%)
rename {reference => core/reference}/statements/optimize.mdx (82%)
rename {reference => core/reference}/statements/parallel_with.mdx (82%)
rename {reference => core/reference}/statements/rename.mdx (93%)
rename {reference => core/reference}/statements/revoke.mdx (96%)
rename {reference => core/reference}/statements/select/all.mdx (100%)
rename {reference => core/reference}/statements/select/apply_modifier.mdx (100%)
rename {reference => core/reference}/statements/select/array-join.mdx (91%)
rename {reference => core/reference}/statements/select/distinct.mdx (77%)
rename {reference => core/reference}/statements/select/except.mdx (98%)
rename {reference => core/reference}/statements/select/except_modifier.mdx (100%)
rename {reference => core/reference}/statements/select/format.mdx (51%)
rename {reference => core/reference}/statements/select/from.mdx (79%)
rename {reference => core/reference}/statements/select/group-by.mdx (83%)
rename {reference => core/reference}/statements/select/having.mdx (82%)
rename {reference => core/reference}/statements/select/index.mdx (75%)
rename {reference => core/reference}/statements/select/intersect.mdx (97%)
rename {reference => core/reference}/statements/select/into-outfile.mdx (75%)
rename {reference => core/reference}/statements/select/join.mdx (89%)
rename {reference => core/reference}/statements/select/limit-by.mdx (80%)
rename {reference => core/reference}/statements/select/limit.mdx (85%)
rename {reference => core/reference}/statements/select/offset.mdx (89%)
rename {reference => core/reference}/statements/select/order-by.mdx (89%)
rename {reference => core/reference}/statements/select/prewhere.mdx (72%)
rename {reference => core/reference}/statements/select/qualify.mdx (85%)
rename {reference => core/reference}/statements/select/replace_modifier.mdx (90%)
rename {reference => core/reference}/statements/select/sample.mdx (86%)
rename {reference => core/reference}/statements/select/union.mdx (71%)
rename {reference => core/reference}/statements/select/where.mdx (88%)
rename {reference => core/reference}/statements/select/with.mdx (93%)
rename {reference => core/reference}/statements/set-role.mdx (100%)
rename {reference => core/reference}/statements/set.mdx (83%)
rename {reference => core/reference}/statements/show.mdx (87%)
rename {reference => core/reference}/statements/system.mdx (85%)
rename {reference => core/reference}/statements/truncate.mdx (84%)
rename {reference => core/reference}/statements/undrop.mdx (96%)
rename {reference => core/reference}/statements/update.mdx (68%)
rename {reference => core/reference}/statements/use.mdx (100%)
rename {reference => core/reference}/statements/watch.mdx (100%)
rename {reference => core/reference}/syntax.mdx (92%)
rename {reference => core/reference}/system-tables/aggregate_function_combinators.mdx (76%)
rename {reference => core/reference}/system-tables/aggregated_zookeeper_log.mdx (53%)
create mode 100644 core/reference/system-tables/asynchronous_insert_log.mdx
create mode 100644 core/reference/system-tables/asynchronous_inserts.mdx
rename {reference => core/reference}/system-tables/asynchronous_loader.mdx (54%)
rename {reference => core/reference}/system-tables/asynchronous_metric_log.mdx (59%)
rename {reference => core/reference}/system-tables/asynchronous_metrics.mdx (98%)
create mode 100644 core/reference/system-tables/azure_queue_log.mdx
create mode 100644 core/reference/system-tables/azure_queue_metadata_cache.mdx
create mode 100644 core/reference/system-tables/azure_queue_settings.mdx
create mode 100644 core/reference/system-tables/background_schedule_pool.mdx
create mode 100644 core/reference/system-tables/background_schedule_pool_log.mdx
rename {reference => core/reference}/system-tables/backup_log.mdx (71%)
create mode 100644 core/reference/system-tables/backups.mdx
create mode 100644 core/reference/system-tables/blob_storage_log.mdx
rename {reference => core/reference}/system-tables/build_options.mdx (84%)
create mode 100644 core/reference/system-tables/certificates.mdx
create mode 100644 core/reference/system-tables/clusters.mdx
rename {reference => core/reference}/system-tables/codecs.mdx (51%)
rename {reference => core/reference}/system-tables/collations.mdx (73%)
create mode 100644 core/reference/system-tables/columns.mdx
rename {reference => core/reference}/system-tables/completions.mdx (53%)
rename {reference => core/reference}/system-tables/contributors.mdx (92%)
create mode 100644 core/reference/system-tables/crash_log.mdx
rename {reference => core/reference}/system-tables/current_roles.mdx (61%)
rename {reference => core/reference}/system-tables/dashboards.mdx (88%)
rename {reference => core/reference}/system-tables/data_skipping_indices.mdx (56%)
rename {reference => core/reference}/system-tables/data_type_families.mdx (69%)
rename {reference => core/reference}/system-tables/database_engines.mdx (89%)
create mode 100644 core/reference/system-tables/database_replicas.mdx
rename {reference => core/reference}/system-tables/databases.mdx (85%)
rename {reference => core/reference}/system-tables/dead_letter_queue.mdx (58%)
rename {reference => core/reference}/system-tables/delta_metadata_log.mdx (67%)
create mode 100644 core/reference/system-tables/detached_parts.mdx
rename {reference => core/reference}/system-tables/detached_tables.mdx (63%)
create mode 100644 core/reference/system-tables/dictionaries.mdx
rename {reference => core/reference}/system-tables/dimensional_metrics.mdx (63%)
create mode 100644 core/reference/system-tables/disks.mdx
rename {reference => core/reference}/system-tables/distributed_ddl_queue.mdx (58%)
create mode 100644 core/reference/system-tables/distribution_queue.mdx
rename {reference => core/reference}/system-tables/dns_cache.mdx (52%)
rename {reference => core/reference}/system-tables/dropped_tables.mdx (59%)
create mode 100644 core/reference/system-tables/dropped_tables_parts.mdx
rename {reference => core/reference}/system-tables/enabled_roles.mdx (56%)
create mode 100644 core/reference/system-tables/error_log.mdx
rename {reference => core/reference}/system-tables/errors.mdx (55%)
rename {reference => core/reference}/system-tables/events.mdx (99%)
rename {reference => core/reference}/system-tables/fail_points.mdx (76%)
create mode 100644 core/reference/system-tables/filesystem_cache.mdx
create mode 100644 core/reference/system-tables/filesystem_cache_log.mdx
create mode 100644 core/reference/system-tables/filesystem_cache_settings.mdx
create mode 100644 core/reference/system-tables/filesystem_read_prefetches_log.mdx
create mode 100644 core/reference/system-tables/formats.mdx
create mode 100644 core/reference/system-tables/functions.mdx
rename {reference => core/reference}/system-tables/grants.mdx (85%)
create mode 100644 core/reference/system-tables/graphite_retentions.mdx
create mode 100644 core/reference/system-tables/histogram_metric_log.mdx
rename {reference => core/reference}/system-tables/histogram_metrics.mdx (99%)
create mode 100644 core/reference/system-tables/iceberg_history.mdx
rename {reference => core/reference}/system-tables/iceberg_metadata_log.mdx (72%)
create mode 100644 core/reference/system-tables/index.mdx
create mode 100644 core/reference/system-tables/information_schema.mdx
rename {reference => core/reference}/system-tables/instrumentation.mdx (65%)
rename {reference => core/reference}/system-tables/jemalloc_bins.mdx (79%)
rename {reference => core/reference}/system-tables/jemalloc_profile_text.mdx (83%)
rename {reference => core/reference}/system-tables/jemalloc_stats.mdx (82%)
create mode 100644 core/reference/system-tables/kafka_consumers.mdx
rename {reference => core/reference}/system-tables/keywords.mdx (79%)
rename {reference => core/reference}/system-tables/licenses.mdx (79%)
rename {reference => core/reference}/system-tables/macros.mdx (70%)
create mode 100644 core/reference/system-tables/masking_policies.mdx
rename {reference => core/reference}/system-tables/merge_tree_settings.mdx (67%)
create mode 100644 core/reference/system-tables/merges.mdx
create mode 100644 core/reference/system-tables/metric_log.mdx
rename {reference => core/reference}/system-tables/metrics.mdx (99%)
rename {reference => core/reference}/system-tables/models.mdx (54%)
create mode 100644 core/reference/system-tables/moves.mdx
create mode 100644 core/reference/system-tables/mutations.mdx
rename {reference => core/reference}/system-tables/named_collections.mdx (59%)
rename {reference => core/reference}/system-tables/numbers.mdx (100%)
rename {reference => core/reference}/system-tables/numbers_mt.mdx (83%)
rename {reference => core/reference}/system-tables/one.mdx (100%)
create mode 100644 core/reference/system-tables/opentelemetry_span_log.mdx
rename {reference => core/reference}/system-tables/overview.mdx (84%)
create mode 100644 core/reference/system-tables/part_log.mdx
create mode 100644 core/reference/system-tables/part_moves_between_shards.mdx
create mode 100644 core/reference/system-tables/parts.mdx
create mode 100644 core/reference/system-tables/parts_columns.mdx
create mode 100644 core/reference/system-tables/predicate_statistics_log.mdx
rename {reference => core/reference}/system-tables/primes.mdx (92%)
rename {reference => core/reference}/system-tables/privileges.mdx (93%)
create mode 100644 core/reference/system-tables/processes.mdx
create mode 100644 core/reference/system-tables/processors_profile_log.mdx
create mode 100644 core/reference/system-tables/projection_parts.mdx
create mode 100644 core/reference/system-tables/projection_parts_columns.mdx
rename {reference => core/reference}/system-tables/projections.mdx (62%)
create mode 100644 core/reference/system-tables/query_cache.mdx
rename {reference => core/reference}/system-tables/query_condition_cache.mdx (71%)
create mode 100644 core/reference/system-tables/query_log.mdx
create mode 100644 core/reference/system-tables/query_metric_log.mdx
create mode 100644 core/reference/system-tables/query_thread_log.mdx
create mode 100644 core/reference/system-tables/query_views_log.mdx
create mode 100644 core/reference/system-tables/quota_limits.mdx
create mode 100644 core/reference/system-tables/quota_usage.mdx
create mode 100644 core/reference/system-tables/quotas.mdx
create mode 100644 core/reference/system-tables/quotas_usage.mdx
rename {reference => core/reference}/system-tables/remote_data_paths.mdx (52%)
create mode 100644 core/reference/system-tables/replicas.mdx
create mode 100644 core/reference/system-tables/replicated_fetches.mdx
rename {reference => core/reference}/system-tables/replicated_merge_tree_settings.mdx (53%)
create mode 100644 core/reference/system-tables/replication_queue.mdx
create mode 100644 core/reference/system-tables/resources.mdx
rename {reference => core/reference}/system-tables/rocksdb.mdx (54%)
create mode 100644 core/reference/system-tables/role_grants.mdx
create mode 100644 core/reference/system-tables/roles.mdx
create mode 100644 core/reference/system-tables/row_policies.mdx
create mode 100644 core/reference/system-tables/s3_queue_settings.mdx
create mode 100644 core/reference/system-tables/s3queue_log.mdx
create mode 100644 core/reference/system-tables/s3queue_metadata_cache.mdx
create mode 100644 core/reference/system-tables/scheduler.mdx
rename {reference => core/reference}/system-tables/schema_inference_cache.mdx (75%)
rename {reference => core/reference}/system-tables/server_settings.mdx (86%)
create mode 100644 core/reference/system-tables/session_log.mdx
rename {reference => core/reference}/system-tables/settings.mdx (61%)
rename {reference => core/reference}/system-tables/settings_changes.mdx (72%)
create mode 100644 core/reference/system-tables/settings_profile_elements.mdx
create mode 100644 core/reference/system-tables/settings_profiles.mdx
rename {reference => core/reference}/system-tables/stack_trace.mdx (82%)
rename {reference => core/reference}/system-tables/storage_policies.mdx (65%)
rename {reference => core/reference}/system-tables/symbols.mdx (88%)
rename {reference => core/reference}/system-tables/system_warnings.mdx (50%)
rename {reference => core/reference}/system-tables/table_engines.mdx (60%)
rename {reference => core/reference}/system-tables/table_functions.mdx (58%)
create mode 100644 core/reference/system-tables/tables.mdx
create mode 100644 core/reference/system-tables/text_log.mdx
rename {reference => core/reference}/system-tables/time_zones.mdx (91%)
rename {reference => core/reference}/system-tables/tokenizers.mdx (63%)
rename {reference => core/reference}/system-tables/trace_log.mdx (53%)
create mode 100644 core/reference/system-tables/transactions.mdx
create mode 100644 core/reference/system-tables/transactions_info_log.mdx
rename {reference => core/reference}/system-tables/unicode.mdx (94%)
create mode 100644 core/reference/system-tables/user_defined_functions.mdx
rename {reference => core/reference}/system-tables/user_directories.mdx (54%)
rename {reference => core/reference}/system-tables/user_processes.mdx (72%)
create mode 100644 core/reference/system-tables/users.mdx
create mode 100644 core/reference/system-tables/view_refreshes.mdx
rename {reference => core/reference}/system-tables/warnings.mdx (67%)
rename {reference => core/reference}/system-tables/workloads.mdx (62%)
rename {reference => core/reference}/system-tables/zeros.mdx (86%)
rename {reference => core/reference}/system-tables/zeros_mt.mdx (85%)
rename {reference => core/reference}/system-tables/zookeeper.mdx (100%)
rename {reference => core/reference}/system-tables/zookeeper_connection.mdx (55%)
rename {reference => core/reference}/system-tables/zookeeper_connection_log.mdx (78%)
create mode 100644 core/reference/system-tables/zookeeper_info.mdx
create mode 100644 core/reference/system-tables/zookeeper_log.mdx
rename {reference => core/reference}/system-tables/zookeeper_watches.mdx (57%)
delete mode 100644 customize-layout.js
delete mode 100644 get-started/quickstarts/_prerequisites/cloud_prerequisite.mdx
delete mode 100644 get-started/sample-datasets/index.mdx
delete mode 100644 get-started/setup/migration-guides/bigquery/index.mdx
delete mode 100644 get-started/setup/migration-guides/overview.mdx
delete mode 100644 get-started/setup/migration-guides/postgres/index.mdx
delete mode 100644 get-started/setup/overview.mdx
delete mode 100644 get-started/setup/self-managed/install.mdx
delete mode 100644 get-started/setup/self-managed/quick-install.mdx
delete mode 100644 guides/ai-ml/MCP/ai-agent-libraries/index.mdx
delete mode 100644 guides/ai-ml/index.mdx
delete mode 100644 guides/cloud-oss/data-modelling/index.mdx
delete mode 100644 guides/cloud-oss/examples/aggregate-function-combinators/maxSimpleState.mdx
delete mode 100644 guides/cloud/index.mdx
delete mode 100644 guides/data-modelling/deleting-data/index.mdx
delete mode 100644 guides/data-warehousing/index.mdx
delete mode 100644 guides/data-warehousing/reference/index.mdx
delete mode 100644 guides/data-warehousing/support-matrix.mdx
delete mode 100644 guides/observability/build-your-own/index.mdx
delete mode 100644 guides/performance-and-monitoring/index.mdx
delete mode 100644 guides/security/index.mdx
create mode 100644 integrations/clickpipes/navigation.json
delete mode 100644 integrations/clickpipes/postgres/maintenance.mdx
delete mode 100644 integrations/connectors/data-ingestion/GCP/index.mdx
delete mode 100644 integrations/connectors/data-ingestion/data-formats/json/intro.mdx
delete mode 100644 integrations/connectors/data-ingestion/mysql.mdx
delete mode 100644 integrations/connectors/data-ingestion/postgresql/connecting-to-postgresql.mdx
delete mode 100644 integrations/connectors/data-ingestion/postgresql/inserting-data.mdx
delete mode 100644 integrations/connectors/data-integrations/drivers-and-interfaces/native-clients-interfaces-index.mdx
delete mode 100644 integrations/connectors/data-integrations/drivers-and-interfaces/tcp.mdx
delete mode 100644 integrations/connectors/data-integrations/sql-clients/sql-console.mdx
create mode 100644 integrations/connectors/navigation.json
delete mode 100644 integrations/language-clients/java/client/v7.mdx
delete mode 100644 integrations/language-clients/java/client/v8.mdx
delete mode 100644 integrations/language-clients/java/jdbc/v7.mdx
delete mode 100644 integrations/language-clients/java/jdbc/v8.mdx
create mode 100644 integrations/language-clients/navigation.json
create mode 100644 products/README.md
create mode 100644 products/agentic-data-stack/navigation.json
create mode 100644 products/bring-your-own-cloud/navigation.json
create mode 100644 products/chdb/navigation.json
create mode 100644 products/clickhouse-private/navigation.json
rename {api-reference/hyperdx => products/clickstack/api-reference}/hyperdx-openapi.json (100%)
delete mode 100644 products/clickstack/deployment/hyperdx-clickhouse-cloud.mdx
delete mode 100644 products/clickstack/deployment/index.mdx
delete mode 100644 products/clickstack/home.mdx
delete mode 100644 products/clickstack/ingesting-data/kubernetes.mdx
rename products/clickstack/{ => managing}/config.mdx (94%)
rename products/clickstack/{managing.mdx => managing/overview.mdx} (97%)
rename products/clickstack/{ => managing}/ttl.mdx (86%)
create mode 100644 products/clickstack/navigation.json
delete mode 100644 products/clickstack/styles/clickstack-homepage.css
rename {api-reference/cloud => products/cloud/api-reference}/cloud-openapi.json (100%)
delete mode 100644 products/cloud/cloud/auto-scaling.mdx
delete mode 100644 products/cloud/cloud/backups.mdx
delete mode 100644 products/cloud/cloud/create-service.mdx
delete mode 100644 products/cloud/cloud/security.mdx
delete mode 100644 products/cloud/concepts-overview.mdx
delete mode 100644 products/cloud/concepts.mdx
rename {use-cases => products/cloud/features}/ai-ml/aichat/customizing-semantic-layer.mdx (100%)
rename {use-cases => products/cloud/features}/ai-ml/aichat/using-ai-chat.mdx (100%)
rename {use-cases/ai => products/cloud/features/ai-ml}/mcp/remote-mcp.mdx (98%)
delete mode 100644 products/cloud/guides/infrastructure/deployment-options/byoc/architecture.mdx
delete mode 100644 products/cloud/guides/infrastructure/deployment-options/byoc/faq/aws.mdx
delete mode 100644 products/cloud/guides/infrastructure/deployment-options/byoc/observability/aws.mdx
delete mode 100644 products/cloud/guides/infrastructure/deployment-options/byoc/onboarding/aws.mdx
delete mode 100644 products/cloud/home.mdx
create mode 100644 products/cloud/navigation.json
create mode 100644 products/managed-postgres/navigation.json
delete mode 100644 reference/datalakes.mdx
delete mode 100644 reference/engines/database-engines/index.mdx
delete mode 100644 reference/engines/table-engines/index.mdx
delete mode 100644 reference/engines/table-engines/integrations/index.mdx
delete mode 100644 reference/engines/table-engines/mergetree-family/index.mdx
delete mode 100644 reference/engines/table-engines/special/index.mdx
delete mode 100644 reference/formats/Avro/_snippets/data-types-matching.mdx
delete mode 100644 reference/formats/CSV/CSV.mdx
delete mode 100644 reference/formats/JSON/format-settings.mdx
delete mode 100644 reference/formats/MsgPack.mdx
delete mode 100644 reference/formats/Pretty/_snippets/common-pretty-format-settings.mdx
delete mode 100644 reference/formats/RowBinary/_snippets/common-row-binary-format-settings.mdx
delete mode 100644 reference/formats/index.mdx
delete mode 100644 reference/functions/aggregate-functions/reference/index.mdx
delete mode 100644 reference/functions/aggregate-functions/reference/median.mdx
delete mode 100644 reference/functions/index.mdx
delete mode 100644 reference/functions/regular-functions/geo/index.mdx
delete mode 100644 reference/functions/regular-functions/regular-functions-index.mdx
delete mode 100644 reference/functions/table-functions/index.mdx
delete mode 100644 reference/home.mdx
delete mode 100644 reference/index.mdx
delete mode 100644 reference/settings/beta-and-experimental-features.mdx
delete mode 100644 reference/settings/index.mdx
delete mode 100644 reference/statements/alter/apply-deleted-mask.mdx
delete mode 100644 reference/statements/create/dictionary/layouts/overview.mdx
delete mode 100644 reference/statements/create/index.mdx
delete mode 100644 reference/statements/index.mdx
delete mode 100644 reference/system-tables/asynchronous_insert_log.mdx
delete mode 100644 reference/system-tables/asynchronous_inserts.mdx
delete mode 100644 reference/system-tables/azure_queue_log.mdx
delete mode 100644 reference/system-tables/azure_queue_metadata_cache.mdx
delete mode 100644 reference/system-tables/azure_queue_settings.mdx
delete mode 100644 reference/system-tables/background_schedule_pool.mdx
delete mode 100644 reference/system-tables/background_schedule_pool_log.mdx
delete mode 100644 reference/system-tables/backups.mdx
delete mode 100644 reference/system-tables/blob_storage_log.mdx
delete mode 100644 reference/system-tables/certificates.mdx
delete mode 100644 reference/system-tables/clusters.mdx
delete mode 100644 reference/system-tables/columns.mdx
delete mode 100644 reference/system-tables/crash_log.mdx
delete mode 100644 reference/system-tables/database_replicas.mdx
delete mode 100644 reference/system-tables/detached_parts.mdx
delete mode 100644 reference/system-tables/dictionaries.mdx
delete mode 100644 reference/system-tables/disks.mdx
delete mode 100644 reference/system-tables/distribution_queue.mdx
delete mode 100644 reference/system-tables/dropped_tables_parts.mdx
delete mode 100644 reference/system-tables/error_log.mdx
delete mode 100644 reference/system-tables/filesystem_cache.mdx
delete mode 100644 reference/system-tables/filesystem_cache_log.mdx
delete mode 100644 reference/system-tables/filesystem_cache_settings.mdx
delete mode 100644 reference/system-tables/filesystem_read_prefetches_log.mdx
delete mode 100644 reference/system-tables/formats.mdx
delete mode 100644 reference/system-tables/functions.mdx
delete mode 100644 reference/system-tables/graphite_retentions.mdx
delete mode 100644 reference/system-tables/histogram_metric_log.mdx
delete mode 100644 reference/system-tables/iceberg_history.mdx
delete mode 100644 reference/system-tables/index.mdx
delete mode 100644 reference/system-tables/information_schema.mdx
delete mode 100644 reference/system-tables/kafka_consumers.mdx
delete mode 100644 reference/system-tables/masking_policies.mdx
delete mode 100644 reference/system-tables/merges.mdx
delete mode 100644 reference/system-tables/metric_log.mdx
delete mode 100644 reference/system-tables/moves.mdx
delete mode 100644 reference/system-tables/mutations.mdx
delete mode 100644 reference/system-tables/opentelemetry_span_log.mdx
delete mode 100644 reference/system-tables/part_log.mdx
delete mode 100644 reference/system-tables/part_moves_between_shards.mdx
delete mode 100644 reference/system-tables/parts.mdx
delete mode 100644 reference/system-tables/parts_columns.mdx
delete mode 100644 reference/system-tables/predicate_statistics_log.mdx
delete mode 100644 reference/system-tables/processes.mdx
delete mode 100644 reference/system-tables/processors_profile_log.mdx
delete mode 100644 reference/system-tables/projection_parts.mdx
delete mode 100644 reference/system-tables/projection_parts_columns.mdx
delete mode 100644 reference/system-tables/query_cache.mdx
delete mode 100644 reference/system-tables/query_log.mdx
delete mode 100644 reference/system-tables/query_metric_log.mdx
delete mode 100644 reference/system-tables/query_thread_log.mdx
delete mode 100644 reference/system-tables/query_views_log.mdx
delete mode 100644 reference/system-tables/quota_limits.mdx
delete mode 100644 reference/system-tables/quota_usage.mdx
delete mode 100644 reference/system-tables/quotas.mdx
delete mode 100644 reference/system-tables/quotas_usage.mdx
delete mode 100644 reference/system-tables/replicas.mdx
delete mode 100644 reference/system-tables/replicated_fetches.mdx
delete mode 100644 reference/system-tables/replication_queue.mdx
delete mode 100644 reference/system-tables/resources.mdx
delete mode 100644 reference/system-tables/role_grants.mdx
delete mode 100644 reference/system-tables/roles.mdx
delete mode 100644 reference/system-tables/row_policies.mdx
delete mode 100644 reference/system-tables/s3_queue_settings.mdx
delete mode 100644 reference/system-tables/s3queue_log.mdx
delete mode 100644 reference/system-tables/s3queue_metadata_cache.mdx
delete mode 100644 reference/system-tables/scheduler.mdx
delete mode 100644 reference/system-tables/session_log.mdx
delete mode 100644 reference/system-tables/settings_profile_elements.mdx
delete mode 100644 reference/system-tables/settings_profiles.mdx
delete mode 100644 reference/system-tables/tables.mdx
delete mode 100644 reference/system-tables/text_log.mdx
delete mode 100644 reference/system-tables/transactions.mdx
delete mode 100644 reference/system-tables/transactions_info_log.mdx
delete mode 100644 reference/system-tables/user_defined_functions.mdx
delete mode 100644 reference/system-tables/users.mdx
delete mode 100644 reference/system-tables/view_refreshes.mdx
delete mode 100644 reference/system-tables/zookeeper_info.mdx
delete mode 100644 reference/system-tables/zookeeper_log.mdx
create mode 100644 resources/about/navigation.json
rename resources/changelogs/{cloud.mdx => cloud/2026.mdx} (97%)
create mode 100644 resources/changelogs/navigation.json
delete mode 100644 resources/contribute/index.mdx
delete mode 100644 resources/contribute/native-protocol/columns.mdx
rename resources/{contribute => develop-contribute/build}/build-cross-arm.mdx (100%)
rename resources/{contribute => develop-contribute/build}/build-cross-loongarch.mdx (100%)
rename resources/{contribute => develop-contribute/build}/build-cross-osx.mdx (94%)
rename resources/{contribute => develop-contribute/build}/build-cross-riscv.mdx (100%)
rename resources/{contribute => develop-contribute/build}/build-cross-s390x.mdx (97%)
rename resources/{contribute => develop-contribute/build}/build-e2k.mdx (100%)
rename resources/{contribute => develop-contribute/build}/build-osx.mdx (95%)
rename resources/{contribute => develop-contribute/build}/build.mdx (98%)
rename resources/{ => develop-contribute}/contribute/backports.mdx (100%)
rename resources/{ => develop-contribute}/contribute/building-and-benchmarking-deflate-qpl.mdx (94%)
rename resources/{ => develop-contribute}/contribute/continuous-integration.mdx (94%)
rename resources/{ => develop-contribute}/contribute/contrib.mdx (100%)
rename resources/{ => develop-contribute}/contribute/integrating-rust-libraries.mdx (100%)
rename resources/{ => develop-contribute}/contribute/profile-guided-optimization.mdx (100%)
rename resources/{ => develop-contribute}/contribute/style.mdx (99%)
rename resources/{ => develop-contribute}/contribute/tests.mdx (99%)
rename resources/{contribute => develop-contribute}/images/concurrency.png (100%)
rename resources/{contribute => develop-contribute}/images/find-build-artifact.png (100%)
create mode 100644 resources/develop-contribute/index.mdx
rename resources/{contribute => develop-contribute/introduction}/architecture.mdx (98%)
rename resources/{contribute => develop-contribute/introduction}/developer-instruction.mdx (98%)
rename resources/{contribute => develop-contribute}/native-protocol/basics.mdx (100%)
rename resources/{contribute => develop-contribute}/native-protocol/client.mdx (98%)
create mode 100644 resources/develop-contribute/native-protocol/columns.mdx
rename resources/{contribute => develop-contribute}/native-protocol/hash.mdx (100%)
rename resources/{contribute => develop-contribute}/native-protocol/server.mdx (95%)
create mode 100644 resources/develop-contribute/navigation.json
rename resources/{contribute => develop-contribute}/roadmap.mdx (100%)
create mode 100644 resources/support-center/navigation.json
rename {get-started/oss/starter-guides => resources/support-center/troubleshooting}/troubleshooting.mdx (89%)
delete mode 100644 scripts/__pycache__/generate-slug-map.cpython-314.pyc
delete mode 100644 scripts/__pycache__/update_release_notes.cpython-314.pyc
delete mode 100644 use-cases/index.mdx
diff --git a/.claude/skills/migrate-docusaurus-to-mintlify/SKILL.md b/.claude/skills/migrate-docusaurus-to-mintlify/SKILL.md
index ac1a5c9f..3e60a400 100644
--- a/.claude/skills/migrate-docusaurus-to-mintlify/SKILL.md
+++ b/.claude/skills/migrate-docusaurus-to-mintlify/SKILL.md
@@ -7,7 +7,7 @@ description: Use when migrating ClickHouse docs pages from Docusaurus (clickhous
This skill describes the deterministic rules for converting a Docusaurus `.md`/`.mdx` page (source: `~/Desktop/clickhouse-docs/docs/**`) into a Mintlify page in this repo. The reference implementation lives at `~/Desktop/clickhouse-main` (a Mintlify-mapped snapshot Mintlify produced) — when in doubt, diff against it.
-The migration is driven by a script at `scripts/migrate.py` (see the "Script" section). When the script can't decide, it leaves the original content with a `` marker; resolve those by hand using the rules below.
+The migration is driven by a script at `_migration/migrate.py` (see the "Script" section). When the script can't decide, it leaves the original content with a `` marker; resolve those by hand using the rules below.
## Hard rules
@@ -176,7 +176,7 @@ Snippet partials live at `docs/**/_snippets/*.md` in Docusaurus and migrate to `
## 9. Slug map CSV (QA aid)
-`scripts/generate-slug-map.py` writes `slug-map.csv` at the repo root. It pairs every Docusaurus slug with its Mintlify URL so a reviewer can open both pages side-by-side.
+`_migration/generate-slug-map.py` writes `_migration/slug-map.csv`. It pairs every Docusaurus slug with its Mintlify URL so a reviewer can open both pages side-by-side.
How it builds rows:
1. Walk the Docusaurus repo (`--docusaurus`, default `~/Desktop/clickhouse-docs`) and collect every `slug:`.
@@ -197,14 +197,14 @@ Tracking columns:
- `migrated_at` — UTC ISO timestamp of the last migration. Diagnostic only.
- `manually_checked` (default `false`) — flip to `true` once a human has opened `old_url` and `new_url` side-by-side and confirmed parity. Never written by tools.
-**Staleness rule:** a page is up-to-date iff `migrated == true` AND `migrated_hash == source_hash`. Any drift means the Docusaurus source has changed since the last migration → the page should be re-migrated. `scripts/migrate.py` enforces this by default; pass `--force` to override.
+**Staleness rule:** a page is up-to-date iff `migrated == true` AND `migrated_hash == source_hash`. Any drift means the Docusaurus source has changed since the last migration → the page should be re-migrated. `_migration/migrate.py` enforces this by default; pass `--force` to override.
The generator preserves all tracking columns (`migrated`, `migrated_hash`, `migrated_at`, `manually_checked`) when re-run, so it's safe to regenerate at any time without losing progress.
Regenerate any time pages move or slugs change:
```
-python scripts/generate-slug-map.py
-python scripts/generate-slug-map.py --docusaurus ~/Desktop/clickhouse-docs \
+python _migration/generate-slug-map.py
+python _migration/generate-slug-map.py --docusaurus ~/Desktop/clickhouse-docs \
--mintlify-base https://private-7c7dfe99.mintlify.app
```
@@ -220,19 +220,19 @@ Do not change these inside the migration pass:
## Script
-The migration script is `scripts/migrate.py`. Invocation:
+The migration script is `_migration/migrate.py`. Invocation:
```
-python scripts/migrate.py # one file or dir
-python scripts/migrate.py --all # whole repo
-python scripts/migrate.py --dry-run
-python scripts/migrate.py --all --force # re-migrate even up-to-date pages
+python _migration/migrate.py # one file or dir
+python _migration/migrate.py --all # whole repo
+python _migration/migrate.py --dry-run
+python _migration/migrate.py --all --force # re-migrate even up-to-date pages
```
**Standard workflow (incremental):**
```
-python scripts/generate-slug-map.py # refresh source_hash for all pages
-python scripts/migrate.py --all # process only pages whose source changed
+python _migration/generate-slug-map.py # refresh source_hash for all pages
+python _migration/migrate.py --all # process only pages whose source changed
```
`generate-slug-map.py` recomputes every page's `source_hash`; `migrate.py` skips any page where `migrated=true` AND `migrated_hash == source_hash`. After a Docusaurus repo pull, run both in sequence and only the changed pages are re-touched.
diff --git a/AGENTS.md b/AGENTS.md
index f2a8321d..0a517b1e 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -1,10 +1,9 @@
## ClickHouse documentation
-ClickHouse docs are stored in the `/docs` folder and use [Mintlify](https://www.mintlify.com/) to host the docs.
+ClickHouse docs are stored in this folder. The documentation site at clickhouse.com/docs is hosted using the [Mintlify](https://www.mintlify.com/) documentation platform.
-- Always make updates only to the English documentation in `/docs`. There is no need to update files in the `i18n` folder as an agent will handle the translation separately.
-- Documentation inside of `{/*AUTOGENERATED_START*/}` and `{/*AUTOGENERATED_END*/}` tags is generated from ClickHouse system tables.
- It should not be edited directly, but rather the source file should be updated in one of the following locations:
+- Always make updates only to the english documentation in `/docs` (ignore `/i18n`). There is no need to update files in the `i18n` folder as an agent will handle the translation separately.
+- Documentation inside of `{/*AUTOGENERATED_START*/}` and `{/*AUTOGENERATED_END*/}` tags is generated from ClickHouse system tables. It should not be edited directly, but rather the source file should be updated:
- `/src/Functions`
## PR instructions
diff --git a/_migration/README.md b/_migration/README.md
new file mode 100644
index 00000000..360c5cad
--- /dev/null
+++ b/_migration/README.md
@@ -0,0 +1,26 @@
+# Migration
+
+One-shot tooling and data used to migrate the ClickHouse docs from Docusaurus
+to Mintlify. **This entire folder can be removed once the migration is
+complete** — nothing in the live site depends on it at runtime.
+
+## Contents
+
+- `slug-map.csv` — pairing of every Docusaurus slug → Mintlify file/URL, with
+ source/migrated hashes for staleness tracking.
+- `slug-aliases.csv` — manually-reviewed aliases for slugs that couldn't be
+ resolved automatically.
+- `migrate.py` — main migration script. Reads `slug-map.csv`, applies
+ Mintlify-necessary transforms, writes the result.
+- `generate-slug-map.py` — regenerates `slug-map.csv` from upstream Docusaurus
+ + this repo's current layout.
+- `apply-slug-aliases.py` — rewrites `` markers
+ using `slug-aliases.csv`.
+- `suggest-slug-aliases.py` — proposes alias candidates for unresolved slugs.
+- `match_slugless.py` — finds Mintlify pages with no upstream slug match.
+- `verify_mapping.py` — sanity-checks the slug map for duplicates/drift.
+- `find_dup_imports.py` — detects MDX import conflicts caused by Mintlify
+ hoisting snippet imports into the parent bundle.
+
+See `.claude/skills/migrate-docusaurus-to-mintlify/SKILL.md` for the
+migration workflow.
\ No newline at end of file
diff --git a/scripts/apply-slug-aliases.py b/_migration/apply-slug-aliases.py
similarity index 93%
rename from scripts/apply-slug-aliases.py
rename to _migration/apply-slug-aliases.py
index f32cbd3b..5015f413 100644
--- a/scripts/apply-slug-aliases.py
+++ b/_migration/apply-slug-aliases.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python3
-"""Rewrite `` markers using scripts/slug-aliases.csv.
+"""Rewrite `` markers using _migration/slug-aliases.csv.
Reads the alias CSV produced by suggest-slug-aliases.py and rewrites every
marker whose old_slug appears with a non-empty `suggested_target`.
@@ -11,9 +11,9 @@
Fragments (`#anchor`) on the original link are preserved.
Usage:
- python scripts/apply-slug-aliases.py
- python scripts/apply-slug-aliases.py --dry-run
- python scripts/apply-slug-aliases.py --include-ambiguous
+ python _migration/apply-slug-aliases.py
+ python _migration/apply-slug-aliases.py --dry-run
+ python _migration/apply-slug-aliases.py --include-ambiguous
"""
from __future__ import annotations
@@ -47,7 +47,7 @@ def split_frag(href: str) -> tuple[str, str]:
def main():
ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter)
- ap.add_argument("--aliases", type=Path, default=THIS_REPO / "scripts" / "slug-aliases.csv")
+ ap.add_argument("--aliases", type=Path, default=THIS_REPO / "_migration" / "slug-aliases.csv")
ap.add_argument("--dry-run", action="store_true")
ap.add_argument("--include-ambiguous", action="store_true",
help="also apply basename-ambiguous suggestions")
diff --git a/scripts/find_dup_imports.py b/_migration/find_dup_imports.py
similarity index 98%
rename from scripts/find_dup_imports.py
rename to _migration/find_dup_imports.py
index 32d36edc..fd4bd6fe 100644
--- a/scripts/find_dup_imports.py
+++ b/_migration/find_dup_imports.py
@@ -116,7 +116,7 @@ def main():
pages = []
for p in REPO.rglob("*.mdx"):
rel = p.relative_to(REPO).as_posix()
- if rel.startswith((".claude/", "node_modules/", "scripts/")):
+ if rel.startswith((".claude/", "node_modules/", "_site/", "_migration/")):
continue
pages.append(p)
diff --git a/_migration/find_orphans.py b/_migration/find_orphans.py
new file mode 100644
index 00000000..56a6f7d8
--- /dev/null
+++ b/_migration/find_orphans.py
@@ -0,0 +1,106 @@
+#!/usr/bin/env python3
+"""Find .mdx pages on disk that have no entry in docs.json."""
+import json
+from collections import defaultdict
+from pathlib import Path
+
+REPO = Path("/Users/sstruw/Desktop/mintlify-docs-dev")
+SKIP_DIRS = {
+ ".git", "node_modules", ".playwright-mcp", ".idea", ".mintlify", ".claude",
+ "snippets", "_snippets", "_site", "_migration",
+ "i18n", # localization, not in default nav
+}
+SKIP_NAMES = {"AGENTS.md", "README.md", "changelog_entry_guidelines.mdx"}
+# Path prefixes whose pages are intentionally outside docs.json (e.g. wired
+# via a dynamic explorer component instead of the sidebar nav).
+SKIP_PREFIXES = (
+ "core/get-started/quickstarts/",
+)
+
+
+def collect_disk_pages() -> set[str]:
+ pages = set()
+ for path in REPO.rglob("*"):
+ if not path.is_file():
+ continue
+ if path.suffix not in {".mdx", ".md"}:
+ continue
+ parts = path.relative_to(REPO).parts
+ if set(parts) & SKIP_DIRS:
+ continue
+ # Skip partials (underscore-prefixed file or any underscore-prefixed dir)
+ if any(p.startswith("_") for p in parts):
+ continue
+ rel = path.relative_to(REPO).as_posix()
+ if rel in SKIP_NAMES or path.name == "README.md":
+ continue
+ ref = rel[:-4] if rel.endswith(".mdx") else rel[:-3]
+ if any(ref.startswith(p) for p in SKIP_PREFIXES):
+ continue
+ pages.add(ref)
+ return pages
+
+
+def collect_docs_json_refs(node) -> set[str]:
+ refs = set()
+
+ def visit(obj):
+ if isinstance(obj, list):
+ for item in obj:
+ visit(item)
+ elif isinstance(obj, dict):
+ # Follow $ref includes (e.g. products/kubernetes-operator/navigation.json)
+ if "$ref" in obj:
+ ref_path = obj["$ref"]
+ ref_file = REPO / ref_path
+ if ref_file.exists():
+ visit(json.loads(ref_file.read_text()))
+ return
+ for k, v in obj.items():
+ if k in ("pages", "groups"):
+ visit(v)
+ elif k == "root" and isinstance(v, str):
+ refs.add(v)
+ elif isinstance(v, (dict, list)):
+ visit(v)
+ elif isinstance(obj, str):
+ if obj.startswith(("http://", "https://", "/")):
+ return
+ if obj.endswith((".json", ".js", ".css", ".svg", ".png", ".jpg", ".ico")):
+ return
+ refs.add(obj)
+
+ visit(node)
+ return refs
+
+
+def main():
+ docs_json = json.loads((REPO / "docs.json").read_text())
+ disk = collect_disk_pages()
+ referenced = collect_docs_json_refs(docs_json)
+
+ # A page referenced as `X` also covers `X/index` (Mintlify auto-routes both)
+ expanded = set(referenced)
+ for r in referenced:
+ expanded.add(r + "/index")
+
+ orphans = sorted(disk - expanded)
+
+ # Group by top-level section
+ by_section = defaultdict(list)
+ for o in orphans:
+ section = o.split("/", 1)[0]
+ by_section[section].append(o)
+
+ print(f"Disk pages: {len(disk)}")
+ print(f"docs.json refs: {len(referenced)}")
+ print(f"Orphans: {len(orphans)}\n")
+ for section in sorted(by_section):
+ print(f"=== {section} ({len(by_section[section])}) ===")
+ for p in by_section[section]:
+ print(f" {p}")
+ print()
+
+
+if __name__ == "__main__":
+ main()
\ No newline at end of file
diff --git a/scripts/generate-slug-map.py b/_migration/generate-slug-map.py
similarity index 97%
rename from scripts/generate-slug-map.py
rename to _migration/generate-slug-map.py
index 9044da18..beea4c77 100644
--- a/scripts/generate-slug-map.py
+++ b/_migration/generate-slug-map.py
@@ -17,8 +17,8 @@
slug field.
Usage:
- python scripts/generate-slug-map.py
- python scripts/generate-slug-map.py --docusaurus ~/Desktop/clickhouse-docs
+ python _migration/generate-slug-map.py
+ python _migration/generate-slug-map.py --docusaurus ~/Desktop/clickhouse-docs
"""
from __future__ import annotations
@@ -117,7 +117,7 @@ def main():
help="path to clickhouse-docs (Docusaurus) repo")
ap.add_argument("--mintlify", type=Path, default=THIS_REPO,
help="path to Mintlify repo (default: this repo)")
- ap.add_argument("--out", type=Path, default=THIS_REPO / "slug-map.csv")
+ ap.add_argument("--out", type=Path, default=THIS_REPO / "_migration" / "slug-map.csv")
ap.add_argument("--old-base", default="https://clickhouse.com/docs")
ap.add_argument("--mintlify-base", default="https://private-7c7dfe99.mintlify.app")
args = ap.parse_args()
diff --git a/scripts/match_slugless.py b/_migration/match_slugless.py
similarity index 100%
rename from scripts/match_slugless.py
rename to _migration/match_slugless.py
diff --git a/scripts/migrate.py b/_migration/migrate.py
similarity index 94%
rename from scripts/migrate.py
rename to _migration/migrate.py
index 8f8a9f4d..c4444d42 100644
--- a/scripts/migrate.py
+++ b/_migration/migrate.py
@@ -2,14 +2,14 @@
"""Migrate Docusaurus pages in this repo into Mintlify form.
Implements the rules in .claude/skills/migrate-docusaurus-to-mintlify/SKILL.md.
-Reads slug-map.csv (from scripts/generate-slug-map.py) for slug -> URL lookups
+Reads slug-map.csv (from _migration/generate-slug-map.py) for slug -> URL lookups
and source-hash tracking.
Usage:
- python scripts/migrate.py # one file or directory
- python scripts/migrate.py --all # every page in this repo
- python scripts/migrate.py --dry-run # show what would change
- python scripts/migrate.py --all --force # re-migrate even if up-to-date
+ python _migration/migrate.py # one file or directory
+ python _migration/migrate.py --all # every page in this repo
+ python _migration/migrate.py --dry-run # show what would change
+ python _migration/migrate.py --all --force # re-migrate even if up-to-date
Incremental behavior:
A page is skipped when slug-map.csv shows migrated=true AND its stored
@@ -41,7 +41,7 @@
RUNNABLE_IMPORT = 'import { RunnableCode } from "/snippets/components/RunnableCode/RunnableCode.jsx";'
IMAGE_IMPORT = 'import { Image } from "/snippets/components/Image.jsx";'
ADMON_TAG = {"note": "Note", "tip": "Tip", "info": "Info", "warning": "Warning",
- "caution": "Warning", "danger": "Warning"}
+ "caution": "Warning", "danger": "Warning", "important": "Warning"}
# ----- lookups ---------------------------------------------------------------
@@ -115,7 +115,7 @@ def build_lookups(slug_map_csv: Path) -> tuple[Lookups, list[dict]]:
# alias's `old_slug` so the in-process link resolver can apply aliases
# (the apply-slug-aliases.py script handles markers in already-written
# files; this enables resolution during migration too).
- aliases_csv = THIS_REPO / "scripts" / "slug-aliases.csv"
+ aliases_csv = THIS_REPO / "_migration" / "slug-aliases.csv"
if aliases_csv.exists():
HIGH = {"basename-unique", "basename+parent-unique", "redirect-direct",
"redirect-mapped", "manual"}
@@ -365,7 +365,7 @@ def _override_newjson(text: str) -> str:
)
replacement = (
'\n'
+ 'href="/core/concepts/best-practices/json-type" icon="book">\n'
' Check out our JSON best practice guide for examples, advanced features '
'and considerations for using the JSON type.\n'
'\n\n'
@@ -398,10 +398,12 @@ def _override_librechat(text: str) -> str:
def _override_java_client_versions(text: str) -> str:
"""Replace Docusaurus ...
- with Mintlify blocks, one per version.
+ with Mintlify blocks, one per version.
+ is a built-in Mintlify component — no import required. It renders a
+ version-switcher dropdown using the `title` prop as the label.
The `versions={[ {version: 'v0.8+'}, {version: 'v0.7.x'} ]}` array on the
- opening tag drives the `view=` attribute on each , in order.
+ opening tag drives the `title=` attribute on each , in order.
"""
# Drop the now-stale MIGRATE comments left for the deleted imports.
text = re.sub(
@@ -426,12 +428,12 @@ def _override_java_client_versions(text: str) -> str:
text = open_re.sub("", text, count=1)
text = close_re.sub("", text, count=1)
- # Replace each / in order with /.
+ # Replace each / in order with /.
idx = [0]
def open_repl(_):
v = versions[idx[0]] if idx[0] < len(versions) else f"v{idx[0]}"
idx[0] += 1
- return f''
+ return f''
text = version_open_re.sub(open_repl, text)
text = version_close_re.sub("", text)
return text
@@ -515,13 +517,111 @@ def _override_cloud_changelog_rss(text: str) -> str:
)
+def _override_cloud_changelog_wrap_updates(text: str) -> str:
+ """Wrap each date section with Mintlify components.
+
+ Upstream Docusaurus format (after standard transforms):
+ ## May 8, 2026 {#2026-05-08}
+
+ ### Feature name {#feature-slug}
+ Content...
+
+ Mintlify target format:
+
+
+ ### Feature name
+ Content...
+
+
+
+ Also strips {#anchor} IDs from all headings since they become noise in
+ the changelog view.
+ """
+ # Strip {#anchor} IDs from all headings — they become the Update label for
+ # ## headings and are decorative noise inside Update blocks for ### headings.
+ text = re.sub(r"^(#{1,6} .*?)\s+\{#[^}]+\}\s*$", r"\1", text, flags=re.MULTILINE)
+
+ # Split on ## date headings — "## Month Day, Year" or "## Month Year"
+ date_heading_re = re.compile(
+ r"^## ([A-Z][a-z]+ \d{1,2},? \d{4})\s*$",
+ re.MULTILINE,
+ )
+ parts = date_heading_re.split(text)
+ if len(parts) < 3:
+ return text # no date headings found — leave unchanged
+
+ result = [parts[0]]
+ for i in range(1, len(parts), 2):
+ label = parts[i].strip()
+ content = parts[i + 1] if i + 1 < len(parts) else ""
+ result.append(f'\n\n\n{content.strip(chr(10))}\n\n\n')
+
+ return "".join(result)
+
+
+def _override_cloud_changelog_2026(text: str) -> str:
+ """Chain the RSS-admonition removal and the wrapper for 2026."""
+ return _override_cloud_changelog_wrap_updates(_override_cloud_changelog_rss(text))
+
+
+def _override_reference_home(text: str) -> str:
+ """Replace the upstream SQL Reference index with a curated cards landing page.
+
+ The upstream content is a plain SQL Reference intro that doesn't reflect the
+ broader Mintlify reference section structure. This override replaces it with
+ a CardGroup landing so re-migration stays idempotent — force-migrating will
+ always produce the same curated page regardless of upstream edits.
+ """
+ # Preserve the canonical slug from the upstream frontmatter.
+ slug_match = re.search(r"^slug:\s*(.+)$", text, re.MULTILINE)
+ slug = slug_match.group(1).strip() if slug_match else "/sql-reference"
+
+ return f"""---
+slug: {slug}
+title: 'Reference'
+sidebarTitle: 'Home'
+description: 'Reference documentation for ClickHouse — SQL statements, data types, engines, functions, formats, settings, and system tables.'
+keywords: ['clickhouse', 'reference', 'sql', 'data types', 'engines', 'functions', 'formats', 'settings']
+doc_type: 'landing-page'
+---
+
+
+
+ SQL statements, clauses, operators, and syntax reference.
+
+
+ All supported data types including numeric, string, date/time, arrays, maps, and more.
+
+
+ Table and database engine reference — MergeTree family, Log, Integration, and Special engines.
+
+
+ Regular, aggregate, table, and window functions.
+
+
+ Input and output format reference for all supported data formats.
+
+
+ Server, session, and MergeTree settings reference.
+
+
+ System tables for monitoring, diagnostics, and introspection.
+
+
+ Data lake integration reference — Iceberg, Delta Lake, and Hudi.
+
+
+"""
+
+
POST_TRANSFORM_OVERRIDES: dict[str, callable] = {
"docs/sql-reference/data-types/newjson.md": _override_newjson,
"docs/use-cases/AI_ML/MCP/03_librechat.md": _override_librechat,
"docs/integrations/language-clients/java/client/client.mdx": _override_java_client_versions,
"docs/integrations/language-clients/java/jdbc/jdbc.mdx": _override_java_client_versions,
"docs/integrations/data-ingestion/gcs/index.md": _override_gcs_s3_link,
- "docs/cloud/reference/01_changelog/01_cloud_changelog/2026.md": _override_cloud_changelog_rss,
+ "docs/cloud/reference/01_changelog/01_cloud_changelog/2026.md": _override_cloud_changelog_2026,
+ "docs/sql-reference/index.md": _override_reference_home,
"docs/getting-started/install/install.mdx": _override_install_selector,
"docs/integrations/data-ingestion/clickpipes/mysql/source/rds_maria.md": _override_rds_maria_unclosed_fence,
"docs/integrations/data-ingestion/data-formats/json/formats.md": _override_formats_arrays_jsonl,
@@ -808,7 +908,7 @@ def replace(m: re.Match) -> str:
# ----- admonitions -----------------------------------------------------------
ADMON_RE = re.compile(
- r"^[ \t]*:::(?Pnote|tip|info|warning|caution|danger)"
+ r"^[ \t]*:::(?Pnote|tip|info|warning|caution|danger|important)"
r"(?:\[(?P[^\]]+)\]| +(?P[^\n]+))?[ \t]*\n"
r"(?P.*?)"
r"^[ \t]*:::+[ \t]*$", # tolerate upstream typos like `::::`; do not match \n in trailing whitespace — it eats a blank line
@@ -1649,7 +1749,7 @@ def migrate_file(path: Path, lk: Lookups, force: bool, dry_run: bool, docusaurus
if docs_root.exists():
# Two-pass: first try direct suffix-from-root (same path layout),
# then try basename match anywhere in docs/ (handles dir renames
- # like interfaces/ -> reference/).
+ # like interfaces/ -> core/reference/).
for start in range(len(rel_parts)):
cand_md = docs_root / Path(*rel_parts[start:])
cand_md = cand_md.with_suffix(".md") if cand_md.suffix == ".mdx" else cand_md
@@ -1789,7 +1889,7 @@ def migrate_file(path: Path, lk: Lookups, force: bool, dry_run: bool, docusaurus
# Bridges the Docusaurus pattern of importing one .md page inline into
# another (`@site/docs/sql-reference/statements/truncate.md`). Mintlify
# can't import full pages, so this snippet holds the SQL-ref body and is
- # consumed by `concepts/operations/delete/truncate.mdx`. Re-migrating it
+ # consumed by `concepts/features/operations/delete/truncate.mdx`. Re-migrating it
# would replace the body with the wrapper page's content and break the
# render.
"snippets/truncate.mdx",
@@ -1900,7 +2000,7 @@ def main():
ap.add_argument("--all", action="store_true", help="migrate every page in this repo")
ap.add_argument("--dry-run", action="store_true")
ap.add_argument("--force", action="store_true", help="re-migrate pages even if up-to-date")
- ap.add_argument("--slug-map", type=Path, default=THIS_REPO / "slug-map.csv")
+ ap.add_argument("--slug-map", type=Path, default=THIS_REPO / "_migration" / "slug-map.csv")
ap.add_argument("--docusaurus", type=Path, default=DEFAULT_DOCUSAURUS,
help="path to the clickhouse-docs (Docusaurus) repo — content source of truth")
ap.add_argument("--sync-assets", action="store_true",
@@ -1920,7 +2020,7 @@ def main():
if not args.all and not args.path:
ap.error("provide a path or pass --all (or --sync-assets)")
if not args.slug_map.exists():
- ap.error(f"slug-map.csv not found at {args.slug_map}; run scripts/generate-slug-map.py first")
+ ap.error(f"slug-map.csv not found at {args.slug_map}; run _migration/generate-slug-map.py first")
target = None
if args.path:
diff --git a/scripts/slug-aliases.csv b/_migration/slug-aliases.csv
similarity index 60%
rename from scripts/slug-aliases.csv
rename to _migration/slug-aliases.csv
index db65b043..f41bd18c 100644
--- a/scripts/slug-aliases.csv
+++ b/_migration/slug-aliases.csv
@@ -1,654 +1,654 @@
-old_slug,count,suggested_target,confidence,alternates
-https://clickhouse.com/docs/knowledgebase/count-parts-by-type,1,/resources/support-center/knowledge-base/troubleshooting/count-parts-by-type,manual,
-/integrations/language-clients/java/jdbc-v1,1,/integrations/language-clients/java/jdbc,manual,
-/knowledgebase/async_vs_optimize_read_in_order,1,/resources/support-center/knowledge-base/performance-optimization/async-vs-optimize-read-in-order,manual,
-/tutorial.md,1,/get-started/quickstarts/tutorial,manual,
-/operations/utilities/clickhouse-local,1,/concepts/features/tools-and-utilities/clickhouse-local,manual,
-https://clickhouse.com/docs/knowledgebase/terraform_example,1,/resources/support-center/knowledge-base/integrations/terraform-example,manual,
-/cloud/getting-started/quick-start/cloud,1,/get-started/setup/cloud,manual,
-https://clickhouse.com/docs/knowledgebase/why-clickhouse-is-so-fast,1,/get-started/about/why-clickhouse-is-so-fast,manual,
-/knowledgebase/why-clickhouse-is-so-fast,1,/get-started/about/why-clickhouse-is-so-fast,manual,
-/sql-reference,1,/reference/home,manual,
-/faq/integration/oracle-odbc.md,1,/resources/support-center/knowledge-base/integrations/oracle-odbc,manual,
-/faq/integration/oracle-odbc,1,/resources/support-center/knowledge-base/integrations/oracle-odbc,manual,
-/knowledgebase/view_number_of_active_mutations,1,/resources/support-center/knowledge-base/monitoring-debugging/view-number-of-active-mutations,manual,
-/optimize/avoid-mutations,1,/concepts/best-practices/avoid-mutations,manual,
-https://clickhouse.com/docs/knowledgebase/configure_cap_ipc_lock_and_cap_sys_nice_in_docker,1,/resources/support-center/knowledge-base/troubleshooting/configure-cap-ipc-lock-and-cap-sys-nice-in-docker,manual,
-/knowledgebase/configure_cap_ipc_lock_and_cap_sys_nice_in_docker,1,/resources/support-center/knowledge-base/troubleshooting/configure-cap-ipc-lock-and-cap-sys-nice-in-docker,manual,
-/faq/operations/multi-region-replication.md,1,/resources/support-center/knowledge-base/cloud-services/multi-region-replication,manual,
-/faq/operations/multi-region-replication,1,/resources/support-center/knowledge-base/cloud-services/multi-region-replication,manual,
-/faq/operations/delete-old-data.md,1,/resources/support-center/knowledge-base/tables-schema/delete-old-data,manual,
-/faq/operations/delete-old-data,1,/resources/support-center/knowledge-base/tables-schema/delete-old-data,manual,
-/faq/operations/production.md,1,/resources/support-center/knowledge-base/setup-installation/production,manual,
-/faq/operations/production,1,/resources/support-center/knowledge-base/setup-installation/production,manual,
-/sql-reference/formats.md,1,/reference/formats,manual,
-/sql-reference/formats.mdx,1,/reference/formats,manual,
-/cloud/security/secure-s3,1,/products/cloud/guides/data-sources/accessing-s3-data-securely,manual,
-https://clickhouse.com/docs/guides/sre/configuring-ssl,1,/concepts/features/security/tls/configuring-tls,manual,
-https://clickhouse.com/docs/guides/sre/configuring-ssl/,1,/concepts/features/security/tls/configuring-tls,manual,
-https://clickhouse.com/docs/integrations/language-clients/javascript#custom-httphttps-agent-experimental-nodejs-only,1,/integrations/language-clients/javascript/usage#custom-httphttps-agent-experimental-nodejs-only,manual,
-/interfaces/,1,/integrations/connectors/data-integrations/drivers-and-interfaces/overview,manual,
-https://clickhouse.com/docs/interfaces,1,/integrations/connectors/data-integrations/drivers-and-interfaces/overview,manual,
-https://clickhouse.com/docs/knowledgebase/certificate_verify_failed_error,2,/resources/support-center/knowledge-base/troubleshooting/certificate-verify-failed-error,manual,
-/docs/knowledgebase/certificate_verify_failed_error,2,/resources/support-center/knowledge-base/troubleshooting/certificate-verify-failed-error,manual,
-https://clickhouse.com/docs/optimize/avoidoptimizefinal,2,/concepts/best-practices/avoid-optimize-final,manual,
-/optimize/avoidoptimizefinal,2,/concepts/best-practices/avoid-optimize-final,manual,
-/cloud/manage/api/usageCost-api-reference,2,/api-reference/billing/get-organization-usage-costs,manual,
-/cloud/security/cloud-access-management/overview,2,/products/cloud/guides/security/cloud-access-management/manage-database-users,manual,
-/integrations/connectors/data-integrations/drivers-and-interfaces/formats,5,/reference/formats,manual,
-https://clickhouse.com/docs/sql-reference/formats,5,/reference/formats,manual,
-https://clickhouse.com/docs/sql-reference/formats/,5,/reference/formats,manual,
-/sql-reference/formats,5,/reference/formats,manual,
-https://clickhouse.com/docs/faq/general/datalake,1,/resources/support-center/knowledge-base/general-faqs/datalake,manual,
-/faq/general/datalake,1,/resources/support-center/knowledge-base/general-faqs/datalake,manual,
-https://clickhouse.com/docs/faq/general/faq-index,1,/resources/support-center/knowledge-base/general-faqs/faq-index,manual,
-/faq/general/faq-index,1,/resources/support-center/knowledge-base/general-faqs/faq-index,manual,
-https://clickhouse.com/docs/faq/general/separate-storage,1,/resources/support-center/knowledge-base/general-faqs/separate-storage,manual,
-/faq/general/separate-storage,1,/resources/support-center/knowledge-base/general-faqs/separate-storage,manual,
-https://clickhouse.com/docs/faq/general/time-series,1,/resources/support-center/knowledge-base/general-faqs/time-series,manual,
-/faq/general/time-series,1,/resources/support-center/knowledge-base/general-faqs/time-series,manual,
-https://clickhouse.com/docs/faq/general/concurrency,1,/resources/support-center/knowledge-base/general-faqs/concurrency,manual,
-/faq/general/concurrency,1,/resources/support-center/knowledge-base/general-faqs/concurrency,manual,
-https://clickhouse.com/docs/faq/general/key-value,1,/resources/support-center/knowledge-base/general-faqs/key-value,manual,
-/faq/general/key-value,1,/resources/support-center/knowledge-base/general-faqs/key-value,manual,
-https://clickhouse.com/docs/faq/general/cost-based,1,/resources/support-center/knowledge-base/general-faqs/cost-based,manual,
-/faq/general/cost-based,1,/resources/support-center/knowledge-base/general-faqs/cost-based,manual,
-https://clickhouse.com/docs/faq/general/who-is-using-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/who-is-using-clickhouse,manual,
-/faq/general/who-is-using-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/who-is-using-clickhouse,manual,
-https://clickhouse.com/docs/faq/general/distributed-join,1,/resources/support-center/knowledge-base/general-faqs/distributed-join,manual,
-/faq/general/distributed-join,1,/resources/support-center/knowledge-base/general-faqs/distributed-join,manual,
-https://clickhouse.com/docs/faq/general/updates,1,/resources/support-center/knowledge-base/general-faqs/updates,manual,
-/faq/general/updates,1,/resources/support-center/knowledge-base/general-faqs/updates,manual,
-https://clickhouse.com/docs/faq/general/why-recommend-clickhouse-keeper-over-zookeeper,1,/resources/support-center/knowledge-base/general-faqs/why-recommend-clickhouse-keeper-over-zookeeper,manual,
-/faq/general/why-recommend-clickhouse-keeper-over-zookeeper,1,/resources/support-center/knowledge-base/general-faqs/why-recommend-clickhouse-keeper-over-zookeeper,manual,
-https://clickhouse.com/docs/faq/general/dependencies,1,/resources/support-center/knowledge-base/general-faqs/dependencies,manual,
-/faq/general/dependencies,1,/resources/support-center/knowledge-base/general-faqs/dependencies,manual,
-https://clickhouse.com/docs/faq/general/use-cases-index,1,/resources/support-center/knowledge-base/general-faqs/use-cases-index,manual,
-/faq/general/use-cases-index,1,/resources/support-center/knowledge-base/general-faqs/use-cases-index,manual,
-https://clickhouse.com/docs/faq/general/olap,1,/resources/support-center/knowledge-base/general-faqs/olap,manual,
-/faq/general/olap,1,/resources/support-center/knowledge-base/general-faqs/olap,manual,
-https://clickhouse.com/docs/faq/general/ne-tormozit,1,/resources/support-center/knowledge-base/general-faqs/ne-tormozit,manual,
-/faq/general/ne-tormozit,1,/resources/support-center/knowledge-base/general-faqs/ne-tormozit,manual,
-https://clickhouse.com/docs/faq/general/dbms-naming,1,/resources/support-center/knowledge-base/general-faqs/dbms-naming,manual,
-/faq/general/dbms-naming,1,/resources/support-center/knowledge-base/general-faqs/dbms-naming,manual,
-https://clickhouse.com/docs/faq/general/use-clickhouse-for-log-analytics,1,/resources/support-center/knowledge-base/general-faqs/use-clickhouse-for-log-analytics,manual,
-/faq/general/use-clickhouse-for-log-analytics,1,/resources/support-center/knowledge-base/general-faqs/use-clickhouse-for-log-analytics,manual,
-https://clickhouse.com/docs/faq/general/columnar-database,1,/resources/support-center/knowledge-base/general-faqs/columnar-database,manual,
-/faq/general/columnar-database,1,/resources/support-center/knowledge-base/general-faqs/columnar-database,manual,
-https://clickhouse.com/docs/faq/general/sql,1,/resources/support-center/knowledge-base/general-faqs/sql,manual,
-/faq/general/sql,1,/resources/support-center/knowledge-base/general-faqs/sql,manual,
-https://clickhouse.com/docs/faq/general/index,1,/resources/support-center/knowledge-base/general-faqs/index,manual,
-/faq/general/index,1,/resources/support-center/knowledge-base/general-faqs/index,manual,
-https://clickhouse.com/docs/faq/general/mapreduce,1,/resources/support-center/knowledge-base/general-faqs/mapreduce,manual,
-/faq/general/mapreduce,1,/resources/support-center/knowledge-base/general-faqs/mapreduce,manual,
-https://clickhouse.com/docs/faq/general/vector-search,1,/resources/support-center/knowledge-base/general-faqs/vector-search,manual,
-/faq/general/vector-search,1,/resources/support-center/knowledge-base/general-faqs/vector-search,manual,
-https://clickhouse.com/docs/faq/general/how-do-i-contribute-code-to-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/how-do-i-contribute-code-to-clickhouse,manual,
-/faq/general/how-do-i-contribute-code-to-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/how-do-i-contribute-code-to-clickhouse,manual,
-https://clickhouse.com/docs/faq/general/federated,1,/resources/support-center/knowledge-base/general-faqs/federated,manual,
-/faq/general/federated,1,/resources/support-center/knowledge-base/general-faqs/federated,manual,
-https://clickhouse.com/docs/faq/general/operations-index,1,/resources/support-center/knowledge-base/general-faqs/operations-index,manual,
-/faq/general/operations-index,1,/resources/support-center/knowledge-base/general-faqs/operations-index,manual,
-https://clickhouse.com/docs/get-started/quick-start,2,/get-started/setup/overview,manual,
-/integrations/data-formats/json,2,/integrations/connectors/data-ingestion/data-formats/json/intro,manual,
-/knowledgebase,4,/resources/support-center/home,manual,
-/language-clients/javascript,5,/integrations/language-clients/javascript/overview,manual,
-/language-clients/javascript/release-notes,5,/integrations/language-clients/javascript/release-notes,manual,
-/language-clients/javascript/reference,5,/integrations/language-clients/javascript/reference,manual,
-/language-clients/javascript/examples,5,/integrations/language-clients/javascript/examples,manual,
-/language-clients/javascript/usage,5,/integrations/language-clients/javascript/usage,manual,
-/use-cases/observability/clickstack/deployment/overview,1,/products/clickstack/deployment/overview,manual,
-/products/clickhouse-private,1,/products/clickhouse-private/deployment/bare-metal,manual,
-/docs/products/clickhouse-private,1,/products/clickhouse-private/deployment/bare-metal,manual,
-/docs/products/clickhouse-private/operational-guide,1,/products/clickhouse-private/management/operational-guide,manual,
-/docs/products/clickhouse-private/howto-guides,1,/products/clickhouse-private/management/howto-guides,manual,
-/docs/products/clickhouse-private/faq,1,/products/clickhouse-private/management/faq,manual,
-/docs/products/clickhouse-private/breaking-changes,1,/products/clickhouse-private/overview/breaking-changes,manual,
-/docs/products/clickhouse-private/api,1,/products/clickhouse-private/management/api,manual,
-/docs/products/clickhouse-private/government,4,/products/clickhouse-private/deployment/government,manual,
-/docs/products/clickhouse-private/bare-metal,4,/products/clickhouse-private/deployment/bare-metal,manual,
-/docs/products/clickhouse-private/gcp,4,/products/clickhouse-private/deployment/gcp,manual,
-/engines/table-engines/mergetree-family/textindexes,4,/reference/engines/table-engines/mergetree-family/textindexes,manual,
-/click-stack/use-cases/observability/clickstack/deployment/hyperdx-clickhouse-cloud,4,/products/clickstack/deployment/managed,manual,
-/getting-started/quick-start,7,/get-started/setup/overview,manual,
-/operations/settings/settings-formats.md/#input_format_skip_unknown_fields,12,,no-match,
-/integrations/data-visualization/metabase-and-clickhouse.md,10,/integrations/connectors/data-visualization/metabase-and-clickhouse,basename-unique,
-/integrations/language-clients/java/client/client.mdx,9,/integrations/connectors/data-integrations/drivers-and-interfaces/client,basename-ambiguous,/integrations/language-clients/java/client | /resources/contribute/native-protocol/client
-/engines/table-engines/mergetree-family/mergetree.md/#table_engine-mergetree-s3,8,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/getting-started/install/install.mdx,8,/get-started/install/install,basename+parent-unique,/products/chdb/install
-/knowledgebase/aws-privatelink-setup-for-clickpipes,8,,no-match,
-/integrations/data-ingestion/data-formats/json/intro.md,8,/integrations/connectors/data-ingestion/data-formats/json/intro,basename+parent-unique,/get-started/about/intro | /integrations/connectors/data-ingestion/data-formats/intro | /products/clickstack/migration/elastic/intro | /products/cloud/getting-started/intro
-/get-started/quick-start,7,/get-started/setup/overview,manual,
-/operations/settings/settings-formats.md/#input_format_with_names_use_header,7,,no-match,
-/integrations/data-ingestion/clickpipes/mysql/faq.md,7,/integrations/clickpipes/mysql/faq,basename+parent-unique,/integrations/clickpipes/kafka/faq | /integrations/clickpipes/mongodb/faq | /integrations/clickpipes/postgres/faq | /products/bring-your-own-cloud/reference/faq | /products/clickstack/faq | /products/cloud/features/backups/faq | /products/managed-postgres/faq
-/integrations/data-ingestion/kafka/index.md,7,/integrations/connectors/data-ingestion/kafka,basename+parent-unique,/integrations/clickpipes/kafka | /reference/engines/table-engines/integrations/kafka
-/get-started/quickstarts/create-your-first-mergetree-table,6,,no-match,
-/operations/settings/settings-formats.md/#input_format_import_nested_json,6,,no-match,
-/operations/settings/settings-formats.md/#input_format_defaults_for_omitted_fields,6,,no-match,
-/operations/storing-data.md/#using-local-cache,6,/concepts/features/configuration/server-config/storing-data,basename-unique,
-/integrations/data-ingestion/etl-tools/dbt/index.md,5,/integrations/connectors/data-ingestion/etl-tools/dbt,basename-unique,
-/sql-reference/functions/string-search-functions.md/#hasToken,5,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#hasAllTokens,5,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#hasAnyTokens,5,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/operations/settings/settings.md/#mutations_sync,5,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/settings-formats.md/#format_csv_delimiter,5,,no-match,
-/use-cases/observability/clickstack/production,5,/use-cases/observability/clickstack/managing/production,redirect-direct,
-/engines/table-engines/mergetree-family/mergetree.md/#mergetree-data-storage,5,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-https://clickhouse.com/docs/cloud/manage/api/swagger#tag/ClickPipes/paths/~1v1~1organizations~1%7BorganizationId%7D~1services~1%7BserviceId%7D~1clickpipes/post,5,/api-reference/organization/get-list-of-available-organizations,manual,
-/cloud/manage/api/swagger,5,/api-reference/organization/get-list-of-available-organizations,manual,
-/guides/sre/user-management/index.md,4,,no-match,
-/engines/table-engines/mergetree-family/invertedindexes,4,/reference/engines/table-engines/mergetree-family/textindexes,manual,
-https://clickhouse.com/docs/en/sql-reference/statements/alter/projection,4,/reference/statements/alter/projection,basename-unique,
-/get-started/quickstarts/build-etl-pipeline-using-clickhouse,4,,no-match,
-/sql-reference/statements/alter/skipping-index.md/#materialize-index,4,/reference/statements/alter/skipping-index,basename-unique,
-/operations/settings/settings-formats.md/#output_format_json_quote_64bit_integers,4,,no-match,
-/operations/settings/settings-formats.md/#output_format_json_quote_denormals,4,,no-match,
-/operations/settings/settings-formats.md/#output_format_json_array_of_rows,4,,no-match,
-/operations/settings/settings-formats.md/#format_tsv_null_representation,4,,no-match,
-https://clickhouse.com/docs,4,,no-match,
-/knowledgebase/,4,/resources/support-center/home,manual,
-/managed-postgres/read-replicas,4,/products/managed-postgres/read-replicas,basename-unique,
-/managed-postgres/high-availability,4,/products/managed-postgres/high-availability,basename-unique,
-/managed-postgres/connection,4,/products/managed-postgres/connection,basename-unique,
-/use-cases/observability/clickstack/deployment/hyperdx-clickhouse-cloud,4,/products/clickstack/deployment/managed,manual,
-/get-started/quickstarts/obtain-your-cloud-connection-details,3,,no-match,
-/get-started/quickstarts/create-your-first-service-on-cloud,3,,no-match,
-/knowledgebase/exception-too-many-parts,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_read_bools_as_numbers,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_read_bools_as_strings,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_read_numbers_as_strings,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_read_arrays_as_strings,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_read_objects_as_strings,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_named_tuples_as_objects,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_try_infer_numbers_from_strings,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_try_infer_named_tuples_from_objects,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_infer_incomplete_types_as_strings,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_defaults_for_missing_elements_in_named_tuple,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_ignore_unknown_keys_in_named_tuple,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_compact_allow_variable_number_of_columns,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_throw_on_bad_escape_sequence,3,,no-match,
-/operations/settings/settings-formats.md/#input_format_json_empty_as_default,3,,no-match,
-/operations/settings/settings-formats.md/#output_format_json_quote_64bit_floats,3,,no-match,
-/operations/settings/settings-formats.md/#output_format_json_quote_decimals,3,,no-match,
-/operations/settings/settings-formats.md/#output_format_json_escape_forward_slashes,3,,no-match,
-/operations/settings/settings-formats.md/#output_format_json_named_tuples_as_objects,3,,no-match,
-/operations/settings/settings-formats.md/#output_format_json_validate_utf8,3,,no-match,
-/operations/storing-data.md/#configuring-external-storage,3,/concepts/features/configuration/server-config/storing-data,basename-unique,
-/sql-reference/functions/tuple-map-functions.md/#mapValues,3,/reference/functions/regular-functions/tuple-map-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#match,3,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#startsWith,3,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#endsWith,3,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#hasTokenOrNull,3,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/guides/sre/keeper/index.md,3,/guides/oss/deployment-and-scaling/keeper,basename-unique,
-/sql-reference/statements/create/table.md/#default,3,/reference/statements/create/table,basename-unique,
-/operations/settings/settings-formats.md/#input_format_with_types_use_header,3,,no-match,
-/sql-reference/data-types/nested-data-structures/index.md,3,/reference/data-types/nested-data-structures,basename-unique,
-/sql-reference/dictionaries#dictionary-sources,3,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries,3,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-https://clickhouse.com/docs/introduction/distinctive-features/#data-compression,3,/get-started/about/distinctive-features,basename-unique,
-/whats-new/changelog/2019.md/#experimental-features-1,3,/resources/changelogs/oss/2019,basename-unique,
-/language-clients/javascript/usage#streaming-files-nodejs-only,3,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-https://clickhouse.com/docs/cloud/manage/api/swagger#tag/ClickPipes,3,,no-match,
-/sql-reference/functions/files.md/#file,3,/reference/functions/regular-functions/files,basename-unique,
-/managed-postgres/quickstart,3,/products/managed-postgres/quickstart,basename+parent-unique,/integrations/clickpipes/mongodb/quickstart | /products/chdb/datastore/quickstart
-/use-cases/observability/clickstack/production#configure-ttl,3,/use-cases/observability/clickstack/managing/production,redirect-direct,
-/chdb/datastore/guides/pandas-performance,3,/products/chdb/guides/pandas-performance,basename-unique,
-/get-started/quickstarts/create-your-first-materialized-view,2,,no-match,
-/get-started/quickstarts/insert-data-using-clickhouse-client,2,,no-match,
-https://clickhouse.com/docs/en/interfaces/formats,2,/reference/formats,manual,/integrations/connectors/data-integrations/drivers-and-interfaces/formats | /reference/formats | /reference/settings/formats | /reference/system-tables/formats
-/operations/settings/settings.md/#materialize_skip_indexes_on_insert,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/server-configuration-parameters/settings.md/#background_pool_size,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/server-configuration-parameters/settings.md/#background_merges_mutations_concurrency_ratio,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/settings-formats.md/#format_regexp_escaping_rule,2,,no-match,
-/sql-reference/aggregate-functions/reference/anyLast.md,2,/sql-reference/aggregate-functions/reference/anyLast,redirect-direct,
-/engines/table-engines/mergetree-family/mergetree.md/#projections,2,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/sql-reference/aggregate-functions/reference/argMin.md,2,/sql-reference/aggregate-functions/reference/argMin,redirect-direct,
-/sql-reference/aggregate-functions/reference/argMax.md,2,/sql-reference/aggregate-functions/reference/argMax,redirect-direct,
-/operations/settings/settings.md/#join_use_nulls,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/sql-reference/functions/splitting-merging-functions.md/#tokens,2,/reference/functions/regular-functions/splitting-merging-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#lower,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#lowerUTF8,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#normalizeUTF8NFC,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#normalizeUTF8NFD,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#normalizeUTF8NFKC,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#normalizeUTF8NFKD,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#toValidUTF8,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#extractTextFromHTML,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#substring,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#idnaEncode,2,/reference/functions/regular-functions/string-functions,basename-unique,
-/engines/table-engines/mergetree-family/mergetree.md/#skip-index-types,2,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/sql-reference/functions/tuple-map-functions.md/#mapKeys,2,/reference/functions/regular-functions/tuple-map-functions,basename-unique,
-/sql-reference/functions/json-functions.md/#JSONAllPaths,2,/reference/functions/regular-functions/json-functions,basename-unique,
-/sql-reference/functions/tuple-map-functions.md/#mapvalues,2,/reference/functions/regular-functions/tuple-map-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#like,2,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/operations/server-configuration-parameters/settings.md/#background_schedule_pool_size,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/engines/table-engines/mergetree-family/mergetree.md/#table_engine-mergetree-multiple-volumes,2,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/sql-reference/statements/insert-into.md/#inserting-the-results-of-select,2,/reference/statements/insert-into,basename-unique,
-/sql-reference/dictionaries#storing-dictionaries-in-memory,2,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries#refreshing-dictionary-data-using-lifetime,2,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/operations/settings/settings-formats.md/#input_format_json_validate_types_from_metadata,2,,no-match,
-/operations/settings/settings-formats.md/#format_json_object_each_row_column_for_object_name,2,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_enum_as_number,2,,no-match,
-/operations/settings/settings-formats.md/#output_format_csv_crlf_end_of_line,2,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_skip_first_lines,2,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_enum_as_number,2,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_skip_first_lines,2,,no-match,
-/operations/server-configuration-parameters/settings.md/#format_schema_path,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/settings-formats.md/#output_format_pretty_display_footer_column_names,2,,no-match,
-/guides/developer/on-the-fly-mutations,2,/guides/developer/on-fly-mutations,redirect-direct,
-/integrations/gcs,2,/integrations/data-ingestion/gcs,redirect-direct,
-/engines/table-engines/mergetree-family/mergetree.md/#primary-keys-and-indexes-in-queries,2,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/knowledgebase/key-value,2,/resources/support-center/knowledge-base/general-faqs/key-value,basename-unique,
-/interfaces/third-party/client-libraries.md,2,,no-match,
-https://clickhouse.com/docs/knowledgebase/production#how-to-choose-between-clickhouse-releases,2,/resources/support-center/knowledge-base/setup-installation/production,basename-unique,
-/integrations/language-clients/java/jdbc-v1#configuring-http-library,2,,no-match,
-/language-clients/javascript/usage#keep-alive-configuration-nodejs-only,2,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/language-clients/javascript/usage#custom-httphttps-agent-experimental-nodejs-only,2,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/language-clients/javascript/usage#supported-data-formats,2,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/integrations/mysql,2,/integrations/data-sources/mysql,redirect-direct,
-//cloud/get-started/query-endpoints.md,2,/products/cloud/features/sql-console-features/query-endpoints,basename-ambiguous,/products/cloud/guides/sql-console/query-endpoints
-/sql-reference/statements/insert-into.md/#inserting-data-from-a-file,2,/reference/statements/insert-into,basename-unique,
-/engines/table-engines/integrations/s3.md/#settings,2,/reference/engines/table-engines/integrations/s3,basename+parent-unique,/reference/functions/table-functions/s3
-/integrations/data-ingestion/dbms/jdbc-with-clickhouse.md,2,/integrations/connectors/data-ingestion/jdbc-with-clickhouse,basename-unique,
-https://clickhouse.com/docs/en/sql-reference/table-functions/view/,2,/reference/functions/table-functions/view,basename+parent-unique,/reference/engines/table-engines/special/view | /reference/statements/alter/view | /reference/statements/create/view
-https://clickhouse.com/docs/en/operations/system-tables/tables/,2,/reference/system-tables/tables,basename-unique,
-/knowledgebase/how-to-connect-to-ch-cloud-using-ssh-keys,2,,no-match,
-/whats-new/cloud,2,/cloud/reference/changelog/changelog,redirect-direct,
-https://clickhouse.com/docs/cloud/security/cloud-access-management/overview,2,/products/cloud/guides/security/cloud-access-management/manage-database-users,manual,/concepts/features/configuration/settings/overview | /concepts/operations/delete/overview | /concepts/operations/update/overview | /get-started/migration-guides/bigquery/overview | /get-started/migration-guides/elastic/overview
-https://clickhouse.com/docs/cloud/manage/api/usageCost-api-reference,2,/api-reference/billing/get-organization-usage-costs,manual,
-/integrations/data-visualization/grafana/index.md,2,/integrations/connectors/data-visualization/grafana,basename+parent-unique,/guides/observability/build-your-own/grafana
-/interfaces/cli.md/#cli-queries-with-parameters,2,/integrations/connectors/data-integrations/drivers-and-interfaces/cli,basename-ambiguous,/products/cloud/features/cli
-/knowledgebase/useful-queries-for-troubleshooting,2,,no-match,
-/knowledgebase/certificate_verify_failed_error,2,/resources/support-center/knowledge-base/troubleshooting/certificate-verify-failed-error,manual,
-/faq/general/why-clickhouse-is-so-fast,2,/get-started/about/why-clickhouse-is-so-fast,basename-unique,
-https://clickhouse.com/docs/integrations/data-formats/json,2,/integrations/connectors/data-ingestion/data-formats/json/intro,manual,/integrations/connectors/data-ingestion/data-formats/json/exporting | /integrations/connectors/data-ingestion/data-formats/json/formats | /integrations/connectors/data-ingestion/data-formats/json/inference | /integrations/connectors/data-ingestion/data-formats/json/intro | /integrations/connectors/data-ingestion/data-formats/json/loading
-/chdb/guides/querying-pandas,2,/products/chdb/guides/querying-pandas,basename-unique,
-/managed-postgres/overview,2,/products/managed-postgres/overview,basename+parent-unique,/concepts/features/backup-restore/overview | /concepts/features/configuration/settings/overview | /concepts/operations/delete/overview | /concepts/operations/update/overview | /get-started/migration-guides/bigquery/overview | /get-started/migration-guides/elastic/overview | /get-started/migration-guides/overview | /get-started/migration-guides/postgres/overview | /get-started/migration-guides/redshift/overview | /get-started/migration-guides/snowflake/overview | /get-started/use-cases/overview | /guides/data-warehousing/getting-started/overview | /integrations/clickpipes/bigquery/overview | /integrations/clickpipes/kinesis/overview | /integrations/clickpipes/object-storage/amazon-s3/overview | /integrations/clickpipes/object-storage/azure-blob-storage/overview | /integrations/clickpipes/object-storage/google-cloud-storage/overview | /integrations/connectors/data-ingestion/azure/azure-data-factory/overview | /integrations/connectors/data-integrations/drivers-and-interfaces/overview | /integrations/language-clients/csharp/overview | /products/clickstack/features/dashboards/overview | /products/clickstack/ingesting-data/overview | /products/clickstack/overview | /products/cloud/features/autoscaling/overview | /products/cloud/features/backups/overview | /products/cloud/features/monitoring/overview | /products/cloud/guides/infrastructure/deployment-options/byoc/overview | /products/cloud/reference/billing/marketplace/overview | /products/kubernetes-operator/overview | /reference/functions/regular-functions/overview | /reference/statements/create/dictionary/layouts/overview | /reference/statements/create/dictionary/sources/overview | /reference/system-tables/overview
-/managed-postgres/backup-and-restore,2,/products/managed-postgres/backup-and-restore,basename-unique,
-/managed-postgres/settings,2,/products/managed-postgres/settings,basename+parent-unique,/products/cloud/reference/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/cloud/reference/byoc/architecture,2,/cloud/guides/infrastructure/deployment_options/byoc/architecture,redirect-direct,
-https://clickhouse.com/docs/cloud/manage/api/swagger#/paths/~1v1~1organizations~1:organizationId~1services~1:serviceId~1scaling/patch,2,,no-match,
-/managed-postgres/quickstart#create-postgres-database,2,/products/managed-postgres/quickstart,basename+parent-unique,/integrations/clickpipes/mongodb/quickstart | /products/chdb/datastore/quickstart
-/use-cases/observability/clickstack/ingesting-data/kubernetes#forwarding-resouce-tags-to-pods,2,/products/clickstack/example-datasets/kubernetes,basename-ambiguous,/products/clickstack/integration-examples/kubernetes
-/examples/host-logs-dashboard.json,2,,no-match,
-https://clickhouse.com/docs/en/sql-reference/data-types/aggregatefunction,2,/reference/data-types/aggregatefunction,basename-unique,
-/chdb/datastore/debugging,2,/products/chdb/debugging,basename-unique,
-/chdb/datastore/guides/pandas-differences,2,/products/chdb/guides/pandas-differences,basename-unique,
-/chdb/datastore/guides/migration-from-pandas,2,/products/chdb/guides/migration-from-pandas,basename-unique,
-/getting-started/index.md,1,/products/chdb/getting-started,basename-ambiguous,/products/clickstack/getting-started
-https://clickhouse.com/docs/knowledgebase/fix-developer-verification-error-in-macos,1,,no-match,
-https://clickhouse.com/docs/knowledgebase/why_default_logging_verbose,1,,no-match,
-/integrations/data-ingestion/s3/index.md,1,/reference/engines/table-engines/integrations/s3,basename-ambiguous,/reference/functions/table-functions/s3
-https://clickhouse.com/docs/en/sql-reference/table-functions/url,1,/reference/functions/table-functions/url,basename+parent-unique,/reference/engines/table-engines/special/url
-/sql-reference/functions/geo/coordinates.md/#pointinpolygon,1,/reference/functions/regular-functions/geo/coordinates,basename-unique,
-/get-started/quickstarts/create-your-first-projection,1,,no-match,
-https://clickhouse.com/docs/en/sql-reference/statements/create/view#materialized-view,1,/reference/statements/create/view,basename+parent-unique,/reference/engines/table-engines/special/view | /reference/functions/table-functions/view | /reference/statements/alter/view
-https://clickhouse.com/docs/en/engines/table-engines/mergetree-family/mergetree,1,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/quickstarts/materialized-views,1,/get-started/quickstarts/create-your-first-materialized-view,manual,/products/clickstack/managing/materialized-views | /resources/support-center/tips-and-tricks/materialized-views
-/quickstarts/etl-pipeline,1,/get-started/quickstarts/build-etl-pipeline-using-clickhouse,manual,
-/en/engines/table-engines/mergetree-family/mergetree,1,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/en/operations/system-tables/parts,1,/reference/system-tables/parts,basename+parent-unique,/concepts/core-concepts/parts
-/en/sql-reference/data-types,1,/reference/data-types,manual,/reference/data-types
-https://clickhouse.com/docs/en/interfaces/cli,1,/integrations/connectors/data-integrations/drivers-and-interfaces/cli,basename-ambiguous,/products/cloud/features/cli
-https://clickhouse.com/docs/en/cloud/bestpractices/cloud-connection,1,,no-match,
-https://clickhouse.com/docs/en/interfaces/tcp,1,/integrations/connectors/data-integrations/drivers-and-interfaces/tcp,basename-unique,
-https://clickhouse.com/docs/en/interfaces/http,1,/concepts/features/security/external-authenticators/http,basename-ambiguous,/integrations/connectors/data-integrations/drivers-and-interfaces/http | /reference/statements/create/dictionary/sources/http
-/en/operations/utilities/clickhouse-local,1,/concepts/features/tools-and-utilities/clickhouse-local,manual,/products/chdb/guides/clickhouse-local
-/get-started/quickstarts/common-getting-started-issues,1,/get-started/quickstarts/home,manual,
-/en/sql-reference/data-types/map,1,/reference/data-types/map,basename-unique,
-/en/sql-reference/aggregate-functions/combinators,1,/reference/functions/aggregate-functions/combinators,basename-unique,
-/integrations/postgresql/connecting-to-postgresql,1,/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql,redirect-direct,
-/integrations/data-ingestion/etl-tools/airbyte-and-clickhouse.md,1,/integrations/connectors/data-ingestion/etl-tools/airbyte-and-clickhouse,basename-unique,
-/integrations/data-ingestion/etl-tools/vector-to-clickhouse.md,1,/integrations/connectors/data-ingestion/etl-tools/vector-to-clickhouse,basename-unique,
-/operations/settings/settings-formats.md/#format_capn_proto_enum_comparising_mode,1,,no-match,
-/operations/settings/settings-formats.md/#format_regexp,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_arrow_string_as_string,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_orc_compression_method,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_arrow_case_insensitive_column_matching,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_arrow_allow_missing_columns,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_mysql_dump_table_name,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_msgpack_number_of_columns,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_msgpack_uuid_representation,1,,no-match,
-/sql-reference/aggregate-functions/reference/sumWithOverflow.md,1,/sql-reference/aggregate-functions/reference/sumWithOverflow,redirect-direct,
-/sql-reference/aggregate-functions/reference/groupBitAnd.md,1,/sql-reference/aggregate-functions/reference/groupBitAnd,redirect-direct,
-/sql-reference/aggregate-functions/reference/groupBitOr.md,1,/sql-reference/aggregate-functions/reference/groupBitOr,redirect-direct,
-/sql-reference/aggregate-functions/reference/groupBitXor.md,1,/sql-reference/aggregate-functions/reference/groupBitXor,redirect-direct,
-/sql-reference/aggregate-functions/reference/groupArrayArray.md,1,/sql-reference/aggregate-functions/reference/groupArrayArray,redirect-direct,
-/sql-reference/aggregate-functions/reference/sumMappedArrays.md,1,,no-match,
-/sql-reference/aggregate-functions/reference/minMappedArrays.md,1,,no-match,
-/sql-reference/aggregate-functions/reference/maxMappedArrays.md,1,,no-match,
-/sql-reference/table-functions/file.md/#globs-in-path,1,/reference/functions/table-functions/file,basename+parent-unique,/reference/engines/table-engines/special/file
-/engines/table-engines/mergetree-family/mergetree.md/#virtual-columns,1,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/operations/workload-scheduling.md/#hierarchy,1,/concepts/features/configuration/server-config/workload-scheduling,basename-unique,
-/knowledgebase/count-parts-by-type,1,/resources/support-center/knowledge-base/troubleshooting/count-parts-by-type,manual,
-/sql-reference/functions/splitting-merging-functions.md/#splitByNonAlpha,1,/reference/functions/regular-functions/splitting-merging-functions,basename-unique,
-/sql-reference/aggregate-functions/reference/quantileDeterministic.md,1,/sql-reference/aggregate-functions/reference/quantileDeterministic,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileExact.md,1,/sql-reference/aggregate-functions/reference/quantileExact,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileExactWeighted.md,1,/sql-reference/aggregate-functions/reference/quantileExactWeighted,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileTiming.md,1,/sql-reference/aggregate-functions/reference/quantileTiming,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileTimingWeighted.md,1,/sql-reference/aggregate-functions/reference/quantileTimingWeighted,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileTDigest.md,1,/sql-reference/aggregate-functions/reference/quantileTDigest,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileTDigestWeighted.md,1,/sql-reference/aggregate-functions/reference/quantileTDigestWeighted,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileBFloat16.md,1,/sql-reference/aggregate-functions/reference/quantileBFloat16,redirect-direct,
-/sql-reference/aggregate-functions/reference/quantileDD.md,1,/reference/functions/aggregate-functions/reference/quantileddsketch,contains-unique,
-/sql-reference/functions/other-functions.md/#joinGet,1,/reference/functions/regular-functions/other-functions,basename-unique,
-/operations/settings/settings.md/#join_any_take_last_row,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/guides/best-practices/asyncinserts.md,1,/concepts/operations/insert/asyncinserts,basename-unique,
-/sql-reference/statements/create/table.md/#default_values,1,/reference/statements/create/table,basename-unique,
-/sql-reference/functions/splitting-merging-functions.md/#tokensForLikePattern,1,/reference/functions/regular-functions/splitting-merging-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#caseFoldUTF8,1,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#normalizeUTF8NFKCCasefold,1,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-replace-functions.md/#translate,1,/reference/functions/regular-functions/string-replace-functions,basename-unique,
-/sql-reference/functions/string-functions.md/#removeDiacriticsUTF8,1,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#hasPhrase,1,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/sql-reference/functions/tuple-map-functions.md/#mapkeys,1,/reference/functions/regular-functions/tuple-map-functions,basename-unique,
-/sql-reference/statements/select/order-by.md/#sorting-of-special-values,1,/reference/statements/select/order-by,basename+parent-unique,/reference/statements/alter/order-by
-/operations/settings/settings.md/#max_threads,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/settings.md/#force_index_by_date,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/sql-reference/functions/string-functions.md/#sparseGrams,1,/reference/functions/regular-functions/string-functions,basename-unique,
-/sql-reference/functions/comparison-functions.md/#equals,1,/reference/functions/regular-functions/comparison-functions,basename-unique,
-/sql-reference/functions/comparison-functions.md/#notEquals,1,/reference/functions/regular-functions/comparison-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#notLike,1,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#multiSearchAny,1,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/sql-reference/functions/comparison-functions.md/#less,1,/reference/functions/regular-functions/comparison-functions,basename-unique,
-/sql-reference/functions/comparison-functions.md/#greater,1,/reference/functions/regular-functions/comparison-functions,basename-unique,
-/sql-reference/functions/comparison-functions.md/#lessOrEquals,1,/reference/functions/regular-functions/comparison-functions,basename-unique,
-/sql-reference/functions/comparison-functions.md/#greaterOrEquals,1,/reference/functions/regular-functions/comparison-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#hasTokenCaseInsensitive,1,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/sql-reference/functions/string-search-functions.md/#hasTokenCaseInsensitiveOrNull,1,/reference/functions/regular-functions/string-search-functions,basename-unique,
-/integrations/data-ingestion/gcs/index.md/#creating-a-disk,1,/reference/functions/table-functions/gcs,basename-unique,
-/operations/server-configuration-parameters/settings.md/#path,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/server-configuration-parameters/settings.md/#background_move_pool_size,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/merge-tree-settings.md/#min_bytes_to_rebalance_partition_over_jbod,1,/reference/settings/merge-tree-settings,basename-unique,
-/operations/storing-data.md/#refresh-parts-interval-and-table-disk,1,/concepts/features/configuration/server-config/storing-data,basename-unique,
-/operations/settings/settings.md/#max_replica_delay_for_distributed_queries,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/settings.md/#fallback_to_stale_replicas_for_distributed_queries,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/server-configuration-parameters/settings.md/#merge_tree,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/server-configuration-parameters/settings.md/#macros,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/server-configuration-parameters/settings.md/#background_fetches_pool_size,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/merge-tree-settings.md/#max_replicated_fetches_network_bandwidth,1,/reference/settings/merge-tree-settings,basename-unique,
-/operations/settings/merge-tree-settings.md/#max_replicated_sends_network_bandwidth,1,/reference/settings/merge-tree-settings,basename-unique,
-/sql-reference/statements/kill.md/#kill-mutation,1,/reference/statements/kill,basename-unique,
-/engines/table-engines/mergetree-family/mergetree.md/#mergetree-column-ttl,1,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/engines/table-engines/mergetree-family/mergetree.md/#column-level-settings,1,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/sql-reference/statements/rename.md/#rename-table,1,/reference/statements/rename,basename-unique,
-/guides/best-practices/sparse-primary-indexes.md/#option-3-projections,1,/guides/cloud-oss/data-modelling/sparse-primary-indexes,basename-unique,
-/sql-reference/statements/create/dictionary/overview.md,1,/concepts/features/backup-restore/overview,basename-ambiguous,/concepts/features/configuration/settings/overview | /concepts/operations/delete/overview | /concepts/operations/update/overview | /get-started/migration-guides/bigquery/overview | /get-started/migration-guides/elastic/overview
-/sql-reference/dictionaries#dbms,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/knowledgebase/oracle-odbc,1,/resources/support-center/knowledge-base/integrations/oracle-odbc,basename-unique,
-/operations/settings/settings-formats.md/#format_custom_field_delimiter,1,,no-match,
-/operations/settings/settings-formats.md/#format_custom_row_before_delimiter,1,,no-match,
-/operations/settings/settings-formats.md/#format_custom_row_after_delimiter,1,,no-match,
-/operations/settings/settings-formats.md/#format_custom_row_between_delimiter,1,,no-match,
-/operations/settings/settings-formats.md/#format_custom_result_before_delimiter,1,,no-match,
-/operations/settings/settings-formats.md/#format_custom_result_after_delimiter,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_avro_allow_missing_fields,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_avro_codec,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_avro_sync_interval,1,,no-match,
-/operations/settings/settings-formats.md/#format_csv_null_representation,1,,no-match,
-/operations/settings/settings-formats.md/#format_csv_allow_single_quotes,1,,no-match,
-/operations/settings/settings-formats.md/#format_csv_allow_double_quotes,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_empty_as_default,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_use_best_effort_in_schema_inference,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_arrays_as_nested_csv,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_detect_header,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_skip_trailing_empty_lines,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_trim_whitespaces,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_allow_whitespace_or_tab_as_delimiter,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_allow_variable_number_of_columns,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_use_default_on_bad_values,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_csv_try_infer_numbers_from_strings,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_empty_as_default,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_use_best_effort_in_schema_inference,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_tsv_crlf_end_of_line,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_crlf_end_of_line,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_detect_header,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_skip_trailing_empty_lines,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_tsv_allow_variable_number_of_columns,1,,no-match,
-/operations/settings/settings-formats.md#input_format_protobuf_oneof_presence,1,,no-match,
-/operations/settings/settings-formats.md#format_protobuf_use_autogenerated_schema,1,,no-match,
-/sql-reference/statements/system.md/#system-drop-schema-format,1,/reference/statements/system,basename-unique,
-/operations/settings/settings-formats.md/#output_format_pretty_max_rows,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_pretty_max_column_pad_width,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_pretty_max_value_width,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_pretty_color,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_pretty_grid_charset,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_pretty_row_numbers,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_pretty_display_footer_column_names_min_rows,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_avro_string_column_pattern,1,,no-match,
-/operations/settings/settings-formats.md/#format_binary_max_string_size,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_binary_write_json_as_string,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_binary_read_json_as_string,1,,no-match,
-https://clickhouse.com/docs/best-practices/...,1,,no-match,
-/joining-tables,1,/concepts/operations/select/joining-tables,basename-unique,
-/deployment-guides/terminology.md,1,/guides/oss/deployment-and-scaling/terminology,basename-unique,
-/managing-data/update_mutations,1,/managing-data/updating-data/update_mutations,redirect-direct,
-/integrations/data-ingestion/s3/index.md#configuring-s3-for-clickhouse-use,1,/reference/engines/table-engines/integrations/s3,basename-ambiguous,/reference/functions/table-functions/s3
-/sql-reference/dictionaries#postgresql,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries#ways-to-store-dictionaries-in-memory,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries#hierarchical-dictionaries,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries#polygon-dictionaries,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries#regexp-tree-dictionary,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/interfaces/third-party/gui#clickhouse-flamegraph,1,/guides/ai-ml,contains-ambiguous,/guides/ai-ml/MCP | /guides/ai-ml/MCP/ai-agent-libraries | /guides/ai-ml/MCP/ai-agent-libraries/agno | /guides/ai-ml/MCP/ai-agent-libraries/chainlit | /guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk
-/guides/sre/keeper/index.md#four-letter-word-commands,1,/guides/oss/deployment-and-scaling/keeper,basename-unique,
-/operations/settings/settings-query-level.md,1,/concepts/features/configuration/settings/settings-query-level,basename-unique,
-/operations/settings/settings.md/#http_connection_timeout,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/settings.md/#http_receive_timeout,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/reference/settings/server-settings/settings#http_handlers,1,/reference/settings/server-settings/settings,basename+parent-unique,/products/cloud/reference/settings | /products/managed-postgres/settings | /reference/settings | /reference/system-tables/settings
-/operations/settings/settings.md/#use_concurrency_control,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/products/cloud/guides/sql-console/connection_details,1,/products/cloud/guides/sql-console/connection-details,basename-unique,
-/products/cloud/guides/backups/01_review-and-restore-backups,1,,no-match,
-/products/cloud/guides/backups/02_configurable-backups,1,,no-match,
-/products/cloud/guides/data-sources/02_accessing-s3-data-securely,1,,no-match,
-/products/cloud/guides/data-sources/01_cloud-endpoints-api,1,,no-match,
-/optimize/partitioning-key,1,/guides/best-practices/partitioningkey,redirect-direct,
-/engines/table-engines/mergetree-family/mergetree.md/#table_engine-mergetree-data_skipping-indexes,1,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-/guides/best-practices/skipping-indexes.md,1,/concepts/features/performance/skip-indexes/skipping-indexes,basename-unique,
-/engines/table-engines/mergetree-family/mergetree.md/#choosing-a-primary-key-that-differs-from-the-sorting-key,1,/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
-https://clickhouse.com/docs/introduction/distinctive-features/#true-column-oriented-dbms,1,/get-started/about/distinctive-features,basename-unique,
-/sql-reference/dictionaries#ip_trie,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries#use-regular-expression-tree-dictionary-in-clickhouse-open-source,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/sql-reference/dictionaries#collecting-attribute-values,1,/concepts/features/dictionaries,basename-ambiguous,/reference/system-tables/dictionaries
-/blog/clickhouse-and-parquet-a-foundation-for-fast-lakehouse-analytics,1,,no-match,
-/optimize/sparse-primary-indexes,1,/guides/cloud-oss/data-modelling/sparse-primary-indexes,basename-unique,
-/sql-reference/data-types/json,1,/concepts/best-practices/json-type,contains-ambiguous,/integrations/connectors/data-ingestion/data-formats/json/exporting | /integrations/connectors/data-ingestion/data-formats/json/formats | /integrations/connectors/data-ingestion/data-formats/json/inference | /integrations/connectors/data-ingestion/data-formats/json/intro | /integrations/connectors/data-ingestion/data-formats/json/loading
-/images/clickpipes/clickpipes_stack.png,1,,no-match,
-/images/clickpipes/cp_custom_role.png,1,,no-match,
-/images/clickpipes/cp_advanced_settings.png,1,,no-match,
-/knowledgebase/aws-privatelink-setup-for-msk-clickpipes,1,,no-match,
-/integrations/clickpipes/object-storage,1,/get-started/migration-guides/other-methods/object-storage-to-clickhouse,contains-ambiguous,/integrations/clickpipes/object-storage/amazon-s3/get-started | /integrations/clickpipes/object-storage/amazon-s3/overview | /integrations/clickpipes/object-storage/amazon-s3/unordered-mode | /integrations/clickpipes/object-storage/azure-blob-storage/get-started | /integrations/clickpipes/object-storage/azure-blob-storage/overview
-/integrations/data-ingestion/clickpipes/kinesis.md,1,/integrations/clickpipes/kinesis,basename-unique,
-https://clickhouse.com/docs/en/sql-reference/data-types/special-data-types/interval,1,/reference/data-types/special-data-types/interval,basename-unique,
-/language-clients/javascript/usage#contact-us,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/language-clients/javascript/usage#proxy-with-a-pathname,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/language-clients/javascript/usage#compression,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/language-clients/javascript/usage#logging-nodejs-only,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/language-clients/javascript/usage#reverse-proxy-with-authentication,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-/language-clients/javascript/usage#tls-certificates-nodejs-only,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
-https://clickhouse.com/docs/en/integrations/language-clients/javascript#custom-httphttps-agent-experimental-nodejs-only,1,,no-match,
-https://clickhouse.com/docs/en/sql-reference/statements/create/table#ephemeral,1,/reference/statements/create/table,basename-unique,
-https://clickhouse.com/docs/en/integrations/data-formats/parquet,1,/integrations/connectors/data-ingestion/data-formats/parquet,basename-unique,
-https://clickhouse.com/docs/en/guides/sre/configuring-ssl/,1,,no-match,
-/language-clients/java/client/_v0_8,1,/integrations/language-clients/java/client,manual,
-/images/cloud/security/secures3_arn.png,1,,no-match,
-https://clickhouse.com/docs/cloud/manage/api/swagger#tag/beta,1,,no-match,
-https://clickhouse.com/docs/integrations/gcs#create-a-service-account-hmac-key-and-secret,1,/reference/functions/table-functions/gcs,basename-unique,
-/images/integrations/data-ingestion/clickpipes/mysql/source/azure-flexible-server-mysql/1_configure_network_security.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/1_edit_instance.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/2_set_flags.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/3_verify_logical_replication.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/4_configure_network_security.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/mongodb/docdb-select-parameter-group.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/mongodb/docdb-modify-parameter-group.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/mongodb/docdb-apply-parameter-group.png,1,,no-match,
-/images/integrations/data-ingestion/clickpipes/mongodb/docdb-parameter-group-status.png,1,,no-match,
-/interfaces/third-party/gui,1,/guides/ai-ml,contains-ambiguous,/guides/ai-ml/MCP | /guides/ai-ml/MCP/ai-agent-libraries | /guides/ai-ml/MCP/ai-agent-libraries/agno | /guides/ai-ml/MCP/ai-agent-libraries/chainlit | /guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk
-/interfaces/third-party/proxy,1,,no-match,
-/interfaces/third-party/integrations,1,/products/cloud/features/integrations,basename-ambiguous,/products/cloud/features/monitoring/integrations | /reference/engines/table-engines/integrations | /resources/support-center/knowledge-base/integrations
-/integrations/azure-data-factory,1,/integrations/data-ingestion/azure-data-factory,redirect-direct,
-/integrations/redis,1,/reference/engines/table-engines/integrations/redis,basename+parent-unique,/reference/functions/table-functions/redis | /reference/statements/create/dictionary/sources/redis
-/integrations/rabbitmq,1,/reference/engines/table-engines/integrations/rabbitmq,basename-unique,
-/integrations/mongodb,1,/reference/engines/table-engines/integrations/mongodb,basename+parent-unique,/integrations/clickpipes/mongodb | /reference/functions/table-functions/mongodb | /reference/statements/create/dictionary/sources/mongodb
-/integrations/hive,1,/reference/engines/table-engines/integrations/hive,basename-unique,
-/integrations/hudi,1,/reference/engines/table-engines/integrations/hudi,basename+parent-unique,/reference/functions/table-functions/hudi
-/integrations/iceberg,1,/reference/engines/table-engines/integrations/iceberg,basename+parent-unique,/reference/functions/table-functions/iceberg
-/integrations/deltalake,1,/reference/engines/table-engines/integrations/deltalake,basename+parent-unique,/reference/functions/table-functions/deltalake
-/integrations/rocksdb,1,/reference/system-tables/rocksdb,basename-unique,
-/integrations/sqlite,1,/reference/engines/table-engines/integrations/sqlite,basename+parent-unique,/reference/engines/database-engines/sqlite | /reference/functions/table-functions/sqlite
-/integrations/nats,1,/reference/engines/table-engines/integrations/nats,basename-unique,
-/integrations/data-ingestion/data-formats/binary.md,1,/integrations/connectors/data-ingestion/data-formats/binary,basename-unique,
-/integrations/data-ingestion/data-formats/csv-tsv.md,1,/integrations/connectors/data-ingestion/data-formats/csv-tsv,basename-unique,
-/integrations/data-ingestion/data-formats/parquet.md,1,/integrations/connectors/data-ingestion/data-formats/parquet,basename-unique,
-/integrations/data-ingestion/data-formats/sql.md,1,/integrations/connectors/data-ingestion/data-formats/sql,basename+parent-unique,/resources/support-center/knowledge-base/general-faqs/sql
-/operations/settings/settings-formats.md/#output_format_sql_insert_include_column_names,1,,no-match,
-/operations/settings/settings-formats.md/#output_format_sql_insert_max_batch_size,1,,no-match,
-/operations/settings/settings-formats.md/#format_regexp_skip_unmatched,1,,no-match,
-/engines/table-engines/integrations/s3.md/#wildcards-in-path,1,/reference/engines/table-engines/integrations/s3,basename+parent-unique,/reference/functions/table-functions/s3
-/operations/server-configuration-parameters/settings.md/#default_replica_path,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/integrations/dbt/materialized-views,1,/concepts/features/materialized-views,basename-ambiguous,/products/clickstack/managing/materialized-views | /resources/support-center/tips-and-tricks/materialized-views
-https://clickhouse.com/docs/en/beta-and-experimental-features,1,/reference/settings/beta-and-experimental-features,basename-unique,
-https://clickhouse.com/docs/en/materialized-view,1,/concepts/features/materialized-views,contains-ambiguous,/concepts/features/materialized-views/cascading-materialized-views | /concepts/features/materialized-views/incremental-materialized-view | /concepts/features/materialized-views/refreshable-materialized-view | /concepts/features/projections/materialized-views-versus-projections | /guides/real-time-analytics/time-series/materialized-view-rollup
-https://clickhouse.com/docs/en/engines/table-engines/special/distributed,1,/reference/engines/table-engines/special/distributed,basename-unique,
-https://clickhouse.com/docs/en/engines/table-engines/special/dictionary,1,/reference/engines/table-engines/special/dictionary,basename+parent-unique,/reference/functions/table-functions/dictionary | /reference/statements/create/dictionary
-/materialized-view,1,/concepts/features/materialized-views,contains-ambiguous,/concepts/features/materialized-views/cascading-materialized-views | /concepts/features/materialized-views/incremental-materialized-view | /concepts/features/materialized-views/refreshable-materialized-view | /concepts/features/projections/materialized-views-versus-projections | /guides/real-time-analytics/time-series/materialized-view-rollup
-https://clickhouse.com/docs/en/materialized-view/refreshable-materialized-view,1,/concepts/features/materialized-views/refreshable-materialized-view,basename-unique,
-https://clickhouse.com/docs/en/cloud/security/secure-s3,1,,no-match,
-/operations/settings/settings.md/#use_structure_from_insertion_table_in_table_functions,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/operations/settings/settings-formats.md#date_time_input_format,1,,no-match,
-/operations/settings/settings-formats.md,1,,no-match,
-/interfaces/cli.md/#batch-mode,1,/integrations/connectors/data-integrations/drivers-and-interfaces/cli,basename-ambiguous,/products/cloud/features/cli
-/operations/settings/settings-formats.md/#input_format_allow_errors_num,1,,no-match,
-/operations/settings/settings-formats.md/#input_format_allow_errors_ratio,1,,no-match,
-/whats-new/cloud#clickhouse-231-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
-/whats-new/cloud#clickhouse-2212-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
-/whats-new/cloud#clickhouse-2211-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
-/sql-reference/dictionaries/index.md,1,/concepts/features/dictionaries,manual,/reference/system-tables/dictionaries
-/whats-new/cloud#clickhouse-2210-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
-/knowledgebase/useful-queries-for-troubleshooting#show-disk-storage-number-of-parts-number-of-rows-in-systemparts-and-marks-across-databases,1,,no-match,
-/knowledgebase/find-expensive-queries,1,/resources/support-center/knowledge-base/performance-optimization/find-expensive-queries,basename-unique,
-/knowledgebase/profiling-clickhouse-with-llvm-xray,1,,no-match,
-/knowledgebase/which-processes-are-currently-running,1,,no-match,
-/sql-reference/statements/alter/index,1,,no-match,
-/faq/operations/separate_storage.md,1,/resources/support-center/knowledge-base/general-faqs/separate-storage,basename-unique,
-/guides/sre/user-management/configuring-ldap.md,1,/concepts/features/security/configuring-ldap,basename-unique,
-/guides/starter-guides/mutations.md,1,/get-started/oss/starter-guides/mutations,basename+parent-unique,/reference/system-tables/mutations
-/knowledgebase/how-do-i-contribute-code-to-clickhouse,1,,no-match,
-/knowledgebase/time-series,1,/guides/real-time-analytics/time-series,basename-ambiguous,/reference/engines/table-engines/integrations/time-series | /resources/support-center/knowledge-base/general-faqs/time-series
-/integrations/data-ingestion/s3,1,/reference/engines/table-engines/integrations/s3,basename-ambiguous,/reference/functions/table-functions/s3
-/integrations/data-ingestion/gcs,1,/reference/functions/table-functions/gcs,basename-unique,
-https://clickhouse.com/docs/knowledgebase/file-export,1,,no-match,
-/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql.md,1,,no-match,
-https://clickhouse.com/docs/knowledgebase/python-clickhouse-connect-example#steps,1,,no-match,
-/guides/sre/configuring-ssl#2-create-ssl-certificates,1,,no-match,
-https://clickhouse.com/docs/interfaces/formats/JSON/JSONAsObject,1,,no-match,
-https://clickhouse.com/docs/interfaces/,1,/integrations/connectors/data-integrations/drivers-and-interfaces/overview,manual,
-/knowledgebase/async_vs_optimize_read_in_order#what-about-optimize_read_in_order,1,,no-match,
-https://clickhouse.com/docs/knowledgebase/find-expensive-queries#initial_query_id-vs-query_id,1,/resources/support-center/knowledge-base/performance-optimization/find-expensive-queries,basename-unique,
-/chdb/guides/querying-apache-arrow,1,/products/chdb/guides/querying-apache-arrow,basename-unique,
-https://clickhouse.com/docs/cloud/manage/api/swagger#tag/ClickStack,1,,no-match,
-/images/clickstack/faq/metrics-explorer.png,1,,no-match,
-/guides/sre/configuring-ssl,1,/concepts/features/security/tls/configuring-tls,manual,
-/managed-postgres/overview#nvme-performance,1,/products/managed-postgres/overview,basename+parent-unique,/concepts/features/backup-restore/overview | /concepts/features/configuration/settings/overview | /concepts/operations/delete/overview | /concepts/operations/update/overview | /get-started/migration-guides/bigquery/overview | /get-started/migration-guides/elastic/overview | /get-started/migration-guides/overview | /get-started/migration-guides/postgres/overview | /get-started/migration-guides/redshift/overview | /get-started/migration-guides/snowflake/overview | /get-started/use-cases/overview | /guides/data-warehousing/getting-started/overview | /integrations/clickpipes/bigquery/overview | /integrations/clickpipes/kinesis/overview | /integrations/clickpipes/object-storage/amazon-s3/overview | /integrations/clickpipes/object-storage/azure-blob-storage/overview | /integrations/clickpipes/object-storage/google-cloud-storage/overview | /integrations/connectors/data-ingestion/azure/azure-data-factory/overview | /integrations/connectors/data-integrations/drivers-and-interfaces/overview | /integrations/language-clients/csharp/overview | /products/clickstack/features/dashboards/overview | /products/clickstack/ingesting-data/overview | /products/clickstack/overview | /products/cloud/features/autoscaling/overview | /products/cloud/features/backups/overview | /products/cloud/features/monitoring/overview | /products/cloud/guides/infrastructure/deployment-options/byoc/overview | /products/cloud/reference/billing/marketplace/overview | /products/kubernetes-operator/overview | /reference/functions/regular-functions/overview | /reference/statements/create/dictionary/layouts/overview | /reference/statements/create/dictionary/sources/overview | /reference/system-tables/overview
-/managed-postgres/scaling,1,/products/managed-postgres/scaling,basename+parent-unique,/integrations/clickpipes/mongodb/scaling | /integrations/clickpipes/mysql/scaling | /integrations/clickpipes/postgres/scaling
-/managed-postgres/settings#ip-filters,1,/products/managed-postgres/settings,basename+parent-unique,/products/cloud/reference/settings | /reference/settings | /reference/settings/server-settings/settings | /reference/system-tables/settings
-/managed-postgres/connection#tls,1,/products/managed-postgres/connection,basename-unique,
-/managed-postgres/extensions,1,/products/managed-postgres/extensions,basename-unique,
-/managed-postgres/upgrades,1,/products/managed-postgres/upgrades,basename+parent-unique,/products/cloud/features/admin-features/upgrades
-/managed-postgres/migrations/pg_dump-pg_restore,1,,no-match,
-/managed-postgres/migrations/logical-replication,1,/products/managed-postgres/migrations/logical-replication,basename-unique,
-/managed-postgres/migrations/peerdb,1,/products/managed-postgres/migrations/peerdb,basename-unique,
-/managed-postgres/clickhouse-integration,1,/products/managed-postgres/clickhouse-integration,basename-unique,
-/managed-postgres/benchmarks,1,/products/managed-postgres/benchmarks,basename-unique,
-/interfaces/cpp,1,/integrations/language-clients/cpp,redirect-direct,
-/interfaces/third-party/client-libraries,1,,no-match,
-/cloud/security/cloud-access-management,1,/products/cloud/guides/security/cloud-access-management,basename-unique,
-/knowledgebase/terraform_example,1,/resources/support-center/knowledge-base/integrations/terraform-example,manual,
-/cloud/reference/byoc/faq/aws,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
-/cloud/reference/byoc/observability,1,/cloud/guides/infrastructure/deployment_options/byoc/observability,redirect-direct,
-/cloud/reference/byoc/onboarding/aws,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
-/images/cloud/guides/accessing-data/GCS/IAM_and_admin.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/create_service_account.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/create_and_continue.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/storage_object_user.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/note_service_account_email.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/cloud_storage_settings.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/create_key_for_service_account.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/create_a_key.png,1,,no-match,
-/images/cloud/guides/accessing-data/GCS/clickpipes_hmac_key.png,1,,no-match,
-https://clickhouse.com/docs/cloud/security/secure-s3,1,/products/cloud/guides/data-sources/accessing-s3-data-securely,manual,
-https://clickhouse.com/docs/cloud/security/secure-s3#option-2-manually-create-iam-role,1,,no-match,
-/operations/backup#configuring-backuprestore-to-use-an-s3-endpoint,1,/reference/engines/database-engines/backup,basename-unique,
-/operations/backup#configuring-backuprestore-to-use-an-azureblobstorage-endpoint,1,/reference/engines/database-engines/backup,basename-unique,
-/operations/backup#command-summary,1,/reference/engines/database-engines/backup,basename-unique,
-/cloud/reference/byoc/onboarding/aws#cloudformation-iam-roles,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
-/observability/overview,1,/concepts/features/backup-restore/overview,basename-ambiguous,/concepts/features/configuration/settings/overview | /concepts/operations/delete/overview | /concepts/operations/update/overview | /get-started/migration-guides/bigquery/overview | /get-started/migration-guides/elastic/overview
-/prompt-management/overview,1,/concepts/features/backup-restore/overview,basename-ambiguous,/concepts/features/configuration/settings/overview | /concepts/operations/delete/overview | /concepts/operations/update/overview | /get-started/migration-guides/bigquery/overview | /get-started/migration-guides/elastic/overview
-/evaluation/overview,1,/concepts/features/backup-restore/overview,basename-ambiguous,/concepts/features/configuration/settings/overview | /concepts/operations/delete/overview | /concepts/operations/update/overview | /get-started/migration-guides/bigquery/overview | /get-started/migration-guides/elastic/overview
-https://clickhouse.com/docs/cloud/manage/api/swagger#tag/Billing,1,,no-match,
-/images/cloud/manage/scaling-patch-request.png,1,,no-match,
-/images/cloud/manage/scaling-patch-response.png,1,,no-match,
-/images/cloud/manage/scaling-configure.png,1,,no-match,
-/images/cloud/manage/scaling-memory-allocation.png,1,,no-match,
-/images/cloud/manage/AutoScaling.png,1,,no-match,
-/images/cloud/reference/byoc-connect-1.png,1,,no-match,
-/images/cloud/reference/byoc-tailscale-1.png,1,,no-match,
-/cloud/reference/byoc/onboarding/customization,1,/products/bring-your-own-cloud/onboarding/customization-aws,contains-ambiguous,/products/bring-your-own-cloud/onboarding/customization-gcp
-/images/cloud/reference/byoc-onboarding-1.png,1,,no-match,
-/images/cloud/reference/byoc-onboarding-2.png,1,,no-match,
-/images/cloud/reference/byoc-onboarding-3.png,1,,no-match,
-/images/cloud/reference/byoc-new-service-1.png,1,,no-match,
-/images/cloud/reference/byoc-new-infra-1.png,1,,no-match,
-/images/cloud/reference/byoc-new-infra-2.png,1,,no-match,
-/use-cases/observability/clickstack/ingesting-data/kubernetes,1,/products/clickstack/example-datasets/kubernetes,basename-ambiguous,/products/clickstack/integration-examples/kubernetes
-/examples/kafka-metrics-dashboard.json,1,,no-match,
-/examples/temporal-metrics-dashboard.json,1,,no-match,
-/assets/cloudflare-logs-dashboard.json,1,,no-match,
-/examples/postgres-logs-dashboard.json,1,,no-match,
-/examples/postgres-metrics-dashboard.json,1,,no-match,
-/examples/systemd-logs-dashboard.json,1,,no-match,
-/examples/cloudwatch-logs-dashboard.json,1,,no-match,
-/examples/nodejs-traces-dashboard.json,1,,no-match,
-/examples/mysql-logs-dashboard.json,1,,no-match,
-/examples/jvm-metrics-dashboard.json,1,,no-match,
-/use-cases/observability/clickstack/production#database-ingestion-user,1,/use-cases/observability/clickstack/managing/production,redirect-direct,
-/use-cases/observability/clickstack/production#estimating-resources,1,/use-cases/observability/clickstack/managing/production,redirect-direct,
-/use-cases/observability/clickstack/production#create-a-database-ingestion-user-managed,1,/use-cases/observability/clickstack/managing/production,redirect-direct,
-https://clickhouse.com/docs/clickhouse-operator/managing-clusters/cleanup,1,,no-match,
-https://clickhouse.com/docs/en/sql-reference/statements/select/group-by#group-by-in-external-memory,1,/reference/statements/select/group-by,basename-unique,
-https://clickhouse.com/docs/en/sql-reference/aggregate-functions/reference,1,/reference/functions/aggregate-functions/reference,basename+parent-unique,/guides/data-warehousing/reference | /integrations/clickpipes/kafka/reference | /integrations/connectors/data-ingestion/etl-tools/fivetran/reference | /integrations/connectors/tools/pg_clickhouse/reference | /products/chdb/reference | /products/cloud/reference
-/use-cases/observability/clickstack/features/dashboards#custom-filters,1,/products/cloud/features/sql-console-features/dashboards,basename-ambiguous,/reference/system-tables/dashboards
-/use-cases/observability/clickstack/managing/performance_tuning#materialize-frequently-queried-attributes,1,/products/clickstack/managing/performance-tuning,basename-unique,
-/use-cases/observability/clickstack/features/dashboards#dashboards-editing-visualizations,1,/products/cloud/features/sql-console-features/dashboards,basename-ambiguous,/reference/system-tables/dashboards
-https://clickhouse.com/docs/operations/backup#take-an-incremental-backup,1,/reference/engines/database-engines/backup,basename-unique,
-/docs/products/clickhouse-private/aws,1,/products/clickhouse-private/deployment/aws,manual,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
-/docs/products/clickhouse-private/aws#install-volumesnapshot-crds,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
-/docs/products/clickhouse-private/aws#install-storageclass-via-helm,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
-/docs/products/clickhouse-private/aws#naming-your-clickhouse-cluster,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
-/chdb/datastore/configuration,1,/integrations/language-clients/go/configuration,basename-ambiguous,/products/chdb/configuration | /products/kubernetes-operator/guides/configuration
-/chdb/datastore/configuration/performance-mode,1,/products/chdb/configuration/performance-mode,basename-unique,
-/chdb/datastore/guides/pandas-cookbook,1,/products/chdb/guides/pandas-cookbook,basename-unique,
-/chdb/datastore/guides/pandas-to-sql,1,/products/chdb/guides/pandas-to-sql,basename-unique,
-/chdb/datastore/debugging/explain,1,/products/chdb/debugging/explain,basename+parent-unique,/reference/statements/explain
-/chdb/datastore/configuration/execution-engine,1,/products/chdb/configuration/execution-engine,basename-unique,
-/faq/general/why-clickhouse-is-so-fast,2,/get-started/about/why-clickhouse-is-so-fast,manual,
+old_slug,count,suggested_target,confidence,alternates
+https://clickhouse.com/docs/knowledgebase/count-parts-by-type,1,/resources/support-center/knowledge-base/troubleshooting/count-parts-by-type,manual,
+/integrations/language-clients/java/jdbc-v1,1,/integrations/language-clients/java/jdbc,manual,
+/knowledgebase/async_vs_optimize_read_in_order,1,/resources/support-center/knowledge-base/performance-optimization/async-vs-optimize-read-in-order,manual,
+/tutorial.md,1,/core/get-started/quickstarts/tutorial,manual,
+/operations/utilities/clickhouse-local,1,/core/concepts/features/tools-and-utilities/clickhouse-local,manual,
+https://clickhouse.com/docs/knowledgebase/terraform_example,1,/resources/support-center/knowledge-base/integrations/terraform-example,manual,
+/cloud/getting-started/quick-start/cloud,1,/core/get-started/setup/cloud,manual,
+https://clickhouse.com/docs/knowledgebase/why-clickhouse-is-so-fast,1,/core/get-started/about/why-clickhouse-is-so-fast,manual,
+/knowledgebase/why-clickhouse-is-so-fast,1,/core/get-started/about/why-clickhouse-is-so-fast,manual,
+/sql-reference,1,/core/reference/home,manual,
+/faq/integration/oracle-odbc.md,1,/resources/support-center/knowledge-base/integrations/oracle-odbc,manual,
+/faq/integration/oracle-odbc,1,/resources/support-center/knowledge-base/integrations/oracle-odbc,manual,
+/knowledgebase/view_number_of_active_mutations,1,/resources/support-center/knowledge-base/monitoring-debugging/view-number-of-active-mutations,manual,
+/optimize/avoid-mutations,1,/core/concepts/best-practices/avoid-mutations,manual,
+https://clickhouse.com/docs/knowledgebase/configure_cap_ipc_lock_and_cap_sys_nice_in_docker,1,/resources/support-center/knowledge-base/troubleshooting/configure-cap-ipc-lock-and-cap-sys-nice-in-docker,manual,
+/knowledgebase/configure_cap_ipc_lock_and_cap_sys_nice_in_docker,1,/resources/support-center/knowledge-base/troubleshooting/configure-cap-ipc-lock-and-cap-sys-nice-in-docker,manual,
+/faq/operations/multi-region-replication.md,1,/resources/support-center/knowledge-base/cloud-services/multi-region-replication,manual,
+/faq/operations/multi-region-replication,1,/resources/support-center/knowledge-base/cloud-services/multi-region-replication,manual,
+/faq/operations/delete-old-data.md,1,/resources/support-center/knowledge-base/tables-schema/delete-old-data,manual,
+/faq/operations/delete-old-data,1,/resources/support-center/knowledge-base/tables-schema/delete-old-data,manual,
+/faq/operations/production.md,1,/resources/support-center/knowledge-base/setup-installation/production,manual,
+/faq/operations/production,1,/resources/support-center/knowledge-base/setup-installation/production,manual,
+/sql-reference/formats.md,1,/core/reference/formats,manual,
+/sql-reference/formats.mdx,1,/core/reference/formats,manual,
+/cloud/security/secure-s3,1,/products/cloud/guides/data-sources/accessing-s3-data-securely,manual,
+https://clickhouse.com/docs/guides/sre/configuring-ssl,1,/core/concepts/features/security/tls/configuring-tls,manual,
+https://clickhouse.com/docs/guides/sre/configuring-ssl/,1,/core/concepts/features/security/tls/configuring-tls,manual,
+https://clickhouse.com/docs/integrations/language-clients/javascript#custom-httphttps-agent-experimental-nodejs-only,1,/integrations/language-clients/javascript/usage#custom-httphttps-agent-experimental-nodejs-only,manual,
+/interfaces/,1,/core/concepts/features/interfaces/overview,manual,
+https://clickhouse.com/docs/interfaces,1,/core/concepts/features/interfaces/overview,manual,
+https://clickhouse.com/docs/knowledgebase/certificate_verify_failed_error,2,/resources/support-center/knowledge-base/troubleshooting/certificate-verify-failed-error,manual,
+/docs/knowledgebase/certificate_verify_failed_error,2,/resources/support-center/knowledge-base/troubleshooting/certificate-verify-failed-error,manual,
+https://clickhouse.com/docs/optimize/avoidoptimizefinal,2,/core/concepts/best-practices/avoid-optimize-final,manual,
+/optimize/avoidoptimizefinal,2,/core/concepts/best-practices/avoid-optimize-final,manual,
+/cloud/manage/api/usageCost-api-reference,2,/api-reference/billing/get-organization-usage-costs,manual,
+/cloud/security/cloud-access-management/overview,2,/products/cloud/guides/security/cloud-access-management/manage-database-users,manual,
+/core/concepts/features/interfaces/formats,5,/core/reference/formats,manual,
+https://clickhouse.com/docs/sql-reference/formats,5,/core/reference/formats,manual,
+https://clickhouse.com/docs/sql-reference/formats/,5,/core/reference/formats,manual,
+/sql-reference/formats,5,/core/reference/formats,manual,
+https://clickhouse.com/docs/faq/general/datalake,1,/resources/support-center/knowledge-base/general-faqs/datalake,manual,
+/faq/general/datalake,1,/resources/support-center/knowledge-base/general-faqs/datalake,manual,
+https://clickhouse.com/docs/faq/general/faq-index,1,/resources/support-center/knowledge-base/general-faqs/faq-index,manual,
+/faq/general/faq-index,1,/resources/support-center/knowledge-base/general-faqs/faq-index,manual,
+https://clickhouse.com/docs/faq/general/separate-storage,1,/resources/support-center/knowledge-base/general-faqs/separate-storage,manual,
+/faq/general/separate-storage,1,/resources/support-center/knowledge-base/general-faqs/separate-storage,manual,
+https://clickhouse.com/docs/faq/general/time-series,1,/resources/support-center/knowledge-base/general-faqs/time-series,manual,
+/faq/general/time-series,1,/resources/support-center/knowledge-base/general-faqs/time-series,manual,
+https://clickhouse.com/docs/faq/general/concurrency,1,/resources/support-center/knowledge-base/general-faqs/concurrency,manual,
+/faq/general/concurrency,1,/resources/support-center/knowledge-base/general-faqs/concurrency,manual,
+https://clickhouse.com/docs/faq/general/key-value,1,/resources/support-center/knowledge-base/general-faqs/key-value,manual,
+/faq/general/key-value,1,/resources/support-center/knowledge-base/general-faqs/key-value,manual,
+https://clickhouse.com/docs/faq/general/cost-based,1,/resources/support-center/knowledge-base/general-faqs/cost-based,manual,
+/faq/general/cost-based,1,/resources/support-center/knowledge-base/general-faqs/cost-based,manual,
+https://clickhouse.com/docs/faq/general/who-is-using-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/who-is-using-clickhouse,manual,
+/faq/general/who-is-using-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/who-is-using-clickhouse,manual,
+https://clickhouse.com/docs/faq/general/distributed-join,1,/resources/support-center/knowledge-base/general-faqs/distributed-join,manual,
+/faq/general/distributed-join,1,/resources/support-center/knowledge-base/general-faqs/distributed-join,manual,
+https://clickhouse.com/docs/faq/general/updates,1,/resources/support-center/knowledge-base/general-faqs/updates,manual,
+/faq/general/updates,1,/resources/support-center/knowledge-base/general-faqs/updates,manual,
+https://clickhouse.com/docs/faq/general/why-recommend-clickhouse-keeper-over-zookeeper,1,/resources/support-center/knowledge-base/general-faqs/why-recommend-clickhouse-keeper-over-zookeeper,manual,
+/faq/general/why-recommend-clickhouse-keeper-over-zookeeper,1,/resources/support-center/knowledge-base/general-faqs/why-recommend-clickhouse-keeper-over-zookeeper,manual,
+https://clickhouse.com/docs/faq/general/dependencies,1,/resources/support-center/knowledge-base/general-faqs/dependencies,manual,
+/faq/general/dependencies,1,/resources/support-center/knowledge-base/general-faqs/dependencies,manual,
+https://clickhouse.com/docs/faq/general/use-cases-index,1,/resources/support-center/knowledge-base/general-faqs/use-cases-index,manual,
+/faq/general/use-cases-index,1,/resources/support-center/knowledge-base/general-faqs/use-cases-index,manual,
+https://clickhouse.com/docs/faq/general/olap,1,/resources/support-center/knowledge-base/general-faqs/olap,manual,
+/faq/general/olap,1,/resources/support-center/knowledge-base/general-faqs/olap,manual,
+https://clickhouse.com/docs/faq/general/ne-tormozit,1,/resources/support-center/knowledge-base/general-faqs/ne-tormozit,manual,
+/faq/general/ne-tormozit,1,/resources/support-center/knowledge-base/general-faqs/ne-tormozit,manual,
+https://clickhouse.com/docs/faq/general/dbms-naming,1,/resources/support-center/knowledge-base/general-faqs/dbms-naming,manual,
+/faq/general/dbms-naming,1,/resources/support-center/knowledge-base/general-faqs/dbms-naming,manual,
+https://clickhouse.com/docs/faq/general/use-clickhouse-for-log-analytics,1,/resources/support-center/knowledge-base/general-faqs/use-clickhouse-for-log-analytics,manual,
+/faq/general/use-clickhouse-for-log-analytics,1,/resources/support-center/knowledge-base/general-faqs/use-clickhouse-for-log-analytics,manual,
+https://clickhouse.com/docs/faq/general/columnar-database,1,/resources/support-center/knowledge-base/general-faqs/columnar-database,manual,
+/faq/general/columnar-database,1,/resources/support-center/knowledge-base/general-faqs/columnar-database,manual,
+https://clickhouse.com/docs/faq/general/sql,1,/resources/support-center/knowledge-base/general-faqs/sql,manual,
+/faq/general/sql,1,/resources/support-center/knowledge-base/general-faqs/sql,manual,
+https://clickhouse.com/docs/faq/general/index,1,/resources/support-center/knowledge-base/general-faqs/index,manual,
+/faq/general/index,1,/resources/support-center/knowledge-base/general-faqs/index,manual,
+https://clickhouse.com/docs/faq/general/mapreduce,1,/resources/support-center/knowledge-base/general-faqs/mapreduce,manual,
+/faq/general/mapreduce,1,/resources/support-center/knowledge-base/general-faqs/mapreduce,manual,
+https://clickhouse.com/docs/faq/general/vector-search,1,/resources/support-center/knowledge-base/general-faqs/vector-search,manual,
+/faq/general/vector-search,1,/resources/support-center/knowledge-base/general-faqs/vector-search,manual,
+https://clickhouse.com/docs/faq/general/how-do-i-contribute-code-to-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/how-do-i-contribute-code-to-clickhouse,manual,
+/faq/general/how-do-i-contribute-code-to-clickhouse,1,/resources/support-center/knowledge-base/general-faqs/how-do-i-contribute-code-to-clickhouse,manual,
+https://clickhouse.com/docs/faq/general/federated,1,/resources/support-center/knowledge-base/general-faqs/federated,manual,
+/faq/general/federated,1,/resources/support-center/knowledge-base/general-faqs/federated,manual,
+https://clickhouse.com/docs/faq/general/operations-index,1,/resources/support-center/knowledge-base/general-faqs/operations-index,manual,
+/faq/general/operations-index,1,/resources/support-center/knowledge-base/general-faqs/operations-index,manual,
+https://clickhouse.com/docs/get-started/quick-start,2,/core/get-started/setup/install,manual,
+/integrations/data-formats/json,2,/core/guides/clickhouse/data-formats/json/intro,manual,
+/knowledgebase,4,/resources/support-center/home,manual,
+/language-clients/javascript,5,/integrations/language-clients/javascript/overview,manual,
+/language-clients/javascript/release-notes,5,/integrations/language-clients/javascript/release-notes,manual,
+/language-clients/javascript/reference,5,/integrations/language-clients/javascript/reference,manual,
+/language-clients/javascript/examples,5,/integrations/language-clients/javascript/examples,manual,
+/language-clients/javascript/usage,5,/integrations/language-clients/javascript/usage,manual,
+/use-cases/observability/clickstack/deployment/overview,1,/products/clickstack/deployment/overview,manual,
+/products/clickhouse-private,1,/products/clickhouse-private/deployment/bare-metal,manual,
+/docs/products/clickhouse-private,1,/products/clickhouse-private/deployment/bare-metal,manual,
+/docs/products/clickhouse-private/operational-guide,1,/products/clickhouse-private/management/operational-guide,manual,
+/docs/products/clickhouse-private/howto-guides,1,/products/clickhouse-private/management/howto-guides,manual,
+/docs/products/clickhouse-private/faq,1,/products/clickhouse-private/management/faq,manual,
+/docs/products/clickhouse-private/breaking-changes,1,/products/clickhouse-private/overview/breaking-changes,manual,
+/docs/products/clickhouse-private/api,1,/products/clickhouse-private/management/api,manual,
+/docs/products/clickhouse-private/government,4,/products/clickhouse-private/deployment/government,manual,
+/docs/products/clickhouse-private/bare-metal,4,/products/clickhouse-private/deployment/bare-metal,manual,
+/docs/products/clickhouse-private/gcp,4,/products/clickhouse-private/deployment/gcp,manual,
+/engines/table-engines/mergetree-family/textindexes,4,/core/reference/engines/table-engines/mergetree-family/textindexes,manual,
+/click-stack/use-cases/observability/clickstack/deployment/hyperdx-clickhouse-cloud,4,/products/clickstack/deployment/managed,manual,
+/getting-started/quick-start,7,/core/get-started/setup/install,manual,
+/operations/settings/settings-formats.md/#input_format_skip_unknown_fields,12,,no-match,
+/integrations/data-visualization/metabase-and-clickhouse.md,10,/integrations/connectors/data-visualization/metabase-and-clickhouse,basename-unique,
+/integrations/language-clients/java/client/client.mdx,9,/core/concepts/features/interfaces/client,basename-ambiguous,/integrations/language-clients/java/client | /resources/contribute/native-protocol/client
+/engines/table-engines/mergetree-family/mergetree.md/#table_engine-mergetree-s3,8,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/getting-started/install/install.mdx,8,/core/get-started/install/install,basename+parent-unique,/products/chdb/install
+/knowledgebase/aws-privatelink-setup-for-clickpipes,8,,no-match,
+/integrations/data-ingestion/data-formats/json/intro.md,8,/core/guides/clickhouse/data-formats/json/intro,basename+parent-unique,/core/get-started/about/intro | /core/guides/clickhouse/data-formats/intro | /products/clickstack/migration/elastic/intro | /products/cloud/getting-started/intro
+/core/get-started/quick-start,7,/core/get-started/setup/install,manual,
+/operations/settings/settings-formats.md/#input_format_with_names_use_header,7,,no-match,
+/integrations/data-ingestion/clickpipes/mysql/faq.md,7,/integrations/clickpipes/mysql/faq,basename+parent-unique,/integrations/clickpipes/kafka/faq | /integrations/clickpipes/mongodb/faq | /integrations/clickpipes/postgres/faq | /products/bring-your-own-cloud/reference/faq | /products/clickstack/faq | /products/cloud/features/backups/faq | /products/managed-postgres/faq
+/integrations/data-ingestion/kafka/index.md,7,/integrations/connectors/data-ingestion/kafka,basename+parent-unique,/integrations/clickpipes/kafka | /core/reference/engines/table-engines/integrations/kafka
+/core/get-started/quickstarts/create-your-first-mergetree-table,6,,no-match,
+/operations/settings/settings-formats.md/#input_format_import_nested_json,6,,no-match,
+/operations/settings/settings-formats.md/#input_format_defaults_for_omitted_fields,6,,no-match,
+/operations/storing-data.md/#using-local-cache,6,/core/concepts/features/configuration/server-config/storing-data,basename-unique,
+/integrations/data-ingestion/etl-tools/dbt/index.md,5,/integrations/connectors/data-ingestion/etl-tools/dbt,basename-unique,
+/sql-reference/functions/string-search-functions.md/#hasToken,5,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#hasAllTokens,5,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#hasAnyTokens,5,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/operations/settings/settings.md/#mutations_sync,5,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/settings-formats.md/#format_csv_delimiter,5,,no-match,
+/use-cases/observability/clickstack/production,5,/use-cases/observability/clickstack/managing/production,redirect-direct,
+/engines/table-engines/mergetree-family/mergetree.md/#mergetree-data-storage,5,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+https://clickhouse.com/docs/cloud/manage/api/swagger#tag/ClickPipes/paths/~1v1~1organizations~1%7BorganizationId%7D~1services~1%7BserviceId%7D~1clickpipes/post,5,/api-reference/organization/get-list-of-available-organizations,manual,
+/cloud/manage/api/swagger,5,/api-reference/organization/get-list-of-available-organizations,manual,
+/core/guides/sre/user-management/index.md,4,,no-match,
+/engines/table-engines/mergetree-family/invertedindexes,4,/core/reference/engines/table-engines/mergetree-family/textindexes,manual,
+https://clickhouse.com/docs/en/sql-reference/statements/alter/projection,4,/core/reference/statements/alter/projection,basename-unique,
+/core/get-started/quickstarts/build-etl-pipeline-using-clickhouse,4,,no-match,
+/sql-reference/statements/alter/skipping-index.md/#materialize-index,4,/core/reference/statements/alter/skipping-index,basename-unique,
+/operations/settings/settings-formats.md/#output_format_json_quote_64bit_integers,4,,no-match,
+/operations/settings/settings-formats.md/#output_format_json_quote_denormals,4,,no-match,
+/operations/settings/settings-formats.md/#output_format_json_array_of_rows,4,,no-match,
+/operations/settings/settings-formats.md/#format_tsv_null_representation,4,,no-match,
+https://clickhouse.com/docs,4,,no-match,
+/knowledgebase/,4,/resources/support-center/home,manual,
+/managed-postgres/read-replicas,4,/products/managed-postgres/read-replicas,basename-unique,
+/managed-postgres/high-availability,4,/products/managed-postgres/high-availability,basename-unique,
+/managed-postgres/connection,4,/products/managed-postgres/connection,basename-unique,
+/use-cases/observability/clickstack/deployment/hyperdx-clickhouse-cloud,4,/products/clickstack/deployment/managed,manual,
+/core/get-started/quickstarts/obtain-your-cloud-connection-details,3,,no-match,
+/core/get-started/quickstarts/create-your-first-service-on-cloud,3,,no-match,
+/knowledgebase/exception-too-many-parts,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_read_bools_as_numbers,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_read_bools_as_strings,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_read_numbers_as_strings,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_read_arrays_as_strings,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_read_objects_as_strings,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_named_tuples_as_objects,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_try_infer_numbers_from_strings,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_try_infer_named_tuples_from_objects,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_infer_incomplete_types_as_strings,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_defaults_for_missing_elements_in_named_tuple,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_ignore_unknown_keys_in_named_tuple,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_compact_allow_variable_number_of_columns,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_throw_on_bad_escape_sequence,3,,no-match,
+/operations/settings/settings-formats.md/#input_format_json_empty_as_default,3,,no-match,
+/operations/settings/settings-formats.md/#output_format_json_quote_64bit_floats,3,,no-match,
+/operations/settings/settings-formats.md/#output_format_json_quote_decimals,3,,no-match,
+/operations/settings/settings-formats.md/#output_format_json_escape_forward_slashes,3,,no-match,
+/operations/settings/settings-formats.md/#output_format_json_named_tuples_as_objects,3,,no-match,
+/operations/settings/settings-formats.md/#output_format_json_validate_utf8,3,,no-match,
+/operations/storing-data.md/#configuring-external-storage,3,/core/concepts/features/configuration/server-config/storing-data,basename-unique,
+/sql-reference/functions/tuple-map-functions.md/#mapValues,3,/core/reference/functions/regular-functions/tuple-map-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#match,3,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#startsWith,3,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#endsWith,3,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#hasTokenOrNull,3,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/core/guides/sre/keeper/index.md,3,/core/guides/oss/deployment-and-scaling/keeper,basename-unique,
+/sql-reference/statements/create/table.md/#default,3,/core/reference/statements/create/table,basename-unique,
+/operations/settings/settings-formats.md/#input_format_with_types_use_header,3,,no-match,
+/sql-reference/data-types/nested-data-structures/index.md,3,/core/reference/data-types/nested-data-structures,basename-unique,
+/sql-reference/dictionaries#dictionary-sources,3,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries,3,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+https://clickhouse.com/docs/introduction/distinctive-features/#data-compression,3,/core/get-started/about/distinctive-features,basename-unique,
+/whats-new/changelog/2019.md/#experimental-features-1,3,/resources/changelogs/oss/2019,basename-unique,
+/language-clients/javascript/usage#streaming-files-nodejs-only,3,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+https://clickhouse.com/docs/cloud/manage/api/swagger#tag/ClickPipes,3,,no-match,
+/sql-reference/functions/files.md/#file,3,/core/reference/functions/regular-functions/files,basename-unique,
+/managed-postgres/quickstart,3,/products/managed-postgres/quickstart,basename+parent-unique,/integrations/clickpipes/mongodb/quickstart | /products/chdb/datastore/quickstart
+/use-cases/observability/clickstack/production#configure-ttl,3,/use-cases/observability/clickstack/managing/production,redirect-direct,
+/chdb/datastore/guides/pandas-performance,3,/products/chdb/guides/pandas-performance,basename-unique,
+/core/get-started/quickstarts/create-your-first-materialized-view,2,,no-match,
+/core/get-started/quickstarts/insert-data-using-clickhouse-client,2,,no-match,
+https://clickhouse.com/docs/en/interfaces/formats,2,/core/reference/formats,manual,/core/concepts/features/interfaces/formats | /core/reference/formats | /core/reference/settings/formats | /core/reference/system-tables/formats
+/operations/settings/settings.md/#materialize_skip_indexes_on_insert,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/server-configuration-parameters/settings.md/#background_pool_size,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/server-configuration-parameters/settings.md/#background_merges_mutations_concurrency_ratio,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/settings-formats.md/#format_regexp_escaping_rule,2,,no-match,
+/sql-reference/aggregate-functions/reference/anyLast.md,2,/sql-reference/aggregate-functions/reference/anyLast,redirect-direct,
+/engines/table-engines/mergetree-family/mergetree.md/#projections,2,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/sql-reference/aggregate-functions/reference/argMin.md,2,/sql-reference/aggregate-functions/reference/argMin,redirect-direct,
+/sql-reference/aggregate-functions/reference/argMax.md,2,/sql-reference/aggregate-functions/reference/argMax,redirect-direct,
+/operations/settings/settings.md/#join_use_nulls,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/sql-reference/functions/splitting-merging-functions.md/#tokens,2,/core/reference/functions/regular-functions/splitting-merging-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#lower,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#lowerUTF8,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#normalizeUTF8NFC,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#normalizeUTF8NFD,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#normalizeUTF8NFKC,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#normalizeUTF8NFKD,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#toValidUTF8,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#extractTextFromHTML,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#substring,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#idnaEncode,2,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/engines/table-engines/mergetree-family/mergetree.md/#skip-index-types,2,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/sql-reference/functions/tuple-map-functions.md/#mapKeys,2,/core/reference/functions/regular-functions/tuple-map-functions,basename-unique,
+/sql-reference/functions/json-functions.md/#JSONAllPaths,2,/core/reference/functions/regular-functions/json-functions,basename-unique,
+/sql-reference/functions/tuple-map-functions.md/#mapvalues,2,/core/reference/functions/regular-functions/tuple-map-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#like,2,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/operations/server-configuration-parameters/settings.md/#background_schedule_pool_size,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/engines/table-engines/mergetree-family/mergetree.md/#table_engine-mergetree-multiple-volumes,2,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/sql-reference/statements/insert-into.md/#inserting-the-results-of-select,2,/core/reference/statements/insert-into,basename-unique,
+/sql-reference/dictionaries#storing-dictionaries-in-memory,2,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries#refreshing-dictionary-data-using-lifetime,2,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/operations/settings/settings-formats.md/#input_format_json_validate_types_from_metadata,2,,no-match,
+/operations/settings/settings-formats.md/#format_json_object_each_row_column_for_object_name,2,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_enum_as_number,2,,no-match,
+/operations/settings/settings-formats.md/#output_format_csv_crlf_end_of_line,2,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_skip_first_lines,2,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_enum_as_number,2,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_skip_first_lines,2,,no-match,
+/operations/server-configuration-parameters/settings.md/#format_schema_path,2,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/settings-formats.md/#output_format_pretty_display_footer_column_names,2,,no-match,
+/core/guides/developer/on-the-fly-mutations,2,/core/guides/developer/on-fly-mutations,redirect-direct,
+/integrations/gcs,2,/integrations/data-ingestion/gcs,redirect-direct,
+/engines/table-engines/mergetree-family/mergetree.md/#primary-keys-and-indexes-in-queries,2,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/knowledgebase/key-value,2,/resources/support-center/knowledge-base/general-faqs/key-value,basename-unique,
+/interfaces/third-party/client-libraries.md,2,,no-match,
+https://clickhouse.com/docs/knowledgebase/production#how-to-choose-between-clickhouse-releases,2,/resources/support-center/knowledge-base/setup-installation/production,basename-unique,
+/integrations/language-clients/java/jdbc-v1#configuring-http-library,2,,no-match,
+/language-clients/javascript/usage#keep-alive-configuration-nodejs-only,2,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/language-clients/javascript/usage#custom-httphttps-agent-experimental-nodejs-only,2,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/language-clients/javascript/usage#supported-data-formats,2,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/integrations/mysql,2,/integrations/data-sources/mysql,redirect-direct,
+//cloud/get-started/query-endpoints.md,2,/products/cloud/features/sql-console-features/query-endpoints,basename-ambiguous,/products/cloud/guides/sql-console/query-endpoints
+/sql-reference/statements/insert-into.md/#inserting-data-from-a-file,2,/core/reference/statements/insert-into,basename-unique,
+/engines/table-engines/integrations/s3.md/#settings,2,/core/reference/engines/table-engines/integrations/s3,basename+parent-unique,/core/reference/functions/table-functions/s3
+/integrations/data-ingestion/dbms/jdbc-with-clickhouse.md,2,/integrations/connectors/data-ingestion/jdbc-with-clickhouse,basename-unique,
+https://clickhouse.com/docs/en/sql-reference/table-functions/view/,2,/core/reference/functions/table-functions/view,basename+parent-unique,/core/reference/engines/table-engines/special/view | /core/reference/statements/alter/view | /core/reference/statements/create/view
+https://clickhouse.com/docs/en/operations/system-tables/tables/,2,/core/reference/system-tables/tables,basename-unique,
+/knowledgebase/how-to-connect-to-ch-cloud-using-ssh-keys,2,,no-match,
+/whats-new/cloud,2,/cloud/reference/changelog/changelog,redirect-direct,
+https://clickhouse.com/docs/cloud/security/cloud-access-management/overview,2,/products/cloud/guides/security/cloud-access-management/manage-database-users,manual,/core/concepts/features/configuration/settings/overview | /core/concepts/features/operations/delete/overview | /core/concepts/features/operations/update/overview | /core/get-started/migration-guides/bigquery/overview | /core/get-started/migration-guides/elastic/overview
+https://clickhouse.com/docs/cloud/manage/api/usageCost-api-reference,2,/api-reference/billing/get-organization-usage-costs,manual,
+/integrations/data-visualization/grafana/index.md,2,/integrations/connectors/data-visualization/grafana,basename+parent-unique,/core/guides/use-cases/observability/build-your-own/grafana
+/interfaces/cli.md/#cli-queries-with-parameters,2,/core/concepts/features/interfaces/cli,basename-ambiguous,/products/cloud/features/cli
+/knowledgebase/useful-queries-for-troubleshooting,2,,no-match,
+/knowledgebase/certificate_verify_failed_error,2,/resources/support-center/knowledge-base/troubleshooting/certificate-verify-failed-error,manual,
+/faq/general/why-clickhouse-is-so-fast,2,/core/get-started/about/why-clickhouse-is-so-fast,basename-unique,
+https://clickhouse.com/docs/integrations/data-formats/json,2,/core/guides/clickhouse/data-formats/json/intro,manual,/core/guides/clickhouse/data-formats/json/exporting | /core/guides/clickhouse/data-formats/json/formats | /core/guides/clickhouse/data-formats/json/inference | /core/guides/clickhouse/data-formats/json/intro | /core/guides/clickhouse/data-formats/json/loading
+/chdb/guides/querying-pandas,2,/products/chdb/guides/querying-pandas,basename-unique,
+/managed-postgres/overview,2,/products/managed-postgres/overview,basename+parent-unique,/core/concepts/features/backup-restore/overview | /core/concepts/features/configuration/settings/overview | /core/concepts/features/operations/delete/overview | /core/concepts/features/operations/update/overview | /core/get-started/migration-guides/bigquery/overview | /core/get-started/migration-guides/elastic/overview | /core/get-started/migration-guides/overview | /core/get-started/migration-guides/postgres/overview | /core/get-started/migration-guides/redshift/overview | /core/get-started/migration-guides/snowflake/overview | /core/get-started/use-cases/overview | /core/guides/use-cases/data-warehousing/getting-started/overview | /integrations/clickpipes/bigquery/overview | /integrations/clickpipes/kinesis/overview | /integrations/clickpipes/object-storage/amazon-s3/overview | /integrations/clickpipes/object-storage/azure-blob-storage/overview | /integrations/clickpipes/object-storage/google-cloud-storage/overview | /integrations/connectors/data-ingestion/azure/azure-data-factory/overview | /core/concepts/features/interfaces/overview | /integrations/language-clients/csharp/overview | /products/clickstack/features/dashboards/overview | /products/clickstack/ingesting-data/overview | /products/clickstack/overview | /products/cloud/features/autoscaling/overview | /products/cloud/features/backups/overview | /products/cloud/features/monitoring/overview | /products/cloud/guides/infrastructure/deployment-options/byoc/overview | /products/cloud/reference/billing/marketplace/overview | /products/kubernetes-operator/overview | /core/reference/functions/regular-functions/overview | /core/reference/statements/create/dictionary/layouts/overview | /core/reference/statements/create/dictionary/sources/overview | /core/reference/system-tables/overview
+/managed-postgres/backup-and-restore,2,/products/managed-postgres/backup-and-restore,basename-unique,
+/managed-postgres/settings,2,/products/managed-postgres/settings,basename+parent-unique,/products/cloud/reference/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/cloud/reference/byoc/architecture,2,/cloud/guides/infrastructure/deployment_options/byoc/architecture,redirect-direct,
+https://clickhouse.com/docs/cloud/manage/api/swagger#/paths/~1v1~1organizations~1:organizationId~1services~1:serviceId~1scaling/patch,2,,no-match,
+/managed-postgres/quickstart#create-postgres-database,2,/products/managed-postgres/quickstart,basename+parent-unique,/integrations/clickpipes/mongodb/quickstart | /products/chdb/datastore/quickstart
+/use-cases/observability/clickstack/ingesting-data/kubernetes#forwarding-resouce-tags-to-pods,2,/products/clickstack/example-datasets/kubernetes,basename-ambiguous,/products/clickstack/integration-examples/kubernetes
+/examples/host-logs-dashboard.json,2,,no-match,
+https://clickhouse.com/docs/en/sql-reference/data-types/aggregatefunction,2,/core/reference/data-types/aggregatefunction,basename-unique,
+/chdb/datastore/debugging,2,/products/chdb/debugging,basename-unique,
+/chdb/datastore/guides/pandas-differences,2,/products/chdb/guides/pandas-differences,basename-unique,
+/chdb/datastore/guides/migration-from-pandas,2,/products/chdb/guides/migration-from-pandas,basename-unique,
+/getting-started/index.md,1,/products/chdb/getting-started,basename-ambiguous,/products/clickstack/getting-started
+https://clickhouse.com/docs/knowledgebase/fix-developer-verification-error-in-macos,1,,no-match,
+https://clickhouse.com/docs/knowledgebase/why_default_logging_verbose,1,,no-match,
+/integrations/data-ingestion/s3/index.md,1,/core/reference/engines/table-engines/integrations/s3,basename-ambiguous,/core/reference/functions/table-functions/s3
+https://clickhouse.com/docs/en/sql-reference/table-functions/url,1,/core/reference/functions/table-functions/url,basename+parent-unique,/core/reference/engines/table-engines/special/url
+/sql-reference/functions/geo/coordinates.md/#pointinpolygon,1,/core/reference/functions/regular-functions/geo/coordinates,basename-unique,
+/core/get-started/quickstarts/create-your-first-projection,1,,no-match,
+https://clickhouse.com/docs/en/sql-reference/statements/create/view#materialized-view,1,/core/reference/statements/create/view,basename+parent-unique,/core/reference/engines/table-engines/special/view | /core/reference/functions/table-functions/view | /core/reference/statements/alter/view
+https://clickhouse.com/docs/en/engines/table-engines/mergetree-family/mergetree,1,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/quickstarts/materialized-views,1,/core/get-started/quickstarts/create-your-first-materialized-view,manual,/products/clickstack/managing/materialized-views | /resources/support-center/tips-and-tricks/materialized-views
+/quickstarts/etl-pipeline,1,/core/get-started/quickstarts/build-etl-pipeline-using-clickhouse,manual,
+/en/engines/table-engines/mergetree-family/mergetree,1,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/en/operations/system-tables/parts,1,/core/reference/system-tables/parts,basename+parent-unique,/core/concepts/core-concepts/parts
+/en/sql-reference/data-types,1,/core/reference/data-types,manual,/core/reference/data-types
+https://clickhouse.com/docs/en/interfaces/cli,1,/core/concepts/features/interfaces/cli,basename-ambiguous,/products/cloud/features/cli
+https://clickhouse.com/docs/en/cloud/bestpractices/cloud-connection,1,,no-match,
+https://clickhouse.com/docs/en/interfaces/tcp,1,/core/concepts/features/interfaces/tcp,basename-unique,
+https://clickhouse.com/docs/en/interfaces/http,1,/core/concepts/features/security/external-authenticators/http,basename-ambiguous,/core/concepts/features/interfaces/http | /core/reference/statements/create/dictionary/sources/http
+/en/operations/utilities/clickhouse-local,1,/core/concepts/features/tools-and-utilities/clickhouse-local,manual,/products/chdb/guides/clickhouse-local
+/core/get-started/quickstarts/common-getting-started-issues,1,/core/get-started/quickstarts/home,manual,
+/en/sql-reference/data-types/map,1,/core/reference/data-types/map,basename-unique,
+/en/sql-reference/aggregate-functions/combinators,1,/core/reference/functions/aggregate-functions/combinators,basename-unique,
+/integrations/postgresql/connecting-to-postgresql,1,/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql,redirect-direct,
+/integrations/data-ingestion/etl-tools/airbyte-and-clickhouse.md,1,/integrations/connectors/data-ingestion/etl-tools/airbyte-and-clickhouse,basename-unique,
+/integrations/data-ingestion/etl-tools/vector-to-clickhouse.md,1,/integrations/connectors/data-ingestion/etl-tools/vector-to-clickhouse,basename-unique,
+/operations/settings/settings-formats.md/#format_capn_proto_enum_comparising_mode,1,,no-match,
+/operations/settings/settings-formats.md/#format_regexp,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_arrow_string_as_string,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_orc_compression_method,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_arrow_case_insensitive_column_matching,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_arrow_allow_missing_columns,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_mysql_dump_table_name,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_msgpack_number_of_columns,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_msgpack_uuid_representation,1,,no-match,
+/sql-reference/aggregate-functions/reference/sumWithOverflow.md,1,/sql-reference/aggregate-functions/reference/sumWithOverflow,redirect-direct,
+/sql-reference/aggregate-functions/reference/groupBitAnd.md,1,/sql-reference/aggregate-functions/reference/groupBitAnd,redirect-direct,
+/sql-reference/aggregate-functions/reference/groupBitOr.md,1,/sql-reference/aggregate-functions/reference/groupBitOr,redirect-direct,
+/sql-reference/aggregate-functions/reference/groupBitXor.md,1,/sql-reference/aggregate-functions/reference/groupBitXor,redirect-direct,
+/sql-reference/aggregate-functions/reference/groupArrayArray.md,1,/sql-reference/aggregate-functions/reference/groupArrayArray,redirect-direct,
+/sql-reference/aggregate-functions/reference/sumMappedArrays.md,1,,no-match,
+/sql-reference/aggregate-functions/reference/minMappedArrays.md,1,,no-match,
+/sql-reference/aggregate-functions/reference/maxMappedArrays.md,1,,no-match,
+/sql-reference/table-functions/file.md/#globs-in-path,1,/core/reference/functions/table-functions/file,basename+parent-unique,/core/reference/engines/table-engines/special/file
+/engines/table-engines/mergetree-family/mergetree.md/#virtual-columns,1,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/operations/workload-scheduling.md/#hierarchy,1,/core/concepts/features/configuration/server-config/workload-scheduling,basename-unique,
+/knowledgebase/count-parts-by-type,1,/resources/support-center/knowledge-base/troubleshooting/count-parts-by-type,manual,
+/sql-reference/functions/splitting-merging-functions.md/#splitByNonAlpha,1,/core/reference/functions/regular-functions/splitting-merging-functions,basename-unique,
+/sql-reference/aggregate-functions/reference/quantileDeterministic.md,1,/sql-reference/aggregate-functions/reference/quantileDeterministic,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileExact.md,1,/sql-reference/aggregate-functions/reference/quantileExact,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileExactWeighted.md,1,/sql-reference/aggregate-functions/reference/quantileExactWeighted,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileTiming.md,1,/sql-reference/aggregate-functions/reference/quantileTiming,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileTimingWeighted.md,1,/sql-reference/aggregate-functions/reference/quantileTimingWeighted,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileTDigest.md,1,/sql-reference/aggregate-functions/reference/quantileTDigest,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileTDigestWeighted.md,1,/sql-reference/aggregate-functions/reference/quantileTDigestWeighted,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileBFloat16.md,1,/sql-reference/aggregate-functions/reference/quantileBFloat16,redirect-direct,
+/sql-reference/aggregate-functions/reference/quantileDD.md,1,/core/reference/functions/aggregate-functions/reference/quantileddsketch,contains-unique,
+/sql-reference/functions/other-functions.md/#joinGet,1,/core/reference/functions/regular-functions/other-functions,basename-unique,
+/operations/settings/settings.md/#join_any_take_last_row,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/core/guides/best-practices/asyncinserts.md,1,/core/concepts/features/operations/insert/asyncinserts,basename-unique,
+/sql-reference/statements/create/table.md/#default_values,1,/core/reference/statements/create/table,basename-unique,
+/sql-reference/functions/splitting-merging-functions.md/#tokensForLikePattern,1,/core/reference/functions/regular-functions/splitting-merging-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#caseFoldUTF8,1,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#normalizeUTF8NFKCCasefold,1,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-replace-functions.md/#translate,1,/core/reference/functions/regular-functions/string-replace-functions,basename-unique,
+/sql-reference/functions/string-functions.md/#removeDiacriticsUTF8,1,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#hasPhrase,1,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/sql-reference/functions/tuple-map-functions.md/#mapkeys,1,/core/reference/functions/regular-functions/tuple-map-functions,basename-unique,
+/sql-reference/statements/select/order-by.md/#sorting-of-special-values,1,/core/reference/statements/select/order-by,basename+parent-unique,/core/reference/statements/alter/order-by
+/operations/settings/settings.md/#max_threads,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/settings.md/#force_index_by_date,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/sql-reference/functions/string-functions.md/#sparseGrams,1,/core/reference/functions/regular-functions/string-functions,basename-unique,
+/sql-reference/functions/comparison-functions.md/#equals,1,/core/reference/functions/regular-functions/comparison-functions,basename-unique,
+/sql-reference/functions/comparison-functions.md/#notEquals,1,/core/reference/functions/regular-functions/comparison-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#notLike,1,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#multiSearchAny,1,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/sql-reference/functions/comparison-functions.md/#less,1,/core/reference/functions/regular-functions/comparison-functions,basename-unique,
+/sql-reference/functions/comparison-functions.md/#greater,1,/core/reference/functions/regular-functions/comparison-functions,basename-unique,
+/sql-reference/functions/comparison-functions.md/#lessOrEquals,1,/core/reference/functions/regular-functions/comparison-functions,basename-unique,
+/sql-reference/functions/comparison-functions.md/#greaterOrEquals,1,/core/reference/functions/regular-functions/comparison-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#hasTokenCaseInsensitive,1,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/sql-reference/functions/string-search-functions.md/#hasTokenCaseInsensitiveOrNull,1,/core/reference/functions/regular-functions/string-search-functions,basename-unique,
+/integrations/data-ingestion/gcs/index.md/#creating-a-disk,1,/core/reference/functions/table-functions/gcs,basename-unique,
+/operations/server-configuration-parameters/settings.md/#path,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/server-configuration-parameters/settings.md/#background_move_pool_size,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/merge-tree-settings.md/#min_bytes_to_rebalance_partition_over_jbod,1,/core/reference/settings/merge-tree-settings,basename-unique,
+/operations/storing-data.md/#refresh-parts-interval-and-table-disk,1,/core/concepts/features/configuration/server-config/storing-data,basename-unique,
+/operations/settings/settings.md/#max_replica_delay_for_distributed_queries,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/settings.md/#fallback_to_stale_replicas_for_distributed_queries,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/server-configuration-parameters/settings.md/#merge_tree,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/server-configuration-parameters/settings.md/#macros,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/server-configuration-parameters/settings.md/#background_fetches_pool_size,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/merge-tree-settings.md/#max_replicated_fetches_network_bandwidth,1,/core/reference/settings/merge-tree-settings,basename-unique,
+/operations/settings/merge-tree-settings.md/#max_replicated_sends_network_bandwidth,1,/core/reference/settings/merge-tree-settings,basename-unique,
+/sql-reference/statements/kill.md/#kill-mutation,1,/core/reference/statements/kill,basename-unique,
+/engines/table-engines/mergetree-family/mergetree.md/#mergetree-column-ttl,1,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/engines/table-engines/mergetree-family/mergetree.md/#column-level-settings,1,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/sql-reference/statements/rename.md/#rename-table,1,/core/reference/statements/rename,basename-unique,
+/core/guides/best-practices/sparse-primary-indexes.md/#option-3-projections,1,/core/guides/clickhouse/data-modelling/sparse-primary-indexes,basename-unique,
+/sql-reference/statements/create/dictionary/overview.md,1,/core/concepts/features/backup-restore/overview,basename-ambiguous,/core/concepts/features/configuration/settings/overview | /core/concepts/features/operations/delete/overview | /core/concepts/features/operations/update/overview | /core/get-started/migration-guides/bigquery/overview | /core/get-started/migration-guides/elastic/overview
+/sql-reference/dictionaries#dbms,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/knowledgebase/oracle-odbc,1,/resources/support-center/knowledge-base/integrations/oracle-odbc,basename-unique,
+/operations/settings/settings-formats.md/#format_custom_field_delimiter,1,,no-match,
+/operations/settings/settings-formats.md/#format_custom_row_before_delimiter,1,,no-match,
+/operations/settings/settings-formats.md/#format_custom_row_after_delimiter,1,,no-match,
+/operations/settings/settings-formats.md/#format_custom_row_between_delimiter,1,,no-match,
+/operations/settings/settings-formats.md/#format_custom_result_before_delimiter,1,,no-match,
+/operations/settings/settings-formats.md/#format_custom_result_after_delimiter,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_avro_allow_missing_fields,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_avro_codec,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_avro_sync_interval,1,,no-match,
+/operations/settings/settings-formats.md/#format_csv_null_representation,1,,no-match,
+/operations/settings/settings-formats.md/#format_csv_allow_single_quotes,1,,no-match,
+/operations/settings/settings-formats.md/#format_csv_allow_double_quotes,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_empty_as_default,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_use_best_effort_in_schema_inference,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_arrays_as_nested_csv,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_detect_header,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_skip_trailing_empty_lines,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_trim_whitespaces,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_allow_whitespace_or_tab_as_delimiter,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_allow_variable_number_of_columns,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_use_default_on_bad_values,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_csv_try_infer_numbers_from_strings,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_empty_as_default,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_use_best_effort_in_schema_inference,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_tsv_crlf_end_of_line,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_crlf_end_of_line,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_detect_header,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_skip_trailing_empty_lines,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_tsv_allow_variable_number_of_columns,1,,no-match,
+/operations/settings/settings-formats.md#input_format_protobuf_oneof_presence,1,,no-match,
+/operations/settings/settings-formats.md#format_protobuf_use_autogenerated_schema,1,,no-match,
+/sql-reference/statements/system.md/#system-drop-schema-format,1,/core/reference/statements/system,basename-unique,
+/operations/settings/settings-formats.md/#output_format_pretty_max_rows,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_pretty_max_column_pad_width,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_pretty_max_value_width,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_pretty_color,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_pretty_grid_charset,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_pretty_row_numbers,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_pretty_display_footer_column_names_min_rows,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_avro_string_column_pattern,1,,no-match,
+/operations/settings/settings-formats.md/#format_binary_max_string_size,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_binary_write_json_as_string,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_binary_read_json_as_string,1,,no-match,
+https://clickhouse.com/docs/best-practices/...,1,,no-match,
+/joining-tables,1,/core/concepts/features/operations/select/joining-tables,basename-unique,
+/deployment-guides/terminology.md,1,/core/guides/oss/deployment-and-scaling/terminology,basename-unique,
+/managing-data/update_mutations,1,/managing-data/updating-data/update_mutations,redirect-direct,
+/integrations/data-ingestion/s3/index.md#configuring-s3-for-clickhouse-use,1,/core/reference/engines/table-engines/integrations/s3,basename-ambiguous,/core/reference/functions/table-functions/s3
+/sql-reference/dictionaries#postgresql,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries#ways-to-store-dictionaries-in-memory,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries#hierarchical-dictionaries,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries#polygon-dictionaries,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries#regexp-tree-dictionary,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/interfaces/third-party/gui#clickhouse-flamegraph,1,/core/guides/use-cases/ai-ml,contains-ambiguous,/core/guides/use-cases/ai-ml/MCP | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk
+/core/guides/sre/keeper/index.md#four-letter-word-commands,1,/core/guides/oss/deployment-and-scaling/keeper,basename-unique,
+/operations/settings/settings-query-level.md,1,/core/concepts/features/configuration/settings/settings-query-level,basename-unique,
+/operations/settings/settings.md/#http_connection_timeout,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/settings.md/#http_receive_timeout,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/core/reference/settings/server-settings/settings#http_handlers,1,/core/reference/settings/server-settings/settings,basename+parent-unique,/products/cloud/reference/settings | /products/managed-postgres/settings | /core/reference/settings | /core/reference/system-tables/settings
+/operations/settings/settings.md/#use_concurrency_control,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/products/cloud/guides/sql-console/connection_details,1,/products/cloud/guides/sql-console/connection-details,basename-unique,
+/products/cloud/guides/backups/01_review-and-restore-backups,1,,no-match,
+/products/cloud/guides/backups/02_configurable-backups,1,,no-match,
+/products/cloud/guides/data-sources/02_accessing-s3-data-securely,1,,no-match,
+/products/cloud/guides/data-sources/01_cloud-endpoints-api,1,,no-match,
+/optimize/partitioning-key,1,/core/guides/best-practices/partitioningkey,redirect-direct,
+/engines/table-engines/mergetree-family/mergetree.md/#table_engine-mergetree-data_skipping-indexes,1,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+/core/guides/best-practices/skipping-indexes.md,1,/core/concepts/features/performance/skip-indexes/skipping-indexes,basename-unique,
+/engines/table-engines/mergetree-family/mergetree.md/#choosing-a-primary-key-that-differs-from-the-sorting-key,1,/core/reference/engines/table-engines/mergetree-family/mergetree,basename-unique,
+https://clickhouse.com/docs/introduction/distinctive-features/#true-column-oriented-dbms,1,/core/get-started/about/distinctive-features,basename-unique,
+/sql-reference/dictionaries#ip_trie,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries#use-regular-expression-tree-dictionary-in-clickhouse-open-source,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/sql-reference/dictionaries#collecting-attribute-values,1,/core/concepts/features/dictionaries,basename-ambiguous,/core/reference/system-tables/dictionaries
+/blog/clickhouse-and-parquet-a-foundation-for-fast-lakehouse-analytics,1,,no-match,
+/optimize/sparse-primary-indexes,1,/core/guides/clickhouse/data-modelling/sparse-primary-indexes,basename-unique,
+/sql-reference/data-types/json,1,/core/concepts/best-practices/json-type,contains-ambiguous,/core/guides/clickhouse/data-formats/json/exporting | /core/guides/clickhouse/data-formats/json/formats | /core/guides/clickhouse/data-formats/json/inference | /core/guides/clickhouse/data-formats/json/intro | /core/guides/clickhouse/data-formats/json/loading
+/images/clickpipes/clickpipes_stack.png,1,,no-match,
+/images/clickpipes/cp_custom_role.png,1,,no-match,
+/images/clickpipes/cp_advanced_settings.png,1,,no-match,
+/knowledgebase/aws-privatelink-setup-for-msk-clickpipes,1,,no-match,
+/integrations/clickpipes/object-storage,1,/core/get-started/migration-guides/other-methods/object-storage-to-clickhouse,contains-ambiguous,/integrations/clickpipes/object-storage/amazon-s3/get-started | /integrations/clickpipes/object-storage/amazon-s3/overview | /integrations/clickpipes/object-storage/amazon-s3/unordered-mode | /integrations/clickpipes/object-storage/azure-blob-storage/get-started | /integrations/clickpipes/object-storage/azure-blob-storage/overview
+/integrations/data-ingestion/clickpipes/kinesis.md,1,/integrations/clickpipes/kinesis,basename-unique,
+https://clickhouse.com/docs/en/sql-reference/data-types/special-data-types/interval,1,/core/reference/data-types/special-data-types/interval,basename-unique,
+/language-clients/javascript/usage#contact-us,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/language-clients/javascript/usage#proxy-with-a-pathname,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/language-clients/javascript/usage#compression,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/language-clients/javascript/usage#logging-nodejs-only,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/language-clients/javascript/usage#reverse-proxy-with-authentication,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+/language-clients/javascript/usage#tls-certificates-nodejs-only,1,/products/cloud/guides/best-practices/usagelimits,contains-unique,
+https://clickhouse.com/docs/en/integrations/language-clients/javascript#custom-httphttps-agent-experimental-nodejs-only,1,,no-match,
+https://clickhouse.com/docs/en/sql-reference/statements/create/table#ephemeral,1,/core/reference/statements/create/table,basename-unique,
+https://clickhouse.com/docs/en/integrations/data-formats/parquet,1,/core/guides/clickhouse/data-formats/parquet,basename-unique,
+https://clickhouse.com/docs/en/guides/sre/configuring-ssl/,1,,no-match,
+/language-clients/java/client/_v0_8,1,/integrations/language-clients/java/client,manual,
+/images/cloud/security/secures3_arn.png,1,,no-match,
+https://clickhouse.com/docs/cloud/manage/api/swagger#tag/beta,1,,no-match,
+https://clickhouse.com/docs/integrations/gcs#create-a-service-account-hmac-key-and-secret,1,/core/reference/functions/table-functions/gcs,basename-unique,
+/images/integrations/data-ingestion/clickpipes/mysql/source/azure-flexible-server-mysql/1_configure_network_security.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/1_edit_instance.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/2_set_flags.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/3_verify_logical_replication.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/postgres/source/alloydb/4_configure_network_security.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/mongodb/docdb-select-parameter-group.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/mongodb/docdb-modify-parameter-group.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/mongodb/docdb-apply-parameter-group.png,1,,no-match,
+/images/integrations/data-ingestion/clickpipes/mongodb/docdb-parameter-group-status.png,1,,no-match,
+/interfaces/third-party/gui,1,/core/guides/use-cases/ai-ml,contains-ambiguous,/core/guides/use-cases/ai-ml/MCP | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit | /core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk
+/interfaces/third-party/proxy,1,,no-match,
+/interfaces/third-party/integrations,1,/products/cloud/features/integrations,basename-ambiguous,/products/cloud/features/monitoring/integrations | /core/reference/engines/table-engines/integrations | /resources/support-center/knowledge-base/integrations
+/integrations/azure-data-factory,1,/integrations/data-ingestion/azure-data-factory,redirect-direct,
+/integrations/redis,1,/core/reference/engines/table-engines/integrations/redis,basename+parent-unique,/core/reference/functions/table-functions/redis | /core/reference/statements/create/dictionary/sources/redis
+/integrations/rabbitmq,1,/core/reference/engines/table-engines/integrations/rabbitmq,basename-unique,
+/integrations/mongodb,1,/core/reference/engines/table-engines/integrations/mongodb,basename+parent-unique,/integrations/clickpipes/mongodb | /core/reference/functions/table-functions/mongodb | /core/reference/statements/create/dictionary/sources/mongodb
+/integrations/hive,1,/core/reference/engines/table-engines/integrations/hive,basename-unique,
+/integrations/hudi,1,/core/reference/engines/table-engines/integrations/hudi,basename+parent-unique,/core/reference/functions/table-functions/hudi
+/integrations/iceberg,1,/core/reference/engines/table-engines/integrations/iceberg,basename+parent-unique,/core/reference/functions/table-functions/iceberg
+/integrations/deltalake,1,/core/reference/engines/table-engines/integrations/deltalake,basename+parent-unique,/core/reference/functions/table-functions/deltalake
+/integrations/rocksdb,1,/core/reference/system-tables/rocksdb,basename-unique,
+/integrations/sqlite,1,/core/reference/engines/table-engines/integrations/sqlite,basename+parent-unique,/core/reference/engines/database-engines/sqlite | /core/reference/functions/table-functions/sqlite
+/integrations/nats,1,/core/reference/engines/table-engines/integrations/nats,basename-unique,
+/integrations/data-ingestion/data-formats/binary.md,1,/core/guides/clickhouse/data-formats/binary,basename-unique,
+/integrations/data-ingestion/data-formats/csv-tsv.md,1,/core/guides/clickhouse/data-formats/csv-tsv,basename-unique,
+/integrations/data-ingestion/data-formats/parquet.md,1,/core/guides/clickhouse/data-formats/parquet,basename-unique,
+/integrations/data-ingestion/data-formats/sql.md,1,/core/guides/clickhouse/data-formats/sql,basename+parent-unique,/resources/support-center/knowledge-base/general-faqs/sql
+/operations/settings/settings-formats.md/#output_format_sql_insert_include_column_names,1,,no-match,
+/operations/settings/settings-formats.md/#output_format_sql_insert_max_batch_size,1,,no-match,
+/operations/settings/settings-formats.md/#format_regexp_skip_unmatched,1,,no-match,
+/engines/table-engines/integrations/s3.md/#wildcards-in-path,1,/core/reference/engines/table-engines/integrations/s3,basename+parent-unique,/core/reference/functions/table-functions/s3
+/operations/server-configuration-parameters/settings.md/#default_replica_path,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/integrations/dbt/materialized-views,1,/core/concepts/features/materialized-views,basename-ambiguous,/products/clickstack/managing/materialized-views | /resources/support-center/tips-and-tricks/materialized-views
+https://clickhouse.com/docs/en/beta-and-experimental-features,1,/core/reference/settings/beta-and-experimental-features,basename-unique,
+https://clickhouse.com/docs/en/materialized-view,1,/core/concepts/features/materialized-views,contains-ambiguous,/core/concepts/features/materialized-views/cascading-materialized-views | /core/concepts/features/materialized-views/incremental-materialized-view | /core/concepts/features/materialized-views/refreshable-materialized-view | /core/concepts/features/projections/materialized-views-versus-projections | /core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup
+https://clickhouse.com/docs/en/engines/table-engines/special/distributed,1,/core/reference/engines/table-engines/special/distributed,basename-unique,
+https://clickhouse.com/docs/en/engines/table-engines/special/dictionary,1,/core/reference/engines/table-engines/special/dictionary,basename+parent-unique,/core/reference/functions/table-functions/dictionary | /core/reference/statements/create/dictionary
+/materialized-view,1,/core/concepts/features/materialized-views,contains-ambiguous,/core/concepts/features/materialized-views/cascading-materialized-views | /core/concepts/features/materialized-views/incremental-materialized-view | /core/concepts/features/materialized-views/refreshable-materialized-view | /core/concepts/features/projections/materialized-views-versus-projections | /core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup
+https://clickhouse.com/docs/en/materialized-view/refreshable-materialized-view,1,/core/concepts/features/materialized-views/refreshable-materialized-view,basename-unique,
+https://clickhouse.com/docs/en/cloud/security/secure-s3,1,,no-match,
+/operations/settings/settings.md/#use_structure_from_insertion_table_in_table_functions,1,/products/cloud/reference/settings,basename-ambiguous,/products/managed-postgres/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/operations/settings/settings-formats.md#date_time_input_format,1,,no-match,
+/operations/settings/settings-formats.md,1,,no-match,
+/interfaces/cli.md/#batch-mode,1,/core/concepts/features/interfaces/cli,basename-ambiguous,/products/cloud/features/cli
+/operations/settings/settings-formats.md/#input_format_allow_errors_num,1,,no-match,
+/operations/settings/settings-formats.md/#input_format_allow_errors_ratio,1,,no-match,
+/whats-new/cloud#clickhouse-231-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
+/whats-new/cloud#clickhouse-2212-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
+/whats-new/cloud#clickhouse-2211-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
+/sql-reference/dictionaries/index.md,1,/core/concepts/features/dictionaries,manual,/core/reference/system-tables/dictionaries
+/whats-new/cloud#clickhouse-2210-version-upgrade,1,/cloud/reference/changelog/changelog,redirect-direct,
+/knowledgebase/useful-queries-for-troubleshooting#show-disk-storage-number-of-parts-number-of-rows-in-systemparts-and-marks-across-databases,1,,no-match,
+/knowledgebase/find-expensive-queries,1,/resources/support-center/knowledge-base/performance-optimization/find-expensive-queries,basename-unique,
+/knowledgebase/profiling-clickhouse-with-llvm-xray,1,,no-match,
+/knowledgebase/which-processes-are-currently-running,1,,no-match,
+/sql-reference/statements/alter/index,1,,no-match,
+/faq/operations/separate_storage.md,1,/resources/support-center/knowledge-base/general-faqs/separate-storage,basename-unique,
+/core/guides/sre/user-management/configuring-ldap.md,1,/core/concepts/features/security/configuring-ldap,basename-unique,
+/core/guides/starter-guides/mutations.md,1,/core/get-started/quickstarts/mutations,basename+parent-unique,/core/reference/system-tables/mutations
+/knowledgebase/how-do-i-contribute-code-to-clickhouse,1,,no-match,
+/knowledgebase/time-series,1,/core/guides/use-cases/real-time-analytics/time-series,basename-ambiguous,/core/reference/engines/table-engines/integrations/time-series | /resources/support-center/knowledge-base/general-faqs/time-series
+/integrations/data-ingestion/s3,1,/core/reference/engines/table-engines/integrations/s3,basename-ambiguous,/core/reference/functions/table-functions/s3
+/integrations/data-ingestion/gcs,1,/core/reference/functions/table-functions/gcs,basename-unique,
+https://clickhouse.com/docs/knowledgebase/file-export,1,,no-match,
+/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql.md,1,,no-match,
+https://clickhouse.com/docs/knowledgebase/python-clickhouse-connect-example#steps,1,,no-match,
+/core/guides/sre/configuring-ssl#2-create-ssl-certificates,1,,no-match,
+https://clickhouse.com/docs/interfaces/formats/JSON/JSONAsObject,1,,no-match,
+https://clickhouse.com/docs/interfaces/,1,/core/concepts/features/interfaces/overview,manual,
+/knowledgebase/async_vs_optimize_read_in_order#what-about-optimize_read_in_order,1,,no-match,
+https://clickhouse.com/docs/knowledgebase/find-expensive-queries#initial_query_id-vs-query_id,1,/resources/support-center/knowledge-base/performance-optimization/find-expensive-queries,basename-unique,
+/chdb/guides/querying-apache-arrow,1,/products/chdb/guides/querying-apache-arrow,basename-unique,
+https://clickhouse.com/docs/cloud/manage/api/swagger#tag/ClickStack,1,,no-match,
+/images/clickstack/faq/metrics-explorer.png,1,,no-match,
+/core/guides/sre/configuring-ssl,1,/core/concepts/features/security/tls/configuring-tls,manual,
+/managed-postgres/overview#nvme-performance,1,/products/managed-postgres/overview,basename+parent-unique,/core/concepts/features/backup-restore/overview | /core/concepts/features/configuration/settings/overview | /core/concepts/features/operations/delete/overview | /core/concepts/features/operations/update/overview | /core/get-started/migration-guides/bigquery/overview | /core/get-started/migration-guides/elastic/overview | /core/get-started/migration-guides/overview | /core/get-started/migration-guides/postgres/overview | /core/get-started/migration-guides/redshift/overview | /core/get-started/migration-guides/snowflake/overview | /core/get-started/use-cases/overview | /core/guides/use-cases/data-warehousing/getting-started/overview | /integrations/clickpipes/bigquery/overview | /integrations/clickpipes/kinesis/overview | /integrations/clickpipes/object-storage/amazon-s3/overview | /integrations/clickpipes/object-storage/azure-blob-storage/overview | /integrations/clickpipes/object-storage/google-cloud-storage/overview | /integrations/connectors/data-ingestion/azure/azure-data-factory/overview | /core/concepts/features/interfaces/overview | /integrations/language-clients/csharp/overview | /products/clickstack/features/dashboards/overview | /products/clickstack/ingesting-data/overview | /products/clickstack/overview | /products/cloud/features/autoscaling/overview | /products/cloud/features/backups/overview | /products/cloud/features/monitoring/overview | /products/cloud/guides/infrastructure/deployment-options/byoc/overview | /products/cloud/reference/billing/marketplace/overview | /products/kubernetes-operator/overview | /core/reference/functions/regular-functions/overview | /core/reference/statements/create/dictionary/layouts/overview | /core/reference/statements/create/dictionary/sources/overview | /core/reference/system-tables/overview
+/managed-postgres/scaling,1,/products/managed-postgres/scaling,basename+parent-unique,/integrations/clickpipes/mongodb/scaling | /integrations/clickpipes/mysql/scaling | /integrations/clickpipes/postgres/scaling
+/managed-postgres/settings#ip-filters,1,/products/managed-postgres/settings,basename+parent-unique,/products/cloud/reference/settings | /core/reference/settings | /core/reference/settings/server-settings/settings | /core/reference/system-tables/settings
+/managed-postgres/connection#tls,1,/products/managed-postgres/connection,basename-unique,
+/managed-postgres/extensions,1,/products/managed-postgres/extensions,basename-unique,
+/managed-postgres/upgrades,1,/products/managed-postgres/upgrades,basename+parent-unique,/products/cloud/features/admin-features/upgrades
+/managed-postgres/migrations/pg_dump-pg_restore,1,,no-match,
+/managed-postgres/migrations/logical-replication,1,/products/managed-postgres/migrations/logical-replication,basename-unique,
+/managed-postgres/migrations/peerdb,1,/products/managed-postgres/migrations/peerdb,basename-unique,
+/managed-postgres/clickhouse-integration,1,/products/managed-postgres/clickhouse-integration,basename-unique,
+/managed-postgres/benchmarks,1,/products/managed-postgres/benchmarks,basename-unique,
+/interfaces/cpp,1,/integrations/language-clients/cpp,redirect-direct,
+/interfaces/third-party/client-libraries,1,,no-match,
+/cloud/security/cloud-access-management,1,/products/cloud/guides/security/cloud-access-management,basename-unique,
+/knowledgebase/terraform_example,1,/resources/support-center/knowledge-base/integrations/terraform-example,manual,
+/cloud/reference/byoc/faq/aws,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
+/cloud/reference/byoc/observability,1,/cloud/guides/infrastructure/deployment_options/byoc/observability,redirect-direct,
+/cloud/reference/byoc/onboarding/aws,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
+/images/cloud/guides/accessing-data/GCS/IAM_and_admin.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/create_service_account.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/create_and_continue.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/storage_object_user.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/note_service_account_email.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/cloud_storage_settings.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/create_key_for_service_account.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/create_a_key.png,1,,no-match,
+/images/cloud/guides/accessing-data/GCS/clickpipes_hmac_key.png,1,,no-match,
+https://clickhouse.com/docs/cloud/security/secure-s3,1,/products/cloud/guides/data-sources/accessing-s3-data-securely,manual,
+https://clickhouse.com/docs/cloud/security/secure-s3#option-2-manually-create-iam-role,1,,no-match,
+/operations/backup#configuring-backuprestore-to-use-an-s3-endpoint,1,/core/reference/engines/database-engines/backup,basename-unique,
+/operations/backup#configuring-backuprestore-to-use-an-azureblobstorage-endpoint,1,/core/reference/engines/database-engines/backup,basename-unique,
+/operations/backup#command-summary,1,/core/reference/engines/database-engines/backup,basename-unique,
+/cloud/reference/byoc/onboarding/aws#cloudformation-iam-roles,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
+/observability/overview,1,/core/concepts/features/backup-restore/overview,basename-ambiguous,/core/concepts/features/configuration/settings/overview | /core/concepts/features/operations/delete/overview | /core/concepts/features/operations/update/overview | /core/get-started/migration-guides/bigquery/overview | /core/get-started/migration-guides/elastic/overview
+/prompt-management/overview,1,/core/concepts/features/backup-restore/overview,basename-ambiguous,/core/concepts/features/configuration/settings/overview | /core/concepts/features/operations/delete/overview | /core/concepts/features/operations/update/overview | /core/get-started/migration-guides/bigquery/overview | /core/get-started/migration-guides/elastic/overview
+/evaluation/overview,1,/core/concepts/features/backup-restore/overview,basename-ambiguous,/core/concepts/features/configuration/settings/overview | /core/concepts/features/operations/delete/overview | /core/concepts/features/operations/update/overview | /core/get-started/migration-guides/bigquery/overview | /core/get-started/migration-guides/elastic/overview
+https://clickhouse.com/docs/cloud/manage/api/swagger#tag/Billing,1,,no-match,
+/images/cloud/manage/scaling-patch-request.png,1,,no-match,
+/images/cloud/manage/scaling-patch-response.png,1,,no-match,
+/images/cloud/manage/scaling-configure.png,1,,no-match,
+/images/cloud/manage/scaling-memory-allocation.png,1,,no-match,
+/images/cloud/manage/AutoScaling.png,1,,no-match,
+/images/cloud/reference/byoc-connect-1.png,1,,no-match,
+/images/cloud/reference/byoc-tailscale-1.png,1,,no-match,
+/cloud/reference/byoc/onboarding/customization,1,/products/bring-your-own-cloud/onboarding/customization-aws,contains-ambiguous,/products/bring-your-own-cloud/onboarding/customization-gcp
+/images/cloud/reference/byoc-onboarding-1.png,1,,no-match,
+/images/cloud/reference/byoc-onboarding-2.png,1,,no-match,
+/images/cloud/reference/byoc-onboarding-3.png,1,,no-match,
+/images/cloud/reference/byoc-new-service-1.png,1,,no-match,
+/images/cloud/reference/byoc-new-infra-1.png,1,,no-match,
+/images/cloud/reference/byoc-new-infra-2.png,1,,no-match,
+/use-cases/observability/clickstack/ingesting-data/kubernetes,1,/products/clickstack/example-datasets/kubernetes,basename-ambiguous,/products/clickstack/integration-examples/kubernetes
+/examples/kafka-metrics-dashboard.json,1,,no-match,
+/examples/temporal-metrics-dashboard.json,1,,no-match,
+/assets/cloudflare-logs-dashboard.json,1,,no-match,
+/examples/postgres-logs-dashboard.json,1,,no-match,
+/examples/postgres-metrics-dashboard.json,1,,no-match,
+/examples/systemd-logs-dashboard.json,1,,no-match,
+/examples/cloudwatch-logs-dashboard.json,1,,no-match,
+/examples/nodejs-traces-dashboard.json,1,,no-match,
+/examples/mysql-logs-dashboard.json,1,,no-match,
+/examples/jvm-metrics-dashboard.json,1,,no-match,
+/use-cases/observability/clickstack/production#database-ingestion-user,1,/use-cases/observability/clickstack/managing/production,redirect-direct,
+/use-cases/observability/clickstack/production#estimating-resources,1,/use-cases/observability/clickstack/managing/production,redirect-direct,
+/use-cases/observability/clickstack/production#create-a-database-ingestion-user-managed,1,/use-cases/observability/clickstack/managing/production,redirect-direct,
+https://clickhouse.com/docs/clickhouse-operator/managing-clusters/cleanup,1,,no-match,
+https://clickhouse.com/docs/en/sql-reference/statements/select/group-by#group-by-in-external-memory,1,/core/reference/statements/select/group-by,basename-unique,
+https://clickhouse.com/docs/en/sql-reference/aggregate-functions/reference,1,/core/reference/functions/aggregate-functions/reference,basename+parent-unique,/core/guides/use-cases/data-warehousing/reference | /integrations/clickpipes/kafka/reference | /integrations/connectors/data-ingestion/etl-tools/fivetran/reference | /integrations/connectors/tools/pg_clickhouse/reference | /products/chdb/reference | /products/cloud/reference
+/use-cases/observability/clickstack/features/dashboards#custom-filters,1,/products/cloud/features/sql-console-features/dashboards,basename-ambiguous,/core/reference/system-tables/dashboards
+/use-cases/observability/clickstack/managing/performance_tuning#materialize-frequently-queried-attributes,1,/products/clickstack/managing/performance-tuning,basename-unique,
+/use-cases/observability/clickstack/features/dashboards#dashboards-editing-visualizations,1,/products/cloud/features/sql-console-features/dashboards,basename-ambiguous,/core/reference/system-tables/dashboards
+https://clickhouse.com/docs/operations/backup#take-an-incremental-backup,1,/core/reference/engines/database-engines/backup,basename-unique,
+/docs/products/clickhouse-private/aws,1,/products/clickhouse-private/deployment/aws,manual,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
+/docs/products/clickhouse-private/aws#install-volumesnapshot-crds,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
+/docs/products/clickhouse-private/aws#install-storageclass-via-helm,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
+/docs/products/clickhouse-private/aws#naming-your-clickhouse-cluster,1,/integrations/clickpipes/aws-privatelink,contains-ambiguous,/products/clickstack/ingesting-data/sdks/aws-lambda | /products/clickstack/integration-examples/aws-lambda | /products/cloud/guides/security/connectivity/private-networking/aws-privatelink | /products/cloud/reference/billing/marketplace/aws-marketplace-committed | /products/cloud/reference/billing/marketplace/aws-marketplace-payg
+/chdb/datastore/configuration,1,/integrations/language-clients/go/configuration,basename-ambiguous,/products/chdb/configuration | /products/kubernetes-operator/guides/configuration
+/chdb/datastore/configuration/performance-mode,1,/products/chdb/configuration/performance-mode,basename-unique,
+/chdb/datastore/guides/pandas-cookbook,1,/products/chdb/guides/pandas-cookbook,basename-unique,
+/chdb/datastore/guides/pandas-to-sql,1,/products/chdb/guides/pandas-to-sql,basename-unique,
+/chdb/datastore/debugging/explain,1,/products/chdb/debugging/explain,basename+parent-unique,/core/reference/statements/explain
+/chdb/datastore/configuration/execution-engine,1,/products/chdb/configuration/execution-engine,basename-unique,
+/faq/general/why-clickhouse-is-so-fast,2,/core/get-started/about/why-clickhouse-is-so-fast,manual,
/cloud/manage/api/swagger,1,/api-reference/organization/get-list-of-available-organizations,manual,
/integrations/data-ingestion/gcs,1,/integrations/connectors/data-ingestion/GCP,manual,
/integrations/data-sources/mysql,1,/integrations/connectors/data-sources/mysql,manual,
-/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql,1,/integrations/connectors/data-ingestion/postgresql/connecting-to-postgresql,manual,
+/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql,1,/integrations/clickpipes/postgres/connecting-to-postgresql,manual,
/use-cases/observability/clickstack/managing/production,1,/products/clickstack/managing,manual,
/cloud/guides/infrastructure/deployment_options/byoc/architecture,1,/products/cloud/guides/infrastructure/deployment-options/byoc/architecture,manual,
/cloud/guides/infrastructure/deployment_options/byoc/observability,1,/products/cloud/guides/infrastructure/deployment-options/byoc/observability/aws,manual,
/cloud/reference/changelog/changelog,1,/resources/changelogs/cloud/changelog,manual,
/api-reference/billing/get-organization-usage-costs,1,/api-reference/organization/get-list-of-available-organizations,manual,
-/sql-reference/operators,1,/reference/operators,manual,
-/guides/best-practices/partitioningkey,1,/concepts/best-practices/partitioning-keys,manual,
-/optimize/partitioning-key,1,/concepts/best-practices/partitioning-keys,manual,
+/sql-reference/operators,1,/core/reference/operators,manual,
+/core/guides/best-practices/partitioningkey,1,/core/concepts/best-practices/partitioning-keys,manual,
+/optimize/partitioning-key,1,/core/concepts/best-practices/partitioning-keys,manual,
/integrations/gcs,1,/integrations/connectors/data-ingestion/GCP,manual,
/integrations/mysql,1,/integrations/connectors/data-sources/mysql,manual,
-/integrations/postgresql/connecting-to-postgresql,1,/integrations/connectors/data-ingestion/postgresql/connecting-to-postgresql,manual,
+/integrations/postgresql/connecting-to-postgresql,1,/integrations/clickpipes/postgres/connecting-to-postgresql,manual,
/use-cases/observability/clickstack/production,1,/products/clickstack/managing,manual,
/cloud/reference/byoc/architecture,1,/products/cloud/guides/infrastructure/deployment-options/byoc/architecture,manual,
/cloud/reference/byoc/observability,1,/products/cloud/guides/infrastructure/deployment-options/byoc/observability/aws,manual,
/cloud/manage/api/usageCost-api-reference,1,/api-reference/organization/get-list-of-available-organizations,manual,
-/introduction/distinctive-features,1,/get-started/about/distinctive-features,manual,
+/introduction/distinctive-features,1,/core/get-started/about/distinctive-features,manual,
diff --git a/slug-map.csv b/_migration/slug-map.csv
similarity index 50%
rename from slug-map.csv
rename to _migration/slug-map.csv
index 991f22df..011e7eb7 100644
--- a/slug-map.csv
+++ b/_migration/slug-map.csv
@@ -1,28 +1,28 @@
docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash,migrated,migrated_hash,migrated_at,manually_checked
/,src/pages/index.mdx,,https://clickhouse.com/docs/,,unmatched,c18be9e94f89e61c,false,,,false
-/about,docs/about-us/index.md,resources/about/index.mdx,https://clickhouse.com/docs/about,https://private-7c7dfe99.mintlify.app/resources/about,matched,bf0c6ec4af11f3ac,true,bf0c6ec4af11f3ac,2026-05-13T13:16:51+00:00,false
+/about,docs/about-us/index.md,resources/about/index.mdx,https://clickhouse.com/docs/about,https://private-7c7dfe99.mintlify.app/resources/about/index,matched,bf0c6ec4af11f3ac,true,bf0c6ec4af11f3ac,2026-05-13T13:16:51+00:00,false
/about-us/adopters,docs/about-us/adopters.md,resources/about/adopters.mdx,https://clickhouse.com/docs/about-us/adopters,https://private-7c7dfe99.mintlify.app/resources/about/adopters,matched,33ebdb4d97f8e3b8,true,33ebdb4d97f8e3b8,2026-05-19T11:08:53+00:00,false
/about-us/cloud,docs/about-us/cloud.md,resources/about/cloud.mdx,https://clickhouse.com/docs/about-us/cloud,https://private-7c7dfe99.mintlify.app/resources/about/cloud,matched,d590691a3d395cc2,true,ad8d5e8e6e3eaf7a,2026-05-08T21:00:51+00:00,false
-/about-us/distinctive-features,docs/about-us/distinctive-features.md,get-started/about/distinctive-features.mdx,https://clickhouse.com/docs/about-us/distinctive-features,https://private-7c7dfe99.mintlify.app/get-started/about/distinctive-features,matched,3acdfd0be22226de,true,3acdfd0be22226de,2026-05-13T13:16:51+00:00,false
+/about-us/distinctive-features,docs/about-us/distinctive-features.md,core/get-started/about/distinctive-features.mdx,https://clickhouse.com/docs/about-us/distinctive-features,https://private-7c7dfe99.mintlify.app/core/get-started/about/distinctive-features,matched,3acdfd0be22226de,true,3acdfd0be22226de,2026-05-13T13:16:51+00:00,false
/about-us/history,docs/about-us/history.md,resources/about/history.mdx,https://clickhouse.com/docs/about-us/history,https://private-7c7dfe99.mintlify.app/resources/about/history,matched,d4e3de0144493b1d,true,d4e3de0144493b1d,2026-05-13T13:16:51+00:00,false
/about-us/support,docs/about-us/support.md,resources/about/support.mdx,https://clickhouse.com/docs/about-us/support,https://private-7c7dfe99.mintlify.app/resources/about/support,matched,0449493bba8fdff9,true,323995cdad7e0274,2026-05-09T17:02:01+00:00,false
-/academic_overview,docs/managing-data/core-concepts/academic_overview.mdx,concepts/core-concepts/academic-overview.mdx,https://clickhouse.com/docs/academic_overview,https://private-7c7dfe99.mintlify.app/concepts/core-concepts/academic-overview,matched,a8e77271a25466b4,true,a8e77271a25466b4,2026-05-09T15:40:17+00:00,false
-/architecture/cluster-deployment,docs/deployment-guides/replication-sharding-examples/03_2_shards_2_replicas.md,guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx,https://clickhouse.com/docs/architecture/cluster-deployment,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas,matched,f4dbad8fac9be333,true,f4dbad8fac9be333,2026-05-13T15:43:27+00:00,false
-/architecture/horizontal-scaling,docs/deployment-guides/replication-sharding-examples/02_2_shards_1_replica.md,guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx,https://clickhouse.com/docs/architecture/horizontal-scaling,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/examples/2-shards-1-replica,matched,e1431cab1d5a16bf,true,e1431cab1d5a16bf,2026-05-13T15:43:27+00:00,false
-/architecture/introduction,docs/deployment-guides/terminology.md,guides/oss/deployment-and-scaling/terminology.mdx,https://clickhouse.com/docs/architecture/introduction,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/terminology,matched,516d5012cc290408,true,516d5012cc290408,2026-05-08T12:19:52+00:00,false
-/architecture/replication,docs/deployment-guides/replication-sharding-examples/01_1_shard_2_replicas.md,guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx,https://clickhouse.com/docs/architecture/replication,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas,matched,20cb0ab4e34893f9,true,20cb0ab4e34893f9,2026-05-13T15:43:27+00:00,false
-/best-practices,docs/best-practices/index.md,concepts/best-practices/index.mdx,https://clickhouse.com/docs/best-practices,https://private-7c7dfe99.mintlify.app/concepts/best-practices,matched,e5779c059343c20e,true,e5779c059343c20e,2026-05-08T09:09:20+00:00,false
-/best-practices/avoid-mutations,docs/best-practices/avoid_mutations.md,concepts/best-practices/avoid-mutations.mdx,https://clickhouse.com/docs/best-practices/avoid-mutations,https://private-7c7dfe99.mintlify.app/concepts/best-practices/avoid-mutations,matched,081e5ae543866b58,true,081e5ae543866b58,2026-05-08T09:09:20+00:00,false
-/best-practices/avoid-optimize-final,docs/best-practices/avoid_optimize_final.md,concepts/best-practices/avoid-optimize-final.mdx,https://clickhouse.com/docs/best-practices/avoid-optimize-final,https://private-7c7dfe99.mintlify.app/concepts/best-practices/avoid-optimize-final,matched,8f244394e8b6225d,true,8f244394e8b6225d,2026-05-13T13:16:51+00:00,false
-/best-practices/choosing-a-partitioning-key,docs/best-practices/partitioning_keys.mdx,concepts/best-practices/partitioning-keys.mdx,https://clickhouse.com/docs/best-practices/choosing-a-partitioning-key,https://private-7c7dfe99.mintlify.app/concepts/best-practices/partitioning-keys,matched,47448fd25f9d0bd3,true,47448fd25f9d0bd3,2026-05-08T09:09:20+00:00,false
-/best-practices/choosing-a-primary-key,docs/best-practices/choosing_a_primary_key.md,concepts/best-practices/choosing-a-primary-key.mdx,https://clickhouse.com/docs/best-practices/choosing-a-primary-key,https://private-7c7dfe99.mintlify.app/concepts/best-practices/choosing-a-primary-key,matched,9b11e99fcb2b175d,true,9b11e99fcb2b175d,2026-05-13T15:43:24+00:00,false
-/best-practices/minimize-optimize-joins,docs/best-practices/minimize_optimize_joins.md,concepts/best-practices/minimize-optimize-joins.mdx,https://clickhouse.com/docs/best-practices/minimize-optimize-joins,https://private-7c7dfe99.mintlify.app/concepts/best-practices/minimize-optimize-joins,matched,d83e3a25ef3dad60,true,d83e3a25ef3dad60,2026-05-08T09:09:20+00:00,false
-/best-practices/select-data-types,docs/best-practices/select_data_type.md,concepts/best-practices/select-data-type.mdx,https://clickhouse.com/docs/best-practices/select-data-types,https://private-7c7dfe99.mintlify.app/concepts/best-practices/select-data-type,matched,126cbd8cf03ba18e,true,126cbd8cf03ba18e,2026-05-08T09:09:20+00:00,false
-/best-practices/selecting-an-insert-strategy,docs/best-practices/selecting_an_insert_strategy.md,concepts/best-practices/selecting-an-insert-strategy.mdx,https://clickhouse.com/docs/best-practices/selecting-an-insert-strategy,https://private-7c7dfe99.mintlify.app/concepts/best-practices/selecting-an-insert-strategy,matched,2209c6ea430be2ed,true,2209c6ea430be2ed,2026-05-08T13:01:57+00:00,false
-/best-practices/use-data-skipping-indices-where-appropriate,docs/best-practices/using_data_skipping_indices.md,concepts/best-practices/using-data-skipping-indices.mdx,https://clickhouse.com/docs/best-practices/use-data-skipping-indices-where-appropriate,https://private-7c7dfe99.mintlify.app/concepts/best-practices/using-data-skipping-indices,matched,86867b4880aebc9f,true,86867b4880aebc9f,2026-05-08T09:09:20+00:00,false
-/best-practices/use-json-where-appropriate,docs/best-practices/json_type.md,concepts/best-practices/json-type.mdx,https://clickhouse.com/docs/best-practices/use-json-where-appropriate,https://private-7c7dfe99.mintlify.app/concepts/best-practices/json-type,matched,92d7e8b6ffaf89ba,true,92d7e8b6ffaf89ba,2026-05-08T11:28:15+00:00,false
-/best-practices/use-materialized-views,docs/best-practices/use_materialized_views.md,concepts/best-practices/use-materialized-views.mdx,https://clickhouse.com/docs/best-practices/use-materialized-views,https://private-7c7dfe99.mintlify.app/concepts/best-practices/use-materialized-views,matched,ce0f791414129840,true,ce0f791414129840,2026-05-08T09:09:20+00:00,false
-/beta-and-experimental-features,docs/about-us/beta-and-experimental-features.md,reference/settings/beta-and-experimental-features.mdx,https://clickhouse.com/docs/beta-and-experimental-features,https://private-7c7dfe99.mintlify.app/reference/settings/beta-and-experimental-features,matched,5a3c5e33555c0c51,true,5a3c5e33555c0c51,2026-05-19T11:08:53+00:00,false
+/academic_overview,docs/managing-data/core-concepts/academic_overview.mdx,core/concepts/core-concepts/academic-overview.mdx,https://clickhouse.com/docs/academic_overview,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/academic-overview,matched,a8e77271a25466b4,true,a8e77271a25466b4,2026-05-09T15:40:17+00:00,false
+/architecture/cluster-deployment,docs/deployment-guides/replication-sharding-examples/03_2_shards_2_replicas.md,core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx,https://clickhouse.com/docs/architecture/cluster-deployment,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas,matched,f4dbad8fac9be333,true,f4dbad8fac9be333,2026-05-13T15:43:27+00:00,false
+/architecture/horizontal-scaling,docs/deployment-guides/replication-sharding-examples/02_2_shards_1_replica.md,core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx,https://clickhouse.com/docs/architecture/horizontal-scaling,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica,matched,e1431cab1d5a16bf,true,e1431cab1d5a16bf,2026-05-13T15:43:27+00:00,false
+/architecture/introduction,docs/deployment-guides/terminology.md,core/guides/oss/deployment-and-scaling/terminology.mdx,https://clickhouse.com/docs/architecture/introduction,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/terminology,matched,516d5012cc290408,true,516d5012cc290408,2026-05-08T12:19:52+00:00,false
+/architecture/replication,docs/deployment-guides/replication-sharding-examples/01_1_shard_2_replicas.md,core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx,https://clickhouse.com/docs/architecture/replication,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas,matched,20cb0ab4e34893f9,true,20cb0ab4e34893f9,2026-05-13T15:43:27+00:00,false
+/best-practices,docs/best-practices/index.md,core/concepts/best-practices/index.mdx,https://clickhouse.com/docs/best-practices,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/index,matched,e5779c059343c20e,true,e5779c059343c20e,2026-05-08T09:09:20+00:00,false
+/best-practices/avoid-mutations,docs/best-practices/avoid_mutations.md,core/concepts/best-practices/avoid-mutations.mdx,https://clickhouse.com/docs/best-practices/avoid-mutations,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/avoid-mutations,matched,081e5ae543866b58,true,081e5ae543866b58,2026-05-08T09:09:20+00:00,false
+/best-practices/avoid-optimize-final,docs/best-practices/avoid_optimize_final.md,core/concepts/best-practices/avoid-optimize-final.mdx,https://clickhouse.com/docs/best-practices/avoid-optimize-final,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/avoid-optimize-final,matched,8f244394e8b6225d,true,8f244394e8b6225d,2026-05-13T13:16:51+00:00,false
+/best-practices/choosing-a-partitioning-key,docs/best-practices/partitioning_keys.mdx,core/concepts/best-practices/partitioning-keys.mdx,https://clickhouse.com/docs/best-practices/choosing-a-partitioning-key,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/partitioning-keys,matched,47448fd25f9d0bd3,true,47448fd25f9d0bd3,2026-05-08T09:09:20+00:00,false
+/best-practices/choosing-a-primary-key,docs/best-practices/choosing_a_primary_key.md,core/concepts/best-practices/choosing-a-primary-key.mdx,https://clickhouse.com/docs/best-practices/choosing-a-primary-key,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/choosing-a-primary-key,matched,9b11e99fcb2b175d,true,9b11e99fcb2b175d,2026-05-13T15:43:24+00:00,false
+/best-practices/minimize-optimize-joins,docs/best-practices/minimize_optimize_joins.md,core/concepts/best-practices/minimize-optimize-joins.mdx,https://clickhouse.com/docs/best-practices/minimize-optimize-joins,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/minimize-optimize-joins,matched,d83e3a25ef3dad60,true,d83e3a25ef3dad60,2026-05-08T09:09:20+00:00,false
+/best-practices/select-data-types,docs/best-practices/select_data_type.md,core/concepts/best-practices/select-data-type.mdx,https://clickhouse.com/docs/best-practices/select-data-types,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/select-data-type,matched,126cbd8cf03ba18e,true,126cbd8cf03ba18e,2026-05-08T09:09:20+00:00,false
+/best-practices/selecting-an-insert-strategy,docs/best-practices/selecting_an_insert_strategy.md,core/concepts/best-practices/selecting-an-insert-strategy.mdx,https://clickhouse.com/docs/best-practices/selecting-an-insert-strategy,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/selecting-an-insert-strategy,matched,2209c6ea430be2ed,true,2209c6ea430be2ed,2026-05-08T13:01:57+00:00,false
+/best-practices/use-data-skipping-indices-where-appropriate,docs/best-practices/using_data_skipping_indices.md,core/concepts/best-practices/using-data-skipping-indices.mdx,https://clickhouse.com/docs/best-practices/use-data-skipping-indices-where-appropriate,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/using-data-skipping-indices,matched,86867b4880aebc9f,true,86867b4880aebc9f,2026-05-08T09:09:20+00:00,false
+/best-practices/use-json-where-appropriate,docs/best-practices/json_type.md,core/concepts/best-practices/json-type.mdx,https://clickhouse.com/docs/best-practices/use-json-where-appropriate,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/json-type,matched,92d7e8b6ffaf89ba,true,92d7e8b6ffaf89ba,2026-05-08T11:28:15+00:00,false
+/best-practices/use-materialized-views,docs/best-practices/use_materialized_views.md,core/concepts/best-practices/use-materialized-views.mdx,https://clickhouse.com/docs/best-practices/use-materialized-views,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/use-materialized-views,matched,ce0f791414129840,true,ce0f791414129840,2026-05-08T09:09:20+00:00,false
+/beta-and-experimental-features,docs/about-us/beta-and-experimental-features.md,core/reference/settings/beta-and-experimental-features.mdx,https://clickhouse.com/docs/beta-and-experimental-features,https://private-7c7dfe99.mintlify.app/core/reference/settings/beta-and-experimental-features,matched,5a3c5e33555c0c51,true,5a3c5e33555c0c51,2026-05-19T11:08:53+00:00,false
/changelogs/24.10,docs/cloud/reference/01_changelog/02_release_notes/24_10.md,resources/changelogs/cloud/release-notes/24_10.mdx,https://clickhouse.com/docs/changelogs/24.10,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes/24_10,matched,75f3b9c3e1acd523,true,75f3b9c3e1acd523,2026-05-08T09:09:20+00:00,false
/changelogs/24.12,docs/cloud/reference/01_changelog/02_release_notes/24_12.md,resources/changelogs/cloud/release-notes/24_12.mdx,https://clickhouse.com/docs/changelogs/24.12,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes/24_12,matched,c80f810dd0087c7a,true,cb414cc582eb01b1,2026-05-08T10:40:06+00:00,false
/changelogs/24.5,docs/cloud/reference/01_changelog/02_release_notes/24_05.md,resources/changelogs/cloud/release-notes/24_05.mdx,https://clickhouse.com/docs/changelogs/24.5,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes/24_05,matched,1f24e5c818c445d7,true,1f24e5c818c445d7,2026-05-13T13:16:51+00:00,false
@@ -34,13 +34,13 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/changelogs/25.6,docs/cloud/reference/01_changelog/02_release_notes/25_06.md,resources/changelogs/cloud/release-notes/25_06.mdx,https://clickhouse.com/docs/changelogs/25.6,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes/25_06,matched,52f595c2d77a6ecd,true,52f595c2d77a6ecd,2026-05-08T09:09:20+00:00,false
/changelogs/25.8,docs/cloud/reference/01_changelog/02_release_notes/25_08.md,resources/changelogs/cloud/release-notes/25_08.mdx,https://clickhouse.com/docs/changelogs/25.8,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes/25_08,matched,352f1bfa464960ea,true,352f1bfa464960ea,2026-05-09T11:09:07+00:00,false
/changelogs/26.2,docs/cloud/reference/01_changelog/02_release_notes/26_2.md,resources/changelogs/cloud/release-notes/26_02.mdx,https://clickhouse.com/docs/changelogs/26.2,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes/26_02,matched,6d714d62c166ccb7,true,6d714d62c166ccb7,2026-05-13T13:16:51+00:00,false
-/chdb,docs/chdb/index.md,products/chdb/index.mdx,https://clickhouse.com/docs/chdb,https://private-7c7dfe99.mintlify.app/products/chdb,matched,667af74a53181824,true,667af74a53181824,2026-05-09T09:39:38+00:00,false
+/chdb,docs/chdb/index.md,products/chdb/index.mdx,https://clickhouse.com/docs/chdb,https://private-7c7dfe99.mintlify.app/products/chdb/index,matched,667af74a53181824,true,667af74a53181824,2026-05-09T09:39:38+00:00,false
/chdb/api/python,docs/chdb/api/python.md,products/chdb/api/python.mdx,https://clickhouse.com/docs/chdb/api/python,https://private-7c7dfe99.mintlify.app/products/chdb/api/python,matched,0489c0df271df2dd,true,0489c0df271df2dd,2026-05-13T13:16:51+00:00,false
-/chdb/configuration,docs/chdb/configuration/index.md,products/chdb/configuration/index.mdx,https://clickhouse.com/docs/chdb/configuration,https://private-7c7dfe99.mintlify.app/products/chdb/configuration,matched,cac5b473edcf1434,true,cac5b473edcf1434,2026-05-13T13:16:51+00:00,false
+/chdb/configuration,docs/chdb/configuration/index.md,products/chdb/configuration/index.mdx,https://clickhouse.com/docs/chdb/configuration,https://private-7c7dfe99.mintlify.app/products/chdb/configuration/index,matched,cac5b473edcf1434,true,cac5b473edcf1434,2026-05-13T13:16:51+00:00,false
/chdb/configuration/execution-engine,docs/chdb/configuration/execution-engine.md,products/chdb/configuration/execution-engine.mdx,https://clickhouse.com/docs/chdb/configuration/execution-engine,https://private-7c7dfe99.mintlify.app/products/chdb/configuration/execution-engine,matched,4ed55df4b60d45c9,true,4ed55df4b60d45c9,2026-05-13T13:16:51+00:00,false
/chdb/configuration/function-config,docs/chdb/configuration/function-config.md,products/chdb/configuration/function-config.mdx,https://clickhouse.com/docs/chdb/configuration/function-config,https://private-7c7dfe99.mintlify.app/products/chdb/configuration/function-config,matched,962300ada074a915,true,962300ada074a915,2026-05-13T13:16:51+00:00,false
/chdb/configuration/performance-mode,docs/chdb/configuration/performance-mode.md,products/chdb/configuration/performance-mode.mdx,https://clickhouse.com/docs/chdb/configuration/performance-mode,https://private-7c7dfe99.mintlify.app/products/chdb/configuration/performance-mode,matched,272715acde2f4786,true,272715acde2f4786,2026-05-13T13:16:51+00:00,false
-/chdb/datastore,docs/chdb/datastore/index.md,products/chdb/datastore/index.mdx,https://clickhouse.com/docs/chdb/datastore,https://private-7c7dfe99.mintlify.app/products/chdb/datastore,matched,d5e1d1f8822a95e6,true,d5e1d1f8822a95e6,2026-05-09T09:39:38+00:00,false
+/chdb/datastore,docs/chdb/datastore/index.md,products/chdb/datastore/index.mdx,https://clickhouse.com/docs/chdb/datastore,https://private-7c7dfe99.mintlify.app/products/chdb/datastore/index,matched,d5e1d1f8822a95e6,true,d5e1d1f8822a95e6,2026-05-09T09:39:38+00:00,false
/chdb/datastore/accessors,docs/chdb/datastore/accessors.md,products/chdb/datastore/accessors.mdx,https://clickhouse.com/docs/chdb/datastore/accessors,https://private-7c7dfe99.mintlify.app/products/chdb/datastore/accessors,matched,d231c56ecda5460f,true,d231c56ecda5460f,2026-05-13T13:16:51+00:00,false
/chdb/datastore/aggregation,docs/chdb/datastore/aggregation.md,products/chdb/datastore/aggregation.mdx,https://clickhouse.com/docs/chdb/datastore/aggregation,https://private-7c7dfe99.mintlify.app/products/chdb/datastore/aggregation,matched,25475c9287264b36,true,25475c9287264b36,2026-05-13T13:16:51+00:00,false
/chdb/datastore/class-reference,docs/chdb/datastore/class-reference.md,products/chdb/datastore/class-reference.mdx,https://clickhouse.com/docs/chdb/datastore/class-reference,https://private-7c7dfe99.mintlify.app/products/chdb/datastore/class-reference,matched,7e26544f7ea684dd,true,7e26544f7ea684dd,2026-05-13T13:16:51+00:00,false
@@ -50,12 +50,12 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/chdb/datastore/pandas-compat,docs/chdb/datastore/pandas-compat.md,products/chdb/datastore/pandas-compat.mdx,https://clickhouse.com/docs/chdb/datastore/pandas-compat,https://private-7c7dfe99.mintlify.app/products/chdb/datastore/pandas-compat,matched,09396fe108a4e5fc,true,09396fe108a4e5fc,2026-05-13T13:16:51+00:00,false
/chdb/datastore/query-building,docs/chdb/datastore/query-building.md,products/chdb/datastore/query-building.mdx,https://clickhouse.com/docs/chdb/datastore/query-building,https://private-7c7dfe99.mintlify.app/products/chdb/datastore/query-building,matched,29573c963c59d113,true,29573c963c59d113,2026-05-13T13:16:51+00:00,false
/chdb/datastore/quickstart,docs/chdb/datastore/quickstart.md,products/chdb/datastore/quickstart.mdx,https://clickhouse.com/docs/chdb/datastore/quickstart,https://private-7c7dfe99.mintlify.app/products/chdb/datastore/quickstart,matched,af063d22fa6aab66,true,af063d22fa6aab66,2026-05-13T13:16:51+00:00,false
-/chdb/debugging,docs/chdb/debugging/index.md,products/chdb/debugging/index.mdx,https://clickhouse.com/docs/chdb/debugging,https://private-7c7dfe99.mintlify.app/products/chdb/debugging,matched,1bb667f2be8b9990,true,1bb667f2be8b9990,2026-05-13T13:16:51+00:00,false
+/chdb/debugging,docs/chdb/debugging/index.md,products/chdb/debugging/index.mdx,https://clickhouse.com/docs/chdb/debugging,https://private-7c7dfe99.mintlify.app/products/chdb/debugging/index,matched,1bb667f2be8b9990,true,1bb667f2be8b9990,2026-05-13T13:16:51+00:00,false
/chdb/debugging/explain,docs/chdb/debugging/explain.md,products/chdb/debugging/explain.mdx,https://clickhouse.com/docs/chdb/debugging/explain,https://private-7c7dfe99.mintlify.app/products/chdb/debugging/explain,matched,09c1b1f004366cfe,true,09c1b1f004366cfe,2026-05-13T13:16:51+00:00,false
/chdb/debugging/logging,docs/chdb/debugging/logging.md,products/chdb/debugging/logging.mdx,https://clickhouse.com/docs/chdb/debugging/logging,https://private-7c7dfe99.mintlify.app/products/chdb/debugging/logging,matched,e71601943d4e4de5,true,e71601943d4e4de5,2026-05-13T13:16:51+00:00,false
/chdb/debugging/profiling,docs/chdb/debugging/profiling.md,products/chdb/debugging/profiling.mdx,https://clickhouse.com/docs/chdb/debugging/profiling,https://private-7c7dfe99.mintlify.app/products/chdb/debugging/profiling,matched,f60d6a61d4022183,true,f60d6a61d4022183,2026-05-13T13:16:51+00:00,false
/chdb/getting-started,docs/chdb/getting-started.md,products/chdb/getting-started.mdx,https://clickhouse.com/docs/chdb/getting-started,https://private-7c7dfe99.mintlify.app/products/chdb/getting-started,matched,fe6d28d4f0004884,true,bc5d1e200e64a767,2026-05-08T19:42:07+00:00,false
-/chdb/guides,docs/chdb/guides/index.md,products/chdb/guides/index.mdx,https://clickhouse.com/docs/chdb/guides,https://private-7c7dfe99.mintlify.app/products/chdb/guides,matched,6c6e0c2616162854,true,6c6e0c2616162854,2026-05-08T20:59:49+00:00,false
+/chdb/guides,docs/chdb/guides/index.md,products/chdb/guides/index.mdx,https://clickhouse.com/docs/chdb/guides,https://private-7c7dfe99.mintlify.app/products/chdb/guides/index,matched,6c6e0c2616162854,true,6c6e0c2616162854,2026-05-08T20:59:49+00:00,false
/chdb/guides/apache-arrow,docs/chdb/guides/querying-apache-arrow.md,products/chdb/guides/querying-apache-arrow.mdx,https://clickhouse.com/docs/chdb/guides/apache-arrow,https://private-7c7dfe99.mintlify.app/products/chdb/guides/querying-apache-arrow,matched,add68d9d7c2384a1,true,add68d9d7c2384a1,2026-05-08T09:09:20+00:00,false
/chdb/guides/clickhouse-local,docs/chdb/guides/clickhouse-local.md,products/chdb/guides/clickhouse-local.mdx,https://clickhouse.com/docs/chdb/guides/clickhouse-local,https://private-7c7dfe99.mintlify.app/products/chdb/guides/clickhouse-local,matched,fa82ad9cb7aa300f,true,fa82ad9cb7aa300f,2026-05-08T19:36:15+00:00,false
/chdb/guides/jupysql,docs/chdb/guides/jupysql.md,products/chdb/guides/jupysql.mdx,https://clickhouse.com/docs/chdb/guides/jupysql,https://private-7c7dfe99.mintlify.app/products/chdb/guides/jupysql,matched,e6384b2ee9b82af2,true,e6384b2ee9b82af2,2026-05-08T12:19:52+00:00,false
@@ -68,14 +68,14 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/chdb/guides/query-remote-clickhouse,docs/chdb/guides/query-remote-clickhouse.md,products/chdb/guides/query-remote-clickhouse.mdx,https://clickhouse.com/docs/chdb/guides/query-remote-clickhouse,https://private-7c7dfe99.mintlify.app/products/chdb/guides/query-remote-clickhouse,matched,27ea13a9d6a87686,true,27ea13a9d6a87686,2026-05-08T09:09:20+00:00,false
/chdb/guides/querying-parquet,docs/chdb/guides/querying-parquet.md,products/chdb/guides/querying-parquet.mdx,https://clickhouse.com/docs/chdb/guides/querying-parquet,https://private-7c7dfe99.mintlify.app/products/chdb/guides/querying-parquet,matched,80e13888b6bfca7d,true,80e13888b6bfca7d,2026-05-08T09:09:20+00:00,false
/chdb/guides/querying-s3,docs/chdb/guides/querying-s3-bucket.md,products/chdb/guides/querying-s3-bucket.mdx,https://clickhouse.com/docs/chdb/guides/querying-s3,https://private-7c7dfe99.mintlify.app/products/chdb/guides/querying-s3-bucket,matched,2c1fe0f08e90b42f,true,2c1fe0f08e90b42f,2026-05-08T09:09:20+00:00,false
-/chdb/install,docs/chdb/install/index.md,products/chdb/install/index.mdx,https://clickhouse.com/docs/chdb/install,https://private-7c7dfe99.mintlify.app/products/chdb/install,matched,f4fe0f2b796f0289,true,f4fe0f2b796f0289,2026-05-08T09:09:20+00:00,false
+/chdb/install,docs/chdb/install/index.md,products/chdb/install/index.mdx,https://clickhouse.com/docs/chdb/install,https://private-7c7dfe99.mintlify.app/products/chdb/install/index,matched,f4fe0f2b796f0289,true,f4fe0f2b796f0289,2026-05-08T09:09:20+00:00,false
/chdb/install/bun,docs/chdb/install/bun.md,products/chdb/install/bun.mdx,https://clickhouse.com/docs/chdb/install/bun,https://private-7c7dfe99.mintlify.app/products/chdb/install/bun,matched,f57567c9fe116449,true,f3274830262e5f01,2026-05-08T09:09:20+00:00,false
/chdb/install/c,docs/chdb/install/c.md,products/chdb/install/c.mdx,https://clickhouse.com/docs/chdb/install/c,https://private-7c7dfe99.mintlify.app/products/chdb/install/c,matched,c17f13b9de744cfc,true,7b5302e1655b03cd,2026-05-08T09:09:20+00:00,false
/chdb/install/go,docs/chdb/install/go.md,products/chdb/install/go.mdx,https://clickhouse.com/docs/chdb/install/go,https://private-7c7dfe99.mintlify.app/products/chdb/install/go,matched,7d0084cb0163c70e,true,b4b1f3d0d1f1a29d,2026-05-08T09:09:20+00:00,false
/chdb/install/nodejs,docs/chdb/install/nodejs.md,products/chdb/install/nodejs.mdx,https://clickhouse.com/docs/chdb/install/nodejs,https://private-7c7dfe99.mintlify.app/products/chdb/install/nodejs,matched,91c924d920f523d5,true,f7b3da6309249ba5,2026-05-08T09:09:20+00:00,false
/chdb/install/python,docs/chdb/install/python.md,products/chdb/install/python.mdx,https://clickhouse.com/docs/chdb/install/python,https://private-7c7dfe99.mintlify.app/products/chdb/install/python,matched,61207cac7f171e56,true,61207cac7f171e56,2026-05-08T09:09:20+00:00,false
/chdb/install/rust,docs/chdb/install/rust.md,products/chdb/install/rust.mdx,https://clickhouse.com/docs/chdb/install/rust,https://private-7c7dfe99.mintlify.app/products/chdb/install/rust,matched,d49d5ccf9f0cf9e8,true,d49d5ccf9f0cf9e8,2026-05-13T13:16:51+00:00,false
-/chdb/reference,docs/chdb/reference/index.md,products/chdb/reference/index.mdx,https://clickhouse.com/docs/chdb/reference,https://private-7c7dfe99.mintlify.app/products/chdb/reference,matched,cf0eff26ed511084,true,cf0eff26ed511084,2026-05-08T09:09:20+00:00,false
+/chdb/reference,docs/chdb/reference/index.md,products/chdb/reference/index.mdx,https://clickhouse.com/docs/chdb/reference,https://private-7c7dfe99.mintlify.app/products/chdb/reference/index,matched,cf0eff26ed511084,true,cf0eff26ed511084,2026-05-08T09:09:20+00:00,false
/chdb/reference/data-formats,docs/chdb/reference/data-formats.md,products/chdb/reference/data-formats.mdx,https://clickhouse.com/docs/chdb/reference/data-formats,https://private-7c7dfe99.mintlify.app/products/chdb/reference/data-formats,matched,f53e26bdce713e13,true,f53e26bdce713e13,2026-05-08T13:01:57+00:00,false
/chdb/reference/sql-reference,docs/chdb/reference/sql-reference.md,products/chdb/reference/sql-reference.mdx,https://clickhouse.com/docs/chdb/reference/sql-reference,https://private-7c7dfe99.mintlify.app/products/chdb/reference/sql-reference,matched,f7f453059f1e4378,true,f7f453059f1e4378,2026-05-19T11:54:09+00:00,false
/clickhouse-operator/guides/configuration,docs/kubernetes-operator/03_guides/02_configuration.mdx,products/kubernetes-operator/guides/configuration.mdx,https://clickhouse.com/docs/clickhouse-operator/guides/configuration,https://private-7c7dfe99.mintlify.app/products/kubernetes-operator/guides/configuration,matched,330939d1f3ec2281,true,4c8e04a273046756,2026-05-08T09:09:20+00:00,false
@@ -85,7 +85,7 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/clickhouse-operator/install/olm,docs/kubernetes-operator/02_install/olm.mdx,products/kubernetes-operator/install/olm.mdx,https://clickhouse.com/docs/clickhouse-operator/install/olm,https://private-7c7dfe99.mintlify.app/products/kubernetes-operator/install/olm,matched,83940db90c7d30a0,true,83940db90c7d30a0,2026-05-08T09:09:20+00:00,false
/clickhouse-operator/overview,docs/kubernetes-operator/01_overview.mdx,products/kubernetes-operator/overview.mdx,https://clickhouse.com/docs/clickhouse-operator/overview,https://private-7c7dfe99.mintlify.app/products/kubernetes-operator/overview,matched,4759aaf6e5077d0f,true,4759aaf6e5077d0f,2026-05-08T09:09:20+00:00,false
/clickhouse-operator/reference/api-reference,docs/kubernetes-operator/04_api_reference.mdx,products/kubernetes-operator/reference/api-reference.mdx,https://clickhouse.com/docs/clickhouse-operator/reference/api-reference,https://private-7c7dfe99.mintlify.app/products/kubernetes-operator/reference/api-reference,matched,20812973b576f8e1,true,c2362a67e1350ddc,2026-05-08T09:09:20+00:00,false
-/cloud/bestpractices,docs/cloud/guides/best_practices/index.md,products/cloud/guides/best-practices/index.mdx,https://clickhouse.com/docs/cloud/bestpractices,https://private-7c7dfe99.mintlify.app/products/cloud/guides/best-practices,matched,8dcac023c8e57925,true,8dcac023c8e57925,2026-05-08T09:09:20+00:00,false
+/cloud/bestpractices,docs/cloud/guides/best_practices/index.md,products/cloud/guides/best-practices/index.mdx,https://clickhouse.com/docs/cloud/bestpractices,https://private-7c7dfe99.mintlify.app/products/cloud/guides/best-practices/index,matched,8dcac023c8e57925,true,8dcac023c8e57925,2026-05-08T09:09:20+00:00,false
/cloud/bestpractices/multi-tenancy,docs/cloud/guides/best_practices/multitenancy.md,products/cloud/guides/best-practices/multitenancy.mdx,https://clickhouse.com/docs/cloud/bestpractices/multi-tenancy,https://private-7c7dfe99.mintlify.app/products/cloud/guides/best-practices/multitenancy,matched,6fa748026b877c2c,true,6fa748026b877c2c,2026-05-08T09:09:20+00:00,false
/cloud/bestpractices/usage-limits,docs/cloud/guides/best_practices/usagelimits.md,products/cloud/guides/best-practices/usagelimits.mdx,https://clickhouse.com/docs/cloud/bestpractices/usage-limits,https://private-7c7dfe99.mintlify.app/products/cloud/guides/best-practices/usagelimits,matched,64a417c78bf87413,true,64a417c78bf87413,2026-05-08T09:09:20+00:00,false
/cloud/billing/marketplace/aws-marketplace-committed-contract,docs/cloud/reference/03_billing/02_marketplace/aws-marketplace-committed.md,products/cloud/reference/billing/marketplace/aws-marketplace-committed.mdx,https://clickhouse.com/docs/cloud/billing/marketplace/aws-marketplace-committed-contract,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/marketplace/aws-marketplace-committed,matched,20cbca2d9901f504,true,20cbca2d9901f504,2026-05-09T17:02:01+00:00,false
@@ -101,7 +101,7 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/cloud/data-sources/secure-gcs,docs/cloud/guides/data_sources/03_accessing-gcs-data-securely.md,products/cloud/guides/data-sources/secure-gcs.mdx,https://clickhouse.com/docs/cloud/data-sources/secure-gcs,https://private-7c7dfe99.mintlify.app/products/cloud/guides/data-sources/secure-gcs,matched,4b1500264994be09,true,4b1500264994be09,2026-05-09T17:02:01+00:00,false
/cloud/data-sources/secure-iceberg,docs/cloud/guides/data_sources/05_accessing-iceberg-data-securely.md,products/cloud/guides/data-sources/accessing-iceberg-data-securely.mdx,https://clickhouse.com/docs/cloud/data-sources/secure-iceberg,https://private-7c7dfe99.mintlify.app/products/cloud/guides/data-sources/accessing-iceberg-data-securely,matched,f825b083711d6492,true,f825b083711d6492,2026-05-09T17:02:01+00:00,false
/cloud/data-sources/secure-s3,docs/cloud/guides/data_sources/02_accessing-s3-data-securely.md,products/cloud/guides/data-sources/accessing-s3-data-securely.mdx,https://clickhouse.com/docs/cloud/data-sources/secure-s3,https://private-7c7dfe99.mintlify.app/products/cloud/guides/data-sources/accessing-s3-data-securely,matched,a490701361995bf4,true,a490701361995bf4,2026-05-08T09:09:20+00:00,false
-/cloud/features/ai-ml,docs/cloud/features/10_AI_ML/index.md,products/cloud/features/ai-ml/index.mdx,https://clickhouse.com/docs/cloud/features/ai-ml,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml,matched,54a9b70f0f3475fd,true,54a9b70f0f3475fd,2026-05-13T13:16:51+00:00,false
+/cloud/features/ai-ml,docs/cloud/features/10_AI_ML/index.md,products/cloud/features/ai-ml/index.mdx,https://clickhouse.com/docs/cloud/features/ai-ml,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml/index,matched,54a9b70f0f3475fd,true,54a9b70f0f3475fd,2026-05-13T13:16:51+00:00,false
/cloud/features/ai-ml/ask-ai,docs/cloud/features/10_AI_ML/AI_chat_overview.md,products/cloud/features/ai-ml/ask-ai.mdx,https://clickhouse.com/docs/cloud/features/ai-ml/ask-ai,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml/ask-ai,matched,f7e2c6861a03b5be,true,9ee44c600a90dd6d,2026-05-08T09:09:20+00:00,false
/cloud/features/ai-ml/langfuse,docs/cloud/features/10_AI_ML/langfuse.md,products/cloud/features/ai-ml/langfuse.mdx,https://clickhouse.com/docs/cloud/features/ai-ml/langfuse,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml/langfuse,matched,3fdb6fecdae5809f,true,3fdb6fecdae5809f,2026-05-08T09:09:20+00:00,false
/cloud/features/ai-ml/model-developer-terms,docs/cloud/features/10_AI_ML/model-developer-terms.md,products/cloud/features/ai-ml/model-developer-terms.mdx,https://clickhouse.com/docs/cloud/features/ai-ml/model-developer-terms,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml/model-developer-terms,matched,d460aabf33fe6b06,true,d460aabf33fe6b06,2026-05-07T14:49:41+00:00,false
@@ -119,18 +119,18 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/cloud/features/user-defined-functions,docs/cloud/features/03_sql_console_features/05_user_defined_functions.md,products/cloud/features/sql-console-features/user-defined-functions.mdx,https://clickhouse.com/docs/cloud/features/user-defined-functions,https://private-7c7dfe99.mintlify.app/products/cloud/features/sql-console-features/user-defined-functions,matched,edee25b13d012dac,true,edee25b13d012dac,2026-05-09T17:02:01+00:00,false
/cloud/get-started,docs/cloud/onboard/index.md,products/cloud/getting-started/cloud-get-started.mdx,https://clickhouse.com/docs/cloud/get-started,https://private-7c7dfe99.mintlify.app/products/cloud/getting-started/cloud-get-started,matched,9204efcacd18fa2d,true,9204efcacd18fa2d,2026-05-13T13:25:34+00:00,false
/cloud/get-started/cloud/resource-tour,docs/cloud/onboard/03_tune/resource_tour.md,products/cloud/getting-started/resource-tour.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/resource-tour,https://private-7c7dfe99.mintlify.app/products/cloud/getting-started/resource-tour,matched,a6c4756c4f81974e,true,a6c4756c4f81974e,2026-05-08T11:33:34+00:00,false
-/cloud/get-started/cloud/use-cases/AI_ML,docs/cloud/onboard/01_discover/02_use_cases/04_machine_learning_and_genAI/01_machine_learning.md,get-started/use-cases/machine-learning-and-genai/machine-learning.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/AI_ML,https://private-7c7dfe99.mintlify.app/get-started/use-cases/machine-learning-and-genai/machine-learning,matched,98bb4a2519c85a01,true,98bb4a2519c85a01,2026-05-08T09:09:20+00:00,false
-/cloud/get-started/cloud/use-cases/AI_ML/agent_facing_analytics,docs/cloud/onboard/01_discover/02_use_cases/04_machine_learning_and_genAI/02_agent_facing_analytics.md,get-started/use-cases/machine-learning-and-genai/agent-facing-analytics.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/AI_ML/agent_facing_analytics,https://private-7c7dfe99.mintlify.app/get-started/use-cases/machine-learning-and-genai/agent-facing-analytics,matched,c85d58a649bdcf01,true,c85d58a649bdcf01,2026-05-08T09:09:20+00:00,false
-/cloud/get-started/cloud/use-cases/data_lake_and_warehouse,docs/cloud/onboard/01_discover/02_use_cases/03_data_warehousing.md,get-started/use-cases/data-warehousing.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/data_lake_and_warehouse,https://private-7c7dfe99.mintlify.app/get-started/use-cases/data-warehousing,matched,91c6e9022a2f8b93,true,91c6e9022a2f8b93,2026-05-09T16:59:51+00:00,false
-/cloud/get-started/cloud/use-cases/observability,docs/cloud/onboard/01_discover/02_use_cases/02_observability.md,get-started/use-cases/observability.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/observability,https://private-7c7dfe99.mintlify.app/get-started/use-cases/observability,matched,21a411586384e339,true,21a411586384e339,2026-05-08T12:19:52+00:00,false
-/cloud/get-started/cloud/use-cases/overview,docs/cloud/onboard/01_discover/02_use_cases/00_overview.md,get-started/use-cases/overview.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/overview,https://private-7c7dfe99.mintlify.app/get-started/use-cases/overview,matched,7e66b34fac31dee4,true,7e66b34fac31dee4,2026-05-08T09:09:20+00:00,false
-/cloud/get-started/cloud/use-cases/real-time-analytics,docs/cloud/onboard/01_discover/02_use_cases/01_real-time-analytics.md,get-started/use-cases/real-time-analytics.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/real-time-analytics,https://private-7c7dfe99.mintlify.app/get-started/use-cases/real-time-analytics,matched,4a7d4ef89d791eda,true,4a7d4ef89d791eda,2026-05-08T12:19:52+00:00,false
+/cloud/get-started/cloud/use-cases/AI_ML,docs/cloud/onboard/01_discover/02_use_cases/04_machine_learning_and_genAI/01_machine_learning.md,core/get-started/use-cases/machine-learning-and-genai/machine-learning.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/AI_ML,https://private-7c7dfe99.mintlify.app/core/get-started/use-cases/machine-learning-and-genai/machine-learning,matched,98bb4a2519c85a01,true,98bb4a2519c85a01,2026-05-08T09:09:20+00:00,false
+/cloud/get-started/cloud/use-cases/AI_ML/agent_facing_analytics,docs/cloud/onboard/01_discover/02_use_cases/04_machine_learning_and_genAI/02_agent_facing_analytics.md,core/get-started/use-cases/machine-learning-and-genai/agent-facing-analytics.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/AI_ML/agent_facing_analytics,https://private-7c7dfe99.mintlify.app/core/get-started/use-cases/machine-learning-and-genai/agent-facing-analytics,matched,c85d58a649bdcf01,true,c85d58a649bdcf01,2026-05-08T09:09:20+00:00,false
+/cloud/get-started/cloud/use-cases/data_lake_and_warehouse,docs/cloud/onboard/01_discover/02_use_cases/03_data_warehousing.md,core/get-started/use-cases/data-warehousing.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/data_lake_and_warehouse,https://private-7c7dfe99.mintlify.app/core/get-started/use-cases/data-warehousing,matched,91c6e9022a2f8b93,true,91c6e9022a2f8b93,2026-05-09T16:59:51+00:00,false
+/cloud/get-started/cloud/use-cases/observability,docs/cloud/onboard/01_discover/02_use_cases/02_observability.md,core/get-started/use-cases/observability.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/observability,https://private-7c7dfe99.mintlify.app/core/get-started/use-cases/observability,matched,21a411586384e339,true,21a411586384e339,2026-05-08T12:19:52+00:00,false
+/cloud/get-started/cloud/use-cases/overview,docs/cloud/onboard/01_discover/02_use_cases/00_overview.md,core/get-started/use-cases/overview.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/overview,https://private-7c7dfe99.mintlify.app/core/get-started/use-cases/overview,matched,7e66b34fac31dee4,true,7e66b34fac31dee4,2026-05-08T09:09:20+00:00,false
+/cloud/get-started/cloud/use-cases/real-time-analytics,docs/cloud/onboard/01_discover/02_use_cases/01_real-time-analytics.md,core/get-started/use-cases/real-time-analytics.mdx,https://clickhouse.com/docs/cloud/get-started/cloud/use-cases/real-time-analytics,https://private-7c7dfe99.mintlify.app/core/get-started/use-cases/real-time-analytics,matched,4a7d4ef89d791eda,true,4a7d4ef89d791eda,2026-05-08T12:19:52+00:00,false
/cloud/get-started/query-endpoints,docs/cloud/guides/SQL_console/query-endpoints.md,products/cloud/guides/sql-console/query-endpoints.mdx,https://clickhouse.com/docs/cloud/get-started/query-endpoints,https://private-7c7dfe99.mintlify.app/products/cloud/guides/sql-console/query-endpoints,matched,89f2028a4895d1af,true,89f2028a4895d1af,2026-05-13T15:43:30+00:00,false
/cloud/get-started/query-insights,docs/cloud/features/03_sql_console_features/02_query-insights.md,products/cloud/features/sql-console-features/query-insights.mdx,https://clickhouse.com/docs/cloud/get-started/query-insights,https://private-7c7dfe99.mintlify.app/products/cloud/features/sql-console-features/query-insights,matched,7bc23ab0c83d06b5,true,7bc23ab0c83d06b5,2026-05-08T09:09:20+00:00,false
/cloud/get-started/sql-console,docs/cloud/features/03_sql_console_features/01_sql-console.md,products/cloud/features/sql-console-features/sql-console.mdx,https://clickhouse.com/docs/cloud/get-started/sql-console,https://private-7c7dfe99.mintlify.app/products/cloud/features/sql-console-features/sql-console,matched,08745d6dadb884a8,true,08745d6dadb884a8,2026-05-08T09:09:20+00:00,false
-/cloud/guides,docs/cloud/guides/index.md,products/cloud/guides/index.mdx,https://clickhouse.com/docs/cloud/guides,https://private-7c7dfe99.mintlify.app/products/cloud/guides,matched,a0cfe9c4a5b23a8a,true,a0cfe9c4a5b23a8a,2026-05-19T11:41:35+00:00,false
+/cloud/guides,docs/cloud/guides/index.md,products/cloud/guides/index.mdx,https://clickhouse.com/docs/cloud/guides,https://private-7c7dfe99.mintlify.app/products/cloud/guides/index,matched,a0cfe9c4a5b23a8a,true,a0cfe9c4a5b23a8a,2026-05-19T11:41:35+00:00,false
/cloud/guides/data-masking,docs/cloud/guides/security/03_data-masking.md,products/cloud/guides/security/data-masking.mdx,https://clickhouse.com/docs/cloud/guides/data-masking,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/data-masking,matched,f6f11530fed410a1,true,1260414af03fc8ad,2026-05-08T09:09:20+00:00,false
-/cloud/guides/data-sources,docs/cloud/guides/data_sources/index.md,products/cloud/guides/data-sources/index.mdx,https://clickhouse.com/docs/cloud/guides/data-sources,https://private-7c7dfe99.mintlify.app/products/cloud/guides/data-sources,matched,f65cc61c3e2e6eea,true,f65cc61c3e2e6eea,2026-05-08T09:09:20+00:00,false
+/cloud/guides/data-sources,docs/cloud/guides/data_sources/index.md,products/cloud/guides/data-sources/index.mdx,https://clickhouse.com/docs/cloud/guides/data-sources,https://private-7c7dfe99.mintlify.app/products/cloud/guides/data-sources/index,matched,f65cc61c3e2e6eea,true,f65cc61c3e2e6eea,2026-05-08T09:09:20+00:00,false
/cloud/guides/production-readiness,docs/cloud/guides/production-readiness.md,products/cloud/guides/production-readiness.mdx,https://clickhouse.com/docs/cloud/guides/production-readiness,https://private-7c7dfe99.mintlify.app/products/cloud/guides/production-readiness,matched,66f482de657286c9,true,66f482de657286c9,2026-05-13T13:16:51+00:00,false
/cloud/guides/security/manage-custom-roles,docs/cloud/guides/security/01_cloud_access_management/03_manage-custom-roles.md,products/cloud/guides/security/cloud-access-management/manage-custom-roles.mdx,https://clickhouse.com/docs/cloud/guides/security/manage-custom-roles,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cloud-access-management/manage-custom-roles,matched,29788fb34b6dd45e,true,29788fb34b6dd45e,2026-05-09T17:02:01+00:00,false
/cloud/guides/sql-console/gather-connection-details,docs/cloud/guides/SQL_console/connection_details.md,products/cloud/guides/sql-console/connection-details.mdx,https://clickhouse.com/docs/cloud/guides/sql-console/gather-connection-details,https://private-7c7dfe99.mintlify.app/products/cloud/guides/sql-console/connection-details,matched,afd6f57564f1e340,true,afd6f57564f1e340,2026-05-08T09:09:20+00:00,false
@@ -138,20 +138,20 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/cloud/infrastructure/clickhouse-government,docs/cloud/guides/infrastructure/01_deployment_options/03_clickhouse-government.md,products/cloud/guides/infrastructure/deployment-options/clickhouse-government.mdx,https://clickhouse.com/docs/cloud/infrastructure/clickhouse-government,https://private-7c7dfe99.mintlify.app/products/cloud/guides/infrastructure/deployment-options/clickhouse-government,matched,21b0ff4af4bf21d2,true,21b0ff4af4bf21d2,2026-05-08T09:09:20+00:00,false
/cloud/infrastructure/clickhouse-private,docs/cloud/guides/infrastructure/01_deployment_options/02_clickhouse-private.md,products/cloud/guides/infrastructure/deployment-options/clickhouse-private.mdx,https://clickhouse.com/docs/cloud/infrastructure/clickhouse-private,https://private-7c7dfe99.mintlify.app/products/cloud/guides/infrastructure/deployment-options/clickhouse-private,matched,9b03ad9303c64cac,true,9b03ad9303c64cac,2026-05-08T09:09:20+00:00,false
/cloud/manage/api/api-overview,docs/cloud/features/06_admin_features/api/api-overview.md,products/cloud/features/admin-features/api/api-overview.mdx,https://clickhouse.com/docs/cloud/manage/api/api-overview,https://private-7c7dfe99.mintlify.app/products/cloud/features/admin-features/api/api-overview,matched,c1ae0eaa41dce4cb,true,0e03b8509bcbb764,2026-05-09T10:10:14+00:00,false
-/cloud/manage/backups,docs/cloud/guides/backups/index.md,products/cloud/guides/backups/index.mdx,https://clickhouse.com/docs/cloud/manage/backups,https://private-7c7dfe99.mintlify.app/products/cloud/guides/backups,matched,970616ede7226a84,true,970616ede7226a84,2026-05-08T09:09:20+00:00,false
+/cloud/manage/backups,docs/cloud/guides/backups/index.md,products/cloud/guides/backups/index.mdx,https://clickhouse.com/docs/cloud/manage/backups,https://private-7c7dfe99.mintlify.app/products/cloud/guides/backups/index,matched,970616ede7226a84,true,970616ede7226a84,2026-05-08T09:09:20+00:00,false
/cloud/manage/backups/backup-restore-via-commands,docs/cloud/guides/backups/03_bring_your_own_backup/03_backup_restore_using_commands.md,products/cloud/guides/backups/bring-your-own-backup/backup-restore-using-commands.mdx,https://clickhouse.com/docs/cloud/manage/backups/backup-restore-via-commands,https://private-7c7dfe99.mintlify.app/products/cloud/guides/backups/bring-your-own-backup/backup-restore-using-commands,matched,bd25574ae7b54f32,true,bd25574ae7b54f32,2026-05-08T09:09:20+00:00,false
/cloud/manage/backups/backup-restore-via-ui,docs/cloud/guides/backups/03_bring_your_own_backup/02_backup_restore_from_ui.md,products/cloud/guides/backups/bring-your-own-backup/backup-restore-from-ui.mdx,https://clickhouse.com/docs/cloud/manage/backups/backup-restore-via-ui,https://private-7c7dfe99.mintlify.app/products/cloud/guides/backups/bring-your-own-backup/backup-restore-from-ui,matched,6624ad97c26d04cb,true,6624ad97c26d04cb,2026-05-09T17:02:01+00:00,false
/cloud/manage/backups/configurable-backups,docs/cloud/guides/backups/02_configurable-backups.md,products/cloud/guides/backups/configurable-backups.mdx,https://clickhouse.com/docs/cloud/manage/backups/configurable-backups,https://private-7c7dfe99.mintlify.app/products/cloud/guides/backups/configurable-backups,matched,bbae3e77868408d6,true,bbae3e77868408d6,2026-05-08T09:09:20+00:00,false
/cloud/manage/backups/export-backups-to-own-cloud-account,docs/cloud/guides/backups/03_bring_your_own_backup/01_export-backups-to-own-cloud-account.md,products/cloud/guides/backups/bring-your-own-backup/export-backups-to-own-cloud-account.mdx,https://clickhouse.com/docs/cloud/manage/backups/export-backups-to-own-cloud-account,https://private-7c7dfe99.mintlify.app/products/cloud/guides/backups/bring-your-own-backup/export-backups-to-own-cloud-account,matched,7785d20cd3c8629c,true,7785d20cd3c8629c,2026-05-08T15:04:34+00:00,false
/cloud/manage/backups/overview,docs/cloud/guides/backups/01_review-and-restore-backups.md,products/cloud/guides/backups/review-and-restore-backups.mdx,https://clickhouse.com/docs/cloud/manage/backups/overview,https://private-7c7dfe99.mintlify.app/products/cloud/guides/backups/review-and-restore-backups,matched,8d90498ce1855ff5,true,8d90498ce1855ff5,2026-05-13T13:16:51+00:00,false
-/cloud/manage/billing,docs/cloud/reference/03_billing/index.md,products/cloud/reference/billing/index.mdx,https://clickhouse.com/docs/cloud/manage/billing,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing,matched,043aa88b2d4a1d62,true,043aa88b2d4a1d62,2026-05-08T09:09:20+00:00,false
+/cloud/manage/billing,docs/cloud/reference/03_billing/index.md,products/cloud/reference/billing/index.mdx,https://clickhouse.com/docs/cloud/manage/billing,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/index,matched,043aa88b2d4a1d62,true,043aa88b2d4a1d62,2026-05-08T09:09:20+00:00,false
/cloud/manage/billing/overview,docs/cloud/reference/03_billing/01_billing_overview.md,products/cloud/reference/billing/billing-overview.mdx,https://clickhouse.com/docs/cloud/manage/billing/overview,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/billing-overview,matched,7f1225166655ebd2,true,7f1225166655ebd2,2026-05-08T09:09:20+00:00,false
/cloud/manage/close_account,docs/cloud/reference/11_account-close.md,products/cloud/reference/account-close.mdx,https://clickhouse.com/docs/cloud/manage/close_account,https://private-7c7dfe99.mintlify.app/products/cloud/reference/account-close,matched,36c5d914275ca5f8,true,36c5d914275ca5f8,2026-05-09T17:02:01+00:00,false
-/cloud/manage/cloud-api,docs/cloud/features/06_admin_features/api/index.md,products/cloud/features/admin-features/api/index.mdx,https://clickhouse.com/docs/cloud/manage/cloud-api,https://private-7c7dfe99.mintlify.app/products/cloud/features/admin-features/api,matched,b78c8fb3fd3ca82a,true,b78c8fb3fd3ca82a,2026-05-09T10:10:14+00:00,false
+/cloud/manage/cloud-api,docs/cloud/features/06_admin_features/api/index.md,products/cloud/features/admin-features/api/index.mdx,https://clickhouse.com/docs/cloud/manage/cloud-api,https://private-7c7dfe99.mintlify.app/products/cloud/features/admin-features/api/index,matched,b78c8fb3fd3ca82a,true,b78c8fb3fd3ca82a,2026-05-09T10:10:14+00:00,false
/cloud/manage/cloud-tiers,docs/cloud/features/01_cloud_tiers.md,products/cloud/features/cloud-tiers.mdx,https://clickhouse.com/docs/cloud/manage/cloud-tiers,https://private-7c7dfe99.mintlify.app/products/cloud/features/cloud-tiers,matched,feb60546b79ef007,true,bcb7df3b1a1dae46,2026-05-08T11:53:27+00:00,false
/cloud/manage/dashboards,docs/cloud/features/03_sql_console_features/04_dashboards.md,products/cloud/features/sql-console-features/dashboards.mdx,https://clickhouse.com/docs/cloud/manage/dashboards,https://private-7c7dfe99.mintlify.app/products/cloud/features/sql-console-features/dashboards,matched,6eeac11681de5506,true,6eeac11681de5506,2026-05-08T09:09:20+00:00,false
/cloud/manage/hyperdx,docs/cloud/features/03_sql_console_features/hyperdx.md,products/cloud/features/sql-console-features/hyperdx.mdx,https://clickhouse.com/docs/cloud/manage/hyperdx,https://private-7c7dfe99.mintlify.app/products/cloud/features/sql-console-features/hyperdx,matched,21ecd23dfcc59665,true,21ecd23dfcc59665,2026-05-08T09:09:20+00:00,false
-/cloud/manage/marketplace/,docs/cloud/reference/03_billing/02_marketplace/index.md,products/cloud/reference/billing/marketplace/index.mdx,https://clickhouse.com/docs/cloud/manage/marketplace/,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/marketplace,matched,b15b0f51d35014ff,true,b15b0f51d35014ff,2026-05-07T14:49:41+00:00,false
+/cloud/manage/marketplace/,docs/cloud/reference/03_billing/02_marketplace/index.md,products/cloud/reference/billing/marketplace/index.mdx,https://clickhouse.com/docs/cloud/manage/marketplace/,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/marketplace/index,matched,b15b0f51d35014ff,true,b15b0f51d35014ff,2026-05-07T14:49:41+00:00,false
/cloud/manage/monitor/advanced-dashboard,docs/cloud/features/08_monitoring/advanced_dashboard.md,products/cloud/features/monitoring/advanced-dashboard.mdx,https://clickhouse.com/docs/cloud/manage/monitor/advanced-dashboard,https://private-7c7dfe99.mintlify.app/products/cloud/features/monitoring/advanced-dashboard,matched,d41978d5f83b67c1,true,d41978d5f83b67c1,2026-05-08T09:09:20+00:00,false
/cloud/manage/network-data-transfer,docs/cloud/reference/03_billing/04_network-data-transfer.mdx,products/cloud/reference/billing/network-data-transfer.mdx,https://clickhouse.com/docs/cloud/manage/network-data-transfer,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/network-data-transfer,matched,c3f98f239bac0836,true,c3f98f239bac0836,2026-05-08T09:09:20+00:00,false
/cloud/manage/openapi,docs/cloud/features/06_admin_features/api/openapi.md,products/cloud/features/admin-features/api/openapi.mdx,https://clickhouse.com/docs/cloud/manage/openapi,https://private-7c7dfe99.mintlify.app/products/cloud/features/admin-features/api/openapi,matched,9bdf3eb7fbb415ea,true,9bdf3eb7fbb415ea,2026-05-09T10:10:14+00:00,false
@@ -185,9 +185,9 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/cloud/managed-postgres/upgrades,docs/cloud/managed-postgres/upgrades.md,products/managed-postgres/upgrades.mdx,https://clickhouse.com/docs/cloud/managed-postgres/upgrades,https://private-7c7dfe99.mintlify.app/products/managed-postgres/upgrades,matched,b445eca1bc80cddd,true,b445eca1bc80cddd,2026-05-08T09:09:20+00:00,false
/cloud/marketplace/marketplace-billing,docs/cloud/reference/03_billing/02_marketplace/overview.md,products/cloud/reference/billing/marketplace/overview.mdx,https://clickhouse.com/docs/cloud/marketplace/marketplace-billing,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/marketplace/overview,matched,81c464817cd52ea7,true,81c464817cd52ea7,2026-05-08T09:09:20+00:00,false
/cloud/migrate/upload-a-csv-file,docs/cloud/onboard/02_migrate/01_migration_guides/08_other_methods/04_upload-a-csv-file.md,products/cloud/guides/migration/upload-a-csv-file.mdx,https://clickhouse.com/docs/cloud/migrate/upload-a-csv-file,https://private-7c7dfe99.mintlify.app/products/cloud/guides/migration/upload-a-csv-file,matched,4a099f2b522ce3e4,true,4a099f2b522ce3e4,2026-05-08T09:09:20+00:00,false
-/cloud/migration/clickhouse-local,docs/cloud/onboard/02_migrate/01_migration_guides/08_other_methods/01_clickhouse-local-etl.md,get-started/setup/migration-guides/other-methods/clickhouse-local-etl.mdx,https://clickhouse.com/docs/cloud/migration/clickhouse-local,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/other-methods/clickhouse-local-etl,matched,7a9bbf05765000c1,true,7a9bbf05765000c1,2026-05-08T11:18:28+00:00,false
-/cloud/migration/clickhouse-to-cloud,docs/cloud/onboard/02_migrate/01_migration_guides/07_OSS_to_Cloud/01_clickhouse-to-cloud_with_remotesecure.md,get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud.mdx,https://clickhouse.com/docs/cloud/migration/clickhouse-to-cloud,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud,matched,7ca206c1079979e2,true,7ca206c1079979e2,2026-05-08T11:33:34+00:00,false
-/cloud/migration/etl-tool-to-clickhouse,docs/cloud/onboard/02_migrate/01_migration_guides/08_other_methods/02_etl-tool-to-clickhouse.md,get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse.mdx,https://clickhouse.com/docs/cloud/migration/etl-tool-to-clickhouse,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse,matched,14da5879ab135d65,true,14da5879ab135d65,2026-05-08T09:09:20+00:00,false
+/cloud/migration/clickhouse-local,docs/cloud/onboard/02_migrate/01_migration_guides/08_other_methods/01_clickhouse-local-etl.md,core/get-started/setup/migration-guides/other-methods/clickhouse-local-etl.mdx,https://clickhouse.com/docs/cloud/migration/clickhouse-local,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/other-methods/clickhouse-local-etl,matched,7a9bbf05765000c1,true,7a9bbf05765000c1,2026-05-08T11:18:28+00:00,false
+/cloud/migration/clickhouse-to-cloud,docs/cloud/onboard/02_migrate/01_migration_guides/07_OSS_to_Cloud/01_clickhouse-to-cloud_with_remotesecure.md,core/get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud.mdx,https://clickhouse.com/docs/cloud/migration/clickhouse-to-cloud,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud,matched,7ca206c1079979e2,true,7ca206c1079979e2,2026-05-08T11:33:34+00:00,false
+/cloud/migration/etl-tool-to-clickhouse,docs/cloud/onboard/02_migrate/01_migration_guides/08_other_methods/02_etl-tool-to-clickhouse.md,core/get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse.mdx,https://clickhouse.com/docs/cloud/migration/etl-tool-to-clickhouse,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse,matched,14da5879ab135d65,true,14da5879ab135d65,2026-05-08T09:09:20+00:00,false
/cloud/migration/oss-to-cloud-backup-restore,docs/cloud/onboard/02_migrate/01_migration_guides/07_OSS_to_Cloud/02_oss_to_cloud_backups.md,products/cloud/guides/migration/oss-to-cloud-backup-restore.mdx,https://clickhouse.com/docs/cloud/migration/oss-to-cloud-backup-restore,https://private-7c7dfe99.mintlify.app/products/cloud/guides/migration/oss-to-cloud-backup-restore,matched,f169deff08e010e3,true,f169deff08e010e3,2026-05-13T15:43:29+00:00,false
/cloud/monitoring,docs/cloud/features/08_monitoring/overview.md,products/cloud/features/monitoring/overview.mdx,https://clickhouse.com/docs/cloud/monitoring,https://private-7c7dfe99.mintlify.app/products/cloud/features/monitoring/overview,matched,863a8eaa76a3e433,true,895bd5a08d387c60,2026-05-07T14:49:41+00:00,false
/cloud/monitoring/cloud-console,docs/cloud/features/08_monitoring/cloud-console.md,products/cloud/features/monitoring/cloud-console.mdx,https://clickhouse.com/docs/cloud/monitoring/cloud-console,https://private-7c7dfe99.mintlify.app/products/cloud/features/monitoring/cloud-console,matched,c9a31fe3279cbef4,true,c9a31fe3279cbef4,2026-05-08T09:09:20+00:00,false
@@ -195,18 +195,18 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/cloud/monitoring/system-tables,docs/cloud/features/08_monitoring/system-tables.md,products/cloud/features/monitoring/system-tables.mdx,https://clickhouse.com/docs/cloud/monitoring/system-tables,https://private-7c7dfe99.mintlify.app/products/cloud/features/monitoring/system-tables,matched,c0b9697e8ad44e0d,true,c0b9697e8ad44e0d,2026-05-08T09:09:20+00:00,false
/cloud/notifications,docs/cloud/features/08_monitoring/cloud-notifications.md,products/cloud/features/monitoring/notifications.mdx,https://clickhouse.com/docs/cloud/notifications,https://private-7c7dfe99.mintlify.app/products/cloud/features/monitoring/notifications,matched,99b276dc1a14093b,true,99b276dc1a14093b,2026-05-08T09:09:20+00:00,false
/cloud/overview,docs/cloud/onboard/01_discover/01_what_is.md,products/cloud/getting-started/intro.mdx,https://clickhouse.com/docs/cloud/overview,https://private-7c7dfe99.mintlify.app/products/cloud/getting-started/intro,matched,6a989c83073b9a92,true,6a989c83073b9a92,2026-05-08T09:09:20+00:00,false
-/cloud/reference,docs/cloud/reference/index.md,products/cloud/reference/index.mdx,https://clickhouse.com/docs/cloud/reference,https://private-7c7dfe99.mintlify.app/products/cloud/reference,matched,f7dd5c99d95edf46,true,f7dd5c99d95edf46,2026-05-13T13:16:51+00:00,false
+/cloud/reference,docs/cloud/reference/index.md,products/cloud/reference/index.mdx,https://clickhouse.com/docs/cloud/reference,https://private-7c7dfe99.mintlify.app/products/cloud/reference/index,matched,f7dd5c99d95edf46,true,f7dd5c99d95edf46,2026-05-13T13:16:51+00:00,false
/cloud/reference/architecture,docs/cloud/reference/02_architecture.md,products/cloud/reference/architecture.mdx,https://clickhouse.com/docs/cloud/reference/architecture,https://private-7c7dfe99.mintlify.app/products/cloud/reference/architecture,matched,f288030a7ccc04fa,true,f288030a7ccc04fa,2026-05-08T09:09:20+00:00,false
-/cloud/reference/billing/clickpipes,docs/cloud/reference/03_billing/03_clickpipes/index.md,products/cloud/reference/billing/clickpipes/index.mdx,https://clickhouse.com/docs/cloud/reference/billing/clickpipes,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/clickpipes,matched,f38bca2728a4ec18,true,f38bca2728a4ec18,2026-05-07T14:49:41+00:00,false
+/cloud/reference/billing/clickpipes,docs/cloud/reference/03_billing/03_clickpipes/index.md,products/cloud/reference/billing/clickpipes/index.mdx,https://clickhouse.com/docs/cloud/reference/billing/clickpipes,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/clickpipes/index,matched,f38bca2728a4ec18,true,f38bca2728a4ec18,2026-05-07T14:49:41+00:00,false
/cloud/reference/billing/clickpipes/postgres-cdc,docs/cloud/reference/03_billing/03_clickpipes/clickpipes_for_cdc.md,products/cloud/reference/billing/clickpipes/clickpipes-for-cdc.mdx,https://clickhouse.com/docs/cloud/reference/billing/clickpipes/postgres-cdc,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/clickpipes/clickpipes-for-cdc,matched,45fcc3a786b71f10,true,45fcc3a786b71f10,2026-05-13T13:16:51+00:00,false
/cloud/reference/billing/clickpipes/streaming-and-object-storage,docs/cloud/reference/03_billing/03_clickpipes/clickpipes_for_streaming_and_object_storage.md,products/cloud/reference/billing/clickpipes/clickpipes-for-streaming-and-object-storage.mdx,https://clickhouse.com/docs/cloud/reference/billing/clickpipes/streaming-and-object-storage,https://private-7c7dfe99.mintlify.app/products/cloud/reference/billing/clickpipes/clickpipes-for-streaming-and-object-storage,matched,f1b629a47a4e799b,true,f1b629a47a4e799b,2026-05-09T14:41:12+00:00,false
-/cloud/reference/byoc/architecture,docs/cloud/guides/infrastructure/01_deployment_options/byoc/02_architecture.md,products/cloud/guides/infrastructure/deployment-options/byoc/architecture.mdx | products/bring-your-own-cloud/overview/architecture.mdx,https://clickhouse.com/docs/cloud/reference/byoc/architecture,,ambiguous,a0472008166c0a9f,true,a0472008166c0a9f,2026-05-19T11:48:22+00:00,false
+/cloud/reference/byoc/architecture,docs/cloud/guides/infrastructure/01_deployment_options/byoc/02_architecture.md,products/bring-your-own-cloud/overview/architecture.mdx,https://clickhouse.com/docs/cloud/reference/byoc/architecture,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/overview/architecture,matched,a0472008166c0a9f,true,a0472008166c0a9f,2026-05-19T11:48:22+00:00,false
/cloud/reference/byoc/aws-service-limits,docs/cloud/guides/infrastructure/01_deployment_options/byoc/08_reference/07_aws_service_limits.md,products/bring-your-own-cloud/reference/aws-service-limits.mdx,https://clickhouse.com/docs/cloud/reference/byoc/aws-service-limits,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/reference/aws-service-limits,matched,e84f1dd963210857,true,e84f1dd963210857,2026-05-19T11:48:22+00:00,false
/cloud/reference/byoc/billable-aws-services,docs/cloud/guides/infrastructure/01_deployment_options/byoc/08_reference/05_billable_aws_services.md,products/bring-your-own-cloud/reference/billable-aws-services.mdx,https://clickhouse.com/docs/cloud/reference/byoc/billable-aws-services,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/reference/billable-aws-services,matched,563991f81a8a64d8,true,563991f81a8a64d8,2026-05-19T11:48:22+00:00,false
/cloud/reference/byoc/configurations,docs/cloud/guides/infrastructure/01_deployment_options/byoc/05_configuration.md,products/bring-your-own-cloud/configuration/configurations.mdx,https://clickhouse.com/docs/cloud/reference/byoc/configurations,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/configuration/configurations,matched,0d8106d1a164c2be,true,0d8106d1a164c2be,2026-05-08T09:09:20+00:00,false
/cloud/reference/byoc/connect,docs/cloud/guides/infrastructure/01_deployment_options/byoc/04_connectivity.md,products/bring-your-own-cloud/configuration/connect.mdx,https://clickhouse.com/docs/cloud/reference/byoc/connect,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/configuration/connect,matched,008b9d9d44bae9d0,true,008b9d9d44bae9d0,2026-05-08T09:09:20+00:00,false
/cloud/reference/byoc/cost-model-aws,docs/cloud/guides/infrastructure/01_deployment_options/byoc/08_reference/06_cost_model_aws.md,products/bring-your-own-cloud/reference/cost-model-aws.mdx,https://clickhouse.com/docs/cloud/reference/byoc/cost-model-aws,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/reference/cost-model-aws,matched,c6b35b55b705c26d,true,c6b35b55b705c26d,2026-05-19T11:48:22+00:00,false
-/cloud/reference/byoc/observability,docs/cloud/guides/infrastructure/01_deployment_options/byoc/06_observability.md,products/cloud/guides/infrastructure/deployment-options/byoc/observability/aws.mdx | products/bring-your-own-cloud/reference/observability-aws.mdx,https://clickhouse.com/docs/cloud/reference/byoc/observability,,ambiguous,6d12761af5316c80,true,6d12761af5316c80,2026-05-08T19:29:49+00:00,false
+/cloud/reference/byoc/observability,docs/cloud/guides/infrastructure/01_deployment_options/byoc/06_observability.md,products/bring-your-own-cloud/reference/observability-aws.mdx,https://clickhouse.com/docs/cloud/reference/byoc/observability,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/reference/observability-aws,matched,6d12761af5316c80,true,6d12761af5316c80,2026-05-08T19:29:49+00:00,false
/cloud/reference/byoc/onboarding/azure-private-preview,docs/cloud/guides/infrastructure/01_deployment_options/byoc/03_onboarding/05_azure_private_preview.md,products/bring-your-own-cloud/onboarding/azure-private-preview.mdx,https://clickhouse.com/docs/cloud/reference/byoc/onboarding/azure-private-preview,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/onboarding/azure-private-preview,matched,b2cf01c8dc7cb2a0,true,b2cf01c8dc7cb2a0,2026-05-09T17:02:01+00:00,false
/cloud/reference/byoc/onboarding/customization-aws,docs/cloud/guides/infrastructure/01_deployment_options/byoc/03_onboarding/02_customization/01_aws.md,products/bring-your-own-cloud/onboarding/customization-aws.mdx,https://clickhouse.com/docs/cloud/reference/byoc/onboarding/customization-aws,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/onboarding/customization-aws,matched,8133f4b16d870e30,true,8133f4b16d870e30,2026-05-09T17:02:01+00:00,false
/cloud/reference/byoc/onboarding/customization-gcp,docs/cloud/guides/infrastructure/01_deployment_options/byoc/03_onboarding/02_customization/02_gcp.md,products/bring-your-own-cloud/onboarding/customization-gcp.mdx,https://clickhouse.com/docs/cloud/reference/byoc/onboarding/customization-gcp,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/onboarding/customization-gcp,matched,932fa029c68397ba,true,932fa029c68397ba,2026-05-09T17:02:01+00:00,false
@@ -221,7 +221,7 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/cloud/reference/byoc/reference/faq,docs/cloud/guides/infrastructure/01_deployment_options/byoc/08_reference/01_faq.md,products/bring-your-own-cloud/reference/faq.mdx,https://clickhouse.com/docs/cloud/reference/byoc/reference/faq,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/reference/faq,matched,a1d10da01c215d70,true,a1d10da01c215d70,2026-05-08T09:09:20+00:00,false
/cloud/reference/byoc/reference/network_security,docs/cloud/guides/infrastructure/01_deployment_options/byoc/08_reference/03_network_security.md,products/bring-your-own-cloud/reference/network-security.mdx,https://clickhouse.com/docs/cloud/reference/byoc/reference/network_security,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/reference/network-security,matched,1a63260c316b823d,true,1a63260c316b823d,2026-05-19T11:41:35+00:00,false
/cloud/reference/byoc/reference/privilege,docs/cloud/guides/infrastructure/01_deployment_options/byoc/08_reference/02_priviledge.md,products/bring-your-own-cloud/reference/privilege.mdx,https://clickhouse.com/docs/cloud/reference/byoc/reference/privilege,https://private-7c7dfe99.mintlify.app/products/bring-your-own-cloud/reference/privilege,matched,c79247efbd1ca8bf,true,c79247efbd1ca8bf,2026-05-08T09:09:20+00:00,false
-/cloud/reference/changelogs,docs/cloud/reference/01_changelog/index.md,resources/changelogs/cloud/index.mdx,https://clickhouse.com/docs/cloud/reference/changelogs,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud,matched,d30b29b61d1b4fb2,true,d30b29b61d1b4fb2,2026-05-07T14:49:41+00:00,false
+/cloud/reference/changelogs,docs/cloud/reference/01_changelog/index.md,resources/changelogs/cloud/index.mdx,https://clickhouse.com/docs/cloud/reference/changelogs,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/index,matched,d30b29b61d1b4fb2,true,d30b29b61d1b4fb2,2026-05-07T14:49:41+00:00,false
/cloud/reference/changelogs/release-notes,docs/cloud/reference/01_changelog/02_release_notes/index.md,resources/changelogs/cloud/release-notes-index.mdx,https://clickhouse.com/docs/cloud/reference/changelogs/release-notes,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes-index,matched,d1eb8fcdd78bd01c,true,d1eb8fcdd78bd01c,2026-05-13T13:16:51+00:00,false
/cloud/reference/shared-catalog,docs/cloud/features/05_infrastructure/shared-catalog.md,products/cloud/features/infrastructure/shared-catalog.mdx,https://clickhouse.com/docs/cloud/reference/shared-catalog,https://private-7c7dfe99.mintlify.app/products/cloud/features/infrastructure/shared-catalog,matched,2511e132020fab89,true,2511e132020fab89,2026-05-13T13:16:51+00:00,false
/cloud/reference/shared-merge-tree,docs/cloud/features/05_infrastructure/shared-merge-tree.md,products/cloud/features/infrastructure/shared-merge-tree.mdx,https://clickhouse.com/docs/cloud/reference/shared-merge-tree,https://private-7c7dfe99.mintlify.app/products/cloud/features/infrastructure/shared-merge-tree,matched,c827eb762dcd0803,true,c827eb762dcd0803,2026-05-08T09:09:20+00:00,false
@@ -234,16 +234,16 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/cloud/security/audit-logging/byoc-security-playbook,docs/cloud/guides/security/05_audit_logging/03_byoc-security-playbook.md,products/cloud/guides/security/audit-logging/byoc-security-playbook.mdx,https://clickhouse.com/docs/cloud/security/audit-logging/byoc-security-playbook,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/audit-logging/byoc-security-playbook,matched,063397ae09e1217c,true,063397ae09e1217c,2026-05-13T13:16:51+00:00,false
/cloud/security/audit-logging/console-audit-log,docs/cloud/guides/security/05_audit_logging/01_console-audit-log.md,products/cloud/guides/security/audit-logging/console-audit-log.mdx,https://clickhouse.com/docs/cloud/security/audit-logging/console-audit-log,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/audit-logging/console-audit-log,matched,2cbc552446620b24,true,2cbc552446620b24,2026-05-09T10:10:14+00:00,false
/cloud/security/audit-logging/database-audit-log,docs/cloud/guides/security/05_audit_logging/02_database-audit-log.md,products/cloud/guides/security/audit-logging/database-audit-log.mdx,https://clickhouse.com/docs/cloud/security/audit-logging/database-audit-log,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/audit-logging/database-audit-log,matched,6d5867bb7d3cb424,true,6d5867bb7d3cb424,2026-05-13T13:16:51+00:00,false
-/cloud/security/audit_logging,docs/cloud/guides/security/05_audit_logging/index.md,products/cloud/guides/security/audit-logging/index.mdx,https://clickhouse.com/docs/cloud/security/audit_logging,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/audit-logging,matched,0d0fff6982e8e865,true,d065a9f4fd510c23,2026-05-08T09:09:20+00:00,false
+/cloud/security/audit_logging,docs/cloud/guides/security/05_audit_logging/index.md,products/cloud/guides/security/audit-logging/index.mdx,https://clickhouse.com/docs/cloud/security/audit_logging,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/audit-logging/index,matched,0d0fff6982e8e865,true,d065a9f4fd510c23,2026-05-08T09:09:20+00:00,false
/cloud/security/azure-privatelink,docs/cloud/guides/security/02_connectivity/private_networking/04_azure-privatelink.md,products/cloud/guides/security/connectivity/private-networking/azure-privatelink.mdx,https://clickhouse.com/docs/cloud/security/azure-privatelink,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/connectivity/private-networking/azure-privatelink,matched,5b724c7950130db3,true,5b724c7950130db3,2026-05-13T15:43:29+00:00,false
-/cloud/security/cloud_access_management,docs/cloud/guides/security/01_cloud_access_management/index.md,products/cloud/guides/security/cloud-access-management/index.mdx,https://clickhouse.com/docs/cloud/security/cloud_access_management,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cloud-access-management,matched,8d9907313bc853e5,true,ed7e9fe20cdf9e7a,2026-05-08T09:09:20+00:00,false
+/cloud/security/cloud_access_management,docs/cloud/guides/security/01_cloud_access_management/index.md,products/cloud/guides/security/cloud-access-management/index.mdx,https://clickhouse.com/docs/cloud/security/cloud_access_management,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cloud-access-management/index,matched,8d9907313bc853e5,true,ed7e9fe20cdf9e7a,2026-05-08T09:09:20+00:00,false
/cloud/security/cmek,docs/cloud/guides/security/04_cmek.md,products/cloud/guides/security/cmek.mdx,https://clickhouse.com/docs/cloud/security/cmek,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cmek,matched,a7409065d2991abd,true,a7409065d2991abd,2026-05-08T09:09:20+00:00,false
/cloud/security/cmek-migration,docs/cloud/guides/security/05_cmek_migration.md,products/cloud/guides/security/cmek-migration.mdx,https://clickhouse.com/docs/cloud/security/cmek-migration,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cmek-migration,matched,7a7c04c3898e7261,true,7a7c04c3898e7261,2026-05-08T09:09:20+00:00,false
/cloud/security/common-access-management-queries,docs/cloud/guides/security/01_cloud_access_management/09_common-access-management-queries.md,products/cloud/guides/security/cloud-access-management/common-access-management-queries.mdx,https://clickhouse.com/docs/cloud/security/common-access-management-queries,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cloud-access-management/common-access-management-queries,matched,e2eae9bc919bb02c,true,e2eae9bc919bb02c,2026-05-08T09:09:20+00:00,false
/cloud/security/compliance-overview,docs/cloud/reference/09_security/03_compliance/01_compliance-overview.md,products/cloud/reference/security/compliance-overview.mdx,https://clickhouse.com/docs/cloud/security/compliance-overview,https://private-7c7dfe99.mintlify.app/products/cloud/reference/security/compliance-overview,matched,7a73b3d4bdb8f3dd,true,7a73b3d4bdb8f3dd,2026-05-08T09:09:20+00:00,false
/cloud/security/compliance/hipaa-onboarding,docs/cloud/guides/security/06_compliance/01_hipaa-onboarding.md,products/cloud/guides/security/compliance/hipaa-onboarding.mdx,https://clickhouse.com/docs/cloud/security/compliance/hipaa-onboarding,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/compliance/hipaa-onboarding,matched,c8d09ad79e54ea9e,true,c8d09ad79e54ea9e,2026-05-09T17:02:01+00:00,false
/cloud/security/compliance/pci-onboarding,docs/cloud/guides/security/06_compliance/02_pci-onboarding.md,products/cloud/guides/security/compliance/pci-onboarding.mdx,https://clickhouse.com/docs/cloud/security/compliance/pci-onboarding,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/compliance/pci-onboarding,matched,aad4076142416380,true,aad4076142416380,2026-05-09T17:02:01+00:00,false
-/cloud/security/connectivity/private-networking,docs/cloud/guides/security/02_connectivity/private_networking/index.md,products/cloud/guides/security/connectivity/private-networking/index.mdx,https://clickhouse.com/docs/cloud/security/connectivity/private-networking,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/connectivity/private-networking,matched,008390cf9a310ce5,true,7a4af08a1b17f2a8,2026-05-07T14:49:41+00:00,false
+/cloud/security/connectivity/private-networking,docs/cloud/guides/security/02_connectivity/private_networking/index.md,products/cloud/guides/security/connectivity/private-networking/index.mdx,https://clickhouse.com/docs/cloud/security/connectivity/private-networking,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/connectivity/private-networking/index,matched,008390cf9a310ce5,true,7a4af08a1b17f2a8,2026-05-07T14:49:41+00:00,false
/cloud/security/console-roles,docs/cloud/reference/09_security/01_console-roles.md,products/cloud/reference/security/console-roles.mdx,https://clickhouse.com/docs/cloud/security/console-roles,https://private-7c7dfe99.mintlify.app/products/cloud/reference/security/console-roles,matched,27c50d3a9f2b105e,true,27c50d3a9f2b105e,2026-05-08T09:09:20+00:00,false
/cloud/security/manage-cloud-users,docs/cloud/guides/security/01_cloud_access_management/02_manage-cloud-users.md,products/cloud/guides/security/cloud-access-management/manage-cloud-users.mdx,https://clickhouse.com/docs/cloud/security/manage-cloud-users,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cloud-access-management/manage-cloud-users,matched,e6b3aabbe65fc08e,true,e6b3aabbe65fc08e,2026-05-09T17:02:01+00:00,false
/cloud/security/manage-database-service-accounts,docs/cloud/guides/security/01_cloud_access_management/06_manage-database-service-accounts.md,products/cloud/guides/security/cloud-access-management/manage-database-service-accounts.mdx,https://clickhouse.com/docs/cloud/security/manage-database-service-accounts,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/cloud-access-management/manage-database-service-accounts,matched,0f8cd414ba5520eb,true,0f8cd414ba5520eb,2026-05-09T17:02:01+00:00,false
@@ -257,143 +257,143 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/community-wisdom/creative-use-cases,docs/tips-and-tricks/success-stories.md,resources/support-center/tips-and-tricks/success-stories.mdx,https://clickhouse.com/docs/community-wisdom/creative-use-cases,https://private-7c7dfe99.mintlify.app/resources/support-center/tips-and-tricks/success-stories,matched,540342d7398b915a,true,540342d7398b915a,2026-05-13T13:16:51+00:00,false
/community-wisdom/debugging-insights,docs/tips-and-tricks/debugging-insights.md,resources/support-center/tips-and-tricks/debugging-insights.mdx,https://clickhouse.com/docs/community-wisdom/debugging-insights,https://private-7c7dfe99.mintlify.app/resources/support-center/tips-and-tricks/debugging-insights,matched,c39d0c8e69e8a9c6,true,c39d0c8e69e8a9c6,2026-05-13T13:16:51+00:00,false
/community-wisdom/performance-optimization,docs/tips-and-tricks/performance-optimization.md,resources/support-center/tips-and-tricks/performance-optimization.mdx,https://clickhouse.com/docs/community-wisdom/performance-optimization,https://private-7c7dfe99.mintlify.app/resources/support-center/tips-and-tricks/performance-optimization,matched,9b4646892d3c0c1d,true,9b4646892d3c0c1d,2026-05-13T13:16:51+00:00,false
-/concepts,docs/concepts/index.md,concepts/index.mdx | products/cloud/concepts.mdx,https://clickhouse.com/docs/concepts,,ambiguous,906c00a6ef80e771,true,906c00a6ef80e771,2026-05-08T15:29:53+00:00,false
-/concepts/faq,docs/faq/index.md,resources/support-center/knowledge-base/general-faqs/faq-index.mdx,https://clickhouse.com/docs/concepts/faq,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/faq-index,matched,5433c29db7b36993,true,5433c29db7b36993,2026-05-08T15:12:29+00:00,false
-/concepts/glossary,docs/concepts/glossary.md,concepts/core-concepts/glossary.mdx,https://clickhouse.com/docs/concepts/glossary,https://private-7c7dfe99.mintlify.app/concepts/core-concepts/glossary,matched,a4b542589636426e,true,a4b542589636426e,2026-05-08T20:59:47+00:00,false
-/concepts/olap,docs/concepts/olap.md,get-started/about/olap.mdx,https://clickhouse.com/docs/concepts/olap,https://private-7c7dfe99.mintlify.app/get-started/about/olap,matched,20c899ea5bc54fc4,true,2b4c6a1cb3cfce2a,2026-05-08T09:09:20+00:00,false
-/concepts/why-clickhouse-is-so-fast,docs/concepts/why-clickhouse-is-so-fast.mdx,get-started/about/why-clickhouse-is-so-fast.mdx,https://clickhouse.com/docs/concepts/why-clickhouse-is-so-fast,https://private-7c7dfe99.mintlify.app/get-started/about/why-clickhouse-is-so-fast,matched,d414f04526e3e8ac,true,d414f04526e3e8ac,2026-05-13T13:16:51+00:00,false
-/data-compression/compression-in-clickhouse,docs/data-compression/compression-in-clickhouse.md,guides/cloud-oss/data-modelling/compression/compression-in-clickhouse.mdx,https://clickhouse.com/docs/data-compression/compression-in-clickhouse,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse,matched,b6b78bcb98be9fdd,true,b6b78bcb98be9fdd,2026-05-08T09:09:20+00:00,false
-/data-compression/compression-modes,docs/data-compression/compression-modes.md,guides/cloud-oss/data-modelling/compression/compression-modes.mdx,https://clickhouse.com/docs/data-compression/compression-modes,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/compression/compression-modes,matched,74601704fee4d567,true,74601704fee4d567,2026-05-08T09:09:20+00:00,false
-/data-modeling/backfilling,docs/data-modeling/backfilling.md,guides/cloud-oss/data-modelling/backfilling.mdx,https://clickhouse.com/docs/data-modeling/backfilling,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/backfilling,matched,4bd9d1a9edbd3963,true,4bd9d1a9edbd3963,2026-05-09T17:51:26+00:00,false
-/data-modeling/denormalization,docs/data-modeling/denormalization.md,guides/cloud-oss/data-modelling/denormalization.mdx,https://clickhouse.com/docs/data-modeling/denormalization,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/denormalization,matched,671e79f9ab1f6888,true,671e79f9ab1f6888,2026-05-08T09:09:20+00:00,false
-/data-modeling/overview,docs/data-modeling/index.md,guides/cloud-oss/data-modelling/index.mdx,https://clickhouse.com/docs/data-modeling/overview,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling,matched,19e2dcf7061352e4,true,19e2dcf7061352e4,2026-05-13T13:16:51+00:00,false
-/data-modeling/projections,docs/data-modeling/projections/1_projections.md,concepts/features/projections/projections.mdx,https://clickhouse.com/docs/data-modeling/projections,https://private-7c7dfe99.mintlify.app/concepts/features/projections/projections,matched,9c09ba6f54347fd8,true,9c09ba6f54347fd8,2026-05-13T15:43:25+00:00,false
-/data-modeling/schema-design,docs/data-modeling/schema-design.md,guides/cloud-oss/data-modelling/schema-design.mdx,https://clickhouse.com/docs/data-modeling/schema-design,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/schema-design,matched,144200501b2dfb47,true,144200501b2dfb47,2026-05-08T09:09:20+00:00,false
-/deletes/overview,docs/managing-data/deleting-data/overview.mdx,concepts/operations/delete/overview.mdx,https://clickhouse.com/docs/deletes/overview,https://private-7c7dfe99.mintlify.app/concepts/operations/delete/overview,matched,cb8acc35f6ceddc7,true,cb8acc35f6ceddc7,2026-05-19T11:48:22+00:00,false
-/deployment-guides/index,docs/deployment-guides/index.md,guides/oss/deployment-and-scaling/index.mdx,https://clickhouse.com/docs/deployment-guides/index,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling,matched,2a6ef70c2c60cf2f,true,2a6ef70c2c60cf2f,2026-05-13T13:16:51+00:00,false
+/concepts,docs/concepts/index.md,core/concepts/index.mdx | products/cloud/concepts.mdx,https://clickhouse.com/docs/concepts,,ambiguous,906c00a6ef80e771,true,906c00a6ef80e771,2026-05-08T15:29:53+00:00,false
+/core/concepts/faq,docs/faq/index.md,resources/support-center/knowledge-base/general-faqs/faq-index.mdx,https://clickhouse.com/docs/concepts/faq,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/faq-index,matched,5433c29db7b36993,true,5433c29db7b36993,2026-05-08T15:12:29+00:00,false
+/core/concepts/glossary,docs/concepts/glossary.md,core/concepts/core-concepts/glossary.mdx,https://clickhouse.com/docs/concepts/glossary,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/glossary,matched,a4b542589636426e,true,a4b542589636426e,2026-05-08T20:59:47+00:00,false
+/core/concepts/olap,docs/concepts/olap.md,core/get-started/about/olap.mdx,https://clickhouse.com/docs/concepts/olap,https://private-7c7dfe99.mintlify.app/core/get-started/about/olap,matched,20c899ea5bc54fc4,true,2b4c6a1cb3cfce2a,2026-05-08T09:09:20+00:00,false
+/core/concepts/why-clickhouse-is-so-fast,docs/concepts/why-clickhouse-is-so-fast.mdx,core/get-started/about/why-clickhouse-is-so-fast.mdx,https://clickhouse.com/docs/concepts/why-clickhouse-is-so-fast,https://private-7c7dfe99.mintlify.app/core/get-started/about/why-clickhouse-is-so-fast,matched,d414f04526e3e8ac,true,d414f04526e3e8ac,2026-05-13T13:16:51+00:00,false
+/data-compression/compression-in-clickhouse,docs/data-compression/compression-in-clickhouse.md,core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse.mdx,https://clickhouse.com/docs/data-compression/compression-in-clickhouse,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse,matched,b6b78bcb98be9fdd,true,b6b78bcb98be9fdd,2026-05-08T09:09:20+00:00,false
+/data-compression/compression-modes,docs/data-compression/compression-modes.md,core/guides/clickhouse/data-modelling/compression/compression-modes.mdx,https://clickhouse.com/docs/data-compression/compression-modes,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/compression/compression-modes,matched,74601704fee4d567,true,74601704fee4d567,2026-05-08T09:09:20+00:00,false
+/data-modeling/backfilling,docs/data-modeling/backfilling.md,core/guides/clickhouse/data-modelling/backfilling.mdx,https://clickhouse.com/docs/data-modeling/backfilling,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/backfilling,matched,4bd9d1a9edbd3963,true,4bd9d1a9edbd3963,2026-05-09T17:51:26+00:00,false
+/data-modeling/denormalization,docs/data-modeling/denormalization.md,core/guides/clickhouse/data-modelling/denormalization.mdx,https://clickhouse.com/docs/data-modeling/denormalization,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/denormalization,matched,671e79f9ab1f6888,true,671e79f9ab1f6888,2026-05-08T09:09:20+00:00,false
+/data-modeling/overview,docs/data-modeling/index.md,core/guides/clickhouse/data-modelling/index.mdx,https://clickhouse.com/docs/data-modeling/overview,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/index,matched,19e2dcf7061352e4,true,19e2dcf7061352e4,2026-05-13T13:16:51+00:00,false
+/data-modeling/projections,docs/data-modeling/projections/1_projections.md,core/concepts/features/projections/projections.mdx,https://clickhouse.com/docs/data-modeling/projections,https://private-7c7dfe99.mintlify.app/core/concepts/features/projections/projections,matched,9c09ba6f54347fd8,true,9c09ba6f54347fd8,2026-05-13T15:43:25+00:00,false
+/data-modeling/schema-design,docs/data-modeling/schema-design.md,core/guides/clickhouse/data-modelling/schema-design.mdx,https://clickhouse.com/docs/data-modeling/schema-design,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/schema-design,matched,144200501b2dfb47,true,144200501b2dfb47,2026-05-08T09:09:20+00:00,false
+/deletes/overview,docs/managing-data/deleting-data/overview.mdx,core/concepts/features/operations/delete/overview.mdx,https://clickhouse.com/docs/deletes/overview,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/delete/overview,matched,cb8acc35f6ceddc7,true,cb8acc35f6ceddc7,2026-05-19T11:48:22+00:00,false
+/deployment-guides/index,docs/deployment-guides/index.md,core/guides/oss/deployment-and-scaling/index.mdx,https://clickhouse.com/docs/deployment-guides/index,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/index,matched,2a6ef70c2c60cf2f,true,2a6ef70c2c60cf2f,2026-05-13T13:16:51+00:00,false
/deployment-guides/parallel-replicas,docs/deployment-guides/parallel-replicas.mdx,products/cloud/features/infrastructure/parallel-replicas.mdx,https://clickhouse.com/docs/deployment-guides/parallel-replicas,https://private-7c7dfe99.mintlify.app/products/cloud/features/infrastructure/parallel-replicas,matched,18c05d079bdcf8c5,true,18c05d079bdcf8c5,2026-05-08T09:09:20+00:00,false
-/deployment-modes,docs/deployment-modes.md,get-started/about/deployment-modes.mdx,https://clickhouse.com/docs/deployment-modes,https://private-7c7dfe99.mintlify.app/get-started/about/deployment-modes,matched,5e24b41fab85372a,true,5e24b41fab85372a,2026-05-08T12:19:52+00:00,false
-/development/,docs/development/index.md,resources/contribute/index.mdx,https://clickhouse.com/docs/development/,https://private-7c7dfe99.mintlify.app/resources/contribute,matched,efa5924dc8213c3f,true,efa5924dc8213c3f,2026-05-08T21:00:51+00:00,false
-/development/architecture,docs/development/architecture.md,resources/contribute/architecture.mdx,https://clickhouse.com/docs/development/architecture,https://private-7c7dfe99.mintlify.app/resources/contribute/architecture,matched,d71b0cd5b5d05730,true,c096ac52d9f3230f,2026-05-08T09:09:20+00:00,false
-/development/backports,docs/development/backports.md,resources/contribute/backports.mdx,https://clickhouse.com/docs/development/backports,https://private-7c7dfe99.mintlify.app/resources/contribute/backports,matched,47cf09bff25b3699,true,47cf09bff25b3699,2026-05-19T11:08:53+00:00,false
-/development/build,docs/development/build.md,resources/contribute/build.mdx,https://clickhouse.com/docs/development/build,https://private-7c7dfe99.mintlify.app/resources/contribute/build,matched,ff59f0aafe286aa1,true,dedfb328f44d5208,2026-05-08T15:04:34+00:00,false
-/development/build-cross-arm,docs/development/build-cross-arm.md,resources/contribute/build-cross-arm.mdx,https://clickhouse.com/docs/development/build-cross-arm,https://private-7c7dfe99.mintlify.app/resources/contribute/build-cross-arm,matched,1ce08c98e2a33af7,true,f732d015e8ca7a50,2026-05-07T14:49:41+00:00,false
-/development/build-cross-loongarch,docs/development/build-cross-loongarch.md,resources/contribute/build-cross-loongarch.mdx,https://clickhouse.com/docs/development/build-cross-loongarch,https://private-7c7dfe99.mintlify.app/resources/contribute/build-cross-loongarch,matched,68515ed0da277632,true,5efd5807ee1bc81d,2026-05-08T09:09:20+00:00,false
-/development/build-cross-osx,docs/development/build-cross-osx.md,resources/contribute/build-cross-osx.mdx,https://clickhouse.com/docs/development/build-cross-osx,https://private-7c7dfe99.mintlify.app/resources/contribute/build-cross-osx,matched,43814b2a97b84f2e,true,43814b2a97b84f2e,2026-05-19T11:08:53+00:00,false
-/development/build-cross-riscv,docs/development/build-cross-riscv.md,resources/contribute/build-cross-riscv.mdx,https://clickhouse.com/docs/development/build-cross-riscv,https://private-7c7dfe99.mintlify.app/resources/contribute/build-cross-riscv,matched,29acc4865340d1c5,true,d8dd9a58920b1224,2026-05-08T09:09:20+00:00,false
-/development/build-cross-s390x,docs/development/build-cross-s390x.md,resources/contribute/build-cross-s390x.mdx,https://clickhouse.com/docs/development/build-cross-s390x,https://private-7c7dfe99.mintlify.app/resources/contribute/build-cross-s390x,matched,37cb33d7f8e51908,true,ffc6e2c25867e919,2026-05-08T09:09:20+00:00,false
-/development/build-e2k,docs/development/build-e2k.md,resources/contribute/build-e2k.mdx,https://clickhouse.com/docs/development/build-e2k,https://private-7c7dfe99.mintlify.app/resources/contribute/build-e2k,matched,322a063ed14d9c7f,true,e2020e444d6bbcaf,2026-05-08T09:09:20+00:00,false
-/development/build-osx,docs/development/build-osx.md,resources/contribute/build-osx.mdx,https://clickhouse.com/docs/development/build-osx,https://private-7c7dfe99.mintlify.app/resources/contribute/build-osx,matched,fec6e7025f4fc47a,true,fec6e7025f4fc47a,2026-05-19T11:08:53+00:00,false
-/development/continuous-integration,docs/development/continuous-integration.md,resources/contribute/continuous-integration.mdx,https://clickhouse.com/docs/development/continuous-integration,https://private-7c7dfe99.mintlify.app/resources/contribute/continuous-integration,matched,3ea19a7a64a6b6cf,true,ab7111e34b68332c,2026-05-08T09:09:20+00:00,false
-/development/contrib,docs/development/contrib.md,resources/contribute/contrib.mdx,https://clickhouse.com/docs/development/contrib,https://private-7c7dfe99.mintlify.app/resources/contribute/contrib,matched,4aff3c47bfaf2803,true,c925c5d3c0431c9e,2026-05-08T09:09:20+00:00,false
-/development/developer-instruction,docs/development/developer-instruction.md,resources/contribute/developer-instruction.mdx,https://clickhouse.com/docs/development/developer-instruction,https://private-7c7dfe99.mintlify.app/resources/contribute/developer-instruction,matched,da6c5a5aab300f52,true,da6c5a5aab300f52,2026-05-19T11:08:53+00:00,false
-/development/integrating_rust_libraries,docs/development/integrating_rust_libraries.md,resources/contribute/integrating-rust-libraries.mdx,https://clickhouse.com/docs/development/integrating_rust_libraries,https://private-7c7dfe99.mintlify.app/resources/contribute/integrating-rust-libraries,matched,9611472a5e657048,true,9611472a5e657048,2026-05-19T11:08:53+00:00,false
-/development/style,docs/development/style.md,resources/contribute/style.mdx,https://clickhouse.com/docs/development/style,https://private-7c7dfe99.mintlify.app/resources/contribute/style,matched,3846d38ebd2b09ae,true,3846d38ebd2b09ae,2026-05-19T11:08:53+00:00,false
-/development/tests,docs/development/tests.md,resources/contribute/tests.mdx,https://clickhouse.com/docs/development/tests,https://private-7c7dfe99.mintlify.app/resources/contribute/tests,matched,2a6c8a145b56ce5b,true,ed4b0e086de28595,2026-05-08T09:09:20+00:00,false
-/dictionary,docs/dictionary/index.md,concepts/features/dictionaries/index.mdx,https://clickhouse.com/docs/dictionary,https://private-7c7dfe99.mintlify.app/concepts/features/dictionaries,matched,196c272644d94036,true,196c272644d94036,2026-05-08T09:09:20+00:00,false
-/dictionary/best-practices,docs/dictionary/best-practices.md,concepts/features/dictionaries/best-practices.mdx,https://clickhouse.com/docs/dictionary/best-practices,https://private-7c7dfe99.mintlify.app/concepts/features/dictionaries/best-practices,matched,eb8869fd12ff9f32,true,9c1fbd282c73c2ab,2026-05-07T14:49:41+00:00,false
-/engines,docs/engines/index.md,reference/index.mdx | reference/engines/engines.mdx,https://clickhouse.com/docs/engines,,ambiguous,430792450e0e2470,true,430792450e0e2470,2026-05-19T11:48:22+00:00,false
-/engines/database-engines/,docs/engines/database-engines/index.md,reference/engines/database-engines/index.mdx,https://clickhouse.com/docs/engines/database-engines/,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines,matched,ef7d22cc4d26fc3f,true,ef7d22cc4d26fc3f,2026-05-19T11:08:53+00:00,false
-/engines/database-engines/atomic,docs/engines/database-engines/atomic.md,reference/engines/database-engines/atomic.mdx,https://clickhouse.com/docs/engines/database-engines/atomic,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/atomic,matched,da03ef9fd175695f,true,b3a0a7a9c4f2e4c5,2026-05-08T09:09:20+00:00,false
-/engines/database-engines/backup,docs/engines/database-engines/backup.md,reference/engines/database-engines/backup.mdx,https://clickhouse.com/docs/engines/database-engines/backup,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/backup,matched,84bc965234cff573,true,ba093f0bb10f862c,2026-05-07T14:49:41+00:00,false
-/engines/database-engines/datalakecatalog,docs/engines/database-engines/datalake.md,reference/engines/database-engines/datalake.mdx,https://clickhouse.com/docs/engines/database-engines/datalakecatalog,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/datalake,matched,f1f3e3fde3b9ea7a,true,480b7e169ea63bdf,2026-05-07T14:49:41+00:00,false
-/engines/database-engines/materialized-postgresql,docs/engines/database-engines/materialized-postgresql.md,reference/engines/database-engines/materialized-postgresql.mdx,https://clickhouse.com/docs/engines/database-engines/materialized-postgresql,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/materialized-postgresql,matched,ed2621c01542cd6c,true,ed2621c01542cd6c,2026-05-08T09:09:20+00:00,false
-/engines/database-engines/mysql,docs/engines/database-engines/mysql.md,reference/engines/database-engines/mysql.mdx,https://clickhouse.com/docs/engines/database-engines/mysql,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/mysql,matched,f78ef201b8464bb6,true,f78ef201b8464bb6,2026-05-08T09:09:20+00:00,false
-/engines/database-engines/postgresql,docs/engines/database-engines/postgresql.md,reference/engines/database-engines/postgresql.mdx,https://clickhouse.com/docs/engines/database-engines/postgresql,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/postgresql,matched,ea606b8fc32dc4d2,true,b4c584ccbf84daf8,2026-05-07T14:49:41+00:00,false
-/engines/database-engines/replicated,docs/engines/database-engines/replicated.md,reference/engines/database-engines/replicated.mdx,https://clickhouse.com/docs/engines/database-engines/replicated,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/replicated,matched,d31fecb5d94082da,true,d31fecb5d94082da,2026-05-19T11:08:53+00:00,false
-/engines/database-engines/shared,docs/engines/database-engines/shared.md,reference/engines/database-engines/shared.mdx,https://clickhouse.com/docs/engines/database-engines/shared,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/shared,matched,658a06aa55917c46,true,658a06aa55917c46,2026-05-08T09:09:20+00:00,false
-/engines/database-engines/sqlite,docs/engines/database-engines/sqlite.md,reference/engines/database-engines/sqlite.mdx,https://clickhouse.com/docs/engines/database-engines/sqlite,https://private-7c7dfe99.mintlify.app/reference/engines/database-engines/sqlite,matched,69743c08b181ef87,true,2d389211d0f5d36a,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/,docs/engines/table-engines/index.md,reference/engines/table-engines/index.mdx,https://clickhouse.com/docs/engines/table-engines/,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines,matched,be0c6e92edd31909,true,be0c6e92edd31909,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/,docs/engines/table-engines/integrations/index.md,reference/engines/table-engines/integrations/index.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations,matched,182e2a9a7b1c73d5,true,182e2a9a7b1c73d5,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/ExternalDistributed,docs/engines/table-engines/integrations/ExternalDistributed.md,reference/engines/table-engines/integrations/ExternalDistributed.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/ExternalDistributed,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/ExternalDistributed,matched,0c4f69e6d6e393f7,true,1cdbef1a85ce5ee8,2026-05-09T09:39:38+00:00,false
-/engines/table-engines/integrations/arrowflight,docs/engines/table-engines/integrations/arrowflight.md,reference/engines/table-engines/integrations/arrowflight.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/arrowflight,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/arrowflight,matched,643d2d6307abae7c,true,5d542d21d2aeff74,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/integrations/azure-queue,docs/engines/table-engines/integrations/azure-queue.md,reference/engines/table-engines/integrations/azure-queue.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/azure-queue,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/azure-queue,matched,46bce34c84b9f8a2,true,5e0eeeeaa692b51f,2026-05-09T09:39:38+00:00,false
-/engines/table-engines/integrations/azureBlobStorage,docs/engines/table-engines/integrations/azureBlobStorage.md,reference/engines/table-engines/integrations/azureBlobStorage.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/azureBlobStorage,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/azureBlobStorage,matched,9eb4aa7b055170c1,true,50e422154e7d9340,2026-05-08T13:01:57+00:00,false
-/engines/table-engines/integrations/deltalake,docs/engines/table-engines/integrations/deltalake.md,reference/engines/table-engines/integrations/deltalake.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/deltalake,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/deltalake,matched,b8b8fa26d495fc42,true,b8b8fa26d495fc42,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/integrations/embedded-rocksdb,docs/engines/table-engines/integrations/embedded-rocksdb.md,reference/engines/table-engines/integrations/embedded-rocksdb.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/embedded-rocksdb,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/embedded-rocksdb,matched,3106e22f04396e24,true,3106e22f04396e24,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/integrations/hdfs,docs/engines/table-engines/integrations/hdfs.md,reference/engines/table-engines/integrations/hdfs.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/hdfs,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/hdfs,matched,6d8963200cc850f4,true,6d8963200cc850f4,2026-05-09T11:14:51+00:00,false
-/engines/table-engines/integrations/hive,docs/engines/table-engines/integrations/hive.md,reference/engines/table-engines/integrations/hive.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/hive,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/hive,matched,1bd7f94ef79ae4a2,true,1bd7f94ef79ae4a2,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/integrations/hudi,docs/engines/table-engines/integrations/hudi.md,reference/engines/table-engines/integrations/hudi.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/hudi,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/hudi,matched,465448998115f31c,true,51667b6a4e3d68fa,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/integrations/iceberg,docs/engines/table-engines/integrations/iceberg.md,reference/engines/table-engines/integrations/iceberg.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/iceberg,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/iceberg,matched,b2398db6ad12ecc8,true,b2398db6ad12ecc8,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/jdbc,docs/engines/table-engines/integrations/jdbc.md,reference/engines/table-engines/integrations/jdbc.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/jdbc,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/jdbc,matched,665e7928e61709a3,true,665e7928e61709a3,2026-05-08T09:51:10+00:00,false
-/engines/table-engines/integrations/kafka,docs/engines/table-engines/integrations/kafka.md,reference/engines/table-engines/integrations/kafka.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/kafka,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/kafka,matched,42b346c1b1df5b6d,true,42b346c1b1df5b6d,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/materialized-postgresql,docs/engines/table-engines/integrations/materialized-postgresql.md,reference/engines/table-engines/integrations/materialized-postgresql.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/materialized-postgresql,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/materialized-postgresql,matched,874433a820ac2a17,true,874433a820ac2a17,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/integrations/mongodb,docs/engines/table-engines/integrations/mongodb.md,reference/engines/table-engines/integrations/mongodb.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/mongodb,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/mongodb,matched,efa4dbb935d8f6c7,true,efa4dbb935d8f6c7,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/mysql,docs/engines/table-engines/integrations/mysql.md,reference/engines/table-engines/integrations/mysql.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/mysql,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/mysql,matched,66b376663e767faa,true,4d4563d868c683fc,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/integrations/nats,docs/engines/table-engines/integrations/nats.md,reference/engines/table-engines/integrations/nats.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/nats,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/nats,matched,223ce4ae7fe14aa4,true,223ce4ae7fe14aa4,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/odbc,docs/engines/table-engines/integrations/odbc.md,reference/engines/table-engines/integrations/odbc.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/odbc,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/odbc,matched,5c02dfc903a8407f,true,5c02dfc903a8407f,2026-05-13T14:23:03+00:00,false
-/engines/table-engines/integrations/paimon,docs/engines/table-engines/integrations/paimon.md,reference/engines/table-engines/integrations/paimon.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/paimon,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/paimon,matched,50b2d2d9a6939a1a,true,50b2d2d9a6939a1a,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/postgresql,docs/engines/table-engines/integrations/postgresql.md,reference/engines/table-engines/integrations/postgresql.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/postgresql,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/postgresql,matched,9e4b331dbe864202,true,9e4b331dbe864202,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/rabbitmq,docs/engines/table-engines/integrations/rabbitmq.md,reference/engines/table-engines/integrations/rabbitmq.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/rabbitmq,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/rabbitmq,matched,909f012134983d94,true,e46974cd333ca66c,2026-05-08T13:01:57+00:00,false
-/engines/table-engines/integrations/redis,docs/engines/table-engines/integrations/redis.md,reference/engines/table-engines/integrations/redis.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/redis,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/redis,matched,3b3cde6d7bb7a428,true,3b3cde6d7bb7a428,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/integrations/s3,docs/engines/table-engines/integrations/s3.md,reference/engines/table-engines/integrations/s3.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/s3,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/s3,matched,ea0601c4d7ab68dd,true,d9f34d3172ce3120,2026-05-13T15:43:30+00:00,false
-/engines/table-engines/integrations/s3queue,docs/engines/table-engines/integrations/s3queue.md,reference/engines/table-engines/integrations/s3queue.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/s3queue,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/s3queue,matched,2c4f536280177413,true,2c4f536280177413,2026-05-09T09:39:38+00:00,false
-/engines/table-engines/integrations/sqlite,docs/engines/table-engines/integrations/sqlite.md,reference/engines/table-engines/integrations/sqlite.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/sqlite,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/sqlite,matched,7c57bc57ee3573e4,true,7c57bc57ee3573e4,2026-05-09T09:39:38+00:00,false
-/engines/table-engines/integrations/ytsaurus,docs/engines/table-engines/integrations/ytsaurus.md,reference/engines/table-engines/integrations/ytsaurus.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/ytsaurus,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/ytsaurus,matched,8b424c806172df36,true,8b424c806172df36,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/log-family/,docs/engines/table-engines/log-family/index.md,reference/engines/table-engines/log-family/index.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/log-family,matched,526635ff55be8133,true,526635ff55be8133,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/log-family/log,docs/engines/table-engines/log-family/log.md,reference/engines/table-engines/log-family/log.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/log,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/log-family/log,matched,589fc5521d34b691,true,589fc5521d34b691,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/log-family/stripelog,docs/engines/table-engines/log-family/stripelog.md,reference/engines/table-engines/log-family/stripelog.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/stripelog,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/log-family/stripelog,matched,85317ab67c211854,true,85317ab67c211854,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/log-family/tinylog,docs/engines/table-engines/log-family/tinylog.md,reference/engines/table-engines/log-family/tinylog.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/tinylog,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/log-family/tinylog,matched,6aca92cecd7097cb,true,6aca92cecd7097cb,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/mergetree-family/,docs/engines/table-engines/mergetree-family/index.md,reference/engines/table-engines/mergetree-family/index.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family,matched,ad8165aa1c3ca613,true,ad8165aa1c3ca613,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/mergetree-family/aggregatingmergetree,docs/engines/table-engines/mergetree-family/aggregatingmergetree.md,reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/aggregatingmergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/aggregatingmergetree,matched,5bbad8545fadef5d,true,c00fec44d98d20ec,2026-05-08T12:19:52+00:00,false
-/engines/table-engines/mergetree-family/annindexes,docs/engines/table-engines/mergetree-family/annindexes.md,reference/engines/table-engines/mergetree-family/annindexes.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/annindexes,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/annindexes,matched,c6f8bbc4eb012454,true,c6f8bbc4eb012454,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/mergetree-family/coalescingmergetree,docs/engines/table-engines/mergetree-family/coalescingmergetree.md,reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/coalescingmergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/coalescingmergetree,matched,e4282522f2b88cd1,true,f14b1307c493266d,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/mergetree-family/collapsingmergetree,docs/engines/table-engines/mergetree-family/collapsingmergetree.md,reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/collapsingmergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/collapsingmergetree,matched,b4c154dcf1aa53bf,true,cca901fd78a63bb4,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/mergetree-family/custom-partitioning-key,docs/engines/table-engines/mergetree-family/custom-partitioning-key.md,reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/custom-partitioning-key,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/custom-partitioning-key,matched,e1465cd2777f9d7a,true,e1465cd2777f9d7a,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/mergetree-family/graphitemergetree,docs/engines/table-engines/mergetree-family/graphitemergetree.md,reference/engines/table-engines/mergetree-family/graphitemergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/graphitemergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/graphitemergetree,matched,e14e6f9370ea584c,true,9c431dd0d8265db2,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/mergetree-family/mergetree,docs/engines/table-engines/mergetree-family/mergetree.md,reference/engines/table-engines/mergetree-family/mergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/mergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/mergetree,matched,6a86924ac725350a,true,6a86924ac725350a,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/mergetree-family/replacingmergetree,docs/engines/table-engines/mergetree-family/replacingmergetree.md,reference/engines/table-engines/mergetree-family/replacingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/replacingmergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/replacingmergetree,matched,ecec03c9132f87db,true,ced484d2a382f865,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/mergetree-family/replication,docs/engines/table-engines/mergetree-family/replication.md,reference/engines/table-engines/mergetree-family/replication.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/replication,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/replication,matched,99530f32e611a580,true,3b16d689fbde73f9,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/mergetree-family/summingmergetree,docs/engines/table-engines/mergetree-family/summingmergetree.md,reference/engines/table-engines/mergetree-family/summingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/summingmergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/summingmergetree,matched,05624c049881b4a7,true,987b8b83f4fb4b6c,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/mergetree-family/textindexes,docs/engines/table-engines/mergetree-family/textindexes.md,reference/engines/table-engines/mergetree-family/textindexes.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/textindexes,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/textindexes,matched,d118d93f71227b40,true,d118d93f71227b40,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/mergetree-family/versionedcollapsingmergetree,docs/engines/table-engines/mergetree-family/versionedcollapsingmergetree.md,reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/versionedcollapsingmergetree,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree,matched,2e1d47be7e9be686,true,5172acba2103f957,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/special/,docs/engines/table-engines/special/index.md,reference/engines/table-engines/special/index.mdx,https://clickhouse.com/docs/engines/table-engines/special/,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special,matched,851e551dcf4c3b6c,true,2020a467b74c2031,2026-05-09T09:39:38+00:00,false
-/engines/table-engines/special/alias,docs/engines/table-engines/special/alias.md,reference/engines/table-engines/special/alias.mdx,https://clickhouse.com/docs/engines/table-engines/special/alias,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/alias,matched,1207ea39bd43915c,true,1207ea39bd43915c,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/special/buffer,docs/engines/table-engines/special/buffer.md,reference/engines/table-engines/special/buffer.mdx,https://clickhouse.com/docs/engines/table-engines/special/buffer,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/buffer,matched,6e0aed541f48f9f7,true,4e8ed6a1feb2aa52,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/special/dictionary,docs/engines/table-engines/special/dictionary.md,reference/engines/table-engines/special/dictionary.mdx,https://clickhouse.com/docs/engines/table-engines/special/dictionary,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/dictionary,matched,7630e3f4daa5ef75,true,78aff0314982d70b,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/special/distributed,docs/engines/table-engines/special/distributed.md,reference/engines/table-engines/special/distributed.mdx,https://clickhouse.com/docs/engines/table-engines/special/distributed,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/distributed,matched,36792e30ad2101ea,true,144e0319e32e38db,2026-05-09T10:26:02+00:00,false
-/engines/table-engines/special/executable,docs/engines/table-engines/special/executable.md,reference/engines/table-engines/special/executable.mdx,https://clickhouse.com/docs/engines/table-engines/special/executable,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/executable,matched,6b39916c1f6415cb,true,abf73ca14dd6fa74,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/special/external-data,docs/engines/table-engines/special/external-data.md,reference/engines/table-engines/special/external-data.mdx,https://clickhouse.com/docs/engines/table-engines/special/external-data,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/external-data,matched,889f3532c3ed2b16,true,b8b48f150dd2033f,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/special/file,docs/engines/table-engines/special/file.md,reference/engines/table-engines/special/file.mdx,https://clickhouse.com/docs/engines/table-engines/special/file,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/file,matched,8b6800a2b82d8cb0,true,e0c19959bdee8150,2026-05-08T13:01:57+00:00,false
-/engines/table-engines/special/filelog,docs/engines/table-engines/special/filelog.md,reference/engines/table-engines/special/filelog.mdx,https://clickhouse.com/docs/engines/table-engines/special/filelog,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/filelog,matched,f69e9de5904cce4e,true,f69e9de5904cce4e,2026-05-19T11:08:53+00:00,false
-/engines/table-engines/special/generate,docs/engines/table-engines/special/generate.md,reference/engines/table-engines/special/generate.mdx,https://clickhouse.com/docs/engines/table-engines/special/generate,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/generate,matched,f873ecfa15f84ef7,true,848b4e2ed1094aee,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/special/join,docs/engines/table-engines/special/join.md,reference/engines/table-engines/special/join.mdx,https://clickhouse.com/docs/engines/table-engines/special/join,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/join,matched,6f56e6e14a899c72,true,3c0a49ce0175e9ff,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/special/keeper-map,docs/engines/table-engines/special/keepermap.md,reference/engines/table-engines/special/keepermap.mdx,https://clickhouse.com/docs/engines/table-engines/special/keeper-map,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/keepermap,matched,ac19941642bf389b,true,ad02c360d5787e1c,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/special/memory,docs/engines/table-engines/special/memory.md,reference/engines/table-engines/special/memory.mdx,https://clickhouse.com/docs/engines/table-engines/special/memory,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/memory,matched,4b2e8682c62ea55a,true,dbd1ac438ab55afc,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/special/merge,docs/engines/table-engines/special/merge.md,reference/engines/table-engines/special/merge.mdx,https://clickhouse.com/docs/engines/table-engines/special/merge,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/merge,matched,bb88ebe93c4cca8b,true,f3fd1aa8bafa81bb,2026-05-09T09:39:38+00:00,false
-/engines/table-engines/special/null,docs/engines/table-engines/special/null.md,reference/engines/table-engines/special/null.mdx,https://clickhouse.com/docs/engines/table-engines/special/null,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/null,matched,d0711da176d30a5d,true,32a464d65d3033a6,2026-05-07T14:49:41+00:00,false
-/engines/table-engines/special/set,docs/engines/table-engines/special/set.md,reference/engines/table-engines/special/set.mdx,https://clickhouse.com/docs/engines/table-engines/special/set,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/set,matched,cd61da9acac6ea74,true,558092fa5958f7bf,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/special/time_series,docs/engines/table-engines/integrations/time-series.md,reference/engines/table-engines/integrations/time-series.mdx,https://clickhouse.com/docs/engines/table-engines/special/time_series,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/integrations/time-series,matched,c58648934ce9b098,true,c58648934ce9b098,2026-05-08T09:09:20+00:00,false
-/engines/table-engines/special/url,docs/engines/table-engines/special/url.md,reference/engines/table-engines/special/url.mdx,https://clickhouse.com/docs/engines/table-engines/special/url,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/url,matched,2270feda9fd8ceb8,true,bc920ce850144c47,2026-05-08T13:01:57+00:00,false
-/engines/table-engines/special/view,docs/engines/table-engines/special/view.md,reference/engines/table-engines/special/view.mdx,https://clickhouse.com/docs/engines/table-engines/special/view,https://private-7c7dfe99.mintlify.app/reference/engines/table-engines/special/view,matched,26d10a8766db167b,true,547949490f707e9c,2026-05-07T14:49:41+00:00,false
-/engines/table-functions/executable,docs/sql-reference/table-functions/executable.md,reference/functions/table-functions/executable.mdx,https://clickhouse.com/docs/engines/table-functions/executable,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/executable,matched,33da0a1ab05b92af,true,33da0a1ab05b92af,2026-05-19T11:08:53+00:00,false
-/examples/aggregate-function-combinators/anyIf,docs/guides/examples/aggregate_function_combinators/anyIf.md,guides/cloud-oss/examples/aggregate-function-combinators/anyIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/anyIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/anyIf,matched,c593e9d899ed3bc0,true,c593e9d899ed3bc0,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/argMaxIf,docs/guides/examples/aggregate_function_combinators/argMaxIf.md,guides/cloud-oss/examples/aggregate-function-combinators/argMaxIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/argMaxIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/argMaxIf,matched,29203dd56fb1e4f2,true,29203dd56fb1e4f2,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/argMinIf,docs/guides/examples/aggregate_function_combinators/argMinIf.md,guides/cloud-oss/examples/aggregate-function-combinators/argMinIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/argMinIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/argMinIf,matched,c7225256364f35ed,true,c7225256364f35ed,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/avgIf,docs/guides/examples/aggregate_function_combinators/avgIf.md,guides/cloud-oss/examples/aggregate-function-combinators/avgIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/avgIf,matched,7b33a5e55a1dd2d5,true,7b33a5e55a1dd2d5,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/avgMap,docs/guides/examples/aggregate_function_combinators/avgMap.md,guides/cloud-oss/examples/aggregate-function-combinators/avgMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgMap,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/avgMap,matched,dada380bcbe5f507,true,dada380bcbe5f507,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/avgMerge,docs/guides/examples/aggregate_function_combinators/avgMerge.md,guides/cloud-oss/examples/aggregate-function-combinators/avgMerge.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgMerge,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/avgMerge,matched,97d240cb9c6a47fb,true,97d240cb9c6a47fb,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/avgMergeState,docs/guides/examples/aggregate_function_combinators/avgMergeState.md,guides/cloud-oss/examples/aggregate-function-combinators/avgMergeState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgMergeState,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/avgMergeState,matched,49a5dd5634212d81,true,49a5dd5634212d81,2026-05-08T09:09:20+00:00,false
-/examples/aggregate-function-combinators/avgResample,docs/guides/examples/aggregate_function_combinators/avgResample.md,guides/cloud-oss/examples/aggregate-function-combinators/avgResample.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgResample,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/avgResample,matched,d7c5d1189ff502af,true,d7c5d1189ff502af,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/avgState,docs/guides/examples/aggregate_function_combinators/avgState.md,guides/cloud-oss/examples/aggregate-function-combinators/avgState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgState,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/avgState,matched,956473ff45434571,true,956473ff45434571,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/countIf,docs/guides/examples/aggregate_function_combinators/countIf.md,guides/cloud-oss/examples/aggregate-function-combinators/countIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/countIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/countIf,matched,a36d54dfacfe290d,true,a36d54dfacfe290d,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/countResample,docs/guides/examples/aggregate_function_combinators/countResample.md,guides/cloud-oss/examples/aggregate-function-combinators/countResample.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/countResample,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/countResample,matched,1a8b6a09c33b5066,true,1a8b6a09c33b5066,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/groupArrayDistinct,docs/guides/examples/aggregate_function_combinators/groupArrayDistinct.md,guides/cloud-oss/examples/aggregate-function-combinators/groupArrayDistinct.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/groupArrayDistinct,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/groupArrayDistinct,matched,2fe25556dc9281a7,true,2fe25556dc9281a7,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/groupArrayResample,docs/guides/examples/aggregate_function_combinators/groupArrayResample.md,guides/cloud-oss/examples/aggregate-function-combinators/groupArrayResample.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/groupArrayResample,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/groupArrayResample,matched,2ec91e4d5b4c22e5,true,2ec91e4d5b4c22e5,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/maxMap,docs/guides/examples/aggregate_function_combinators/maxMap.md,guides/cloud-oss/examples/aggregate-function-combinators/maxMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/maxMap,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/maxMap,matched,4b4420282f1b88dc,true,4b4420282f1b88dc,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/maxSimpleState,docs/guides/examples/aggregate_function_combinators/maxSimpleState.md,guides/cloud-oss/examples/aggregate-function-combinators/maxSimpleState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/maxSimpleState,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/maxSimpleState,matched,4fafce0af6e89cec,true,4fafce0af6e89cec,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/minMap,docs/guides/examples/aggregate_function_combinators/minMap.md,guides/cloud-oss/examples/aggregate-function-combinators/minMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/minMap,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/minMap,matched,00e7d796923804fb,true,00e7d796923804fb,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/minSimpleState,docs/guides/examples/aggregate_function_combinators/minSimpleState.md,guides/cloud-oss/examples/aggregate-function-combinators/minSimpleState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/minSimpleState,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/minSimpleState,matched,dd77ecfb91bdfb41,true,dd77ecfb91bdfb41,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/quantilesTimingArrayIf,docs/guides/examples/aggregate_function_combinators/quantilesTimingArrayIf.md,guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/quantilesTimingArrayIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingArrayIf,matched,f5c1d436a3a4b96d,true,f5c1d436a3a4b96d,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/quantilesTimingIf,docs/guides/examples/aggregate_function_combinators/quantilesTimingIf.md,guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/quantilesTimingIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingIf,matched,12680cbf375da7a9,true,12680cbf375da7a9,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/sumArray,docs/guides/examples/aggregate_function_combinators/sumArray.md,guides/cloud-oss/examples/aggregate-function-combinators/sumArray.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumArray,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/sumArray,matched,aefd3e2e4730ab00,true,aefd3e2e4730ab00,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/sumForEach,docs/guides/examples/aggregate_function_combinators/sumForEach.md,guides/cloud-oss/examples/aggregate-function-combinators/sumForEach.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumForEach,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/sumForEach,matched,b5cae9a8d951d7f4,true,b5cae9a8d951d7f4,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/sumIf,docs/guides/examples/aggregate_function_combinators/sumIf.md,guides/cloud-oss/examples/aggregate-function-combinators/sumIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/sumIf,matched,ab50102445cb5730,true,ab50102445cb5730,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/sumMap,docs/guides/examples/aggregate_function_combinators/sumMap.md,guides/cloud-oss/examples/aggregate-function-combinators/sumMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumMap,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/sumMap,matched,656029100848c0ee,true,656029100848c0ee,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/sumSimpleState,docs/guides/examples/aggregate_function_combinators/sumSimpleState.md,guides/cloud-oss/examples/aggregate-function-combinators/sumSimpleState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumSimpleState,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/sumSimpleState,matched,b2291bf2e66fed01,true,b2291bf2e66fed01,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/uniqArray,docs/guides/examples/aggregate_function_combinators/uniqArray.md,guides/cloud-oss/examples/aggregate-function-combinators/uniqArray.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/uniqArray,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/uniqArray,matched,ee4d09293b2b41b0,true,ee4d09293b2b41b0,2026-05-13T13:16:51+00:00,false
-/examples/aggregate-function-combinators/uniqArrayIf,docs/guides/examples/aggregate_function_combinators/uniqArrayIf.md,guides/cloud-oss/examples/aggregate-function-combinators/uniqArrayIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/uniqArrayIf,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/examples/aggregate-function-combinators/uniqArrayIf,matched,18b41d734423bdea,true,18b41d734423bdea,2026-05-13T13:16:51+00:00,false
-/faq/general/,docs/faq/general/index.md,resources/support-center/knowledge-base/general-faqs/index.mdx,https://clickhouse.com/docs/faq/general/,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs,matched,e71767509dda8cf2,true,970aec8e4fdbc1cf,2026-05-08T15:12:29+00:00,false
+/deployment-modes,docs/deployment-modes.md,core/get-started/about/deployment-modes.mdx,https://clickhouse.com/docs/deployment-modes,https://private-7c7dfe99.mintlify.app/core/get-started/about/deployment-modes,matched,5e24b41fab85372a,true,5e24b41fab85372a,2026-05-08T12:19:52+00:00,false
+/development/,docs/development/index.md,resources/develop-contribute/index.mdx,https://clickhouse.com/docs/development/,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/index,matched,efa5924dc8213c3f,true,efa5924dc8213c3f,2026-05-21T07:18:55+00:00,false
+/development/architecture,docs/development/architecture.md,resources/develop-contribute/introduction/architecture.mdx,https://clickhouse.com/docs/development/architecture,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/introduction/architecture,matched,d71b0cd5b5d05730,true,c096ac52d9f3230f,2026-05-08T09:09:20+00:00,false
+/development/backports,docs/development/backports.md,resources/develop-contribute/contribute/backports.mdx,https://clickhouse.com/docs/development/backports,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/contribute/backports,matched,47cf09bff25b3699,true,47cf09bff25b3699,2026-05-19T11:08:53+00:00,false
+/development/build,docs/development/build.md,resources/develop-contribute/build/build.mdx,https://clickhouse.com/docs/development/build,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build,matched,ff59f0aafe286aa1,true,dedfb328f44d5208,2026-05-08T15:04:34+00:00,false
+/development/build-cross-arm,docs/development/build-cross-arm.md,resources/develop-contribute/build/build-cross-arm.mdx,https://clickhouse.com/docs/development/build-cross-arm,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build-cross-arm,matched,1ce08c98e2a33af7,true,f732d015e8ca7a50,2026-05-07T14:49:41+00:00,false
+/development/build-cross-loongarch,docs/development/build-cross-loongarch.md,resources/develop-contribute/build/build-cross-loongarch.mdx,https://clickhouse.com/docs/development/build-cross-loongarch,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build-cross-loongarch,matched,68515ed0da277632,true,5efd5807ee1bc81d,2026-05-08T09:09:20+00:00,false
+/development/build-cross-osx,docs/development/build-cross-osx.md,resources/develop-contribute/build/build-cross-osx.mdx,https://clickhouse.com/docs/development/build-cross-osx,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build-cross-osx,matched,43814b2a97b84f2e,true,43814b2a97b84f2e,2026-05-21T07:18:56+00:00,false
+/development/build-cross-riscv,docs/development/build-cross-riscv.md,resources/develop-contribute/build/build-cross-riscv.mdx,https://clickhouse.com/docs/development/build-cross-riscv,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build-cross-riscv,matched,29acc4865340d1c5,true,d8dd9a58920b1224,2026-05-08T09:09:20+00:00,false
+/development/build-cross-s390x,docs/development/build-cross-s390x.md,resources/develop-contribute/build/build-cross-s390x.mdx,https://clickhouse.com/docs/development/build-cross-s390x,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build-cross-s390x,matched,37cb33d7f8e51908,true,37cb33d7f8e51908,2026-05-21T07:18:56+00:00,false
+/development/build-e2k,docs/development/build-e2k.md,resources/develop-contribute/build/build-e2k.mdx,https://clickhouse.com/docs/development/build-e2k,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build-e2k,matched,322a063ed14d9c7f,true,e2020e444d6bbcaf,2026-05-08T09:09:20+00:00,false
+/development/build-osx,docs/development/build-osx.md,resources/develop-contribute/build/build-osx.mdx,https://clickhouse.com/docs/development/build-osx,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/build/build-osx,matched,fec6e7025f4fc47a,true,fec6e7025f4fc47a,2026-05-19T11:08:53+00:00,false
+/development/continuous-integration,docs/development/continuous-integration.md,resources/develop-contribute/contribute/continuous-integration.mdx,https://clickhouse.com/docs/development/continuous-integration,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/contribute/continuous-integration,matched,3ea19a7a64a6b6cf,true,3ea19a7a64a6b6cf,2026-05-21T07:18:56+00:00,false
+/development/contrib,docs/development/contrib.md,resources/develop-contribute/contribute/contrib.mdx,https://clickhouse.com/docs/development/contrib,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/contribute/contrib,matched,4aff3c47bfaf2803,true,c925c5d3c0431c9e,2026-05-08T09:09:20+00:00,false
+/development/developer-instruction,docs/development/developer-instruction.md,resources/develop-contribute/introduction/developer-instruction.mdx,https://clickhouse.com/docs/development/developer-instruction,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/introduction/developer-instruction,matched,da6c5a5aab300f52,true,da6c5a5aab300f52,2026-05-21T07:18:55+00:00,false
+/development/integrating_rust_libraries,docs/development/integrating_rust_libraries.md,resources/develop-contribute/contribute/integrating-rust-libraries.mdx,https://clickhouse.com/docs/development/integrating_rust_libraries,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/contribute/integrating-rust-libraries,matched,9611472a5e657048,true,9611472a5e657048,2026-05-19T11:08:53+00:00,false
+/development/style,docs/development/style.md,resources/develop-contribute/contribute/style.mdx,https://clickhouse.com/docs/development/style,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/contribute/style,matched,3846d38ebd2b09ae,true,3846d38ebd2b09ae,2026-05-21T07:18:56+00:00,false
+/development/tests,docs/development/tests.md,resources/develop-contribute/contribute/tests.mdx,https://clickhouse.com/docs/development/tests,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/contribute/tests,matched,2a6c8a145b56ce5b,true,2a6c8a145b56ce5b,2026-05-21T07:18:56+00:00,false
+/dictionary,docs/dictionary/index.md,core/concepts/features/dictionaries/index.mdx,https://clickhouse.com/docs/dictionary,https://private-7c7dfe99.mintlify.app/core/concepts/features/dictionaries/index,matched,196c272644d94036,true,196c272644d94036,2026-05-08T09:09:20+00:00,false
+/dictionary/best-practices,docs/dictionary/best-practices.md,core/concepts/features/dictionaries/best-practices.mdx,https://clickhouse.com/docs/dictionary/best-practices,https://private-7c7dfe99.mintlify.app/core/concepts/features/dictionaries/best-practices,matched,eb8869fd12ff9f32,true,9c1fbd282c73c2ab,2026-05-07T14:49:41+00:00,false
+/engines,docs/engines/index.md,core/reference/engines/engines.mdx,https://clickhouse.com/docs/engines,https://private-7c7dfe99.mintlify.app/core/reference/engines/engines,matched,430792450e0e2470,true,430792450e0e2470,2026-05-19T11:48:22+00:00,false
+/engines/database-engines/,docs/engines/database-engines/index.md,core/reference/engines/database-engines/index.mdx,https://clickhouse.com/docs/engines/database-engines/,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/index,matched,ef7d22cc4d26fc3f,true,ef7d22cc4d26fc3f,2026-05-19T11:08:53+00:00,false
+/engines/database-engines/atomic,docs/engines/database-engines/atomic.md,core/reference/engines/database-engines/atomic.mdx,https://clickhouse.com/docs/engines/database-engines/atomic,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/atomic,matched,da03ef9fd175695f,true,b3a0a7a9c4f2e4c5,2026-05-08T09:09:20+00:00,false
+/engines/database-engines/backup,docs/engines/database-engines/backup.md,core/reference/engines/database-engines/backup.mdx,https://clickhouse.com/docs/engines/database-engines/backup,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/backup,matched,84bc965234cff573,true,ba093f0bb10f862c,2026-05-07T14:49:41+00:00,false
+/engines/database-engines/datalakecatalog,docs/engines/database-engines/datalake.md,core/reference/engines/database-engines/datalake.mdx,https://clickhouse.com/docs/engines/database-engines/datalakecatalog,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/datalake,matched,f1f3e3fde3b9ea7a,true,480b7e169ea63bdf,2026-05-07T14:49:41+00:00,false
+/engines/database-engines/materialized-postgresql,docs/engines/database-engines/materialized-postgresql.md,core/reference/engines/database-engines/materialized-postgresql.mdx,https://clickhouse.com/docs/engines/database-engines/materialized-postgresql,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/materialized-postgresql,matched,ed2621c01542cd6c,true,ed2621c01542cd6c,2026-05-08T09:09:20+00:00,false
+/engines/database-engines/mysql,docs/engines/database-engines/mysql.md,core/reference/engines/database-engines/mysql.mdx,https://clickhouse.com/docs/engines/database-engines/mysql,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/mysql,matched,f78ef201b8464bb6,true,f78ef201b8464bb6,2026-05-08T09:09:20+00:00,false
+/engines/database-engines/postgresql,docs/engines/database-engines/postgresql.md,core/reference/engines/database-engines/postgresql.mdx,https://clickhouse.com/docs/engines/database-engines/postgresql,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/postgresql,matched,ea606b8fc32dc4d2,true,b4c584ccbf84daf8,2026-05-07T14:49:41+00:00,false
+/engines/database-engines/replicated,docs/engines/database-engines/replicated.md,core/reference/engines/database-engines/replicated.mdx,https://clickhouse.com/docs/engines/database-engines/replicated,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/replicated,matched,d31fecb5d94082da,true,d31fecb5d94082da,2026-05-19T11:08:53+00:00,false
+/engines/database-engines/shared,docs/engines/database-engines/shared.md,core/reference/engines/database-engines/shared.mdx,https://clickhouse.com/docs/engines/database-engines/shared,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/shared,matched,658a06aa55917c46,true,658a06aa55917c46,2026-05-08T09:09:20+00:00,false
+/engines/database-engines/sqlite,docs/engines/database-engines/sqlite.md,core/reference/engines/database-engines/sqlite.mdx,https://clickhouse.com/docs/engines/database-engines/sqlite,https://private-7c7dfe99.mintlify.app/core/reference/engines/database-engines/sqlite,matched,69743c08b181ef87,true,2d389211d0f5d36a,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/,docs/engines/table-engines/index.md,core/reference/engines/table-engines/index.mdx,https://clickhouse.com/docs/engines/table-engines/,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/index,matched,be0c6e92edd31909,true,be0c6e92edd31909,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/,docs/engines/table-engines/integrations/index.md,core/reference/engines/table-engines/integrations/index.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/index,matched,182e2a9a7b1c73d5,true,182e2a9a7b1c73d5,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/ExternalDistributed,docs/engines/table-engines/integrations/ExternalDistributed.md,core/reference/engines/table-engines/integrations/ExternalDistributed.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/ExternalDistributed,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/ExternalDistributed,matched,0c4f69e6d6e393f7,true,1cdbef1a85ce5ee8,2026-05-09T09:39:38+00:00,false
+/engines/table-engines/integrations/arrowflight,docs/engines/table-engines/integrations/arrowflight.md,core/reference/engines/table-engines/integrations/arrowflight.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/arrowflight,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/arrowflight,matched,643d2d6307abae7c,true,5d542d21d2aeff74,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/integrations/azure-queue,docs/engines/table-engines/integrations/azure-queue.md,core/reference/engines/table-engines/integrations/azure-queue.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/azure-queue,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/azure-queue,matched,46bce34c84b9f8a2,true,5e0eeeeaa692b51f,2026-05-09T09:39:38+00:00,false
+/engines/table-engines/integrations/azureBlobStorage,docs/engines/table-engines/integrations/azureBlobStorage.md,core/reference/engines/table-engines/integrations/azureBlobStorage.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/azureBlobStorage,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/azureBlobStorage,matched,9eb4aa7b055170c1,true,50e422154e7d9340,2026-05-08T13:01:57+00:00,false
+/engines/table-engines/integrations/deltalake,docs/engines/table-engines/integrations/deltalake.md,core/reference/engines/table-engines/integrations/deltalake.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/deltalake,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/deltalake,matched,b8b8fa26d495fc42,true,b8b8fa26d495fc42,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/integrations/embedded-rocksdb,docs/engines/table-engines/integrations/embedded-rocksdb.md,core/reference/engines/table-engines/integrations/embedded-rocksdb.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/embedded-rocksdb,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/embedded-rocksdb,matched,3106e22f04396e24,true,3106e22f04396e24,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/integrations/hdfs,docs/engines/table-engines/integrations/hdfs.md,core/reference/engines/table-engines/integrations/hdfs.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/hdfs,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/hdfs,matched,6d8963200cc850f4,true,6d8963200cc850f4,2026-05-09T11:14:51+00:00,false
+/engines/table-engines/integrations/hive,docs/engines/table-engines/integrations/hive.md,core/reference/engines/table-engines/integrations/hive.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/hive,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/hive,matched,1bd7f94ef79ae4a2,true,1bd7f94ef79ae4a2,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/integrations/hudi,docs/engines/table-engines/integrations/hudi.md,core/reference/engines/table-engines/integrations/hudi.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/hudi,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/hudi,matched,465448998115f31c,true,51667b6a4e3d68fa,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/integrations/iceberg,docs/engines/table-engines/integrations/iceberg.md,core/reference/engines/table-engines/integrations/iceberg.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/iceberg,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/iceberg,matched,b2398db6ad12ecc8,true,b2398db6ad12ecc8,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/jdbc,docs/engines/table-engines/integrations/jdbc.md,core/reference/engines/table-engines/integrations/jdbc.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/jdbc,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/jdbc,matched,665e7928e61709a3,true,665e7928e61709a3,2026-05-08T09:51:10+00:00,false
+/engines/table-engines/integrations/kafka,docs/engines/table-engines/integrations/kafka.md,core/reference/engines/table-engines/integrations/kafka.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/kafka,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/kafka,matched,42b346c1b1df5b6d,true,42b346c1b1df5b6d,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/materialized-postgresql,docs/engines/table-engines/integrations/materialized-postgresql.md,core/reference/engines/table-engines/integrations/materialized-postgresql.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/materialized-postgresql,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/materialized-postgresql,matched,874433a820ac2a17,true,874433a820ac2a17,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/integrations/mongodb,docs/engines/table-engines/integrations/mongodb.md,core/reference/engines/table-engines/integrations/mongodb.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/mongodb,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/mongodb,matched,efa4dbb935d8f6c7,true,efa4dbb935d8f6c7,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/mysql,docs/engines/table-engines/integrations/mysql.md,core/reference/engines/table-engines/integrations/mysql.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/mysql,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/mysql,matched,66b376663e767faa,true,4d4563d868c683fc,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/integrations/nats,docs/engines/table-engines/integrations/nats.md,core/reference/engines/table-engines/integrations/nats.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/nats,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/nats,matched,223ce4ae7fe14aa4,true,223ce4ae7fe14aa4,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/odbc,docs/engines/table-engines/integrations/odbc.md,core/reference/engines/table-engines/integrations/odbc.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/odbc,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/odbc,matched,5c02dfc903a8407f,true,5c02dfc903a8407f,2026-05-13T14:23:03+00:00,false
+/engines/table-engines/integrations/paimon,docs/engines/table-engines/integrations/paimon.md,core/reference/engines/table-engines/integrations/paimon.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/paimon,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/paimon,matched,50b2d2d9a6939a1a,true,50b2d2d9a6939a1a,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/postgresql,docs/engines/table-engines/integrations/postgresql.md,core/reference/engines/table-engines/integrations/postgresql.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/postgresql,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/postgresql,matched,9e4b331dbe864202,true,9e4b331dbe864202,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/rabbitmq,docs/engines/table-engines/integrations/rabbitmq.md,core/reference/engines/table-engines/integrations/rabbitmq.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/rabbitmq,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/rabbitmq,matched,909f012134983d94,true,e46974cd333ca66c,2026-05-08T13:01:57+00:00,false
+/engines/table-engines/integrations/redis,docs/engines/table-engines/integrations/redis.md,core/reference/engines/table-engines/integrations/redis.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/redis,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/redis,matched,3b3cde6d7bb7a428,true,3b3cde6d7bb7a428,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/integrations/s3,docs/engines/table-engines/integrations/s3.md,core/reference/engines/table-engines/integrations/s3.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/s3,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/s3,matched,ea0601c4d7ab68dd,true,d9f34d3172ce3120,2026-05-13T15:43:30+00:00,false
+/engines/table-engines/integrations/s3queue,docs/engines/table-engines/integrations/s3queue.md,core/reference/engines/table-engines/integrations/s3queue.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/s3queue,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/s3queue,matched,2c4f536280177413,true,2c4f536280177413,2026-05-09T09:39:38+00:00,false
+/engines/table-engines/integrations/sqlite,docs/engines/table-engines/integrations/sqlite.md,core/reference/engines/table-engines/integrations/sqlite.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/sqlite,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/sqlite,matched,7c57bc57ee3573e4,true,7c57bc57ee3573e4,2026-05-09T09:39:38+00:00,false
+/engines/table-engines/integrations/ytsaurus,docs/engines/table-engines/integrations/ytsaurus.md,core/reference/engines/table-engines/integrations/ytsaurus.mdx,https://clickhouse.com/docs/engines/table-engines/integrations/ytsaurus,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/ytsaurus,matched,8b424c806172df36,true,8b424c806172df36,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/log-family/,docs/engines/table-engines/log-family/index.md,core/reference/engines/table-engines/log-family/index.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/log-family/index,matched,526635ff55be8133,true,526635ff55be8133,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/log-family/log,docs/engines/table-engines/log-family/log.md,core/reference/engines/table-engines/log-family/log.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/log,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/log-family/log,matched,589fc5521d34b691,true,589fc5521d34b691,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/log-family/stripelog,docs/engines/table-engines/log-family/stripelog.md,core/reference/engines/table-engines/log-family/stripelog.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/stripelog,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/log-family/stripelog,matched,85317ab67c211854,true,85317ab67c211854,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/log-family/tinylog,docs/engines/table-engines/log-family/tinylog.md,core/reference/engines/table-engines/log-family/tinylog.mdx,https://clickhouse.com/docs/engines/table-engines/log-family/tinylog,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/log-family/tinylog,matched,6aca92cecd7097cb,true,6aca92cecd7097cb,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/mergetree-family/,docs/engines/table-engines/mergetree-family/index.md,core/reference/engines/table-engines/mergetree-family/index.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/index,matched,ad8165aa1c3ca613,true,ad8165aa1c3ca613,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/mergetree-family/aggregatingmergetree,docs/engines/table-engines/mergetree-family/aggregatingmergetree.md,core/reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/aggregatingmergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree,matched,5bbad8545fadef5d,true,c00fec44d98d20ec,2026-05-08T12:19:52+00:00,false
+/engines/table-engines/mergetree-family/annindexes,docs/engines/table-engines/mergetree-family/annindexes.md,core/reference/engines/table-engines/mergetree-family/annindexes.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/annindexes,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/annindexes,matched,c6f8bbc4eb012454,true,c6f8bbc4eb012454,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/mergetree-family/coalescingmergetree,docs/engines/table-engines/mergetree-family/coalescingmergetree.md,core/reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/coalescingmergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/coalescingmergetree,matched,e4282522f2b88cd1,true,f14b1307c493266d,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/mergetree-family/collapsingmergetree,docs/engines/table-engines/mergetree-family/collapsingmergetree.md,core/reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/collapsingmergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/collapsingmergetree,matched,b4c154dcf1aa53bf,true,cca901fd78a63bb4,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/mergetree-family/custom-partitioning-key,docs/engines/table-engines/mergetree-family/custom-partitioning-key.md,core/reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/custom-partitioning-key,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key,matched,e1465cd2777f9d7a,true,e1465cd2777f9d7a,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/mergetree-family/graphitemergetree,docs/engines/table-engines/mergetree-family/graphitemergetree.md,core/reference/engines/table-engines/mergetree-family/graphitemergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/graphitemergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/graphitemergetree,matched,e14e6f9370ea584c,true,9c431dd0d8265db2,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/mergetree-family/mergetree,docs/engines/table-engines/mergetree-family/mergetree.md,core/reference/engines/table-engines/mergetree-family/mergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/mergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/mergetree,matched,6a86924ac725350a,true,6a86924ac725350a,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/mergetree-family/replacingmergetree,docs/engines/table-engines/mergetree-family/replacingmergetree.md,core/reference/engines/table-engines/mergetree-family/replacingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/replacingmergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/replacingmergetree,matched,ecec03c9132f87db,true,ced484d2a382f865,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/mergetree-family/replication,docs/engines/table-engines/mergetree-family/replication.md,core/reference/engines/table-engines/mergetree-family/replication.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/replication,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/replication,matched,99530f32e611a580,true,3b16d689fbde73f9,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/mergetree-family/summingmergetree,docs/engines/table-engines/mergetree-family/summingmergetree.md,core/reference/engines/table-engines/mergetree-family/summingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/summingmergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/summingmergetree,matched,05624c049881b4a7,true,987b8b83f4fb4b6c,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/mergetree-family/textindexes,docs/engines/table-engines/mergetree-family/textindexes.md,core/reference/engines/table-engines/mergetree-family/textindexes.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/textindexes,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/textindexes,matched,d118d93f71227b40,true,d118d93f71227b40,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/mergetree-family/versionedcollapsingmergetree,docs/engines/table-engines/mergetree-family/versionedcollapsingmergetree.md,core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx,https://clickhouse.com/docs/engines/table-engines/mergetree-family/versionedcollapsingmergetree,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree,matched,2e1d47be7e9be686,true,5172acba2103f957,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/special/,docs/engines/table-engines/special/index.md,core/reference/engines/table-engines/special/index.mdx,https://clickhouse.com/docs/engines/table-engines/special/,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/index,matched,851e551dcf4c3b6c,true,2020a467b74c2031,2026-05-09T09:39:38+00:00,false
+/engines/table-engines/special/alias,docs/engines/table-engines/special/alias.md,core/reference/engines/table-engines/special/alias.mdx,https://clickhouse.com/docs/engines/table-engines/special/alias,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/alias,matched,1207ea39bd43915c,true,1207ea39bd43915c,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/special/buffer,docs/engines/table-engines/special/buffer.md,core/reference/engines/table-engines/special/buffer.mdx,https://clickhouse.com/docs/engines/table-engines/special/buffer,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/buffer,matched,6e0aed541f48f9f7,true,4e8ed6a1feb2aa52,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/special/dictionary,docs/engines/table-engines/special/dictionary.md,core/reference/engines/table-engines/special/dictionary.mdx,https://clickhouse.com/docs/engines/table-engines/special/dictionary,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/dictionary,matched,7630e3f4daa5ef75,true,78aff0314982d70b,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/special/distributed,docs/engines/table-engines/special/distributed.md,core/reference/engines/table-engines/special/distributed.mdx,https://clickhouse.com/docs/engines/table-engines/special/distributed,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/distributed,matched,36792e30ad2101ea,true,144e0319e32e38db,2026-05-09T10:26:02+00:00,false
+/engines/table-engines/special/executable,docs/engines/table-engines/special/executable.md,core/reference/engines/table-engines/special/executable.mdx,https://clickhouse.com/docs/engines/table-engines/special/executable,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/executable,matched,6b39916c1f6415cb,true,abf73ca14dd6fa74,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/special/external-data,docs/engines/table-engines/special/external-data.md,core/reference/engines/table-engines/special/external-data.mdx,https://clickhouse.com/docs/engines/table-engines/special/external-data,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/external-data,matched,889f3532c3ed2b16,true,b8b48f150dd2033f,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/special/file,docs/engines/table-engines/special/file.md,core/reference/engines/table-engines/special/file.mdx,https://clickhouse.com/docs/engines/table-engines/special/file,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/file,matched,8b6800a2b82d8cb0,true,e0c19959bdee8150,2026-05-08T13:01:57+00:00,false
+/engines/table-engines/special/filelog,docs/engines/table-engines/special/filelog.md,core/reference/engines/table-engines/special/filelog.mdx,https://clickhouse.com/docs/engines/table-engines/special/filelog,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/filelog,matched,f69e9de5904cce4e,true,f69e9de5904cce4e,2026-05-19T11:08:53+00:00,false
+/engines/table-engines/special/generate,docs/engines/table-engines/special/generate.md,core/reference/engines/table-engines/special/generate.mdx,https://clickhouse.com/docs/engines/table-engines/special/generate,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/generate,matched,f873ecfa15f84ef7,true,848b4e2ed1094aee,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/special/join,docs/engines/table-engines/special/join.md,core/reference/engines/table-engines/special/join.mdx,https://clickhouse.com/docs/engines/table-engines/special/join,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/join,matched,6f56e6e14a899c72,true,3c0a49ce0175e9ff,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/special/keeper-map,docs/engines/table-engines/special/keepermap.md,core/reference/engines/table-engines/special/keepermap.mdx,https://clickhouse.com/docs/engines/table-engines/special/keeper-map,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/keepermap,matched,ac19941642bf389b,true,ad02c360d5787e1c,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/special/memory,docs/engines/table-engines/special/memory.md,core/reference/engines/table-engines/special/memory.mdx,https://clickhouse.com/docs/engines/table-engines/special/memory,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/memory,matched,4b2e8682c62ea55a,true,dbd1ac438ab55afc,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/special/merge,docs/engines/table-engines/special/merge.md,core/reference/engines/table-engines/special/merge.mdx,https://clickhouse.com/docs/engines/table-engines/special/merge,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/merge,matched,bb88ebe93c4cca8b,true,f3fd1aa8bafa81bb,2026-05-09T09:39:38+00:00,false
+/engines/table-engines/special/null,docs/engines/table-engines/special/null.md,core/reference/engines/table-engines/special/null.mdx,https://clickhouse.com/docs/engines/table-engines/special/null,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/null,matched,d0711da176d30a5d,true,32a464d65d3033a6,2026-05-07T14:49:41+00:00,false
+/engines/table-engines/special/set,docs/engines/table-engines/special/set.md,core/reference/engines/table-engines/special/set.mdx,https://clickhouse.com/docs/engines/table-engines/special/set,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/set,matched,cd61da9acac6ea74,true,558092fa5958f7bf,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/special/time_series,docs/engines/table-engines/integrations/time-series.md,core/reference/engines/table-engines/integrations/time-series.mdx,https://clickhouse.com/docs/engines/table-engines/special/time_series,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/integrations/time-series,matched,c58648934ce9b098,true,c58648934ce9b098,2026-05-08T09:09:20+00:00,false
+/engines/table-engines/special/url,docs/engines/table-engines/special/url.md,core/reference/engines/table-engines/special/url.mdx,https://clickhouse.com/docs/engines/table-engines/special/url,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/url,matched,2270feda9fd8ceb8,true,bc920ce850144c47,2026-05-08T13:01:57+00:00,false
+/engines/table-engines/special/view,docs/engines/table-engines/special/view.md,core/reference/engines/table-engines/special/view.mdx,https://clickhouse.com/docs/engines/table-engines/special/view,https://private-7c7dfe99.mintlify.app/core/reference/engines/table-engines/special/view,matched,26d10a8766db167b,true,547949490f707e9c,2026-05-07T14:49:41+00:00,false
+/engines/table-functions/executable,docs/sql-reference/table-functions/executable.md,core/reference/functions/table-functions/executable.mdx,https://clickhouse.com/docs/engines/table-functions/executable,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/executable,matched,33da0a1ab05b92af,true,33da0a1ab05b92af,2026-05-19T11:08:53+00:00,false
+/examples/aggregate-function-combinators/anyIf,docs/guides/examples/aggregate_function_combinators/anyIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/anyIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/anyIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/anyIf,matched,c593e9d899ed3bc0,true,c593e9d899ed3bc0,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/argMaxIf,docs/guides/examples/aggregate_function_combinators/argMaxIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/argMaxIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/argMaxIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/argMaxIf,matched,29203dd56fb1e4f2,true,29203dd56fb1e4f2,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/argMinIf,docs/guides/examples/aggregate_function_combinators/argMinIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/argMinIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/argMinIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/argMinIf,matched,c7225256364f35ed,true,c7225256364f35ed,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/avgIf,docs/guides/examples/aggregate_function_combinators/avgIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/avgIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/avgIf,matched,7b33a5e55a1dd2d5,true,7b33a5e55a1dd2d5,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/avgMap,docs/guides/examples/aggregate_function_combinators/avgMap.md,core/guides/clickhouse/examples/aggregate-function-combinators/avgMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgMap,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/avgMap,matched,dada380bcbe5f507,true,dada380bcbe5f507,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/avgMerge,docs/guides/examples/aggregate_function_combinators/avgMerge.md,core/guides/clickhouse/examples/aggregate-function-combinators/avgMerge.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgMerge,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/avgMerge,matched,97d240cb9c6a47fb,true,97d240cb9c6a47fb,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/avgMergeState,docs/guides/examples/aggregate_function_combinators/avgMergeState.md,core/guides/clickhouse/examples/aggregate-function-combinators/avgMergeState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgMergeState,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/avgMergeState,matched,49a5dd5634212d81,true,49a5dd5634212d81,2026-05-08T09:09:20+00:00,false
+/examples/aggregate-function-combinators/avgResample,docs/guides/examples/aggregate_function_combinators/avgResample.md,core/guides/clickhouse/examples/aggregate-function-combinators/avgResample.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgResample,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/avgResample,matched,d7c5d1189ff502af,true,d7c5d1189ff502af,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/avgState,docs/guides/examples/aggregate_function_combinators/avgState.md,core/guides/clickhouse/examples/aggregate-function-combinators/avgState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/avgState,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/avgState,matched,956473ff45434571,true,956473ff45434571,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/countIf,docs/guides/examples/aggregate_function_combinators/countIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/countIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/countIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/countIf,matched,a36d54dfacfe290d,true,a36d54dfacfe290d,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/countResample,docs/guides/examples/aggregate_function_combinators/countResample.md,core/guides/clickhouse/examples/aggregate-function-combinators/countResample.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/countResample,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/countResample,matched,1a8b6a09c33b5066,true,1a8b6a09c33b5066,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/groupArrayDistinct,docs/guides/examples/aggregate_function_combinators/groupArrayDistinct.md,core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayDistinct.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/groupArrayDistinct,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayDistinct,matched,2fe25556dc9281a7,true,2fe25556dc9281a7,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/groupArrayResample,docs/guides/examples/aggregate_function_combinators/groupArrayResample.md,core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayResample.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/groupArrayResample,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayResample,matched,2ec91e4d5b4c22e5,true,2ec91e4d5b4c22e5,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/maxMap,docs/guides/examples/aggregate_function_combinators/maxMap.md,core/guides/clickhouse/examples/aggregate-function-combinators/maxMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/maxMap,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/maxMap,matched,4b4420282f1b88dc,true,4b4420282f1b88dc,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/maxSimpleState,docs/guides/examples/aggregate_function_combinators/maxSimpleState.md,core/guides/clickhouse/examples/aggregate-function-combinators/maxSimpleState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/maxSimpleState,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/maxSimpleState,matched,4fafce0af6e89cec,true,4fafce0af6e89cec,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/minMap,docs/guides/examples/aggregate_function_combinators/minMap.md,core/guides/clickhouse/examples/aggregate-function-combinators/minMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/minMap,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/minMap,matched,00e7d796923804fb,true,00e7d796923804fb,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/minSimpleState,docs/guides/examples/aggregate_function_combinators/minSimpleState.md,core/guides/clickhouse/examples/aggregate-function-combinators/minSimpleState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/minSimpleState,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/minSimpleState,matched,dd77ecfb91bdfb41,true,dd77ecfb91bdfb41,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/quantilesTimingArrayIf,docs/guides/examples/aggregate_function_combinators/quantilesTimingArrayIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/quantilesTimingArrayIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingArrayIf,matched,f5c1d436a3a4b96d,true,f5c1d436a3a4b96d,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/quantilesTimingIf,docs/guides/examples/aggregate_function_combinators/quantilesTimingIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/quantilesTimingIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingIf,matched,12680cbf375da7a9,true,12680cbf375da7a9,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/sumArray,docs/guides/examples/aggregate_function_combinators/sumArray.md,core/guides/clickhouse/examples/aggregate-function-combinators/sumArray.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumArray,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/sumArray,matched,aefd3e2e4730ab00,true,aefd3e2e4730ab00,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/sumForEach,docs/guides/examples/aggregate_function_combinators/sumForEach.md,core/guides/clickhouse/examples/aggregate-function-combinators/sumForEach.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumForEach,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/sumForEach,matched,b5cae9a8d951d7f4,true,b5cae9a8d951d7f4,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/sumIf,docs/guides/examples/aggregate_function_combinators/sumIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/sumIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/sumIf,matched,ab50102445cb5730,true,ab50102445cb5730,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/sumMap,docs/guides/examples/aggregate_function_combinators/sumMap.md,core/guides/clickhouse/examples/aggregate-function-combinators/sumMap.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumMap,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/sumMap,matched,656029100848c0ee,true,656029100848c0ee,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/sumSimpleState,docs/guides/examples/aggregate_function_combinators/sumSimpleState.md,core/guides/clickhouse/examples/aggregate-function-combinators/sumSimpleState.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/sumSimpleState,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/sumSimpleState,matched,b2291bf2e66fed01,true,b2291bf2e66fed01,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/uniqArray,docs/guides/examples/aggregate_function_combinators/uniqArray.md,core/guides/clickhouse/examples/aggregate-function-combinators/uniqArray.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/uniqArray,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/uniqArray,matched,ee4d09293b2b41b0,true,ee4d09293b2b41b0,2026-05-13T13:16:51+00:00,false
+/examples/aggregate-function-combinators/uniqArrayIf,docs/guides/examples/aggregate_function_combinators/uniqArrayIf.md,core/guides/clickhouse/examples/aggregate-function-combinators/uniqArrayIf.mdx,https://clickhouse.com/docs/examples/aggregate-function-combinators/uniqArrayIf,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/examples/aggregate-function-combinators/uniqArrayIf,matched,18b41d734423bdea,true,18b41d734423bdea,2026-05-13T13:16:51+00:00,false
+/faq/general/,docs/faq/general/index.md,resources/support-center/knowledge-base/general-faqs/index.mdx,https://clickhouse.com/docs/faq/general/,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/index,matched,e71767509dda8cf2,true,970aec8e4fdbc1cf,2026-05-08T15:12:29+00:00,false
/faq/general/columnar-database,docs/faq/general/columnar-database.md,resources/support-center/knowledge-base/general-faqs/columnar-database.mdx,https://clickhouse.com/docs/faq/general/columnar-database,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/columnar-database,matched,a66560c3d607504c,true,a66560c3d607504c,2026-05-13T12:54:22+00:00,false
/faq/general/concurrency,docs/faq/general/concurrency.md,resources/support-center/knowledge-base/general-faqs/concurrency.mdx,https://clickhouse.com/docs/faq/general/concurrency,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/concurrency,matched,433cf87d8aa136ec,true,f8146d175696fd61,2026-05-08T09:09:20+00:00,false
/faq/general/cost-based,docs/faq/general/cost-based.md,resources/support-center/knowledge-base/general-faqs/cost-based.mdx,https://clickhouse.com/docs/faq/general/cost-based,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/cost-based,matched,4aa38d5452359fa6,true,4aa38d5452359fa6,2026-05-13T13:16:51+00:00,false
@@ -408,111 +408,111 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/faq/general/sql,docs/faq/general/sql.md,resources/support-center/knowledge-base/general-faqs/sql.mdx,https://clickhouse.com/docs/faq/general/sql,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/sql,matched,7f6052eb899b6251,true,7843455825f9c182,2026-05-08T09:09:20+00:00,false
/faq/general/updates,docs/faq/general/updates.md,resources/support-center/knowledge-base/general-faqs/updates.mdx,https://clickhouse.com/docs/faq/general/updates,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/updates,matched,198b94f41debb083,true,455e4d7b70315644,2026-05-08T09:09:20+00:00,false
/faq/general/who-is-using-clickhouse,docs/faq/general/who-is-using-clickhouse.md,resources/support-center/knowledge-base/general-faqs/who-is-using-clickhouse.mdx,https://clickhouse.com/docs/faq/general/who-is-using-clickhouse,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/who-is-using-clickhouse,matched,0a0cbdf9d5428705,true,0a0cbdf9d5428705,2026-05-13T12:54:23+00:00,false
-/faq/integration/,docs/faq/integration/index.md,resources/support-center/knowledge-base/integrations/index.mdx,https://clickhouse.com/docs/faq/integration/,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/integrations,matched,0a1d220d7c793191,true,0a1d220d7c793191,2026-05-13T13:51:17+00:00,false
+/faq/integration/,docs/faq/integration/index.md,resources/support-center/knowledge-base/integrations/index.mdx,https://clickhouse.com/docs/faq/integration/,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/integrations/index,matched,0a1d220d7c793191,true,0a1d220d7c793191,2026-05-21T07:51:33+00:00,false
/faq/integration/json-import,docs/faq/integration/json-import.md,resources/support-center/knowledge-base/data-import-export/json-import.mdx,https://clickhouse.com/docs/faq/integration/json-import,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/data-import-export/json-import,matched,2129957bebc7e663,true,2129957bebc7e663,2026-05-13T12:54:23+00:00,false
/faq/integration/oracle-odbc,docs/faq/integration/oracle-odbc.md,resources/support-center/knowledge-base/integrations/oracle-odbc.mdx,https://clickhouse.com/docs/faq/integration/oracle-odbc,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/integrations/oracle-odbc,matched,0051a27a896a90eb,true,0051a27a896a90eb,2026-05-13T12:54:23+00:00,false
/faq/operations/,docs/faq/operations/index.md,resources/support-center/knowledge-base/general-faqs/operations-index.mdx,https://clickhouse.com/docs/faq/operations/,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/operations-index,matched,c65e05161360f7d2,true,c65e05161360f7d2,2026-05-13T13:51:17+00:00,false
/faq/operations/delete-old-data,docs/faq/operations/delete-old-data.md,resources/support-center/knowledge-base/tables-schema/delete-old-data.mdx,https://clickhouse.com/docs/faq/operations/delete-old-data,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/tables-schema/delete-old-data,matched,57321324aed9a784,true,57321324aed9a784,2026-05-13T12:54:24+00:00,false
/faq/operations/deploy-separate-storage-and-compute,docs/faq/operations/separate_storage.md,resources/support-center/knowledge-base/general-faqs/separate-storage.mdx,https://clickhouse.com/docs/faq/operations/deploy-separate-storage-and-compute,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/separate-storage,matched,58f15d2dfce6c379,true,58f15d2dfce6c379,2026-05-09T10:03:34+00:00,false
/faq/operations/multi-region-replication,docs/faq/operations/multi-region-replication.md,resources/support-center/knowledge-base/cloud-services/multi-region-replication.mdx,https://clickhouse.com/docs/faq/operations/multi-region-replication,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/cloud-services/multi-region-replication,matched,22cfd8c8ad19309c,true,22cfd8c8ad19309c,2026-05-13T12:54:24+00:00,false
-/faq/operations/production,docs/faq/operations/production.md,resources/support-center/knowledge-base/setup-installation/production.mdx,https://clickhouse.com/docs/faq/operations/production,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/setup-installation/production,matched,d6ae57dcd3115219,true,d6ae57dcd3115219,2026-05-13T12:54:24+00:00,false
+/faq/operations/production,docs/faq/operations/production.md,resources/support-center/knowledge-base/setup-installation/production.mdx,https://clickhouse.com/docs/faq/operations/production,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/setup-installation/production,matched,d6ae57dcd3115219,true,d6ae57dcd3115219,2026-05-21T07:18:59+00:00,false
/faq/use-cases/,docs/faq/use-cases/index.md,resources/support-center/knowledge-base/general-faqs/use-cases-index.mdx,https://clickhouse.com/docs/faq/use-cases/,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/use-cases-index,matched,a94cb6a76f65c348,true,6e001f71ce02c304,2026-05-08T15:04:34+00:00,false
/faq/use-cases/key-value,docs/faq/use-cases/key-value.md,resources/support-center/knowledge-base/general-faqs/key-value.mdx,https://clickhouse.com/docs/faq/use-cases/key-value,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/key-value,matched,a355893aad1f6636,true,a355893aad1f6636,2026-05-13T12:54:24+00:00,false
/faq/use-cases/time-series,docs/faq/use-cases/time-series.md,resources/support-center/knowledge-base/general-faqs/time-series.mdx,https://clickhouse.com/docs/faq/use-cases/time-series,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/time-series,matched,d86b0128f21bdbb0,true,d86b0128f21bdbb0,2026-05-13T12:54:24+00:00,false
/find-expensive-queries,knowledgebase/find-expensive-queries.mdx,resources/support-center/knowledge-base/performance-optimization/find-expensive-queries.mdx,https://clickhouse.com/docs/find-expensive-queries,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/performance-optimization/find-expensive-queries,matched,b7b956c395ea6e55,true,b7b956c395ea6e55,2026-05-08T09:09:20+00:00,false
-/get-started/quick-start,docs/getting-started/quick-start/index.mdx,,https://clickhouse.com/docs/get-started/quick-start,,unmatched,42fe50c1e729beb1,false,,,false
-/getting-started/example-datasets/,docs/getting-started/index.md,get-started/sample-datasets/index.mdx,https://clickhouse.com/docs/getting-started/example-datasets/,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets,matched,e6122dc92e53cd0b,true,674779f4d18973aa,2026-05-08T20:59:48+00:00,false
-/getting-started/example-datasets/amazon-reviews,docs/getting-started/example-datasets/amazon-reviews.md,get-started/sample-datasets/amazon-reviews.mdx,https://clickhouse.com/docs/getting-started/example-datasets/amazon-reviews,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/amazon-reviews,matched,ca42797c7300200d,true,ca42797c7300200d,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/amplab-benchmark,docs/getting-started/example-datasets/amplab-benchmark.md,get-started/sample-datasets/amplab-benchmark.mdx,https://clickhouse.com/docs/getting-started/example-datasets/amplab-benchmark,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/amplab-benchmark,matched,1d1ca4474fc25a6c,true,1d1ca4474fc25a6c,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/brown-benchmark,docs/getting-started/example-datasets/brown-benchmark.md,get-started/sample-datasets/brown-benchmark.mdx,https://clickhouse.com/docs/getting-started/example-datasets/brown-benchmark,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/brown-benchmark,matched,9206b8172e5adaad,true,9206b8172e5adaad,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/cell-towers,docs/getting-started/example-datasets/cell-towers.md,get-started/sample-datasets/cell-towers.mdx,https://clickhouse.com/docs/getting-started/example-datasets/cell-towers,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/cell-towers,matched,0cb34ed3c4fd0aed,true,0cb34ed3c4fd0aed,2026-05-08T11:18:28+00:00,false
-/getting-started/example-datasets/covid19,docs/getting-started/example-datasets/covid19.md,get-started/sample-datasets/covid19.mdx,https://clickhouse.com/docs/getting-started/example-datasets/covid19,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/covid19,matched,f9888552898ecec0,true,f9888552898ecec0,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/criteo,docs/getting-started/example-datasets/criteo.md,get-started/sample-datasets/criteo.mdx,https://clickhouse.com/docs/getting-started/example-datasets/criteo,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/criteo,matched,de5a0b3a29562a37,true,de5a0b3a29562a37,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/dbpedia-dataset,docs/getting-started/example-datasets/dbpedia.md,get-started/sample-datasets/dbpedia.mdx,https://clickhouse.com/docs/getting-started/example-datasets/dbpedia-dataset,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/dbpedia,matched,c658b35c333a9b84,true,c658b35c333a9b84,2026-05-13T15:43:25+00:00,false
-/getting-started/example-datasets/environmental-sensors,docs/getting-started/example-datasets/environmental-sensors.md,get-started/sample-datasets/environmental-sensors.mdx,https://clickhouse.com/docs/getting-started/example-datasets/environmental-sensors,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/environmental-sensors,matched,32916f14b8104181,true,32916f14b8104181,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/foursquare-places,docs/getting-started/example-datasets/foursquare-os-places.md,get-started/sample-datasets/foursquare-os-places.mdx,https://clickhouse.com/docs/getting-started/example-datasets/foursquare-places,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/foursquare-os-places,matched,068b866e905fa187,true,068b866e905fa187,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/github,docs/getting-started/example-datasets/github.md,get-started/sample-datasets/github.mdx,https://clickhouse.com/docs/getting-started/example-datasets/github,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/github,matched,62ff108179e59685,true,62ff108179e59685,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/github-events,docs/getting-started/example-datasets/github-events.md,get-started/sample-datasets/github-events.mdx,https://clickhouse.com/docs/getting-started/example-datasets/github-events,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/github-events,matched,b0a4bb65550f834d,true,b0a4bb65550f834d,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/hacker-news,docs/getting-started/example-datasets/hacker-news.md,get-started/sample-datasets/hacker-news.mdx,https://clickhouse.com/docs/getting-started/example-datasets/hacker-news,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/hacker-news,matched,b41cafd48b8803a7,true,b41cafd48b8803a7,2026-05-13T15:43:25+00:00,false
-/getting-started/example-datasets/hackernews-vector-search-dataset,docs/getting-started/example-datasets/hacker-news-vector-search.md,get-started/sample-datasets/hacker-news-vector-search.mdx,https://clickhouse.com/docs/getting-started/example-datasets/hackernews-vector-search-dataset,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/hacker-news-vector-search,matched,f73d712822089e63,true,f73d712822089e63,2026-05-09T17:02:01+00:00,false
-/getting-started/example-datasets/laion-400m-dataset,docs/getting-started/example-datasets/laion.md,get-started/sample-datasets/laion.mdx,https://clickhouse.com/docs/getting-started/example-datasets/laion-400m-dataset,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/laion,matched,0ae7e345a21808fb,true,0ae7e345a21808fb,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/laion-5b-dataset,docs/getting-started/example-datasets/laion5b.md,get-started/sample-datasets/laion5b.mdx,https://clickhouse.com/docs/getting-started/example-datasets/laion-5b-dataset,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/laion5b,matched,3b0b6bfe05ba8170,true,3b0b6bfe05ba8170,2026-05-13T15:43:26+00:00,false
-/getting-started/example-datasets/menus,docs/getting-started/example-datasets/menus.md,get-started/sample-datasets/menus.mdx,https://clickhouse.com/docs/getting-started/example-datasets/menus,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/menus,matched,0c0e0a6cf9fefd23,true,0c0e0a6cf9fefd23,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/metrica,docs/getting-started/example-datasets/anon_web_analytics_metrica.md,get-started/sample-datasets/anon-web-analytics-metrica.mdx,https://clickhouse.com/docs/getting-started/example-datasets/metrica,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/anon-web-analytics-metrica,matched,a8c2e26a008e74fd,true,a8c2e26a008e74fd,2026-05-13T13:16:51+00:00,false
-/getting-started/example-datasets/noaa,docs/getting-started/example-datasets/noaa.md,get-started/sample-datasets/noaa.mdx,https://clickhouse.com/docs/getting-started/example-datasets/noaa,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/noaa,matched,707ef06b299a5c16,true,707ef06b299a5c16,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/nyc-taxi,docs/getting-started/example-datasets/nyc-taxi.md,get-started/sample-datasets/nyc-taxi.mdx,https://clickhouse.com/docs/getting-started/example-datasets/nyc-taxi,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/nyc-taxi,matched,8fd814ace2327deb,true,8fd814ace2327deb,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/nypd_complaint_data,docs/getting-started/example-datasets/nypd_complaint_data.md,get-started/sample-datasets/nypd-complaint-data.mdx,https://clickhouse.com/docs/getting-started/example-datasets/nypd_complaint_data,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/nypd-complaint-data,matched,ec0425affd15c8e6,true,ec0425affd15c8e6,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/ontime,docs/getting-started/example-datasets/ontime.md,get-started/sample-datasets/ontime.mdx,https://clickhouse.com/docs/getting-started/example-datasets/ontime,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/ontime,matched,a27fbee07ebfb654,true,a27fbee07ebfb654,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/stackoverflow,docs/getting-started/example-datasets/stackoverflow.md,get-started/sample-datasets/stackoverflow.mdx,https://clickhouse.com/docs/getting-started/example-datasets/stackoverflow,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/stackoverflow,matched,f0af9a16658cd62f,true,f0af9a16658cd62f,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/star-schema,docs/getting-started/example-datasets/star-schema.md,get-started/sample-datasets/star-schema.mdx,https://clickhouse.com/docs/getting-started/example-datasets/star-schema,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/star-schema,matched,2389d79262fecaaf,true,2389d79262fecaaf,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/tpcds,docs/getting-started/example-datasets/tpcds.md,get-started/sample-datasets/tpcds.mdx,https://clickhouse.com/docs/getting-started/example-datasets/tpcds,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/tpcds,matched,d236a4a62291d682,true,d236a4a62291d682,2026-05-09T09:39:38+00:00,false
-/getting-started/example-datasets/tpch,docs/getting-started/example-datasets/tpch.md,get-started/sample-datasets/tpch.mdx,https://clickhouse.com/docs/getting-started/example-datasets/tpch,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/tpch,matched,4f7239d97f220911,true,4f7239d97f220911,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/tw-weather,docs/getting-started/example-datasets/tw-weather.md,get-started/sample-datasets/tw-weather.mdx,https://clickhouse.com/docs/getting-started/example-datasets/tw-weather,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/tw-weather,matched,df2e38e726ad5701,true,df2e38e726ad5701,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/uk-price-paid,docs/getting-started/example-datasets/uk-price-paid.md,get-started/sample-datasets/uk-price-paid.mdx,https://clickhouse.com/docs/getting-started/example-datasets/uk-price-paid,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/uk-price-paid,matched,4cc1991c7b87b22d,true,4cc1991c7b87b22d,2026-05-08T09:09:20+00:00,false
-/getting-started/example-datasets/wikistat,docs/getting-started/example-datasets/wikistat.md,get-started/sample-datasets/wikistat.mdx,https://clickhouse.com/docs/getting-started/example-datasets/wikistat,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/wikistat,matched,067bee4f308eb8fb,false,,,false
-/getting-started/example-datasets/youtube-dislikes,docs/getting-started/example-datasets/youtube-dislikes.md,get-started/sample-datasets/youtube-dislikes.mdx,https://clickhouse.com/docs/getting-started/example-datasets/youtube-dislikes,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/youtube-dislikes,matched,5c9a86027021d4fe,true,5c9a86027021d4fe,2026-05-09T17:02:01+00:00,false
-/getting-started/playground,docs/getting-started/playground.md,get-started/sample-datasets/playground.mdx,https://clickhouse.com/docs/getting-started/playground,https://private-7c7dfe99.mintlify.app/get-started/sample-datasets/playground,matched,f92edbf5343e20d9,true,4767e57ddf5e2089,2026-05-08T09:09:20+00:00,false
-/getting-started/quick-start/cloud,docs/getting-started/quick-start/cloud.mdx,get-started/setup/cloud.mdx,https://clickhouse.com/docs/getting-started/quick-start/cloud,https://private-7c7dfe99.mintlify.app/get-started/setup/cloud,matched,960691705a63f396,true,960691705a63f396,2026-05-19T11:54:08+00:00,false
-/getting-started/quick-start/oss,docs/getting-started/quick-start/oss.mdx,get-started/oss/oss.mdx,https://clickhouse.com/docs/getting-started/quick-start/oss,https://private-7c7dfe99.mintlify.app/get-started/oss/oss,matched,f64d3e2b35f55490,true,f64d3e2b35f55490,2026-05-09T14:51:09+00:00,false
-/guides/best-practices/sparse-primary-indexes,docs/guides/best-practices/sparse-primary-indexes.md,guides/cloud-oss/data-modelling/sparse-primary-indexes.mdx,https://clickhouse.com/docs/guides/best-practices/sparse-primary-indexes,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/sparse-primary-indexes,matched,63c6983ac8f3ca25,true,63c6983ac8f3ca25,2026-05-13T15:43:26+00:00,false
-/guides/creating-tables,docs/guides/starter_guides/creating-tables.md,get-started/oss/starter-guides/creating-tables.mdx,https://clickhouse.com/docs/guides/creating-tables,https://private-7c7dfe99.mintlify.app/get-started/oss/starter-guides/creating-tables,matched,b6af438f625ba4c6,true,86d29edfe0e45bab,2026-05-08T09:09:20+00:00,false
-/guides/developer/alternative-query-languages,docs/guides/developer/alternative-query-languages.md,concepts/features/configuration/settings/alternative-query-languages.mdx,https://clickhouse.com/docs/guides/developer/alternative-query-languages,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/alternative-query-languages,matched,18d89c08b848c225,true,18d89c08b848c225,2026-05-08T09:09:20+00:00,false
-/guides/developer/cascading-materialized-views,docs/guides/developer/cascading-materialized-views.md,concepts/features/materialized-views/cascading-materialized-views.mdx,https://clickhouse.com/docs/guides/developer/cascading-materialized-views,https://private-7c7dfe99.mintlify.app/concepts/features/materialized-views/cascading-materialized-views,matched,3957f570e6df3b67,true,de929d24863cbd89,2026-05-08T12:19:52+00:00,false
-/guides/developer/debugging-memory-issues,docs/guides/developer/debugging-memory-issues.md,concepts/features/performance/troubleshoot/debugging-memory-issues.mdx,https://clickhouse.com/docs/guides/developer/debugging-memory-issues,https://private-7c7dfe99.mintlify.app/concepts/features/performance/troubleshoot/debugging-memory-issues,matched,608bf1f8f486fb7b,true,608bf1f8f486fb7b,2026-05-13T13:16:51+00:00,false
-/guides/developer/deduplicating-inserts-on-retries,docs/guides/developer/deduplicating-inserts-on-retries.md,concepts/operations/insert/deduplicating-inserts-on-retries.mdx,https://clickhouse.com/docs/guides/developer/deduplicating-inserts-on-retries,https://private-7c7dfe99.mintlify.app/concepts/operations/insert/deduplicating-inserts-on-retries,matched,e7746a2deb43638a,true,e7746a2deb43638a,2026-05-07T14:49:41+00:00,false
-/guides/developer/deduplication,docs/guides/developer/deduplication.md,concepts/operations/insert/deduplication.mdx,https://clickhouse.com/docs/guides/developer/deduplication,https://private-7c7dfe99.mintlify.app/concepts/operations/insert/deduplication,matched,f9aeae51221b7482,true,f9aeae51221b7482,2026-05-08T09:09:20+00:00,false
-/guides/developer/dynamic-column-selection,docs/guides/developer/dynamic-column-selection.md,guides/cloud-oss/performance-and-monitoring/dynamic-column-selection.mdx,https://clickhouse.com/docs/guides/developer/dynamic-column-selection,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/performance-and-monitoring/dynamic-column-selection,matched,b2dcb07fb9a764eb,true,b2dcb07fb9a764eb,2026-05-08T12:19:52+00:00,false
-/guides/developer/lightweight-delete,docs/guides/developer/lightweight-delete.md,concepts/operations/delete/lightweight-delete.mdx,https://clickhouse.com/docs/guides/developer/lightweight-delete,https://private-7c7dfe99.mintlify.app/concepts/operations/delete/lightweight-delete,matched,3343c0796b471782,true,3343c0796b471782,2026-05-08T11:28:37+00:00,false
-/guides/developer/merge-table-function,docs/guides/developer/merge-table-function.md,guides/cloud-oss/data-modelling/merge-table-function.mdx,https://clickhouse.com/docs/guides/developer/merge-table-function,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/merge-table-function,matched,0e359696d3b55658,true,0e359696d3b55658,2026-05-08T12:19:52+00:00,false
-/guides/developer/mutations,docs/guides/starter_guides/mutations.md,get-started/oss/starter-guides/mutations.mdx,https://clickhouse.com/docs/guides/developer/mutations,https://private-7c7dfe99.mintlify.app/get-started/oss/starter-guides/mutations,matched,0c746c3e874f91d7,true,0c746c3e874f91d7,2026-05-13T13:16:51+00:00,false
-/guides/developer/overview,docs/guides/developer/index.md,concepts/advanced-guides/index.mdx,https://clickhouse.com/docs/guides/developer/overview,https://private-7c7dfe99.mintlify.app/concepts/advanced-guides,matched,5de6c401457b0dfb,true,ff571bfee3a04123,2026-05-08T09:09:20+00:00,false
-/guides/developer/stored-procedures-and-prepared-statements,docs/guides/developer/stored-procedures-and-prepared-statements.md,guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements.mdx,https://clickhouse.com/docs/guides/developer/stored-procedures-and-prepared-statements,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements,matched,a803f309cbac9563,true,a803f309cbac9563,2026-05-09T09:39:38+00:00,false
-/guides/developer/time-series-filling-gaps,docs/guides/developer/time-series-filling-gaps.md,guides/real-time-analytics/time-series/time-series-filling-gaps.mdx,https://clickhouse.com/docs/guides/developer/time-series-filling-gaps,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series/time-series-filling-gaps,matched,4b0b604654115f47,true,3b756f536f236634,2026-05-08T09:09:20+00:00,false
-/guides/developer/transactional,docs/sql-reference/transactions.md,concepts/operations/insert/transactions.mdx,https://clickhouse.com/docs/guides/developer/transactional,https://private-7c7dfe99.mintlify.app/concepts/operations/insert/transactions,matched,a0e30e85a93f908e,true,a0e30e85a93f908e,2026-05-08T09:09:20+00:00,false
-/guides/developer/ttl,docs/guides/developer/ttl.md,concepts/operations/delete/ttl.mdx,https://clickhouse.com/docs/guides/developer/ttl,https://private-7c7dfe99.mintlify.app/concepts/operations/delete/ttl,matched,51ac57439ff98f81,true,51ac57439ff98f81,2026-05-08T09:09:20+00:00,false
-/guides/developer/understanding-query-execution-with-the-analyzer,docs/guides/developer/understanding-query-execution-with-the-analyzer.md,guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx,https://clickhouse.com/docs/guides/developer/understanding-query-execution-with-the-analyzer,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer,matched,120434fe13197292,true,120434fe13197292,2026-05-08T09:09:20+00:00,false
-/guides/generating-test-data,docs/guides/starter_guides/generating-test-data.md,get-started/oss/starter-guides/generating-test-data.mdx,https://clickhouse.com/docs/guides/generating-test-data,https://private-7c7dfe99.mintlify.app/get-started/oss/starter-guides/generating-test-data,matched,98ee586c7e2c0230,true,78dc777b79fafb0a,2026-05-08T09:09:20+00:00,false
-/guides/inserting-data,docs/guides/starter_guides/inserting-data.md,get-started/oss/starter-guides/inserting-data.mdx,https://clickhouse.com/docs/guides/inserting-data,https://private-7c7dfe99.mintlify.app/get-started/oss/starter-guides/inserting-data,matched,0e190797730172e7,true,0e190797730172e7,2026-05-09T17:02:01+00:00,false
-/guides/joining-tables,docs/guides/joining-tables.md,concepts/operations/select/joining-tables.mdx,https://clickhouse.com/docs/guides/joining-tables,https://private-7c7dfe99.mintlify.app/concepts/operations/select/joining-tables,matched,6a518a92ae9cdabf,true,6a518a92ae9cdabf,2026-05-07T14:49:41+00:00,false
-/guides/manage-and-deploy-index,docs/guides/manage-and-deploy-index.md,,https://clickhouse.com/docs/guides/manage-and-deploy-index,,unmatched,54260ad275360657,false,,,false
-/guides/replacing-merge-tree,docs/guides/developer/replacing-merge-tree.md,concepts/operations/update/replacing-merge-tree.mdx,https://clickhouse.com/docs/guides/replacing-merge-tree,https://private-7c7dfe99.mintlify.app/concepts/operations/update/replacing-merge-tree,matched,e9ab353f4ebf8636,true,e9ab353f4ebf8636,2026-05-08T09:09:20+00:00,false
-/guides/separation-storage-compute,docs/guides/separation-storage-compute.md,guides/oss/deployment-and-scaling/separation-storage-compute.mdx,https://clickhouse.com/docs/guides/separation-storage-compute,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/separation-storage-compute,matched,aa13cd3a72637893,true,aa13cd3a72637893,2026-05-13T14:36:43+00:00,false
-/guides/sizing-and-hardware-recommendations,docs/best-practices/sizing-and-hardware-recommendations.md,guides/oss/best-practices/sizing-and-hardware-recommendations.mdx,https://clickhouse.com/docs/guides/sizing-and-hardware-recommendations,https://private-7c7dfe99.mintlify.app/guides/oss/best-practices/sizing-and-hardware-recommendations,matched,4c336baeea5cec81,true,4d62bbe0c3cf4b15,2026-05-08T09:09:20+00:00,false
-/guides/sre/configuring-ldap,docs/guides/sre/user-management/configuring-ldap.md,concepts/features/security/configuring-ldap.mdx,https://clickhouse.com/docs/guides/sre/configuring-ldap,https://private-7c7dfe99.mintlify.app/concepts/features/security/configuring-ldap,matched,3c5f7fc67fa9ba32,true,3c5f7fc67fa9ba32,2026-05-09T11:14:51+00:00,false
-/guides/sre/configuring-tls-acme-client,docs/guides/sre/tls/configuring-tls-acme-client.md,concepts/features/security/tls/configuring-tls-acme-client.mdx,https://clickhouse.com/docs/guides/sre/configuring-tls-acme-client,https://private-7c7dfe99.mintlify.app/concepts/features/security/tls/configuring-tls-acme-client,matched,a7172c8d70b67153,true,a7172c8d70b67153,2026-05-08T09:09:20+00:00,false
-/guides/sre/keeper/clickhouse-keeper,docs/guides/sre/keeper/index.md,guides/oss/deployment-and-scaling/keeper/index.mdx,https://clickhouse.com/docs/guides/sre/keeper/clickhouse-keeper,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/keeper,matched,63e2a806fa86aa09,true,63e2a806fa86aa09,2026-05-13T15:43:27+00:00,false
-/guides/sre/network-ports,docs/guides/sre/network-ports.md,concepts/features/security/network-ports.mdx,https://clickhouse.com/docs/guides/sre/network-ports,https://private-7c7dfe99.mintlify.app/concepts/features/security/network-ports,matched,dd0d451dd57c7315,true,e6c8ae6e9d572a20,2026-05-08T09:09:20+00:00,false
-/guides/sre/scaling-clusters,docs/guides/sre/scaling-clusters.md,guides/oss/deployment-and-scaling/scaling-clusters.mdx,https://clickhouse.com/docs/guides/sre/scaling-clusters,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/scaling-clusters,matched,898c8151d1d4b350,true,898c8151d1d4b350,2026-05-13T13:16:51+00:00,false
-/guides/sre/ssl-user-auth,docs/guides/sre/user-management/ssl-user-auth.md,concepts/features/security/ssl-user-auth.mdx,https://clickhouse.com/docs/guides/sre/ssl-user-auth,https://private-7c7dfe99.mintlify.app/concepts/features/security/ssl-user-auth,matched,e01b0f38186c6ddf,true,0d78b0da59d1d2e1,2026-05-09T11:14:51+00:00,false
-/guides/sre/tls,docs/guides/sre/tls/index.md,concepts/features/security/tls/index.mdx,https://clickhouse.com/docs/guides/sre/tls,https://private-7c7dfe99.mintlify.app/concepts/features/security/tls,matched,b04390f51bf1f598,true,b04390f51bf1f598,2026-05-07T14:49:41+00:00,false
-/guides/sre/tls/configuring-tls,docs/guides/sre/tls/configuring-tls.md,concepts/features/security/tls/configuring-tls.mdx,https://clickhouse.com/docs/guides/sre/tls/configuring-tls,https://private-7c7dfe99.mintlify.app/concepts/features/security/tls/configuring-tls,matched,8e0ceee521976b5b,true,8e0ceee521976b5b,2026-05-13T15:43:25+00:00,false
-/guides/troubleshooting,docs/guides/troubleshooting.md,get-started/oss/starter-guides/troubleshooting.mdx,https://clickhouse.com/docs/guides/troubleshooting,https://private-7c7dfe99.mintlify.app/get-started/oss/starter-guides/troubleshooting,matched,90eae81bd9fa9c7e,true,90eae81bd9fa9c7e,2026-05-08T09:09:20+00:00,false
-/guides/working-with-arrays,docs/guides/starter_guides/working_with_arrays.md,guides/cloud-oss/working-with-arrays.mdx,https://clickhouse.com/docs/guides/working-with-arrays,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/working-with-arrays,matched,292cab0829b8c6ee,true,292cab0829b8c6ee,2026-05-13T15:43:26+00:00,false
-/guides/working-with-joins,docs/guides/starter_guides/working_with_joins.md,guides/cloud-oss/working-with-joins.mdx,https://clickhouse.com/docs/guides/working-with-joins,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/working-with-joins,matched,d250ad1814890e6f,true,d250ad1814890e6f,2026-05-08T09:09:20+00:00,false
-/guides/writing-queries,docs/guides/starter_guides/writing-queries.md,get-started/oss/starter-guides/writing-queries.mdx,https://clickhouse.com/docs/guides/writing-queries,https://private-7c7dfe99.mintlify.app/get-started/oss/starter-guides/writing-queries,matched,e19f84fa332a03b0,true,e19f84fa332a03b0,2026-05-08T13:01:57+00:00,false
+/core/get-started/quick-start,docs/getting-started/quick-start/index.mdx,,https://clickhouse.com/docs/get-started/quick-start,,unmatched,42fe50c1e729beb1,false,,,false
+/getting-started/example-datasets/,docs/getting-started/index.md,core/get-started/sample-datasets/index.mdx,https://clickhouse.com/docs/getting-started/example-datasets/,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/index,matched,e6122dc92e53cd0b,true,674779f4d18973aa,2026-05-08T20:59:48+00:00,false
+/getting-started/example-datasets/amazon-reviews,docs/getting-started/example-datasets/amazon-reviews.md,core/get-started/sample-datasets/amazon-reviews.mdx,https://clickhouse.com/docs/getting-started/example-datasets/amazon-reviews,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/amazon-reviews,matched,ca42797c7300200d,true,ca42797c7300200d,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/amplab-benchmark,docs/getting-started/example-datasets/amplab-benchmark.md,core/get-started/sample-datasets/amplab-benchmark.mdx,https://clickhouse.com/docs/getting-started/example-datasets/amplab-benchmark,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/amplab-benchmark,matched,1d1ca4474fc25a6c,true,1d1ca4474fc25a6c,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/brown-benchmark,docs/getting-started/example-datasets/brown-benchmark.md,core/get-started/sample-datasets/brown-benchmark.mdx,https://clickhouse.com/docs/getting-started/example-datasets/brown-benchmark,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/brown-benchmark,matched,9206b8172e5adaad,true,9206b8172e5adaad,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/cell-towers,docs/getting-started/example-datasets/cell-towers.md,core/get-started/sample-datasets/cell-towers.mdx,https://clickhouse.com/docs/getting-started/example-datasets/cell-towers,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/cell-towers,matched,0cb34ed3c4fd0aed,true,0cb34ed3c4fd0aed,2026-05-08T11:18:28+00:00,false
+/getting-started/example-datasets/covid19,docs/getting-started/example-datasets/covid19.md,core/get-started/sample-datasets/covid19.mdx,https://clickhouse.com/docs/getting-started/example-datasets/covid19,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/covid19,matched,f9888552898ecec0,true,f9888552898ecec0,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/criteo,docs/getting-started/example-datasets/criteo.md,core/get-started/sample-datasets/criteo.mdx,https://clickhouse.com/docs/getting-started/example-datasets/criteo,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/criteo,matched,de5a0b3a29562a37,true,de5a0b3a29562a37,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/dbpedia-dataset,docs/getting-started/example-datasets/dbpedia.md,core/get-started/sample-datasets/dbpedia.mdx,https://clickhouse.com/docs/getting-started/example-datasets/dbpedia-dataset,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/dbpedia,matched,c658b35c333a9b84,true,c658b35c333a9b84,2026-05-13T15:43:25+00:00,false
+/getting-started/example-datasets/environmental-sensors,docs/getting-started/example-datasets/environmental-sensors.md,core/get-started/sample-datasets/environmental-sensors.mdx,https://clickhouse.com/docs/getting-started/example-datasets/environmental-sensors,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/environmental-sensors,matched,32916f14b8104181,true,32916f14b8104181,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/foursquare-places,docs/getting-started/example-datasets/foursquare-os-places.md,core/get-started/sample-datasets/foursquare-os-places.mdx,https://clickhouse.com/docs/getting-started/example-datasets/foursquare-places,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/foursquare-os-places,matched,068b866e905fa187,true,068b866e905fa187,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/github,docs/getting-started/example-datasets/github.md,core/get-started/sample-datasets/github.mdx,https://clickhouse.com/docs/getting-started/example-datasets/github,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/github,matched,62ff108179e59685,true,62ff108179e59685,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/github-events,docs/getting-started/example-datasets/github-events.md,core/get-started/sample-datasets/github-events.mdx,https://clickhouse.com/docs/getting-started/example-datasets/github-events,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/github-events,matched,b0a4bb65550f834d,true,b0a4bb65550f834d,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/hacker-news,docs/getting-started/example-datasets/hacker-news.md,core/get-started/sample-datasets/hacker-news.mdx,https://clickhouse.com/docs/getting-started/example-datasets/hacker-news,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/hacker-news,matched,b41cafd48b8803a7,true,b41cafd48b8803a7,2026-05-13T15:43:25+00:00,false
+/getting-started/example-datasets/hackernews-vector-search-dataset,docs/getting-started/example-datasets/hacker-news-vector-search.md,core/get-started/sample-datasets/hacker-news-vector-search.mdx,https://clickhouse.com/docs/getting-started/example-datasets/hackernews-vector-search-dataset,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/hacker-news-vector-search,matched,f73d712822089e63,true,f73d712822089e63,2026-05-09T17:02:01+00:00,false
+/getting-started/example-datasets/laion-400m-dataset,docs/getting-started/example-datasets/laion.md,core/get-started/sample-datasets/laion.mdx,https://clickhouse.com/docs/getting-started/example-datasets/laion-400m-dataset,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/laion,matched,0ae7e345a21808fb,true,0ae7e345a21808fb,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/laion-5b-dataset,docs/getting-started/example-datasets/laion5b.md,core/get-started/sample-datasets/laion5b.mdx,https://clickhouse.com/docs/getting-started/example-datasets/laion-5b-dataset,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/laion5b,matched,3b0b6bfe05ba8170,true,3b0b6bfe05ba8170,2026-05-13T15:43:26+00:00,false
+/getting-started/example-datasets/menus,docs/getting-started/example-datasets/menus.md,core/get-started/sample-datasets/menus.mdx,https://clickhouse.com/docs/getting-started/example-datasets/menus,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/menus,matched,0c0e0a6cf9fefd23,true,0c0e0a6cf9fefd23,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/metrica,docs/getting-started/example-datasets/anon_web_analytics_metrica.md,core/get-started/sample-datasets/anon-web-analytics-metrica.mdx,https://clickhouse.com/docs/getting-started/example-datasets/metrica,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/anon-web-analytics-metrica,matched,a8c2e26a008e74fd,true,a8c2e26a008e74fd,2026-05-13T13:16:51+00:00,false
+/getting-started/example-datasets/noaa,docs/getting-started/example-datasets/noaa.md,core/get-started/sample-datasets/noaa.mdx,https://clickhouse.com/docs/getting-started/example-datasets/noaa,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/noaa,matched,707ef06b299a5c16,true,707ef06b299a5c16,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/nyc-taxi,docs/getting-started/example-datasets/nyc-taxi.md,core/get-started/sample-datasets/nyc-taxi.mdx,https://clickhouse.com/docs/getting-started/example-datasets/nyc-taxi,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/nyc-taxi,matched,8fd814ace2327deb,true,8fd814ace2327deb,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/nypd_complaint_data,docs/getting-started/example-datasets/nypd_complaint_data.md,core/get-started/sample-datasets/nypd-complaint-data.mdx,https://clickhouse.com/docs/getting-started/example-datasets/nypd_complaint_data,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/nypd-complaint-data,matched,ec0425affd15c8e6,true,ec0425affd15c8e6,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/ontime,docs/getting-started/example-datasets/ontime.md,core/get-started/sample-datasets/ontime.mdx,https://clickhouse.com/docs/getting-started/example-datasets/ontime,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/ontime,matched,a27fbee07ebfb654,true,a27fbee07ebfb654,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/stackoverflow,docs/getting-started/example-datasets/stackoverflow.md,core/get-started/sample-datasets/stackoverflow.mdx,https://clickhouse.com/docs/getting-started/example-datasets/stackoverflow,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/stackoverflow,matched,f0af9a16658cd62f,true,f0af9a16658cd62f,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/star-schema,docs/getting-started/example-datasets/star-schema.md,core/get-started/sample-datasets/star-schema.mdx,https://clickhouse.com/docs/getting-started/example-datasets/star-schema,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/star-schema,matched,2389d79262fecaaf,true,2389d79262fecaaf,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/tpcds,docs/getting-started/example-datasets/tpcds.md,core/get-started/sample-datasets/tpcds.mdx,https://clickhouse.com/docs/getting-started/example-datasets/tpcds,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/tpcds,matched,d236a4a62291d682,true,d236a4a62291d682,2026-05-09T09:39:38+00:00,false
+/getting-started/example-datasets/tpch,docs/getting-started/example-datasets/tpch.md,core/get-started/sample-datasets/tpch.mdx,https://clickhouse.com/docs/getting-started/example-datasets/tpch,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/tpch,matched,4f7239d97f220911,true,4f7239d97f220911,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/tw-weather,docs/getting-started/example-datasets/tw-weather.md,core/get-started/sample-datasets/tw-weather.mdx,https://clickhouse.com/docs/getting-started/example-datasets/tw-weather,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/tw-weather,matched,df2e38e726ad5701,true,df2e38e726ad5701,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/uk-price-paid,docs/getting-started/example-datasets/uk-price-paid.md,core/get-started/sample-datasets/uk-price-paid.mdx,https://clickhouse.com/docs/getting-started/example-datasets/uk-price-paid,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/uk-price-paid,matched,4cc1991c7b87b22d,true,4cc1991c7b87b22d,2026-05-08T09:09:20+00:00,false
+/getting-started/example-datasets/wikistat,docs/getting-started/example-datasets/wikistat.md,core/get-started/sample-datasets/wikistat.mdx,https://clickhouse.com/docs/getting-started/example-datasets/wikistat,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/wikistat,matched,067bee4f308eb8fb,false,,,false
+/getting-started/example-datasets/youtube-dislikes,docs/getting-started/example-datasets/youtube-dislikes.md,core/get-started/sample-datasets/youtube-dislikes.mdx,https://clickhouse.com/docs/getting-started/example-datasets/youtube-dislikes,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/youtube-dislikes,matched,5c9a86027021d4fe,true,5c9a86027021d4fe,2026-05-21T08:18:01+00:00,false
+/getting-started/playground,docs/getting-started/playground.md,core/get-started/sample-datasets/playground.mdx,https://clickhouse.com/docs/getting-started/playground,https://private-7c7dfe99.mintlify.app/core/get-started/sample-datasets/playground,matched,f92edbf5343e20d9,true,4767e57ddf5e2089,2026-05-08T09:09:20+00:00,false
+/getting-started/quick-start/cloud,docs/getting-started/quick-start/cloud.mdx,core/get-started/setup/cloud.mdx,https://clickhouse.com/docs/getting-started/quick-start/cloud,https://private-7c7dfe99.mintlify.app/core/get-started/setup/cloud,matched,960691705a63f396,true,960691705a63f396,2026-05-19T11:54:08+00:00,false
+/getting-started/quick-start/oss,docs/getting-started/quick-start/oss.mdx,core/get-started/setup/self-managed/quick-install.mdx,https://clickhouse.com/docs/getting-started/quick-start/oss,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/quick-install,matched,f64d3e2b35f55490,true,f64d3e2b35f55490,2026-05-09T14:51:09+00:00,false
+/core/guides/best-practices/sparse-primary-indexes,docs/guides/best-practices/sparse-primary-indexes.md,core/guides/clickhouse/data-modelling/sparse-primary-indexes.mdx,https://clickhouse.com/docs/guides/best-practices/sparse-primary-indexes,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/sparse-primary-indexes,matched,63c6983ac8f3ca25,true,63c6983ac8f3ca25,2026-05-13T15:43:26+00:00,false
+/core/guides/creating-tables,docs/guides/starter_guides/creating-tables.md,core/get-started/quickstarts/creating-tables.mdx,https://clickhouse.com/docs/guides/creating-tables,https://private-7c7dfe99.mintlify.app/core/get-started/quickstarts/creating-tables,matched,b6af438f625ba4c6,true,86d29edfe0e45bab,2026-05-08T09:09:20+00:00,false
+/core/guides/developer/alternative-query-languages,docs/guides/developer/alternative-query-languages.md,core/concepts/features/configuration/settings/alternative-query-languages.mdx,https://clickhouse.com/docs/guides/developer/alternative-query-languages,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/alternative-query-languages,matched,18d89c08b848c225,true,18d89c08b848c225,2026-05-08T09:09:20+00:00,false
+/core/guides/developer/cascading-materialized-views,docs/guides/developer/cascading-materialized-views.md,core/concepts/features/materialized-views/cascading-materialized-views.mdx,https://clickhouse.com/docs/guides/developer/cascading-materialized-views,https://private-7c7dfe99.mintlify.app/core/concepts/features/materialized-views/cascading-materialized-views,matched,3957f570e6df3b67,true,de929d24863cbd89,2026-05-08T12:19:52+00:00,false
+/core/guides/developer/debugging-memory-issues,docs/guides/developer/debugging-memory-issues.md,core/concepts/features/performance/troubleshoot/debugging-memory-issues.mdx,https://clickhouse.com/docs/guides/developer/debugging-memory-issues,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/troubleshoot/debugging-memory-issues,matched,608bf1f8f486fb7b,true,608bf1f8f486fb7b,2026-05-13T13:16:51+00:00,false
+/core/guides/developer/deduplicating-inserts-on-retries,docs/guides/developer/deduplicating-inserts-on-retries.md,core/concepts/features/operations/insert/deduplicating-inserts-on-retries.mdx,https://clickhouse.com/docs/guides/developer/deduplicating-inserts-on-retries,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/insert/deduplicating-inserts-on-retries,matched,e7746a2deb43638a,true,e7746a2deb43638a,2026-05-07T14:49:41+00:00,false
+/core/guides/developer/deduplication,docs/guides/developer/deduplication.md,core/concepts/features/operations/insert/deduplication.mdx,https://clickhouse.com/docs/guides/developer/deduplication,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/insert/deduplication,matched,f9aeae51221b7482,true,f9aeae51221b7482,2026-05-08T09:09:20+00:00,false
+/core/guides/developer/dynamic-column-selection,docs/guides/developer/dynamic-column-selection.md,core/guides/clickhouse/performance-and-monitoring/dynamic-column-selection.mdx,https://clickhouse.com/docs/guides/developer/dynamic-column-selection,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/performance-and-monitoring/dynamic-column-selection,matched,b2dcb07fb9a764eb,true,b2dcb07fb9a764eb,2026-05-08T12:19:52+00:00,false
+/core/guides/developer/lightweight-delete,docs/guides/developer/lightweight-delete.md,core/concepts/features/operations/delete/lightweight-delete.mdx,https://clickhouse.com/docs/guides/developer/lightweight-delete,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/delete/lightweight-delete,matched,3343c0796b471782,true,3343c0796b471782,2026-05-08T11:28:37+00:00,false
+/core/guides/developer/merge-table-function,docs/guides/developer/merge-table-function.md,core/guides/clickhouse/data-modelling/merge-table-function.mdx,https://clickhouse.com/docs/guides/developer/merge-table-function,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/merge-table-function,matched,0e359696d3b55658,true,0e359696d3b55658,2026-05-08T12:19:52+00:00,false
+/core/guides/developer/mutations,docs/guides/starter_guides/mutations.md,core/get-started/quickstarts/mutations.mdx,https://clickhouse.com/docs/guides/developer/mutations,https://private-7c7dfe99.mintlify.app/core/get-started/quickstarts/mutations,matched,0c746c3e874f91d7,true,0c746c3e874f91d7,2026-05-13T13:16:51+00:00,false
+/core/guides/developer/overview,docs/guides/developer/index.md,core/guides/clickhouse/index.mdx,https://clickhouse.com/docs/guides/developer/overview,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/index,matched,5de6c401457b0dfb,true,ff571bfee3a04123,2026-05-08T09:09:20+00:00,false
+/core/guides/developer/stored-procedures-and-prepared-statements,docs/guides/developer/stored-procedures-and-prepared-statements.md,core/guides/clickhouse/data-modelling/stored-procedures-and-prepared-statements.mdx,https://clickhouse.com/docs/guides/developer/stored-procedures-and-prepared-statements,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/stored-procedures-and-prepared-statements,matched,a803f309cbac9563,true,a803f309cbac9563,2026-05-09T09:39:38+00:00,false
+/core/guides/developer/time-series-filling-gaps,docs/guides/developer/time-series-filling-gaps.md,core/guides/use-cases/real-time-analytics/time-series/time-series-filling-gaps.mdx,https://clickhouse.com/docs/guides/developer/time-series-filling-gaps,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/time-series-filling-gaps,matched,4b0b604654115f47,true,3b756f536f236634,2026-05-08T09:09:20+00:00,false
+/core/guides/developer/transactional,docs/sql-reference/transactions.md,core/concepts/features/operations/insert/transactions.mdx,https://clickhouse.com/docs/guides/developer/transactional,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/insert/transactions,matched,a0e30e85a93f908e,true,a0e30e85a93f908e,2026-05-08T09:09:20+00:00,false
+/core/guides/developer/ttl,docs/guides/developer/ttl.md,core/concepts/features/operations/delete/ttl.mdx,https://clickhouse.com/docs/guides/developer/ttl,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/delete/ttl,matched,51ac57439ff98f81,true,51ac57439ff98f81,2026-05-08T09:09:20+00:00,false
+/core/guides/developer/understanding-query-execution-with-the-analyzer,docs/guides/developer/understanding-query-execution-with-the-analyzer.md,core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx,https://clickhouse.com/docs/guides/developer/understanding-query-execution-with-the-analyzer,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer,matched,120434fe13197292,true,120434fe13197292,2026-05-08T09:09:20+00:00,false
+/core/guides/generating-test-data,docs/guides/starter_guides/generating-test-data.md,core/guides/clickhouse/data-modelling/generating-test-data.mdx,https://clickhouse.com/docs/guides/generating-test-data,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-modelling/generating-test-data,matched,98ee586c7e2c0230,true,78dc777b79fafb0a,2026-05-08T09:09:20+00:00,false
+/core/guides/inserting-data,docs/guides/starter_guides/inserting-data.md,core/concepts/features/operations/insert/inserting-data.mdx,https://clickhouse.com/docs/guides/inserting-data,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/insert/inserting-data,matched,0e190797730172e7,true,0e190797730172e7,2026-05-09T17:02:01+00:00,false
+/core/guides/joining-tables,docs/guides/joining-tables.md,core/concepts/features/operations/select/joining-tables.mdx,https://clickhouse.com/docs/guides/joining-tables,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/select/joining-tables,matched,6a518a92ae9cdabf,true,6a518a92ae9cdabf,2026-05-07T14:49:41+00:00,false
+/core/guides/manage-and-deploy-index,docs/guides/manage-and-deploy-index.md,,https://clickhouse.com/docs/guides/manage-and-deploy-index,,unmatched,54260ad275360657,false,,,false
+/core/guides/replacing-merge-tree,docs/guides/developer/replacing-merge-tree.md,core/concepts/features/operations/update/replacing-merge-tree.mdx,https://clickhouse.com/docs/guides/replacing-merge-tree,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/update/replacing-merge-tree,matched,e9ab353f4ebf8636,true,e9ab353f4ebf8636,2026-05-08T09:09:20+00:00,false
+/core/guides/separation-storage-compute,docs/guides/separation-storage-compute.md,core/guides/oss/deployment-and-scaling/separation-storage-compute.mdx,https://clickhouse.com/docs/guides/separation-storage-compute,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/separation-storage-compute,matched,aa13cd3a72637893,true,aa13cd3a72637893,2026-05-13T14:36:43+00:00,false
+/core/guides/sizing-and-hardware-recommendations,docs/best-practices/sizing-and-hardware-recommendations.md,core/guides/oss/best-practices/sizing-and-hardware-recommendations.mdx,https://clickhouse.com/docs/guides/sizing-and-hardware-recommendations,https://private-7c7dfe99.mintlify.app/core/guides/oss/best-practices/sizing-and-hardware-recommendations,matched,4c336baeea5cec81,true,4d62bbe0c3cf4b15,2026-05-08T09:09:20+00:00,false
+/core/guides/sre/configuring-ldap,docs/guides/sre/user-management/configuring-ldap.md,core/concepts/features/security/configuring-ldap.mdx,https://clickhouse.com/docs/guides/sre/configuring-ldap,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/configuring-ldap,matched,3c5f7fc67fa9ba32,true,3c5f7fc67fa9ba32,2026-05-09T11:14:51+00:00,false
+/core/guides/sre/configuring-tls-acme-client,docs/guides/sre/tls/configuring-tls-acme-client.md,core/concepts/features/security/tls/configuring-tls-acme-client.mdx,https://clickhouse.com/docs/guides/sre/configuring-tls-acme-client,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/tls/configuring-tls-acme-client,matched,a7172c8d70b67153,true,a7172c8d70b67153,2026-05-08T09:09:20+00:00,false
+/core/guides/sre/keeper/clickhouse-keeper,docs/guides/sre/keeper/index.md,core/guides/oss/deployment-and-scaling/keeper/index.mdx,https://clickhouse.com/docs/guides/sre/keeper/clickhouse-keeper,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/keeper/index,matched,63e2a806fa86aa09,true,63e2a806fa86aa09,2026-05-13T15:43:27+00:00,false
+/core/guides/sre/network-ports,docs/guides/sre/network-ports.md,core/concepts/features/security/network-ports.mdx,https://clickhouse.com/docs/guides/sre/network-ports,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/network-ports,matched,dd0d451dd57c7315,true,e6c8ae6e9d572a20,2026-05-08T09:09:20+00:00,false
+/core/guides/sre/scaling-clusters,docs/guides/sre/scaling-clusters.md,core/guides/oss/deployment-and-scaling/scaling-clusters.mdx,https://clickhouse.com/docs/guides/sre/scaling-clusters,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/scaling-clusters,matched,898c8151d1d4b350,true,898c8151d1d4b350,2026-05-13T13:16:51+00:00,false
+/core/guides/sre/ssl-user-auth,docs/guides/sre/user-management/ssl-user-auth.md,core/concepts/features/security/ssl-user-auth.mdx,https://clickhouse.com/docs/guides/sre/ssl-user-auth,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/ssl-user-auth,matched,e01b0f38186c6ddf,true,0d78b0da59d1d2e1,2026-05-09T11:14:51+00:00,false
+/core/guides/sre/tls,docs/guides/sre/tls/index.md,core/concepts/features/security/tls/index.mdx,https://clickhouse.com/docs/guides/sre/tls,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/tls/index,matched,b04390f51bf1f598,true,b04390f51bf1f598,2026-05-07T14:49:41+00:00,false
+/core/guides/sre/tls/configuring-tls,docs/guides/sre/tls/configuring-tls.md,core/concepts/features/security/tls/configuring-tls.mdx,https://clickhouse.com/docs/guides/sre/tls/configuring-tls,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/tls/configuring-tls,matched,8e0ceee521976b5b,true,8e0ceee521976b5b,2026-05-13T15:43:25+00:00,false
+/core/guides/troubleshooting,docs/guides/troubleshooting.md,resources/support-center/troubleshooting/troubleshooting.mdx,https://clickhouse.com/docs/guides/troubleshooting,https://private-7c7dfe99.mintlify.app/resources/support-center/troubleshooting/troubleshooting,matched,90eae81bd9fa9c7e,true,90eae81bd9fa9c7e,2026-05-08T09:09:20+00:00,false
+/core/guides/working-with-arrays,docs/guides/starter_guides/working_with_arrays.md,core/guides/clickhouse/working-with-arrays.mdx,https://clickhouse.com/docs/guides/working-with-arrays,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/working-with-arrays,matched,292cab0829b8c6ee,true,292cab0829b8c6ee,2026-05-13T15:43:26+00:00,false
+/core/guides/working-with-joins,docs/guides/starter_guides/working_with_joins.md,core/guides/clickhouse/working-with-joins.mdx,https://clickhouse.com/docs/guides/working-with-joins,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/working-with-joins,matched,d250ad1814890e6f,true,d250ad1814890e6f,2026-05-08T09:09:20+00:00,false
+/core/guides/writing-queries,docs/guides/starter_guides/writing-queries.md,core/get-started/quickstarts/writing-queries.mdx,https://clickhouse.com/docs/guides/writing-queries,https://private-7c7dfe99.mintlify.app/core/get-started/quickstarts/writing-queries,matched,e19f84fa332a03b0,true,e19f84fa332a03b0,2026-05-08T13:01:57+00:00,false
/infrastructure/deployment-options,docs/cloud/features/05_infrastructure/deployment-options.md,products/cloud/features/infrastructure/deployment-options.mdx,https://clickhouse.com/docs/infrastructure/deployment-options,https://private-7c7dfe99.mintlify.app/products/cloud/features/infrastructure/deployment-options,matched,4b953a6d2489fbcc,true,4b953a6d2489fbcc,2026-05-13T13:16:51+00:00,false
-/install,docs/getting-started/install/install.mdx,get-started/setup/self-managed/install.mdx,https://clickhouse.com/docs/install,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/install,matched,97fb6ffc495e1b39,true,97fb6ffc495e1b39,2026-05-09T14:51:09+00:00,false
-/install/advanced,docs/getting-started/install/advanced.md,get-started/setup/self-managed/advanced.mdx,https://clickhouse.com/docs/install/advanced,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/advanced,matched,969d941a2d49b266,true,969d941a2d49b266,2026-05-08T09:09:20+00:00,false
-/install/debian_ubuntu,docs/getting-started/install/debian_ubuntu.md,get-started/setup/self-managed/debian-ubuntu.mdx,https://clickhouse.com/docs/install/debian_ubuntu,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/debian-ubuntu,matched,c66b9e2d0f4d5e38,true,c66b9e2d0f4d5e38,2026-05-09T14:41:10+00:00,false
-/install/docker,docs/getting-started/install/docker.md,get-started/setup/self-managed/docker.mdx,https://clickhouse.com/docs/install/docker,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/docker,matched,c4a33214adceb28b,true,c4a33214adceb28b,2026-05-09T14:41:10+00:00,false
-/install/linux_other,docs/getting-started/install/other_linux.md,get-started/setup/self-managed/other-linux.mdx,https://clickhouse.com/docs/install/linux_other,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/other-linux,matched,2beff12ea84429b1,true,2beff12ea84429b1,2026-05-09T14:41:11+00:00,false
-/install/macOS,docs/getting-started/install/macos.md,get-started/setup/self-managed/macos.mdx,https://clickhouse.com/docs/install/macOS,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/macos,matched,53b8019634b145bd,true,53b8019634b145bd,2026-05-09T14:41:11+00:00,false
-/install/nixos,docs/getting-started/install/nixos.md,get-started/setup/self-managed/nixos.mdx,https://clickhouse.com/docs/install/nixos,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/nixos,matched,60fa53acb957fe4f,true,60fa53acb957fe4f,2026-05-09T14:41:11+00:00,false
-/install/quick-install,docs/getting-started/install/quick-install.md,get-started/setup/self-managed/quick-install.mdx,https://clickhouse.com/docs/install/quick-install,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/quick-install,matched,a9f32ded1b5958de,true,a9f32ded1b5958de,2026-05-09T14:41:11+00:00,false
-/install/redhat,docs/getting-started/install/redhat.md,get-started/setup/self-managed/redhat.mdx,https://clickhouse.com/docs/install/redhat,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/redhat,matched,17f1e539b1b6e775,true,17f1e539b1b6e775,2026-05-09T14:41:11+00:00,false
-/install/windows,docs/getting-started/install/windows.md,get-started/setup/self-managed/windows.mdx,https://clickhouse.com/docs/install/windows,https://private-7c7dfe99.mintlify.app/get-started/setup/self-managed/windows,matched,b13281a5fbb00f88,true,b13281a5fbb00f88,2026-05-09T14:41:11+00:00,false
+/install,docs/getting-started/install/install.mdx,core/get-started/setup/install.mdx,https://clickhouse.com/docs/install,https://private-7c7dfe99.mintlify.app/core/get-started/setup/install,matched,97fb6ffc495e1b39,true,97fb6ffc495e1b39,2026-05-09T14:51:09+00:00,false
+/install/advanced,docs/getting-started/install/advanced.md,core/get-started/setup/self-managed/advanced.mdx,https://clickhouse.com/docs/install/advanced,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/advanced,matched,969d941a2d49b266,true,969d941a2d49b266,2026-05-08T09:09:20+00:00,false
+/install/debian_ubuntu,docs/getting-started/install/debian_ubuntu.md,core/get-started/setup/self-managed/debian-ubuntu.mdx,https://clickhouse.com/docs/install/debian_ubuntu,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/debian-ubuntu,matched,c66b9e2d0f4d5e38,true,c66b9e2d0f4d5e38,2026-05-09T14:41:10+00:00,false
+/install/docker,docs/getting-started/install/docker.md,core/get-started/setup/self-managed/docker.mdx,https://clickhouse.com/docs/install/docker,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/docker,matched,c4a33214adceb28b,true,c4a33214adceb28b,2026-05-09T14:41:10+00:00,false
+/install/linux_other,docs/getting-started/install/other_linux.md,core/get-started/setup/self-managed/other-linux.mdx,https://clickhouse.com/docs/install/linux_other,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/other-linux,matched,2beff12ea84429b1,true,2beff12ea84429b1,2026-05-09T14:41:11+00:00,false
+/install/macOS,docs/getting-started/install/macos.md,core/get-started/setup/self-managed/macos.mdx,https://clickhouse.com/docs/install/macOS,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/macos,matched,53b8019634b145bd,true,53b8019634b145bd,2026-05-09T14:41:11+00:00,false
+/install/nixos,docs/getting-started/install/nixos.md,core/get-started/setup/self-managed/nixos.mdx,https://clickhouse.com/docs/install/nixos,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/nixos,matched,60fa53acb957fe4f,true,60fa53acb957fe4f,2026-05-09T14:41:11+00:00,false
+/install/quick-install,docs/getting-started/install/quick-install.md,,https://clickhouse.com/docs/install/quick-install,,unmatched,a9f32ded1b5958de,false,,,false
+/install/redhat,docs/getting-started/install/redhat.md,core/get-started/setup/self-managed/redhat.mdx,https://clickhouse.com/docs/install/redhat,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/redhat,matched,17f1e539b1b6e775,true,17f1e539b1b6e775,2026-05-09T14:41:11+00:00,false
+/install/windows,docs/getting-started/install/windows.md,core/get-started/setup/self-managed/windows.mdx,https://clickhouse.com/docs/install/windows,https://private-7c7dfe99.mintlify.app/core/get-started/setup/self-managed/windows,matched,b13281a5fbb00f88,true,b13281a5fbb00f88,2026-05-09T14:41:11+00:00,false
/integrations,docs/integrations/index.mdx,integrations/connectors/home.mdx,https://clickhouse.com/docs/integrations,https://private-7c7dfe99.mintlify.app/integrations/connectors/home,matched,d00bb1a1aad83498,true,d00bb1a1aad83498,2026-05-08T09:34:32+00:00,false
/integrations/airbyte,docs/integrations/data-ingestion/etl-tools/airbyte-and-clickhouse.md,integrations/connectors/data-ingestion/etl-tools/airbyte-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/airbyte,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/airbyte-and-clickhouse,matched,2d7448b1256b9906,true,2d7448b1256b9906,2026-05-09T11:14:51+00:00,false
/integrations/apache-beam,docs/integrations/data-ingestion/etl-tools/apache-beam.md,integrations/connectors/data-ingestion/etl-tools/apache-beam.mdx,https://clickhouse.com/docs/integrations/apache-beam,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/apache-beam,matched,df6bfe396ac5e67b,true,df6bfe396ac5e67b,2026-05-08T09:09:20+00:00,false
/integrations/apache-flink,docs/integrations/data-ingestion/apache-flink/flink-connector.md,integrations/connectors/data-ingestion/apache-flink.mdx,https://clickhouse.com/docs/integrations/apache-flink,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/apache-flink,matched,44e43d82ba0a62e4,true,44e43d82ba0a62e4,2026-05-08T13:01:57+00:00,false
-/integrations/apache-spark,docs/integrations/data-ingestion/apache-spark/index.md,integrations/connectors/data-ingestion/apache-spark/index.mdx,https://clickhouse.com/docs/integrations/apache-spark,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/apache-spark,matched,c2fbaf14aa1297ec,true,c2fbaf14aa1297ec,2026-05-08T11:53:27+00:00,false
+/integrations/apache-spark,docs/integrations/data-ingestion/apache-spark/index.md,integrations/connectors/data-ingestion/apache-spark/index.mdx,https://clickhouse.com/docs/integrations/apache-spark,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/apache-spark/index,matched,c2fbaf14aa1297ec,true,c2fbaf14aa1297ec,2026-05-08T11:53:27+00:00,false
/integrations/apache-spark/spark-jdbc,docs/integrations/data-ingestion/apache-spark/spark-jdbc.md,integrations/connectors/data-ingestion/apache-spark/spark-jdbc.mdx,https://clickhouse.com/docs/integrations/apache-spark/spark-jdbc,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/apache-spark/spark-jdbc,matched,a061d71f4a780021,true,a061d71f4a780021,2026-05-08T09:52:53+00:00,false
/integrations/apache-spark/spark-native-connector,docs/integrations/data-ingestion/apache-spark/spark-native-connector.md,integrations/connectors/data-ingestion/apache-spark/spark-native-connector.mdx,https://clickhouse.com/docs/integrations/apache-spark/spark-native-connector,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/apache-spark/spark-native-connector,matched,f84fd4b2f752737e,true,f84fd4b2f752737e,2026-05-08T09:52:53+00:00,false
/integrations/apify,docs/integrations/data-ingestion/etl-tools/apify-and-clickhouse.md,integrations/connectors/data-ingestion/etl-tools/apify-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/apify,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/apify-and-clickhouse,matched,dcc29ab87e4d2fbf,true,dcc29ab87e4d2fbf,2026-05-13T13:11:55+00:00,false
/integrations/artie,docs/integrations/data-ingestion/etl-tools/artie-and-clickhouse.md,integrations/connectors/data-ingestion/community-integrations/artie-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/artie,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/community-integrations/artie-and-clickhouse,matched,4c4eaa3e44a1e06d,true,4c4eaa3e44a1e06d,2026-05-08T09:09:20+00:00,false
/integrations/astrato,docs/integrations/data-visualization/community_integrations/astrato-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/astrato-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/astrato,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/astrato-and-clickhouse,matched,67ac362f101c1fc0,true,67ac362f101c1fc0,2026-05-08T09:16:50+00:00,false
/integrations/audit-splunk,docs/integrations/tools/data-integration/splunk/index.md,integrations/connectors/data-integrations/integrations/splunk.mdx,https://clickhouse.com/docs/integrations/audit-splunk,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/integrations/splunk,matched,7b7eb559e5ba09bb,true,7b7eb559e5ba09bb,2026-05-08T09:09:20+00:00,false
-/integrations/azure-data-factory,docs/integrations/data-ingestion/azure-data-factory/index.md,integrations/connectors/data-ingestion/azure/azure-data-factory/index.mdx,https://clickhouse.com/docs/integrations/azure-data-factory,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/azure/azure-data-factory,matched,5fab1af569d0848a,true,5fab1af569d0848a,2026-05-08T15:29:53+00:00,false
+/integrations/azure-data-factory,docs/integrations/data-ingestion/azure-data-factory/index.md,integrations/connectors/data-ingestion/azure/azure-data-factory/index.mdx,https://clickhouse.com/docs/integrations/azure-data-factory,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/azure/azure-data-factory/index,matched,5fab1af569d0848a,true,5fab1af569d0848a,2026-05-08T15:29:53+00:00,false
/integrations/azure-data-factory/http-interface,docs/integrations/data-ingestion/azure-data-factory/using_http_interface.md,integrations/connectors/data-ingestion/azure/azure-data-factory/using-http-interface.mdx,https://clickhouse.com/docs/integrations/azure-data-factory/http-interface,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/azure/azure-data-factory/using-http-interface,matched,4971fbf4922b8563,true,4971fbf4922b8563,2026-05-09T11:14:51+00:00,false
/integrations/azure-data-factory/overview,docs/integrations/data-ingestion/azure-data-factory/overview.md,integrations/connectors/data-ingestion/azure/azure-data-factory/overview.mdx,https://clickhouse.com/docs/integrations/azure-data-factory/overview,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/azure/azure-data-factory/overview,matched,2d2806f3a1690fe7,true,2d2806f3a1690fe7,2026-05-08T09:09:20+00:00,false
/integrations/azure-data-factory/table-function,docs/integrations/data-ingestion/azure-data-factory/using_azureblobstorage.md,integrations/connectors/data-ingestion/azure/azure-data-factory/using-azureblobstorage.mdx,https://clickhouse.com/docs/integrations/azure-data-factory/table-function,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/azure/azure-data-factory/using-azureblobstorage,matched,987313de1a805067,true,987313de1a805067,2026-05-09T11:14:51+00:00,false
@@ -524,16 +524,16 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/clickpipes/aws-privatelink,docs/integrations/data-ingestion/clickpipes/aws-privatelink.md,integrations/clickpipes/aws-privatelink.mdx,https://clickhouse.com/docs/integrations/clickpipes/aws-privatelink,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/aws-privatelink,matched,68f116f3f3d17736,true,68f116f3f3d17736,2026-05-09T17:02:01+00:00,false
/integrations/clickpipes/bigquery/get-started,docs/integrations/data-ingestion/clickpipes/bigquery/02_get-started.md,integrations/clickpipes/bigquery/get-started.mdx,https://clickhouse.com/docs/integrations/clickpipes/bigquery/get-started,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/bigquery/get-started,matched,498186e49d79feb4,true,498186e49d79feb4,2026-05-09T11:14:51+00:00,false
/integrations/clickpipes/bigquery/overview,docs/integrations/data-ingestion/clickpipes/bigquery/01_overview.md,integrations/clickpipes/bigquery/overview.mdx,https://clickhouse.com/docs/integrations/clickpipes/bigquery/overview,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/bigquery/overview,matched,24371be405180aeb,true,24371be405180aeb,2026-05-08T11:28:15+00:00,false
-/integrations/clickpipes/kafka,docs/integrations/data-ingestion/clickpipes/kafka/index.md,integrations/clickpipes/kafka/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/kafka,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kafka,matched,279f680f6df6a752,true,279f680f6df6a752,2026-05-13T13:16:51+00:00,false
+/integrations/clickpipes/kafka,docs/integrations/data-ingestion/clickpipes/kafka/index.md,integrations/clickpipes/kafka/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/kafka,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kafka/index,matched,279f680f6df6a752,true,279f680f6df6a752,2026-05-13T13:16:51+00:00,false
/integrations/clickpipes/kafka/best-practices,docs/integrations/data-ingestion/clickpipes/kafka/04_best_practices.md,integrations/clickpipes/kafka/best-practices.mdx,https://clickhouse.com/docs/integrations/clickpipes/kafka/best-practices,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kafka/best-practices,matched,b992bc1349d59463,true,b992bc1349d59463,2026-05-13T13:16:51+00:00,false
/integrations/clickpipes/kafka/create-your-first-kafka-clickpipe,docs/integrations/data-ingestion/clickpipes/kafka/01_create-kafka-clickpipe.md,integrations/clickpipes/kafka/create-kafka-clickpipe.mdx,https://clickhouse.com/docs/integrations/clickpipes/kafka/create-your-first-kafka-clickpipe,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kafka/create-kafka-clickpipe,matched,0b30fc8916ac8a05,true,0b30fc8916ac8a05,2026-05-13T13:16:51+00:00,false
/integrations/clickpipes/kafka/faq,docs/integrations/data-ingestion/clickpipes/kafka/05_faq.md,integrations/clickpipes/kafka/faq.mdx,https://clickhouse.com/docs/integrations/clickpipes/kafka/faq,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kafka/faq,matched,0f6809d4943795a4,true,0f6809d4943795a4,2026-05-19T11:08:53+00:00,false
/integrations/clickpipes/kafka/reference,docs/integrations/data-ingestion/clickpipes/kafka/03_reference.md,integrations/clickpipes/kafka/reference.mdx,https://clickhouse.com/docs/integrations/clickpipes/kafka/reference,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kafka/reference,matched,0a12e02fd6418d2f,true,0a12e02fd6418d2f,2026-05-13T13:16:51+00:00,false
/integrations/clickpipes/kafka/schema-registries,docs/integrations/data-ingestion/clickpipes/kafka/02_schema-registries.md,integrations/clickpipes/kafka/schema-registries.mdx,https://clickhouse.com/docs/integrations/clickpipes/kafka/schema-registries,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kafka/schema-registries,matched,4f7fecf96fe712c8,true,4f7fecf96fe712c8,2026-05-13T13:16:51+00:00,false
/integrations/clickpipes/kinesis,docs/integrations/data-ingestion/clickpipes/kinesis/01_overview.md,integrations/clickpipes/kinesis/overview.mdx,https://clickhouse.com/docs/integrations/clickpipes/kinesis,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kinesis/overview,matched,9d706b5e4e3a9d63,true,9d706b5e4e3a9d63,2026-05-08T09:09:20+00:00,false
-/integrations/clickpipes/kinesis-index,docs/integrations/data-ingestion/clickpipes/kinesis/index.md,integrations/clickpipes/kinesis/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/kinesis-index,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kinesis,matched,0ce1834bf473a345,true,0ce1834bf473a345,2026-05-08T20:59:48+00:00,false
+/integrations/clickpipes/kinesis-index,docs/integrations/data-ingestion/clickpipes/kinesis/index.md,integrations/clickpipes/kinesis/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/kinesis-index,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kinesis/index,matched,0ce1834bf473a345,true,0ce1834bf473a345,2026-05-08T20:59:48+00:00,false
/integrations/clickpipes/kinesis/auth,docs/integrations/data-ingestion/clickpipes/kinesis/02_auth.md,integrations/clickpipes/kinesis/auth.mdx,https://clickhouse.com/docs/integrations/clickpipes/kinesis/auth,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/kinesis/auth,matched,61f303577fccfa88,true,61f303577fccfa88,2026-05-09T14:52:53+00:00,false
-/integrations/clickpipes/mongodb,docs/integrations/data-ingestion/clickpipes/mongodb/index.md,integrations/clickpipes/mongodb/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/mongodb,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mongodb,matched,ce99c0e85a69018f,true,ce99c0e85a69018f,2026-05-09T11:14:51+00:00,false
+/integrations/clickpipes/mongodb,docs/integrations/data-ingestion/clickpipes/mongodb/index.md,integrations/clickpipes/mongodb/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/mongodb,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mongodb/index,matched,ce99c0e85a69018f,true,ce99c0e85a69018f,2026-05-09T11:14:51+00:00,false
/integrations/clickpipes/mongodb/add_table,docs/integrations/data-ingestion/clickpipes/mongodb/add_table.md,integrations/clickpipes/mongodb/add-table.mdx,https://clickhouse.com/docs/integrations/clickpipes/mongodb/add_table,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mongodb/add-table,matched,fd1e6808c44ee773,true,fd1e6808c44ee773,2026-05-08T09:09:20+00:00,false
/integrations/clickpipes/mongodb/datatypes,docs/integrations/data-ingestion/clickpipes/mongodb/datatypes.md,integrations/clickpipes/mongodb/datatypes.mdx,https://clickhouse.com/docs/integrations/clickpipes/mongodb/datatypes,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mongodb/datatypes,matched,884faf2fde588827,true,884faf2fde588827,2026-05-08T09:09:20+00:00,false
/integrations/clickpipes/mongodb/faq,docs/integrations/data-ingestion/clickpipes/mongodb/faq.md,integrations/clickpipes/mongodb/faq.mdx,https://clickhouse.com/docs/integrations/clickpipes/mongodb/faq,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mongodb/faq,matched,e4cbf1f6c601789d,true,0af38378b9bbc177,2026-05-08T09:09:20+00:00,false
@@ -549,7 +549,7 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/clickpipes/mongodb/sync_control,docs/integrations/data-ingestion/clickpipes/mongodb/controlling_sync.md,integrations/clickpipes/mongodb/controlling-sync.mdx,https://clickhouse.com/docs/integrations/clickpipes/mongodb/sync_control,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mongodb/controlling-sync,matched,c4b22ad6314f691a,true,c4b22ad6314f691a,2026-05-08T09:09:20+00:00,false
/integrations/clickpipes/mongodb/table_resync,docs/integrations/data-ingestion/clickpipes/mongodb/table_resync.md,integrations/clickpipes/mongodb/table-resync.mdx,https://clickhouse.com/docs/integrations/clickpipes/mongodb/table_resync,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mongodb/table-resync,matched,6fefa2b1f320a857,true,6fefa2b1f320a857,2026-05-13T13:16:51+00:00,false
/integrations/clickpipes/monitoring,docs/integrations/data-ingestion/clickpipes/monitoring.md,integrations/clickpipes/monitoring.mdx,https://clickhouse.com/docs/integrations/clickpipes/monitoring,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/monitoring,matched,324c9a7454e02e3e,true,38dbd515c12bcc99,2026-05-08T18:59:03+00:00,false
-/integrations/clickpipes/mysql,docs/integrations/data-ingestion/clickpipes/mysql/index.md,integrations/clickpipes/mysql/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/mysql,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mysql,matched,05d9ff0df1b6448b,true,05d9ff0df1b6448b,2026-05-09T11:14:51+00:00,false
+/integrations/clickpipes/mysql,docs/integrations/data-ingestion/clickpipes/mysql/index.md,integrations/clickpipes/mysql/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/mysql,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mysql/index,matched,05d9ff0df1b6448b,true,05d9ff0df1b6448b,2026-05-09T11:14:51+00:00,false
/integrations/clickpipes/mysql/add_table,docs/integrations/data-ingestion/clickpipes/mysql/add_table.md,integrations/clickpipes/mysql/add-table.mdx,https://clickhouse.com/docs/integrations/clickpipes/mysql/add_table,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mysql/add-table,matched,7c09626c32cee58f,true,7c09626c32cee58f,2026-05-08T09:09:20+00:00,false
/integrations/clickpipes/mysql/datatypes,docs/integrations/data-ingestion/clickpipes/mysql/datatypes.md,integrations/clickpipes/mysql/datatypes.mdx,https://clickhouse.com/docs/integrations/clickpipes/mysql/datatypes,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mysql/datatypes,matched,0e204c48d4b35a55,true,0e204c48d4b35a55,2026-05-08T09:09:20+00:00,false
/integrations/clickpipes/mysql/faq,docs/integrations/data-ingestion/clickpipes/mysql/faq.md,integrations/clickpipes/mysql/faq.mdx,https://clickhouse.com/docs/integrations/clickpipes/mysql/faq,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/mysql/faq,matched,efb267f57522863b,true,c8ae53b33ca30907,2026-05-08T09:09:20+00:00,false
@@ -577,7 +577,7 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/clickpipes/object-storage/s3/get-started,docs/integrations/data-ingestion/clickpipes/object-storage/amazon-s3/02_get-started.md,integrations/clickpipes/object-storage/amazon-s3/get-started.mdx,https://clickhouse.com/docs/integrations/clickpipes/object-storage/s3/get-started,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/object-storage/amazon-s3/get-started,matched,7c2cbfdd13f6c3b0,true,7c2cbfdd13f6c3b0,2026-05-08T11:28:15+00:00,false
/integrations/clickpipes/object-storage/s3/overview,docs/integrations/data-ingestion/clickpipes/object-storage/amazon-s3/01_overview.md,integrations/clickpipes/object-storage/amazon-s3/overview.mdx,https://clickhouse.com/docs/integrations/clickpipes/object-storage/s3/overview,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/object-storage/amazon-s3/overview,matched,83d30e7fdc1a1dfd,true,83d30e7fdc1a1dfd,2026-05-19T11:48:22+00:00,false
/integrations/clickpipes/object-storage/s3/unordered-mode,docs/integrations/data-ingestion/clickpipes/object-storage/amazon-s3/03_unordered-mode.md,integrations/clickpipes/object-storage/amazon-s3/unordered-mode.mdx,https://clickhouse.com/docs/integrations/clickpipes/object-storage/s3/unordered-mode,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/object-storage/amazon-s3/unordered-mode,matched,504bb964ccd05f43,true,504bb964ccd05f43,2026-05-08T09:09:20+00:00,false
-/integrations/clickpipes/postgres,docs/integrations/data-ingestion/clickpipes/postgres/index.md,integrations/clickpipes/postgres/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/postgres,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/postgres,matched,f44c1d447ff4e562,true,f44c1d447ff4e562,2026-05-09T11:14:51+00:00,false
+/integrations/clickpipes/postgres,docs/integrations/data-ingestion/clickpipes/postgres/index.md,integrations/clickpipes/postgres/index.mdx,https://clickhouse.com/docs/integrations/clickpipes/postgres,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/postgres/index,matched,f44c1d447ff4e562,true,f44c1d447ff4e562,2026-05-09T11:14:51+00:00,false
/integrations/clickpipes/postgres/add_table,docs/integrations/data-ingestion/clickpipes/postgres/add_table.md,integrations/clickpipes/postgres/add-table.mdx,https://clickhouse.com/docs/integrations/clickpipes/postgres/add_table,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/postgres/add-table,matched,3f1190541935e693,true,3f1190541935e693,2026-05-08T09:09:20+00:00,false
/integrations/clickpipes/postgres/auth,docs/integrations/data-ingestion/clickpipes/postgres/auth.md,integrations/clickpipes/postgres/auth.mdx,https://clickhouse.com/docs/integrations/clickpipes/postgres/auth,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/postgres/auth,matched,56d97ce55ca29648,true,56d97ce55ca29648,2026-05-08T09:09:20+00:00,false
/integrations/clickpipes/postgres/deduplication,docs/integrations/data-ingestion/clickpipes/postgres/deduplication.md,integrations/clickpipes/postgres/deduplication.mdx,https://clickhouse.com/docs/integrations/clickpipes/postgres/deduplication,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/postgres/deduplication,matched,9b88c2331afab826,true,9b88c2331afab826,2026-05-13T15:43:28+00:00,false
@@ -609,33 +609,33 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/clickpipes/programmatic-access/openapi,docs/integrations/data-ingestion/clickpipes/programmatic-access/openapi.md,integrations/clickpipes/programmatic-access/openapi.mdx,https://clickhouse.com/docs/integrations/clickpipes/programmatic-access/openapi,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/programmatic-access/openapi,matched,da80afcd65289688,true,da80afcd65289688,2026-05-09T10:10:14+00:00,false
/integrations/clickpipes/programmatic-access/terraform,docs/integrations/data-ingestion/clickpipes/programmatic-access/terraform.md,integrations/clickpipes/programmatic-access/terraform.mdx,https://clickhouse.com/docs/integrations/clickpipes/programmatic-access/terraform,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/programmatic-access/terraform,matched,bbffc34bb758ceb6,true,bbffc34bb758ceb6,2026-05-08T09:09:20+00:00,false
/integrations/csharp,docs/integrations/language-clients/csharp.md,integrations/language-clients/csharp/overview.mdx,https://clickhouse.com/docs/integrations/csharp,https://private-7c7dfe99.mintlify.app/integrations/language-clients/csharp/overview,matched,1b65a8f8d3c7ff63,true,1b65a8f8d3c7ff63,2026-05-08T13:01:57+00:00,false
-/integrations/data-formats,docs/integrations/data-ingestion/data-formats/intro.md,integrations/connectors/data-ingestion/data-formats/intro.mdx,https://clickhouse.com/docs/integrations/data-formats,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/intro,matched,1d969edc697cf4e8,true,93724ae160de6bb8,2026-05-08T09:09:20+00:00,false
-/integrations/data-formats/arrow-avro-orc,docs/integrations/data-ingestion/data-formats/arrow-avro-orc.md,integrations/connectors/data-ingestion/data-formats/arrow-avro-orc.mdx,https://clickhouse.com/docs/integrations/data-formats/arrow-avro-orc,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/arrow-avro-orc,matched,c9cf4dd48ee325c4,true,81117b826442551d,2026-05-09T10:26:02+00:00,false
-/integrations/data-formats/binary-native,docs/integrations/data-ingestion/data-formats/binary.md,integrations/connectors/data-ingestion/data-formats/binary.mdx,https://clickhouse.com/docs/integrations/data-formats/binary-native,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/binary,matched,e98f0f528ca4cd10,true,e98f0f528ca4cd10,2026-05-09T10:26:02+00:00,false
-/integrations/data-formats/csv-tsv,docs/integrations/data-ingestion/data-formats/csv-tsv.md,integrations/connectors/data-ingestion/data-formats/csv-tsv.mdx,https://clickhouse.com/docs/integrations/data-formats/csv-tsv,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/csv-tsv,matched,039ec5cce533551f,true,dfa7d0a0c4f397d0,2026-05-09T10:26:02+00:00,false
-/integrations/data-formats/json/exporting,docs/integrations/data-ingestion/data-formats/json/exporting.md,integrations/connectors/data-ingestion/data-formats/json/exporting.mdx,https://clickhouse.com/docs/integrations/data-formats/json/exporting,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/json/exporting,matched,9f8afe6b2891ee22,true,4d2ea53c6c8b773c,2026-05-08T09:09:20+00:00,false
-/integrations/data-formats/json/inference,docs/integrations/data-ingestion/data-formats/json/inference.md,integrations/connectors/data-ingestion/data-formats/json/inference.mdx,https://clickhouse.com/docs/integrations/data-formats/json/inference,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/json/inference,matched,554de5cb153196dc,true,554de5cb153196dc,2026-05-08T09:09:20+00:00,false
-/integrations/data-formats/json/loading,docs/integrations/data-ingestion/data-formats/json/loading.md,integrations/connectors/data-ingestion/data-formats/json/loading.mdx,https://clickhouse.com/docs/integrations/data-formats/json/loading,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/json/loading,matched,7e68214aebd431e7,true,7e68214aebd431e7,2026-05-13T13:16:51+00:00,false
-/integrations/data-formats/json/other-approaches,docs/integrations/data-ingestion/data-formats/json/other.md,integrations/connectors/data-ingestion/data-formats/json/other.mdx,https://clickhouse.com/docs/integrations/data-formats/json/other-approaches,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/json/other,matched,3093ba6e503dc059,true,3093ba6e503dc059,2026-05-13T13:16:51+00:00,false
-/integrations/data-formats/json/other-formats,docs/integrations/data-ingestion/data-formats/json/formats.md,integrations/connectors/data-ingestion/data-formats/json/formats.mdx,https://clickhouse.com/docs/integrations/data-formats/json/other-formats,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/json/formats,matched,5afa77aae29bb536,true,5afa77aae29bb536,2026-05-19T11:08:53+00:00,false
-/integrations/data-formats/json/overview,docs/integrations/data-ingestion/data-formats/json/intro.md,integrations/connectors/data-ingestion/data-formats/json/intro.mdx,https://clickhouse.com/docs/integrations/data-formats/json/overview,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/json/intro,matched,efd5578457b25be5,true,efd5578457b25be5,2026-05-13T13:16:51+00:00,false
-/integrations/data-formats/json/schema,docs/integrations/data-ingestion/data-formats/json/schema.md,integrations/connectors/data-ingestion/data-formats/json/schema.mdx,https://clickhouse.com/docs/integrations/data-formats/json/schema,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/json/schema,matched,1bb3e99ab8d35841,true,1bb3e99ab8d35841,2026-05-08T09:09:20+00:00,false
-/integrations/data-formats/parquet,docs/integrations/data-ingestion/data-formats/parquet.md,integrations/connectors/data-ingestion/data-formats/parquet.mdx,https://clickhouse.com/docs/integrations/data-formats/parquet,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/parquet,matched,79551466bf417bc2,true,ea6eed1ae135ae13,2026-05-09T10:26:02+00:00,false
-/integrations/data-formats/sql,docs/integrations/data-ingestion/data-formats/sql.md,integrations/connectors/data-ingestion/data-formats/sql.mdx,https://clickhouse.com/docs/integrations/data-formats/sql,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/sql,matched,af6090eed14991f5,true,e107fa87c3da3e96,2026-05-09T10:26:02+00:00,false
-/integrations/data-formats/templates-regexp,docs/integrations/data-ingestion/data-formats/templates-regex.md,integrations/connectors/data-ingestion/data-formats/templates-regex.mdx,https://clickhouse.com/docs/integrations/data-formats/templates-regexp,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/data-formats/templates-regex,matched,9fb5df2e182ad6fd,true,7e26bc2a78b4518a,2026-05-09T10:26:02+00:00,false
-/integrations/data-ingestion-overview,docs/integrations/data-ingestion/data-ingestion-index.md,integrations/connectors/data-ingestion/index.mdx,https://clickhouse.com/docs/integrations/data-ingestion-overview,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion,matched,31ba276416659518,true,31ba276416659518,2026-05-13T13:16:51+00:00,false
+/integrations/data-formats,docs/integrations/data-ingestion/data-formats/intro.md,core/guides/clickhouse/data-formats/intro.mdx,https://clickhouse.com/docs/integrations/data-formats,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/intro,matched,1d969edc697cf4e8,true,93724ae160de6bb8,2026-05-08T09:09:20+00:00,false
+/integrations/data-formats/arrow-avro-orc,docs/integrations/data-ingestion/data-formats/arrow-avro-orc.md,core/guides/clickhouse/data-formats/arrow-avro-orc.mdx,https://clickhouse.com/docs/integrations/data-formats/arrow-avro-orc,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/arrow-avro-orc,matched,c9cf4dd48ee325c4,true,81117b826442551d,2026-05-09T10:26:02+00:00,false
+/integrations/data-formats/binary-native,docs/integrations/data-ingestion/data-formats/binary.md,core/guides/clickhouse/data-formats/binary.mdx,https://clickhouse.com/docs/integrations/data-formats/binary-native,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/binary,matched,e98f0f528ca4cd10,true,e98f0f528ca4cd10,2026-05-09T10:26:02+00:00,false
+/integrations/data-formats/csv-tsv,docs/integrations/data-ingestion/data-formats/csv-tsv.md,core/guides/clickhouse/data-formats/csv-tsv.mdx,https://clickhouse.com/docs/integrations/data-formats/csv-tsv,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/csv-tsv,matched,039ec5cce533551f,true,dfa7d0a0c4f397d0,2026-05-09T10:26:02+00:00,false
+/integrations/data-formats/json/exporting,docs/integrations/data-ingestion/data-formats/json/exporting.md,core/guides/clickhouse/data-formats/json/exporting.mdx,https://clickhouse.com/docs/integrations/data-formats/json/exporting,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/json/exporting,matched,9f8afe6b2891ee22,true,4d2ea53c6c8b773c,2026-05-08T09:09:20+00:00,false
+/integrations/data-formats/json/inference,docs/integrations/data-ingestion/data-formats/json/inference.md,core/guides/clickhouse/data-formats/json/inference.mdx,https://clickhouse.com/docs/integrations/data-formats/json/inference,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/json/inference,matched,554de5cb153196dc,true,554de5cb153196dc,2026-05-08T09:09:20+00:00,false
+/integrations/data-formats/json/loading,docs/integrations/data-ingestion/data-formats/json/loading.md,core/guides/clickhouse/data-formats/json/loading.mdx,https://clickhouse.com/docs/integrations/data-formats/json/loading,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/json/loading,matched,7e68214aebd431e7,true,7e68214aebd431e7,2026-05-13T13:16:51+00:00,false
+/integrations/data-formats/json/other-approaches,docs/integrations/data-ingestion/data-formats/json/other.md,core/guides/clickhouse/data-formats/json/other.mdx,https://clickhouse.com/docs/integrations/data-formats/json/other-approaches,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/json/other,matched,3093ba6e503dc059,true,3093ba6e503dc059,2026-05-13T13:16:51+00:00,false
+/integrations/data-formats/json/other-formats,docs/integrations/data-ingestion/data-formats/json/formats.md,core/guides/clickhouse/data-formats/json/formats.mdx,https://clickhouse.com/docs/integrations/data-formats/json/other-formats,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/json/formats,matched,5afa77aae29bb536,true,5afa77aae29bb536,2026-05-19T11:08:53+00:00,false
+/integrations/data-formats/json/overview,docs/integrations/data-ingestion/data-formats/json/intro.md,core/guides/clickhouse/data-formats/json/intro.mdx,https://clickhouse.com/docs/integrations/data-formats/json/overview,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/json/intro,matched,efd5578457b25be5,true,efd5578457b25be5,2026-05-13T13:16:51+00:00,false
+/integrations/data-formats/json/schema,docs/integrations/data-ingestion/data-formats/json/schema.md,core/guides/clickhouse/data-formats/json/schema.mdx,https://clickhouse.com/docs/integrations/data-formats/json/schema,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/json/schema,matched,1bb3e99ab8d35841,true,1bb3e99ab8d35841,2026-05-08T09:09:20+00:00,false
+/integrations/data-formats/parquet,docs/integrations/data-ingestion/data-formats/parquet.md,core/guides/clickhouse/data-formats/parquet.mdx,https://clickhouse.com/docs/integrations/data-formats/parquet,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/parquet,matched,79551466bf417bc2,true,ea6eed1ae135ae13,2026-05-09T10:26:02+00:00,false
+/integrations/data-formats/sql,docs/integrations/data-ingestion/data-formats/sql.md,core/guides/clickhouse/data-formats/sql.mdx,https://clickhouse.com/docs/integrations/data-formats/sql,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/sql,matched,af6090eed14991f5,true,e107fa87c3da3e96,2026-05-09T10:26:02+00:00,false
+/integrations/data-formats/templates-regexp,docs/integrations/data-ingestion/data-formats/templates-regex.md,core/guides/clickhouse/data-formats/templates-regex.mdx,https://clickhouse.com/docs/integrations/data-formats/templates-regexp,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/data-formats/templates-regex,matched,9fb5df2e182ad6fd,true,7e26bc2a78b4518a,2026-05-09T10:26:02+00:00,false
+/integrations/data-ingestion-overview,docs/integrations/data-ingestion/data-ingestion-index.md,integrations/connectors/data-ingestion/index.mdx,https://clickhouse.com/docs/integrations/data-ingestion-overview,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/index,matched,31ba276416659518,true,31ba276416659518,2026-05-13T13:16:51+00:00,false
/integrations/data-ingestion/apache-spark/databricks,docs/integrations/data-ingestion/apache-spark/databricks.md,integrations/connectors/data-ingestion/apache-spark/databricks.mdx,https://clickhouse.com/docs/integrations/data-ingestion/apache-spark/databricks,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/apache-spark/databricks,matched,f1de33340089dfd1,true,f1de33340089dfd1,2026-05-08T20:59:48+00:00,false
/integrations/data-ingestion/dbms/odbc-with-clickhouse,docs/integrations/data-ingestion/dbms/odbc-with-clickhouse.md,integrations/connectors/data-ingestion/odbc-with-clickhouse.mdx,https://clickhouse.com/docs/integrations/data-ingestion/dbms/odbc-with-clickhouse,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/odbc-with-clickhouse,matched,7e68dd457179debb,true,7e68dd457179debb,2026-05-08T09:09:20+00:00,false
/integrations/data-ingestion/etl-tools/dlt-and-clickhouse,docs/integrations/data-ingestion/etl-tools/dlt-and-clickhouse.md,integrations/connectors/data-ingestion/etl-tools/dlt-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/data-ingestion/etl-tools/dlt-and-clickhouse,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/dlt-and-clickhouse,matched,de115719ef179dcb,true,de115719ef179dcb,2026-05-09T17:02:01+00:00,false
/integrations/data-ingestion/etl-tools/sql-server-clickhouse,docs/integrations/data-ingestion/streamkap/sql-server-clickhouse.md,integrations/connectors/data-ingestion/streamkap/sql-server-clickhouse.mdx,https://clickhouse.com/docs/integrations/data-ingestion/etl-tools/sql-server-clickhouse,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/streamkap/sql-server-clickhouse,matched,d316ea89d04274c6,true,d316ea89d04274c6,2026-05-13T14:36:43+00:00,false
/integrations/data-ingestion/insert-local-files,docs/integrations/data-ingestion/insert-local-files.md,integrations/connectors/data-ingestion/insert-local-files.mdx,https://clickhouse.com/docs/integrations/data-ingestion/insert-local-files,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/insert-local-files,matched,d751f0c2f9894026,true,efb2a784e25a0dcc,2026-05-08T13:01:57+00:00,false
/integrations/data-ingestion/kafka/kafka-table-engine-named-collections,docs/integrations/data-ingestion/kafka/kafka-table-engine-named-collections.md,integrations/connectors/data-ingestion/kafka/kafka-table-engine-named-collections.mdx,https://clickhouse.com/docs/integrations/data-ingestion/kafka/kafka-table-engine-named-collections,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/kafka-table-engine-named-collections,matched,6164554f7c7024e0,true,e941926591006430,2026-05-08T09:09:20+00:00,false
-/integrations/data-sources/index,docs/integrations/data-ingestion/data-sources-index.md,integrations/connectors/data-sources/index.mdx,https://clickhouse.com/docs/integrations/data-sources/index,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-sources,matched,17294a334761956c,true,b1a0f4e97b2ee183,2026-05-09T10:08:44+00:00,false
-/integrations/data-visualization,docs/integrations/data-visualization/index.md,integrations/connectors/data-visualization/index.mdx,https://clickhouse.com/docs/integrations/data-visualization,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization,matched,14c2bbf89fcb19e9,true,14c2bbf89fcb19e9,2026-05-13T13:16:51+00:00,false
+/integrations/data-sources/index,docs/integrations/data-ingestion/data-sources-index.md,integrations/connectors/data-sources/index.mdx,https://clickhouse.com/docs/integrations/data-sources/index,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-sources/index,matched,17294a334761956c,true,b1a0f4e97b2ee183,2026-05-09T10:08:44+00:00,false
+/integrations/data-visualization,docs/integrations/data-visualization/index.md,integrations/connectors/data-visualization/index.mdx,https://clickhouse.com/docs/integrations/data-visualization,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/index,matched,14c2bbf89fcb19e9,true,14c2bbf89fcb19e9,2026-05-13T13:16:51+00:00,false
/integrations/databrain,docs/integrations/data-visualization/community_integrations/databrain-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/databrain-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/databrain,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/databrain-and-clickhouse,matched,d85b73cbceb15460,true,d85b73cbceb15460,2026-05-08T09:16:50+00:00,false
/integrations/datagrip,docs/integrations/sql-clients/datagrip.md,integrations/connectors/data-integrations/sql-clients/datagrip.mdx,https://clickhouse.com/docs/integrations/datagrip,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/datagrip,matched,f78cf84db45e5ddb,true,f78cf84db45e5ddb,2026-05-09T11:14:51+00:00,false
/integrations/dbeaver,docs/integrations/sql-clients/dbeaver.md,integrations/connectors/data-integrations/sql-clients/dbeaver.mdx,https://clickhouse.com/docs/integrations/dbeaver,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/dbeaver,matched,c2875c079a4c147a,true,c2875c079a4c147a,2026-05-08T09:09:20+00:00,false
-/integrations/dbt,docs/integrations/data-ingestion/etl-tools/dbt/index.md,integrations/connectors/data-ingestion/etl-tools/dbt/index.mdx,https://clickhouse.com/docs/integrations/dbt,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/dbt,matched,93372ab0447e766f,true,93372ab0447e766f,2026-05-13T13:16:51+00:00,false
+/integrations/dbt,docs/integrations/data-ingestion/etl-tools/dbt/index.md,integrations/connectors/data-ingestion/etl-tools/dbt/index.mdx,https://clickhouse.com/docs/integrations/dbt,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/dbt/index,matched,93372ab0447e766f,true,93372ab0447e766f,2026-05-13T13:16:51+00:00,false
/integrations/dbt/features-and-configurations,docs/integrations/data-ingestion/etl-tools/dbt/features-and-configurations.md,integrations/connectors/data-ingestion/etl-tools/dbt/features-and-configurations.mdx,https://clickhouse.com/docs/integrations/dbt/features-and-configurations,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/dbt/features-and-configurations,matched,3bdbabdb8fe1755a,true,3bdbabdb8fe1755a,2026-05-08T09:52:53+00:00,false
/integrations/dbt/guides,docs/integrations/data-ingestion/etl-tools/dbt/guides.md,integrations/connectors/data-ingestion/etl-tools/dbt/guides.mdx,https://clickhouse.com/docs/integrations/dbt/guides,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/dbt/guides,matched,09d704788c667baa,true,09d704788c667baa,2026-05-19T11:48:22+00:00,false
/integrations/dbt/materialization-materialized-view,docs/integrations/data-ingestion/etl-tools/dbt/materialization-materialized-view.md,integrations/connectors/data-ingestion/etl-tools/dbt/materialization-materialized-view.mdx,https://clickhouse.com/docs/integrations/dbt/materialization-materialized-view,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/dbt/materialization-materialized-view,matched,18ea08234f4c11fc,true,18ea08234f4c11fc,2026-05-19T11:08:53+00:00,false
@@ -647,48 +647,48 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/dynamodb,docs/integrations/data-ingestion/dbms/dynamodb/index.md,integrations/clickpipes/dynamodb.mdx,https://clickhouse.com/docs/integrations/dynamodb,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/dynamodb,matched,1a8da2718d7c3073,true,1a8da2718d7c3073,2026-05-08T09:09:20+00:00,false
/integrations/easypanel,docs/integrations/tools/data-integration/easypanel/index.md,integrations/connectors/data-integrations/integrations/easypanel.mdx,https://clickhouse.com/docs/integrations/easypanel,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/integrations/easypanel,matched,1393aaf825d4dab4,true,1393aaf825d4dab4,2026-05-08T09:16:50+00:00,false
/integrations/embeddable,docs/integrations/data-visualization/community_integrations/embeddable-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/embeddable-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/embeddable,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/embeddable-and-clickhouse,matched,bae2d8dc339a9a44,true,bae2d8dc339a9a44,2026-05-08T09:16:50+00:00,false
-/integrations/emqx,docs/integrations/data-ingestion/emqx/index.md,integrations/connectors/data-ingestion/emqx/index.mdx,https://clickhouse.com/docs/integrations/emqx,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/emqx,matched,a68fc8e0c95e6a16,true,a68fc8e0c95e6a16,2026-05-08T09:09:20+00:00,false
+/integrations/emqx,docs/integrations/data-ingestion/emqx/index.md,integrations/connectors/data-ingestion/emqx/index.mdx,https://clickhouse.com/docs/integrations/emqx,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/emqx/index,matched,a68fc8e0c95e6a16,true,a68fc8e0c95e6a16,2026-05-08T09:09:20+00:00,false
/integrations/estuary,docs/integrations/data-ingestion/etl-tools/estuary.md,integrations/connectors/data-ingestion/community-integrations/estuary.mdx,https://clickhouse.com/docs/integrations/estuary,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/community-integrations/estuary,matched,6d16f70186b47823,true,6d16f70186b47823,2026-05-09T17:02:01+00:00,false
/integrations/explo,docs/integrations/data-visualization/community_integrations/explo-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/explo-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/explo,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/explo-and-clickhouse,matched,56bb6becb312894d,true,56bb6becb312894d,2026-05-08T09:16:50+00:00,false
/integrations/fabi.ai,docs/integrations/data-visualization/community_integrations/fabi-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/fabi-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/fabi.ai,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/fabi-and-clickhouse,matched,308443b0fc36d737,true,308443b0fc36d737,2026-05-08T09:16:50+00:00,false
-/integrations/fivetran,docs/integrations/data-ingestion/etl-tools/fivetran/index.md,integrations/connectors/data-ingestion/etl-tools/fivetran/index.mdx,https://clickhouse.com/docs/integrations/fivetran,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/fivetran,matched,200f856ac2b3a756,true,200f856ac2b3a756,2026-05-19T11:48:22+00:00,false
+/integrations/fivetran,docs/integrations/data-ingestion/etl-tools/fivetran/index.md,integrations/connectors/data-ingestion/etl-tools/fivetran/index.mdx,https://clickhouse.com/docs/integrations/fivetran,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/fivetran/index,matched,200f856ac2b3a756,true,200f856ac2b3a756,2026-05-19T11:48:22+00:00,false
/integrations/fivetran/reference,docs/integrations/data-ingestion/etl-tools/fivetran/reference.md,integrations/connectors/data-ingestion/etl-tools/fivetran/reference.mdx,https://clickhouse.com/docs/integrations/fivetran/reference,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/fivetran/reference,matched,6f9b3614e9d2a679,true,0cac5c6d28cbf48b,2026-05-08T09:09:20+00:00,false
/integrations/fivetran/troubleshooting,docs/integrations/data-ingestion/etl-tools/fivetran/troubleshooting.md,integrations/connectors/data-ingestion/etl-tools/fivetran/troubleshooting.mdx,https://clickhouse.com/docs/integrations/fivetran/troubleshooting,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/fivetran/troubleshooting,matched,899e81f678d2ddbb,true,899e81f678d2ddbb,2026-05-13T13:16:51+00:00,false
-/integrations/gcs,docs/integrations/data-ingestion/gcs/index.md,integrations/connectors/data-sources/gcs.mdx | integrations/connectors/data-ingestion/GCP/index.mdx,https://clickhouse.com/docs/integrations/gcs,,ambiguous,98c2d2851d078cc1,true,98c2d2851d078cc1,2026-05-13T15:43:29+00:00,false
+/integrations/gcs,docs/integrations/data-ingestion/gcs/index.md,integrations/connectors/data-sources/gcs.mdx,https://clickhouse.com/docs/integrations/gcs,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-sources/gcs,matched,98c2d2851d078cc1,true,98c2d2851d078cc1,2026-05-13T15:43:29+00:00,false
/integrations/glue,docs/integrations/data-ingestion/aws-glue/index.md,integrations/connectors/data-ingestion/AWS/glue.mdx,https://clickhouse.com/docs/integrations/glue,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/AWS/glue,matched,aa58fb5d98c323a2,true,aa58fb5d98c323a2,2026-05-08T09:09:20+00:00,false
-/integrations/go,docs/integrations/language-clients/go/index.md,integrations/language-clients/go/index.mdx,https://clickhouse.com/docs/integrations/go,https://private-7c7dfe99.mintlify.app/integrations/language-clients/go,matched,d9db0a8d09dc5d32,true,d9db0a8d09dc5d32,2026-05-13T15:43:29+00:00,false
+/integrations/go,docs/integrations/language-clients/go/index.md,integrations/language-clients/go/index.mdx,https://clickhouse.com/docs/integrations/go,https://private-7c7dfe99.mintlify.app/integrations/language-clients/go/index,matched,d9db0a8d09dc5d32,true,d9db0a8d09dc5d32,2026-05-13T15:43:29+00:00,false
/integrations/google-dataflow/dataflow,docs/integrations/data-ingestion/google-dataflow/dataflow.md,integrations/connectors/data-ingestion/GCP/google-dataflow/dataflow.mdx,https://clickhouse.com/docs/integrations/google-dataflow/dataflow,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/GCP/google-dataflow/dataflow,matched,5b2cae824a71bab5,true,5b2cae824a71bab5,2026-05-08T09:09:20+00:00,false
/integrations/google-dataflow/java-runner,docs/integrations/data-ingestion/google-dataflow/java-runner.md,integrations/connectors/data-ingestion/GCP/google-dataflow/java-runner.mdx,https://clickhouse.com/docs/integrations/google-dataflow/java-runner,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/GCP/google-dataflow/java-runner,matched,b1d94e9e1927efcb,true,b1d94e9e1927efcb,2026-05-08T09:09:20+00:00,false
/integrations/google-dataflow/templates,docs/integrations/data-ingestion/google-dataflow/templates.md,integrations/connectors/data-ingestion/GCP/google-dataflow/templates.mdx,https://clickhouse.com/docs/integrations/google-dataflow/templates,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/GCP/google-dataflow/templates,matched,782f72a24dc75313,true,782f72a24dc75313,2026-05-08T09:09:20+00:00,false
/integrations/google-dataflow/templates/bigquery-to-clickhouse,docs/integrations/data-ingestion/google-dataflow/templates/bigquery-to-clickhouse.md,integrations/connectors/data-ingestion/GCP/google-dataflow/templates/bigquery-to-clickhouse.mdx,https://clickhouse.com/docs/integrations/google-dataflow/templates/bigquery-to-clickhouse,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/GCP/google-dataflow/templates/bigquery-to-clickhouse,matched,6d5ca40abc4d02e1,true,6d5ca40abc4d02e1,2026-05-08T11:53:27+00:00,false
-/integrations/grafana,docs/integrations/data-visualization/grafana/index.md,integrations/connectors/data-visualization/grafana/index.mdx,https://clickhouse.com/docs/integrations/grafana,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/grafana,matched,bef8c060adea90bb,true,bef8c060adea90bb,2026-05-08T12:19:52+00:00,false
+/integrations/grafana,docs/integrations/data-visualization/grafana/index.md,integrations/connectors/data-visualization/grafana/index.mdx,https://clickhouse.com/docs/integrations/grafana,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/grafana/index,matched,bef8c060adea90bb,true,bef8c060adea90bb,2026-05-08T12:19:52+00:00,false
/integrations/grafana/config,docs/integrations/data-visualization/grafana/config.md,integrations/connectors/data-visualization/grafana/config.mdx,https://clickhouse.com/docs/integrations/grafana/config,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/grafana/config,matched,0e54b4725fc4e4a7,true,0e54b4725fc4e4a7,2026-05-13T14:36:44+00:00,false
/integrations/grafana/query-builder,docs/integrations/data-visualization/grafana/query-builder.md,integrations/connectors/data-visualization/grafana/query-builder.mdx,https://clickhouse.com/docs/integrations/grafana/query-builder,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/grafana/query-builder,matched,57310bca8b3bc836,true,57310bca8b3bc836,2026-05-08T09:09:20+00:00,false
/integrations/hashboard,docs/integrations/data-visualization/community_integrations/hashboard-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/hashboard-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/hashboard,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/hashboard-and-clickhouse,matched,aab96e1df99af931,true,aab96e1df99af931,2026-05-08T09:16:50+00:00,false
/integrations/holistics,docs/integrations/data-visualization/community_integrations/holistics-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/holistics-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/holistics,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/holistics-and-clickhouse,matched,3561e5fb3eecef6c,true,3561e5fb3eecef6c,2026-05-08T09:16:50+00:00,false
-/integrations/java,docs/integrations/language-clients/java/index.md,integrations/language-clients/java/index.mdx,https://clickhouse.com/docs/integrations/java,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java,matched,eacafd43475342f9,true,eacafd43475342f9,2026-05-09T09:39:38+00:00,false
+/integrations/java,docs/integrations/language-clients/java/index.md,integrations/language-clients/java/index.mdx,https://clickhouse.com/docs/integrations/java,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java/index,matched,eacafd43475342f9,true,eacafd43475342f9,2026-05-09T09:39:38+00:00,false
/integrations/java/r2dbc,docs/integrations/language-clients/java/r2dbc.md,integrations/language-clients/java/r2dbc.mdx,https://clickhouse.com/docs/integrations/java/r2dbc,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java/r2dbc,matched,4ce71c7bb8632a90,true,4ce71c7bb8632a90,2026-05-08T11:18:28+00:00,false
/integrations/javascript,docs/integrations/language-clients/js.md,integrations/language-clients/js.mdx,https://clickhouse.com/docs/integrations/javascript,https://private-7c7dfe99.mintlify.app/integrations/language-clients/js,matched,40875ab04fd341e8,true,40875ab04fd341e8,2026-05-08T13:01:57+00:00,false
/integrations/jdbc/jdbc-with-clickhouse,docs/integrations/data-ingestion/dbms/jdbc-with-clickhouse.md,integrations/connectors/data-ingestion/jdbc-with-clickhouse.mdx,https://clickhouse.com/docs/integrations/jdbc/jdbc-with-clickhouse,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/jdbc-with-clickhouse,matched,c079e3275d5ef73c,true,c079e3275d5ef73c,2026-05-08T09:09:20+00:00,false
/integrations/jupysql,docs/integrations/sql-clients/jupysql.md,integrations/connectors/data-integrations/sql-clients/jupysql.mdx,https://clickhouse.com/docs/integrations/jupysql,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/jupysql,matched,dd735cc8d91200ad,true,dd735cc8d91200ad,2026-05-08T15:04:34+00:00,false
-/integrations/kafka,docs/integrations/data-ingestion/kafka/index.md,integrations/connectors/data-ingestion/kafka/index.mdx,https://clickhouse.com/docs/integrations/kafka,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka,matched,cc037f352d02cb23,true,cc037f352d02cb23,2026-05-13T13:16:51+00:00,false
+/integrations/kafka,docs/integrations/data-ingestion/kafka/index.md,integrations/connectors/data-ingestion/kafka/index.mdx,https://clickhouse.com/docs/integrations/kafka,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/index,matched,cc037f352d02cb23,true,cc037f352d02cb23,2026-05-13T13:16:51+00:00,false
/integrations/kafka/clickhouse-kafka-connect-sink,docs/integrations/data-ingestion/kafka/kafka-clickhouse-connect-sink.md,integrations/connectors/data-ingestion/kafka/kafka-clickhouse-connect-sink.mdx,https://clickhouse.com/docs/integrations/kafka/clickhouse-kafka-connect-sink,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/kafka-clickhouse-connect-sink,matched,eb4085a358a349d5,true,eb4085a358a349d5,2026-05-19T11:08:53+00:00,false
-/integrations/kafka/cloud/amazon-msk/,docs/integrations/data-ingestion/kafka/msk/index.md,integrations/connectors/data-ingestion/kafka/msk/index.mdx,https://clickhouse.com/docs/integrations/kafka/cloud/amazon-msk/,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/msk,matched,82bdd27dd7d4b4d3,true,82bdd27dd7d4b4d3,2026-05-08T12:19:52+00:00,false
-/integrations/kafka/cloud/confluent,docs/integrations/data-ingestion/kafka/confluent/index.md,integrations/connectors/data-ingestion/kafka/confluent/index.mdx,https://clickhouse.com/docs/integrations/kafka/cloud/confluent,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/confluent,matched,0c6db7201b623180,true,064e508fcc9e2891,2026-05-07T14:49:41+00:00,false
+/integrations/kafka/cloud/amazon-msk/,docs/integrations/data-ingestion/kafka/msk/index.md,integrations/connectors/data-ingestion/kafka/msk/index.mdx,https://clickhouse.com/docs/integrations/kafka/cloud/amazon-msk/,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/msk/index,matched,82bdd27dd7d4b4d3,true,82bdd27dd7d4b4d3,2026-05-08T12:19:52+00:00,false
+/integrations/kafka/cloud/confluent,docs/integrations/data-ingestion/kafka/confluent/index.md,integrations/connectors/data-ingestion/kafka/confluent/index.mdx,https://clickhouse.com/docs/integrations/kafka/cloud/confluent,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/confluent/index,matched,0c6db7201b623180,true,064e508fcc9e2891,2026-05-07T14:49:41+00:00,false
/integrations/kafka/cloud/confluent/custom-connector,docs/integrations/data-ingestion/kafka/confluent/custom-connector.md,integrations/connectors/data-ingestion/kafka/confluent/custom-connector.mdx,https://clickhouse.com/docs/integrations/kafka/cloud/confluent/custom-connector,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/confluent/custom-connector,matched,cc2f06b5582bd2bb,true,cc2f06b5582bd2bb,2026-05-08T12:19:52+00:00,false
/integrations/kafka/cloud/confluent/http,docs/integrations/data-ingestion/kafka/confluent/kafka-connect-http.md,integrations/connectors/data-ingestion/kafka/confluent/kafka-connect-http.mdx,https://clickhouse.com/docs/integrations/kafka/cloud/confluent/http,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/confluent/kafka-connect-http,matched,4f1e5b6fb46f8b23,true,4f1e5b6fb46f8b23,2026-05-08T09:09:20+00:00,false
/integrations/kafka/cloud/confluent/sink-connector,docs/integrations/data-ingestion/kafka/confluent/confluent-cloud.md,integrations/connectors/data-ingestion/kafka/confluent/confluent-cloud.mdx,https://clickhouse.com/docs/integrations/kafka/cloud/confluent/sink-connector,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/confluent/confluent-cloud,matched,b701a01b7da43c0e,true,b701a01b7da43c0e,2026-05-08T12:19:52+00:00,false
/integrations/kafka/kafka-connect-jdbc,docs/integrations/data-ingestion/kafka/kafka-connect-jdbc.md,integrations/connectors/data-ingestion/kafka/kafka-connect-jdbc.mdx,https://clickhouse.com/docs/integrations/kafka/kafka-connect-jdbc,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/kafka-connect-jdbc,matched,ab7770cd6ae6fd55,true,ab7770cd6ae6fd55,2026-05-08T09:09:20+00:00,false
/integrations/kafka/kafka-table-engine,docs/integrations/data-ingestion/kafka/kafka-table-engine.md,integrations/connectors/data-ingestion/kafka/kafka-table-engine.mdx,https://clickhouse.com/docs/integrations/kafka/kafka-table-engine,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/kafka-table-engine,matched,8ef7cdadd1715341,true,8ef7cdadd1715341,2026-05-08T09:09:20+00:00,false
/integrations/kafka/kafka-vector,docs/integrations/data-ingestion/kafka/kafka-vector.md,integrations/connectors/data-ingestion/kafka/kafka-vector.mdx,https://clickhouse.com/docs/integrations/kafka/kafka-vector,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/kafka/kafka-vector,matched,0c4ea6fb79e92995,true,0c4ea6fb79e92995,2026-05-08T09:09:20+00:00,false
-/integrations/language-clients,docs/integrations/language-clients/index.md,integrations/language-clients/index.mdx,https://clickhouse.com/docs/integrations/language-clients,https://private-7c7dfe99.mintlify.app/integrations/language-clients,matched,869048716a1c0746,true,869048716a1c0746,2026-05-08T15:04:34+00:00,false
+/integrations/language-clients,docs/integrations/language-clients/index.md,integrations/language-clients/index.mdx,https://clickhouse.com/docs/integrations/language-clients,https://private-7c7dfe99.mintlify.app/integrations/language-clients/index,matched,869048716a1c0746,true,869048716a1c0746,2026-05-08T15:04:34+00:00,false
/integrations/language-clients/go/clickhouse-api,docs/integrations/language-clients/go/clickhouse-api.md,integrations/language-clients/go/clickhouse-api.mdx,https://clickhouse.com/docs/integrations/language-clients/go/clickhouse-api,https://private-7c7dfe99.mintlify.app/integrations/language-clients/go/clickhouse-api,matched,d3df65f77d6d7a20,true,d3df65f77d6d7a20,2026-05-13T13:16:51+00:00,false
/integrations/language-clients/go/config-reference,docs/integrations/language-clients/go/config-reference.md,integrations/language-clients/go/config-reference.mdx,https://clickhouse.com/docs/integrations/language-clients/go/config-reference,https://private-7c7dfe99.mintlify.app/integrations/language-clients/go/config-reference,matched,dc59aa7f92ed2cbd,true,dc59aa7f92ed2cbd,2026-05-19T11:48:22+00:00,false
/integrations/language-clients/go/configuration,docs/integrations/language-clients/go/configuration.md,integrations/language-clients/go/configuration.mdx,https://clickhouse.com/docs/integrations/language-clients/go/configuration,https://private-7c7dfe99.mintlify.app/integrations/language-clients/go/configuration,matched,d53d886c3509c1cf,true,d53d886c3509c1cf,2026-05-19T11:48:22+00:00,false
/integrations/language-clients/go/data-types,docs/integrations/language-clients/go/data-types.md,integrations/language-clients/go/data-types.mdx,https://clickhouse.com/docs/integrations/language-clients/go/data-types,https://private-7c7dfe99.mintlify.app/integrations/language-clients/go/data-types,matched,b4291d7c5ff0e806,true,b4291d7c5ff0e806,2026-05-13T13:16:51+00:00,false
/integrations/language-clients/go/database-sql-api,docs/integrations/language-clients/go/database-sql-api.md,integrations/language-clients/go/database-sql-api.mdx,https://clickhouse.com/docs/integrations/language-clients/go/database-sql-api,https://private-7c7dfe99.mintlify.app/integrations/language-clients/go/database-sql-api,matched,7b977652859000ef,true,7b977652859000ef,2026-05-13T13:16:51+00:00,false
-/integrations/language-clients/java/client,docs/integrations/language-clients/java/client/client.mdx,integrations/language-clients/java/client.mdx,https://clickhouse.com/docs/integrations/language-clients/java/client,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java/client,matched,dbc7ac5fd60d82ef,true,dbc7ac5fd60d82ef,2026-05-09T15:40:17+00:00,false
-/integrations/language-clients/java/jdbc,docs/integrations/language-clients/java/jdbc/jdbc.mdx,integrations/language-clients/java/jdbc.mdx,https://clickhouse.com/docs/integrations/language-clients/java/jdbc,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java/jdbc,matched,0a8acb2d3a43905c,true,0a8acb2d3a43905c,2026-05-09T09:39:38+00:00,false
+/integrations/language-clients/java/client,docs/integrations/language-clients/java/client/client.mdx,integrations/language-clients/java/client.mdx,https://clickhouse.com/docs/integrations/language-clients/java/client,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java/client,matched,dbc7ac5fd60d82ef,true,dbc7ac5fd60d82ef,2026-05-21T09:09:46+00:00,false
+/integrations/language-clients/java/jdbc,docs/integrations/language-clients/java/jdbc/jdbc.mdx,integrations/language-clients/java/jdbc.mdx,https://clickhouse.com/docs/integrations/language-clients/java/jdbc,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java/jdbc,matched,0a8acb2d3a43905c,true,0a8acb2d3a43905c,2026-05-21T09:09:47+00:00,false
/integrations/language-clients/java/jdbc_date_time_guide,docs/integrations/language-clients/java/date_time_guide.md,integrations/language-clients/java/date-time-guide.mdx,https://clickhouse.com/docs/integrations/language-clients/java/jdbc_date_time_guide,https://private-7c7dfe99.mintlify.app/integrations/language-clients/java/date-time-guide,matched,df5662c2a5c6dd23,true,df5662c2a5c6dd23,2026-05-13T13:16:51+00:00,false
/integrations/language-clients/python/additional-options,docs/integrations/language-clients/python/additional-options.md,integrations/language-clients/python/additional-options.mdx,https://clickhouse.com/docs/integrations/language-clients/python/additional-options,https://private-7c7dfe99.mintlify.app/integrations/language-clients/python/additional-options,matched,b4988b4404edca44,true,b4988b4404edca44,2026-05-13T13:16:51+00:00,false
/integrations/language-clients/python/advanced-inserting,docs/integrations/language-clients/python/advanced-inserting.md,integrations/language-clients/python/advanced-inserting.mdx,https://clickhouse.com/docs/integrations/language-clients/python/advanced-inserting,https://private-7c7dfe99.mintlify.app/integrations/language-clients/python/advanced-inserting,matched,9f16fedc31be270e,true,9f16fedc31be270e,2026-05-08T09:09:20+00:00,false
@@ -703,23 +703,23 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/marimo,docs/integrations/sql-clients/marimo.md,integrations/connectors/data-integrations/sql-clients/marimo.mdx,https://clickhouse.com/docs/integrations/marimo,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/marimo,matched,d427bac7ec908e5a,true,d427bac7ec908e5a,2026-05-08T09:16:50+00:00,false
/integrations/metabase,docs/integrations/data-visualization/metabase-and-clickhouse.md,integrations/connectors/data-visualization/metabase-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/metabase,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/metabase-and-clickhouse,matched,3cd575e6f4339e94,true,3cd575e6f4339e94,2026-05-08T09:09:20+00:00,false
/integrations/middleware,docs/integrations/tools/data-integration/middleware/index.md,integrations/connectors/data-integrations/integrations/middleware.mdx,https://clickhouse.com/docs/integrations/middleware,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/integrations/middleware,matched,79602c2bc0d88ff7,true,79602c2bc0d88ff7,2026-05-08T09:09:20+00:00,false
-/integrations/migration/object-storage-to-clickhouse,docs/cloud/onboard/02_migrate/01_migration_guides/08_other_methods/03_object-storage-to-clickhouse.md,get-started/setup/migration-guides/other-methods/object-storage-to-clickhouse.mdx,https://clickhouse.com/docs/integrations/migration/object-storage-to-clickhouse,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/other-methods/object-storage-to-clickhouse,matched,bfb2e829231a0b46,true,bfb2e829231a0b46,2026-05-08T09:09:20+00:00,false
-/integrations/migration/overview,docs/cloud/onboard/02_migrate/01_migration_guides/01_overview.md,get-started/setup/migration-guides/overview.mdx,https://clickhouse.com/docs/integrations/migration/overview,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/overview,matched,d535520b5d31257d,true,d535520b5d31257d,2026-05-13T13:25:34+00:00,false
+/integrations/migration/object-storage-to-clickhouse,docs/cloud/onboard/02_migrate/01_migration_guides/08_other_methods/03_object-storage-to-clickhouse.md,core/get-started/setup/migration-guides/other-methods/object-storage-to-clickhouse.mdx,https://clickhouse.com/docs/integrations/migration/object-storage-to-clickhouse,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/other-methods/object-storage-to-clickhouse,matched,bfb2e829231a0b46,true,bfb2e829231a0b46,2026-05-08T09:09:20+00:00,false
+/integrations/migration/overview,docs/cloud/onboard/02_migrate/01_migration_guides/01_overview.md,core/get-started/setup/migration-guides/overview.mdx,https://clickhouse.com/docs/integrations/migration/overview,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/overview,matched,d535520b5d31257d,true,d535520b5d31257d,2026-05-13T13:25:34+00:00,false
/integrations/minio,docs/integrations/data-ingestion/s3-minio.md,integrations/connectors/data-ingestion/s3-minio.mdx,https://clickhouse.com/docs/integrations/minio,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/s3-minio,matched,92ef29685f5ae146,true,c87a86b470f93336,2026-05-08T09:09:20+00:00,false
/integrations/misc,docs/integrations/misc/index.md,integrations/connectors/tools/misc-index.mdx,https://clickhouse.com/docs/integrations/misc,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/misc-index,matched,59baa8254088be4c,true,f61340073664032a,2026-05-08T11:59:43+00:00,false
/integrations/mitzu,docs/integrations/data-visualization/community_integrations/mitzu-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/mitzu-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/mitzu,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/mitzu-and-clickhouse,matched,d8b5b521aa6d31e7,true,d8b5b521aa6d31e7,2026-05-08T09:16:50+00:00,false
-/integrations/mysql,docs/integrations/data-sources/mysql.md,integrations/connectors/data-ingestion/mysql.mdx | integrations/connectors/data-sources/mysql.mdx,https://clickhouse.com/docs/integrations/mysql,,ambiguous,c749ab5af449d835,true,c749ab5af449d835,2026-05-08T19:29:49+00:00,false
+/integrations/mysql,docs/integrations/data-sources/mysql.md,integrations/connectors/data-sources/mysql.mdx,https://clickhouse.com/docs/integrations/mysql,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-sources/mysql,matched,c749ab5af449d835,true,c749ab5af449d835,2026-05-08T19:29:49+00:00,false
/integrations/nifi,docs/integrations/data-ingestion/etl-tools/nifi-and-clickhouse.md,integrations/connectors/data-ingestion/etl-tools/nifi-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/nifi,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/nifi-and-clickhouse,matched,d72c5ce6da75c122,true,d72c5ce6da75c122,2026-05-08T09:16:50+00:00,false
/integrations/omni,docs/integrations/data-visualization/omni-and-clickhouse.md,integrations/connectors/data-visualization/omni-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/omni,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/omni-and-clickhouse,matched,7d28b8ed8b03540f,true,7d28b8ed8b03540f,2026-05-08T09:09:20+00:00,false
/integrations/pg_clickhouse,docs/integrations/tools/data-integration/pg_clickhouse/introduction.md,integrations/connectors/tools/pg_clickhouse/introduction.mdx,https://clickhouse.com/docs/integrations/pg_clickhouse,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/pg_clickhouse/introduction,matched,30bb8cf94e9ed8f6,true,30bb8cf94e9ed8f6,2026-05-19T11:08:53+00:00,false
/integrations/pg_clickhouse/reference,docs/integrations/tools/data-integration/pg_clickhouse/reference.md,integrations/connectors/tools/pg_clickhouse/reference.mdx,https://clickhouse.com/docs/integrations/pg_clickhouse/reference,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/pg_clickhouse/reference,matched,cfc896515a56e4cb,true,cfc896515a56e4cb,2026-05-19T11:08:53+00:00,false
/integrations/pg_clickhouse/tutorial,docs/integrations/tools/data-integration/pg_clickhouse/tutorial.md,integrations/connectors/tools/pg_clickhouse/tutorial.mdx,https://clickhouse.com/docs/integrations/pg_clickhouse/tutorial,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/pg_clickhouse/tutorial,matched,e05b2ab15e68b3a9,true,e05b2ab15e68b3a9,2026-05-19T11:08:53+00:00,false
/integrations/postgresql,docs/integrations/data-sources/postgres.md,integrations/connectors/data-sources/postgres.mdx,https://clickhouse.com/docs/integrations/postgresql,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-sources/postgres,matched,fb2d804909b58e74,true,fb2d804909b58e74,2026-05-08T11:33:34+00:00,false
-/integrations/postgresql/connecting-to-postgresql,docs/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql.md,integrations/clickpipes/postgres/connecting-to-postgresql.mdx | integrations/connectors/data-ingestion/postgresql/connecting-to-postgresql.mdx,https://clickhouse.com/docs/integrations/postgresql/connecting-to-postgresql,,ambiguous,dcef06bf7159ee84,true,dcef06bf7159ee84,2026-05-13T14:22:59+00:00,false
-/integrations/postgresql/inserting-data,docs/integrations/data-ingestion/dbms/postgresql/inserting-data.md,integrations/clickpipes/postgres/inserting-data.mdx | integrations/connectors/data-ingestion/postgresql/inserting-data.mdx,https://clickhouse.com/docs/integrations/postgresql/inserting-data,,ambiguous,9d5890a4e8d959fc,true,9d5890a4e8d959fc,2026-05-08T19:29:49+00:00,false
+/integrations/postgresql/connecting-to-postgresql,docs/integrations/data-ingestion/dbms/postgresql/connecting-to-postgresql.md,integrations/clickpipes/postgres/connecting-to-postgresql.mdx,https://clickhouse.com/docs/integrations/postgresql/connecting-to-postgresql,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/postgres/connecting-to-postgresql,matched,dcef06bf7159ee84,true,dcef06bf7159ee84,2026-05-13T14:22:59+00:00,false
+/integrations/postgresql/inserting-data,docs/integrations/data-ingestion/dbms/postgresql/inserting-data.md,integrations/clickpipes/postgres/inserting-data.mdx,https://clickhouse.com/docs/integrations/postgresql/inserting-data,https://private-7c7dfe99.mintlify.app/integrations/clickpipes/postgres/inserting-data,matched,9d5890a4e8d959fc,true,9d5890a4e8d959fc,2026-05-08T19:29:49+00:00,false
/integrations/powerbi,docs/integrations/data-visualization/powerbi-and-clickhouse.md,integrations/connectors/data-visualization/powerbi-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/powerbi,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/powerbi-and-clickhouse,matched,f4b554753cd9ae35,true,f4b554753cd9ae35,2026-05-13T14:36:44+00:00,false
/integrations/prometheus,docs/cloud/features/08_monitoring/prometheus.md,products/cloud/features/monitoring/prometheus.mdx,https://clickhouse.com/docs/integrations/prometheus,https://private-7c7dfe99.mintlify.app/products/cloud/features/monitoring/prometheus,matched,b396202ab4b46f1c,true,b396202ab4b46f1c,2026-05-13T13:16:51+00:00,false
-/integrations/python,docs/integrations/language-clients/python/index.md,integrations/language-clients/python/index.mdx,https://clickhouse.com/docs/integrations/python,https://private-7c7dfe99.mintlify.app/integrations/language-clients/python,matched,2b764e5eba64bde1,true,2b764e5eba64bde1,2026-05-08T11:59:43+00:00,false
+/integrations/python,docs/integrations/language-clients/python/index.md,integrations/language-clients/python/index.mdx,https://clickhouse.com/docs/integrations/python,https://private-7c7dfe99.mintlify.app/integrations/language-clients/python/index,matched,2b764e5eba64bde1,true,2b764e5eba64bde1,2026-05-08T11:59:43+00:00,false
/integrations/qstudio,docs/integrations/sql-clients/qstudio.md,integrations/connectors/data-integrations/sql-clients/qstudio.mdx,https://clickhouse.com/docs/integrations/qstudio,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/qstudio,matched,24048c24eb329217,true,24048c24eb329217,2026-05-08T09:16:50+00:00,false
/integrations/querio,docs/integrations/data-visualization/community_integrations/querio-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/querio-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/querio,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/querio-and-clickhouse,matched,3987f8cbb6c763a2,true,3987f8cbb6c763a2,2026-05-09T17:02:01+00:00,false
/integrations/quicksight,docs/integrations/data-visualization/quicksight-and-clickhouse.md,integrations/connectors/data-visualization/quicksight-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/quicksight,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/quicksight-and-clickhouse,matched,6d34c7aa55a8fa5d,true,6d34c7aa55a8fa5d,2026-05-13T14:36:45+00:00,false
@@ -730,8 +730,8 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/s3/creating-iam-user-and-s3-bucket,docs/integrations/data-ingestion/s3/creating-an-s3-iam-role-and-bucket.md,integrations/connectors/data-ingestion/AWS/creating-an-s3-iam-role-and-bucket.mdx,https://clickhouse.com/docs/integrations/s3/creating-iam-user-and-s3-bucket,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/AWS/creating-an-s3-iam-role-and-bucket,matched,1928720df8484ff3,true,1928720df8484ff3,2026-05-08T09:09:20+00:00,false
/integrations/s3/performance,docs/integrations/data-ingestion/s3/performance.md,integrations/connectors/data-ingestion/AWS/performance.mdx,https://clickhouse.com/docs/integrations/s3/performance,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/AWS/performance,matched,bbe8bd906ddd701b,true,bbe8bd906ddd701b,2026-05-08T13:01:57+00:00,false
/integrations/splunk,docs/integrations/data-visualization/splunk-and-clickhouse.md,integrations/connectors/data-visualization/splunk-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/splunk,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/splunk-and-clickhouse,matched,62ab4d71c7d1892e,true,62ab4d71c7d1892e,2026-05-08T09:09:20+00:00,false
-/integrations/sql-clients/,docs/integrations/sql-clients/index.md,integrations/connectors/data-integrations/sql-clients/index.mdx,https://clickhouse.com/docs/integrations/sql-clients/,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients,matched,5ecc350c7f227e2d,true,2169b364f5f9a815,2026-05-08T09:09:20+00:00,false
-/integrations/sql-clients/sql-console,docs/integrations/sql-clients/sql-console.md,integrations/connectors/data-integrations/sql-clients/sql-console.mdx,https://clickhouse.com/docs/integrations/sql-clients/sql-console,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/sql-console,matched,3d6303d0c5e7d476,true,3d6303d0c5e7d476,2026-05-08T09:09:20+00:00,false
+/integrations/sql-clients/,docs/integrations/sql-clients/index.md,integrations/connectors/data-integrations/sql-clients/index.mdx,https://clickhouse.com/docs/integrations/sql-clients/,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/index,matched,5ecc350c7f227e2d,true,2169b364f5f9a815,2026-05-08T09:09:20+00:00,false
+/integrations/sql-clients/sql-console,docs/integrations/sql-clients/sql-console.md,,https://clickhouse.com/docs/integrations/sql-clients/sql-console,,unmatched,3d6303d0c5e7d476,false,,,false
/integrations/sttreamkap,docs/integrations/data-ingestion/streamkap/streamkap-and-clickhouse.md,integrations/connectors/data-ingestion/streamkap/streamkap-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/sttreamkap,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/streamkap/streamkap-and-clickhouse,matched,af0d913c51ae15c4,true,af0d913c51ae15c4,2026-05-08T09:09:20+00:00,false
/integrations/superset,docs/integrations/data-visualization/superset-and-clickhouse.md,integrations/connectors/data-visualization/superset-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/superset,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/superset-and-clickhouse,matched,a0c29b72298bd8a3,true,a0c29b72298bd8a3,2026-05-09T11:14:51+00:00,false
/integrations/tableau,docs/integrations/data-visualization/tableau/tableau-and-clickhouse.md,integrations/connectors/data-visualization/tableau/tableau-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/tableau,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/tableau/tableau-and-clickhouse,matched,7e2230293b488a9b,true,7e2230293b488a9b,2026-05-08T09:52:53+00:00,false
@@ -739,131 +739,131 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/integrations/tableau/analysis-tips,docs/integrations/data-visualization/tableau/tableau-analysis-tips.md,integrations/connectors/data-visualization/tableau/tableau-analysis-tips.mdx,https://clickhouse.com/docs/integrations/tableau/analysis-tips,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/tableau/tableau-analysis-tips,matched,80d06c0a0ff8e6d8,true,b15852db7c8744e0,2026-05-08T09:09:20+00:00,false
/integrations/tableau/connection-tips,docs/integrations/data-visualization/tableau/tableau-connection-tips.md,integrations/connectors/data-visualization/tableau/tableau-connection-tips.mdx,https://clickhouse.com/docs/integrations/tableau/connection-tips,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/tableau/tableau-connection-tips,matched,53713989212bfe2e,true,53713989212bfe2e,2026-05-08T09:09:20+00:00,false
/integrations/tablumio,docs/integrations/sql-clients/tablum.md,integrations/connectors/data-integrations/sql-clients/tablum.mdx,https://clickhouse.com/docs/integrations/tablumio,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/sql-clients/tablum,matched,e9f2de8ab3913fdf,true,e9f2de8ab3913fdf,2026-05-08T09:16:50+00:00,false
-/integrations/tools,docs/integrations/tools/index.md,integrations/connectors/tools/index.mdx,https://clickhouse.com/docs/integrations/tools,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools,matched,94f62d0ae449b6ff,true,cbdf26fe14fdac5b,2026-05-07T14:49:41+00:00,false
+/integrations/tools,docs/integrations/tools/index.md,integrations/connectors/tools/index.mdx,https://clickhouse.com/docs/integrations/tools,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/index,matched,94f62d0ae449b6ff,true,cbdf26fe14fdac5b,2026-05-07T14:49:41+00:00,false
/integrations/tools/data-integrations,docs/integrations/tools/data-integration/index.md,integrations/connectors/tools/data-integration-index.mdx,https://clickhouse.com/docs/integrations/tools/data-integrations,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/data-integration-index,matched,37cc8781d3e86354,true,37cc8781d3e86354,2026-05-13T13:16:51+00:00,false
/integrations/vector,docs/integrations/data-ingestion/etl-tools/vector-to-clickhouse.md,integrations/connectors/data-ingestion/etl-tools/vector-to-clickhouse.mdx,https://clickhouse.com/docs/integrations/vector,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-ingestion/etl-tools/vector-to-clickhouse,matched,57967e36da185dc7,true,57967e36da185dc7,2026-05-08T09:09:20+00:00,false
/integrations/zingdata,docs/integrations/data-visualization/community_integrations/zingdata-and-clickhouse.md,integrations/connectors/data-visualization/community-integrations/zingdata-and-clickhouse.mdx,https://clickhouse.com/docs/integrations/zingdata,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-visualization/community-integrations/zingdata-and-clickhouse,matched,b515f934e60c1251,true,b515f934e60c1251,2026-05-08T09:16:50+00:00,false
-/interfaces/arrowflight,docs/integrations/interfaces/arrowflight.md,integrations/connectors/data-integrations/drivers-and-interfaces/arrowflight.mdx,https://clickhouse.com/docs/interfaces/arrowflight,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/arrowflight,matched,a2da273f48ba5a95,true,a2da273f48ba5a95,2026-05-19T11:08:53+00:00,false
-/interfaces/cli,docs/interfaces/cli.md,integrations/connectors/data-integrations/drivers-and-interfaces/cli.mdx,https://clickhouse.com/docs/interfaces/cli,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/cli,matched,8497def37a58edb5,true,8497def37a58edb5,2026-05-08T09:09:20+00:00,false
-/interfaces/client,docs/interfaces/client.md,integrations/connectors/data-integrations/drivers-and-interfaces/client.mdx,https://clickhouse.com/docs/interfaces/client,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/client,matched,c3109f2b192e00f8,true,c3109f2b192e00f8,2026-05-13T15:43:28+00:00,false
-/interfaces/cpp,docs/integrations/language-clients/cpp.md,integrations/language-clients/cpp.mdx | integrations/connectors/data-integrations/drivers-and-interfaces/cpp.mdx,https://clickhouse.com/docs/interfaces/cpp,,ambiguous,c5ebd1fb86153394,true,51b1fb17abd7387f,2026-05-08T19:29:49+00:00,false
-/interfaces/formats,docs/interfaces/formats.md,reference/formats/index.mdx,https://clickhouse.com/docs/interfaces/formats,https://private-7c7dfe99.mintlify.app/reference/formats,matched,df34f62628d8e02d,true,df34f62628d8e02d,2026-05-13T13:16:51+00:00,false
-/interfaces/formats/Arrow,docs/interfaces/formats/Arrow/Arrow.md,reference/formats/Arrow/Arrow.mdx,https://clickhouse.com/docs/interfaces/formats/Arrow,https://private-7c7dfe99.mintlify.app/reference/formats/Arrow/Arrow,matched,fefd4875760cc33c,true,fefd4875760cc33c,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/ArrowStream,docs/interfaces/formats/Arrow/ArrowStream.md,reference/formats/Arrow/ArrowStream.mdx,https://clickhouse.com/docs/interfaces/formats/ArrowStream,https://private-7c7dfe99.mintlify.app/reference/formats/Arrow/ArrowStream,matched,e26bd50b67b6a445,false,,,false
-/interfaces/formats/Avro,docs/interfaces/formats/Avro/Avro.md,reference/formats/Avro/Avro.mdx,https://clickhouse.com/docs/interfaces/formats/Avro,https://private-7c7dfe99.mintlify.app/reference/formats/Avro/Avro,matched,aa68e4488567e4ec,true,aa68e4488567e4ec,2026-05-09T14:41:34+00:00,false
-/interfaces/formats/AvroConfluent,docs/interfaces/formats/Avro/AvroConfluent.md,reference/formats/Avro/AvroConfluent.mdx,https://clickhouse.com/docs/interfaces/formats/AvroConfluent,https://private-7c7dfe99.mintlify.app/reference/formats/Avro/AvroConfluent,matched,c922737f2307ceec,true,c922737f2307ceec,2026-05-13T13:16:51+00:00,false
-/interfaces/formats/BSONEachRow,docs/interfaces/formats/BSONEachRow.md,reference/formats/BSONEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/BSONEachRow,https://private-7c7dfe99.mintlify.app/reference/formats/BSONEachRow,matched,5405382560ae38c8,true,5405382560ae38c8,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/Buffers,docs/interfaces/formats/Buffers.md,reference/formats/Buffers.mdx,https://clickhouse.com/docs/interfaces/formats/Buffers,https://private-7c7dfe99.mintlify.app/reference/formats/Buffers,matched,e7fd70effa797248,true,e7fd70effa797248,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/CSV,docs/interfaces/formats/CSV/CSV.md,reference/formats/CSV/CSV.mdx,https://clickhouse.com/docs/interfaces/formats/CSV,https://private-7c7dfe99.mintlify.app/reference/formats/CSV/CSV,matched,78c8f7d218a9c211,true,78c8f7d218a9c211,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/CSVWithNames,docs/interfaces/formats/CSV/CSVWithNames.md,reference/formats/CSV/CSVWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/CSVWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/CSV/CSVWithNames,matched,c042f748c77a461d,true,c042f748c77a461d,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/CSVWithNamesAndTypes,docs/interfaces/formats/CSV/CSVWithNamesAndTypes.md,reference/formats/CSV/CSVWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/CSVWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/CSV/CSVWithNamesAndTypes,matched,c626b9222d67c0a1,true,c626b9222d67c0a1,2026-05-08T11:53:27+00:00,false
-/interfaces/formats/CapnProto,docs/interfaces/formats/CapnProto.md,reference/formats/CapnProto.mdx,https://clickhouse.com/docs/interfaces/formats/CapnProto,https://private-7c7dfe99.mintlify.app/reference/formats/CapnProto,matched,e52f05211d11daf4,true,e52f05211d11daf4,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/CustomSeparated,docs/interfaces/formats/CustomSeparated/CustomSeparated.md,reference/formats/CustomSeparated/CustomSeparated.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparated,https://private-7c7dfe99.mintlify.app/reference/formats/CustomSeparated/CustomSeparated,matched,2b4ac034aba018ed,true,2b4ac034aba018ed,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/CustomSeparatedIgnoreSpaces,docs/interfaces/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.md,reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedIgnoreSpaces,https://private-7c7dfe99.mintlify.app/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces,matched,27bd6d01dce2d644,false,,,false
-/interfaces/formats/CustomSeparatedIgnoreSpacesWithNames,docs/interfaces/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.md,reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedIgnoreSpacesWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames,matched,4cfca9fae37346c2,false,,,false
-/interfaces/formats/CustomSeparatedIgnoreSpacesWithNamesAndTypes,docs/interfaces/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.md,reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedIgnoreSpacesWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes,matched,8cde4367a08c4c85,false,,,false
-/interfaces/formats/CustomSeparatedWithNames,docs/interfaces/formats/CustomSeparated/CustomSeparatedWithNames.md,reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/CustomSeparated/CustomSeparatedWithNames,matched,1dd4bcf22efaf403,true,1dd4bcf22efaf403,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/CustomSeparatedWithNamesAndTypes,docs/interfaces/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.md,reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes,matched,31443088162bd3a0,true,31443088162bd3a0,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/DWARF,docs/interfaces/formats/DWARF.md,reference/formats/DWARF.mdx,https://clickhouse.com/docs/interfaces/formats/DWARF,https://private-7c7dfe99.mintlify.app/reference/formats/DWARF,matched,c2f203731c8694cf,true,c2f203731c8694cf,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/Form,docs/interfaces/formats/Form.md,reference/formats/Form.mdx,https://clickhouse.com/docs/interfaces/formats/Form,https://private-7c7dfe99.mintlify.app/reference/formats/Form,matched,c9a05803f13e7580,false,,,false
-/interfaces/formats/Hash,docs/interfaces/formats/Hash.md,reference/formats/Hash.mdx,https://clickhouse.com/docs/interfaces/formats/Hash,https://private-7c7dfe99.mintlify.app/reference/formats/Hash,matched,1126bfe846bb5fcd,false,,,false
-/interfaces/formats/HiveText,docs/interfaces/formats/HiveText.md,reference/formats/HiveText.mdx,https://clickhouse.com/docs/interfaces/formats/HiveText,https://private-7c7dfe99.mintlify.app/reference/formats/HiveText,matched,22c4567427f06c4f,false,,,false
-/interfaces/formats/JSON,docs/interfaces/formats/JSON/JSON.md,reference/formats/JSON/JSON.mdx,https://clickhouse.com/docs/interfaces/formats/JSON,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSON,matched,fe45037d34e9b052,true,fe45037d34e9b052,2026-05-07T15:41:11+00:00,false
-/interfaces/formats/JSON/format-settings,docs/interfaces/formats/JSON/format-settings.md,reference/formats/JSON/format-settings.mdx,https://clickhouse.com/docs/interfaces/formats/JSON/format-settings,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/format-settings,matched,d58e38a4b38f0454,true,d58e38a4b38f0454,2026-05-08T20:59:51+00:00,false
-/interfaces/formats/JSONAsObject,docs/interfaces/formats/JSON/JSONAsObject.md,reference/formats/JSON/JSONAsObject.mdx,https://clickhouse.com/docs/interfaces/formats/JSONAsObject,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONAsObject,matched,535b7ebcc2bbcc05,true,535b7ebcc2bbcc05,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/JSONAsString,docs/interfaces/formats/JSON/JSONAsString.md,reference/formats/JSON/JSONAsString.mdx,https://clickhouse.com/docs/interfaces/formats/JSONAsString,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONAsString,matched,b777d33223c2f6e1,true,b777d33223c2f6e1,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/JSONColumns,docs/interfaces/formats/JSON/JSONColumns.md,reference/formats/JSON/JSONColumns.mdx,https://clickhouse.com/docs/interfaces/formats/JSONColumns,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONColumns,matched,8fd5347285441089,true,8fd5347285441089,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/JSONColumnsWithMetadata,docs/interfaces/formats/JSON/JSONColumnsWithMetadata.md,reference/formats/JSON/JSONColumnsWithMetadata.mdx,https://clickhouse.com/docs/interfaces/formats/JSONColumnsWithMetadata,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONColumnsWithMetadata,matched,96f0f82692a94d11,true,96f0f82692a94d11,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompact,docs/interfaces/formats/JSON/JSONCompact.md,reference/formats/JSON/JSONCompact.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompact,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompact,matched,bb371d742e1c3d8b,true,bb371d742e1c3d8b,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompactColumns,docs/interfaces/formats/JSON/JSONCompactColumns.md,reference/formats/JSON/JSONCompactColumns.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactColumns,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactColumns,matched,90eb1bd6cd208752,true,90eb1bd6cd208752,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/JSONCompactEachRow,docs/interfaces/formats/JSON/JSONCompactEachRow.md,reference/formats/JSON/JSONCompactEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRow,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactEachRow,matched,54f6ee288acad577,true,54f6ee288acad577,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompactEachRowWithNames,docs/interfaces/formats/JSON/JSONCompactEachRowWithNames.md,reference/formats/JSON/JSONCompactEachRowWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRowWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactEachRowWithNames,matched,b37e005c51f403fc,true,b37e005c51f403fc,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompactEachRowWithNamesAndTypes,docs/interfaces/formats/JSON/JSONCompactEachRowWithNamesAndTypes.md,reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRowWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes,matched,9c79376ce670521b,true,9c79376ce670521b,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompactEachRowWithProgress,docs/interfaces/formats/JSON/JSONCompactEachRowWithProgress.md,reference/formats/JSON/JSONCompactEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRowWithProgress,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactEachRowWithProgress,matched,a1fbebb255566158,false,,,false
-/interfaces/formats/JSONCompactStrings,docs/interfaces/formats/JSON/JSONCompactStrings.md,reference/formats/JSON/JSONCompactStrings.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStrings,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactStrings,matched,5792c89f06fcaed3,true,5792c89f06fcaed3,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompactStringsEachRow,docs/interfaces/formats/JSON/JSONCompactStringsEachRow.md,reference/formats/JSON/JSONCompactStringsEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRow,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactStringsEachRow,matched,cf8035df5e02498f,true,cf8035df5e02498f,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompactStringsEachRowWithNames,docs/interfaces/formats/JSON/JSONCompactStringsEachRowWithNames.md,reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRowWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactStringsEachRowWithNames,matched,6dadcbfab042a7bc,true,6dadcbfab042a7bc,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONCompactStringsEachRowWithNamesAndTypes,docs/interfaces/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.md,reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRowWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes,matched,0d3df994d73dcce5,true,0d3df994d73dcce5,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/JSONCompactStringsEachRowWithProgress,docs/interfaces/formats/JSON/JSONCompactStringsEachRowWithProgress.md,reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRowWithProgress,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONCompactStringsEachRowWithProgress,matched,fb5ace8ecf41cd7a,true,fb5ace8ecf41cd7a,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/JSONEachRow,docs/interfaces/formats/JSON/JSONEachRow.md,reference/formats/JSON/JSONEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONEachRow,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONEachRow,matched,d64cf47163473324,true,d64cf47163473324,2026-05-07T15:41:11+00:00,false
-/interfaces/formats/JSONEachRowWithProgress,docs/interfaces/formats/JSON/JSONEachRowWithProgress.md,reference/formats/JSON/JSONEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONEachRowWithProgress,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONEachRowWithProgress,matched,f49e9e3f91b64b35,true,f49e9e3f91b64b35,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONLines,docs/interfaces/formats/JSON/JSONLines.md,reference/formats/JSON/JSONLines.mdx,https://clickhouse.com/docs/interfaces/formats/JSONLines,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONLines,matched,e3e518cc255f6764,true,e3e518cc255f6764,2026-05-07T15:41:11+00:00,false
-/interfaces/formats/JSONObjectEachRow,docs/interfaces/formats/JSON/JSONObjectEachRow.md,reference/formats/JSON/JSONObjectEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONObjectEachRow,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONObjectEachRow,matched,8bbad16681851331,true,8bbad16681851331,2026-05-19T11:08:53+00:00,false
-/interfaces/formats/JSONStrings,docs/interfaces/formats/JSON/JSONStrings.md,reference/formats/JSON/JSONStrings.mdx,https://clickhouse.com/docs/interfaces/formats/JSONStrings,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONStrings,matched,ac07bacf3135df09,true,ac07bacf3135df09,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONStringsEachRow,docs/interfaces/formats/JSON/JSONStringsEachRow.md,reference/formats/JSON/JSONStringsEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONStringsEachRow,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONStringsEachRow,matched,d28f12f9ff28bee7,true,d28f12f9ff28bee7,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/JSONStringsEachRowWithProgress,docs/interfaces/formats/JSON/JSONStringsEachRowWithProgress.md,reference/formats/JSON/JSONStringsEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONStringsEachRowWithProgress,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/JSONStringsEachRowWithProgress,matched,31a8fa488c7303d5,false,,,false
-/interfaces/formats/LineAsString,docs/interfaces/formats/LineAsString/LineAsString.md,reference/formats/LineAsString/LineAsString.mdx,https://clickhouse.com/docs/interfaces/formats/LineAsString,https://private-7c7dfe99.mintlify.app/reference/formats/LineAsString/LineAsString,matched,1adc889763f86e07,true,1adc889763f86e07,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/LineAsStringWithNames,docs/interfaces/formats/LineAsString/LineAsStringWithNames.md,reference/formats/LineAsString/LineAsStringWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/LineAsStringWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/LineAsString/LineAsStringWithNames,matched,0d354a4bc3cf5327,true,0d354a4bc3cf5327,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/LineAsStringWithNamesAndTypes,docs/interfaces/formats/LineAsString/LineAsStringWithNamesAndTypes.md,reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/LineAsStringWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/LineAsString/LineAsStringWithNamesAndTypes,matched,d6c75e44e7297d78,true,d6c75e44e7297d78,2026-05-19T11:08:53+00:00,false
-/interfaces/formats/Markdown,docs/interfaces/formats/Markdown.md,reference/formats/Markdown.mdx,https://clickhouse.com/docs/interfaces/formats/Markdown,https://private-7c7dfe99.mintlify.app/reference/formats/Markdown,matched,85b1114daba44b00,false,,,false
-/interfaces/formats/MsgPack,docs/interfaces/formats/MsgPack.md,reference/formats/MsgPack.mdx,https://clickhouse.com/docs/interfaces/formats/MsgPack,https://private-7c7dfe99.mintlify.app/reference/formats/MsgPack,matched,948846a8743f4a90,true,948846a8743f4a90,2026-05-07T15:41:11+00:00,false
-/interfaces/formats/MySQLDump,docs/interfaces/formats/MySQLDump.md,reference/formats/MySQLDump.mdx,https://clickhouse.com/docs/interfaces/formats/MySQLDump,https://private-7c7dfe99.mintlify.app/reference/formats/MySQLDump,matched,ac6f44e72647bc38,true,ac6f44e72647bc38,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/MySQLWire,docs/interfaces/formats/MySQLWire.md,reference/formats/MySQLWire.mdx,https://clickhouse.com/docs/interfaces/formats/MySQLWire,https://private-7c7dfe99.mintlify.app/reference/formats/MySQLWire,matched,488ca0a5b4cba0af,false,,,false
-/interfaces/formats/Native,docs/interfaces/formats/Native.md,reference/formats/Native.mdx,https://clickhouse.com/docs/interfaces/formats/Native,https://private-7c7dfe99.mintlify.app/reference/formats/Native,matched,d900939a969da7d4,true,d900939a969da7d4,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/Npy,docs/interfaces/formats/Npy.md,reference/formats/Npy.mdx,https://clickhouse.com/docs/interfaces/formats/Npy,https://private-7c7dfe99.mintlify.app/reference/formats/Npy,matched,da8c2bbfc6c34aa9,true,da8c2bbfc6c34aa9,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/Null,docs/interfaces/formats/Null.md,reference/formats/Null.mdx,https://clickhouse.com/docs/interfaces/formats/Null,https://private-7c7dfe99.mintlify.app/reference/formats/Null,matched,f80ac33db9f2499e,true,f80ac33db9f2499e,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/ODBCDriver2,docs/interfaces/formats/ODBCDriver2.md,reference/formats/ODBCDriver2.mdx,https://clickhouse.com/docs/interfaces/formats/ODBCDriver2,https://private-7c7dfe99.mintlify.app/reference/formats/ODBCDriver2,matched,1724335ae6c5171c,false,,,false
-/interfaces/formats/ORC,docs/interfaces/formats/ORC.md,reference/formats/ORC.mdx,https://clickhouse.com/docs/interfaces/formats/ORC,https://private-7c7dfe99.mintlify.app/reference/formats/ORC,matched,3344d9c5165b7b63,true,3344d9c5165b7b63,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/One,docs/interfaces/formats/One.md,reference/formats/One.mdx,https://clickhouse.com/docs/interfaces/formats/One,https://private-7c7dfe99.mintlify.app/reference/formats/One,matched,b6e7b7146868d159,true,b6e7b7146868d159,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/Parquet,docs/interfaces/formats/Parquet/Parquet.md,reference/formats/Parquet/Parquet.mdx,https://clickhouse.com/docs/interfaces/formats/Parquet,https://private-7c7dfe99.mintlify.app/reference/formats/Parquet/Parquet,matched,b490e7db2c2d91b3,true,b490e7db2c2d91b3,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/ParquetMetadata,docs/interfaces/formats/Parquet/ParquetMetadata.md,reference/formats/Parquet/ParquetMetadata.mdx,https://clickhouse.com/docs/interfaces/formats/ParquetMetadata,https://private-7c7dfe99.mintlify.app/reference/formats/Parquet/ParquetMetadata,matched,9b6474c5f66a5e77,false,,,false
-/interfaces/formats/PostgreSQLWire,docs/interfaces/formats/PostgreSQLWire.md,reference/formats/PostgreSQLWire.mdx,https://clickhouse.com/docs/interfaces/formats/PostgreSQLWire,https://private-7c7dfe99.mintlify.app/reference/formats/PostgreSQLWire,matched,ce873407eda99fea,false,,,false
-/interfaces/formats/Pretty,docs/interfaces/formats/Pretty/Pretty.md,reference/formats/Pretty/Pretty.mdx,https://clickhouse.com/docs/interfaces/formats/Pretty,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/Pretty,matched,1691e237ea64aaca,true,1691e237ea64aaca,2026-05-09T14:41:32+00:00,false
-/interfaces/formats/PrettyCompact,docs/interfaces/formats/Pretty/PrettyCompact.md,reference/formats/Pretty/PrettyCompact.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompact,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettyCompact,matched,1fee80d8af00c415,true,1fee80d8af00c415,2026-05-09T14:41:32+00:00,false
-/interfaces/formats/PrettyCompactMonoBlock,docs/interfaces/formats/Pretty/PrettyCompactMonoBlock.md,reference/formats/Pretty/PrettyCompactMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompactMonoBlock,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettyCompactMonoBlock,matched,af620cd5ed38d265,true,af620cd5ed38d265,2026-05-09T14:41:32+00:00,false
-/interfaces/formats/PrettyCompactNoEscapes,docs/interfaces/formats/Pretty/PrettyCompactNoEscapes.md,reference/formats/Pretty/PrettyCompactNoEscapes.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompactNoEscapes,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettyCompactNoEscapes,matched,e97df2367ee337a5,true,e97df2367ee337a5,2026-05-09T14:41:32+00:00,false
-/interfaces/formats/PrettyCompactNoEscapesMonoBlock,docs/interfaces/formats/Pretty/PrettyCompactNoEscapesMonoBlock.md,reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompactNoEscapesMonoBlock,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock,matched,c61769f8b34a280f,true,c61769f8b34a280f,2026-05-09T14:41:33+00:00,false
-/interfaces/formats/PrettyJSONEachRow,docs/interfaces/formats/JSON/PrettyJSONEachRow.md,reference/formats/JSON/PrettyJSONEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyJSONEachRow,https://private-7c7dfe99.mintlify.app/reference/formats/JSON/PrettyJSONEachRow,matched,fe2aceb75f41309c,true,fe2aceb75f41309c,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/PrettyMonoBlock,docs/interfaces/formats/Pretty/PrettyMonoBlock.md,reference/formats/Pretty/PrettyMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyMonoBlock,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettyMonoBlock,matched,40371c6acad07196,true,40371c6acad07196,2026-05-09T14:41:33+00:00,false
-/interfaces/formats/PrettyNoEscapes,docs/interfaces/formats/Pretty/PrettyNoEscapes.md,reference/formats/Pretty/PrettyNoEscapes.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyNoEscapes,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettyNoEscapes,matched,d3721cad34be7ac8,true,d3721cad34be7ac8,2026-05-09T14:41:33+00:00,false
-/interfaces/formats/PrettyNoEscapesMonoBlock,docs/interfaces/formats/Pretty/PrettyNoEscapesMonoBlock.md,reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyNoEscapesMonoBlock,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettyNoEscapesMonoBlock,matched,a35e75c19a0f228c,true,a35e75c19a0f228c,2026-05-09T14:41:33+00:00,false
-/interfaces/formats/PrettySpace,docs/interfaces/formats/Pretty/PrettySpace.md,reference/formats/Pretty/PrettySpace.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpace,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettySpace,matched,28f4800b7936b39a,true,28f4800b7936b39a,2026-05-09T14:41:33+00:00,false
-/interfaces/formats/PrettySpaceMonoBlock,docs/interfaces/formats/Pretty/PrettySpaceMonoBlock.md,reference/formats/Pretty/PrettySpaceMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpaceMonoBlock,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettySpaceMonoBlock,matched,77a1b67ca7c88505,true,77a1b67ca7c88505,2026-05-09T14:41:33+00:00,false
-/interfaces/formats/PrettySpaceNoEscapes,docs/interfaces/formats/Pretty/PrettySpaceNoEscapes.md,reference/formats/Pretty/PrettySpaceNoEscapes.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpaceNoEscapes,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettySpaceNoEscapes,matched,3f956529d3724204,true,3f956529d3724204,2026-05-09T14:41:33+00:00,false
-/interfaces/formats/PrettySpaceNoEscapesMonoBlock,docs/interfaces/formats/Pretty/PrettySpaceNoEscapesMonoBlock.md,reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpaceNoEscapesMonoBlock,https://private-7c7dfe99.mintlify.app/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock,matched,aba92e4ddf93c8ac,true,aba92e4ddf93c8ac,2026-05-09T14:41:34+00:00,false
-/interfaces/formats/Prometheus,docs/interfaces/formats/Prometheus.md,reference/formats/Prometheus.mdx,https://clickhouse.com/docs/interfaces/formats/Prometheus,https://private-7c7dfe99.mintlify.app/reference/formats/Prometheus,matched,72f38826fa27979a,true,72f38826fa27979a,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/Protobuf,docs/interfaces/formats/Protobuf/Protobuf.md,reference/formats/Protobuf/Protobuf.mdx,https://clickhouse.com/docs/interfaces/formats/Protobuf,https://private-7c7dfe99.mintlify.app/reference/formats/Protobuf/Protobuf,matched,d81d1d65b756efb0,true,d81d1d65b756efb0,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/ProtobufList,docs/interfaces/formats/Protobuf/ProtobufList.md,reference/formats/Protobuf/ProtobufList.mdx,https://clickhouse.com/docs/interfaces/formats/ProtobufList,https://private-7c7dfe99.mintlify.app/reference/formats/Protobuf/ProtobufList,matched,e99d4f3c7174e773,true,e99d4f3c7174e773,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/ProtobufSingle,docs/interfaces/formats/Protobuf/ProtobufSingle.md,reference/formats/Protobuf/ProtobufSingle.mdx,https://clickhouse.com/docs/interfaces/formats/ProtobufSingle,https://private-7c7dfe99.mintlify.app/reference/formats/Protobuf/ProtobufSingle,matched,6c958d1bfa513f4a,true,6c958d1bfa513f4a,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/RawBLOB,docs/interfaces/formats/RawBLOB.md,reference/formats/RawBLOB.mdx,https://clickhouse.com/docs/interfaces/formats/RawBLOB,https://private-7c7dfe99.mintlify.app/reference/formats/RawBLOB,matched,d344c46f769e848e,true,d344c46f769e848e,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/Regexp,docs/interfaces/formats/Regexp.md,reference/formats/Regexp.mdx,https://clickhouse.com/docs/interfaces/formats/Regexp,https://private-7c7dfe99.mintlify.app/reference/formats/Regexp,matched,01db9b97751fe567,true,01db9b97751fe567,2026-05-19T11:08:53+00:00,false
-/interfaces/formats/RowBinary,docs/interfaces/formats/RowBinary/RowBinary.md,reference/formats/RowBinary/RowBinary.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinary,https://private-7c7dfe99.mintlify.app/reference/formats/RowBinary/RowBinary,matched,687bad02e366f12b,true,687bad02e366f12b,2026-05-09T14:41:34+00:00,false
-/interfaces/formats/RowBinaryWithDefaults,docs/interfaces/formats/RowBinary/RowBinaryWithDefaults.md,reference/formats/RowBinary/RowBinaryWithDefaults.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinaryWithDefaults,https://private-7c7dfe99.mintlify.app/reference/formats/RowBinary/RowBinaryWithDefaults,matched,e6b73b30c4502fd5,true,e6b73b30c4502fd5,2026-05-09T14:41:34+00:00,false
-/interfaces/formats/RowBinaryWithNames,docs/interfaces/formats/RowBinary/RowBinaryWithNames.md,reference/formats/RowBinary/RowBinaryWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinaryWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/RowBinary/RowBinaryWithNames,matched,2a83ac2cbaf9b2ed,true,2a83ac2cbaf9b2ed,2026-05-09T14:41:34+00:00,false
-/interfaces/formats/RowBinaryWithNamesAndTypes,docs/interfaces/formats/RowBinary/RowBinaryWithNamesAndTypes.md,reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinaryWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/RowBinary/RowBinaryWithNamesAndTypes,matched,3c8db57986756c0b,true,3c8db57986756c0b,2026-05-09T14:41:34+00:00,false
-/interfaces/formats/SQLInsert,docs/interfaces/formats/SQLInsert.md,reference/formats/SQLInsert.mdx,https://clickhouse.com/docs/interfaces/formats/SQLInsert,https://private-7c7dfe99.mintlify.app/reference/formats/SQLInsert,matched,2a5bbf839d622f7e,true,2a5bbf839d622f7e,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/TSKV,docs/interfaces/formats/TabSeparated/TSKV.md,reference/formats/TabSeparated/TSKV.mdx,https://clickhouse.com/docs/interfaces/formats/TSKV,https://private-7c7dfe99.mintlify.app/reference/formats/TabSeparated/TSKV,matched,414e7c4dfb6cd3da,true,414e7c4dfb6cd3da,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/TabSeparated,docs/interfaces/formats/TabSeparated/TabSeparated.md,reference/formats/TabSeparated/TabSeparated.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparated,https://private-7c7dfe99.mintlify.app/reference/formats/TabSeparated/TabSeparated,matched,d699d4175df21acc,true,d699d4175df21acc,2026-05-07T15:41:11+00:00,false
-/interfaces/formats/TabSeparatedRaw,docs/interfaces/formats/TabSeparated/TabSeparatedRaw.md,reference/formats/TabSeparated/TabSeparatedRaw.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedRaw,https://private-7c7dfe99.mintlify.app/reference/formats/TabSeparated/TabSeparatedRaw,matched,8640bb0e91d0ce24,true,8640bb0e91d0ce24,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/TabSeparatedRawWithNames,docs/interfaces/formats/TabSeparated/TabSeparatedRawWithNames.md,reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedRawWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/TabSeparated/TabSeparatedRawWithNames,matched,8e9c8e608b5e9c9e,true,8e9c8e608b5e9c9e,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/TabSeparatedRawWithNamesAndTypes,docs/interfaces/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.md,reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedRawWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes,matched,6526c7597b3e43df,true,6526c7597b3e43df,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/TabSeparatedWithNames,docs/interfaces/formats/TabSeparated/TabSeparatedWithNames.md,reference/formats/TabSeparated/TabSeparatedWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedWithNames,https://private-7c7dfe99.mintlify.app/reference/formats/TabSeparated/TabSeparatedWithNames,matched,71530532e2635ead,true,71530532e2635ead,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/TabSeparatedWithNamesAndTypes,docs/interfaces/formats/TabSeparated/TabSeparatedWithNamesAndTypes.md,reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes,matched,79af085e05f9fd13,true,79af085e05f9fd13,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/Template,docs/interfaces/formats/Template/Template.md,reference/formats/Template/Template.mdx,https://clickhouse.com/docs/interfaces/formats/Template,https://private-7c7dfe99.mintlify.app/reference/formats/Template/Template,matched,faa699829df50e5c,true,faa699829df50e5c,2026-05-19T11:08:53+00:00,false
-/interfaces/formats/TemplateIgnoreSpaces,docs/interfaces/formats/Template/TemplateIgnoreSpaces.md,reference/formats/Template/TemplateIgnoreSpaces.mdx,https://clickhouse.com/docs/interfaces/formats/TemplateIgnoreSpaces,https://private-7c7dfe99.mintlify.app/reference/formats/Template/TemplateIgnoreSpaces,matched,190e7c7b34bba92c,true,190e7c7b34bba92c,2026-05-08T09:09:20+00:00,false
-/interfaces/formats/Values,docs/interfaces/formats/Values.md,reference/formats/Values.mdx,https://clickhouse.com/docs/interfaces/formats/Values,https://private-7c7dfe99.mintlify.app/reference/formats/Values,matched,635a54eaaef6f5e7,true,635a54eaaef6f5e7,2026-05-09T09:39:38+00:00,false
-/interfaces/formats/Vertical,docs/interfaces/formats/Vertical.md,reference/formats/Vertical.mdx,https://clickhouse.com/docs/interfaces/formats/Vertical,https://private-7c7dfe99.mintlify.app/reference/formats/Vertical,matched,3de10984a294ee3a,true,3de10984a294ee3a,2026-05-07T14:49:41+00:00,false
-/interfaces/formats/XML,docs/interfaces/formats/XML.md,reference/formats/XML.mdx,https://clickhouse.com/docs/interfaces/formats/XML,https://private-7c7dfe99.mintlify.app/reference/formats/XML,matched,f33dc7dd4c81c9ff,true,f33dc7dd4c81c9ff,2026-05-07T14:49:41+00:00,false
-/interfaces/grpc,docs/integrations/interfaces/grpc.md,integrations/connectors/data-integrations/drivers-and-interfaces/grpc.mdx,https://clickhouse.com/docs/interfaces/grpc,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/grpc,matched,71ce9ab564fe65cf,true,71ce9ab564fe65cf,2026-05-13T13:16:51+00:00,false
-/interfaces/http,docs/integrations/interfaces/http.md,integrations/connectors/data-integrations/drivers-and-interfaces/http.mdx,https://clickhouse.com/docs/interfaces/http,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/http,matched,a26f7c7e0b5565b2,true,a26f7c7e0b5565b2,2026-05-13T15:43:29+00:00,false
-/interfaces/jdbc,docs/integrations/interfaces/jdbc.md,integrations/connectors/data-integrations/drivers-and-interfaces/jdbc.mdx,https://clickhouse.com/docs/interfaces/jdbc,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/jdbc,matched,96ba684e632efee8,true,cfce448da448f5c7,2026-05-08T09:09:20+00:00,false
-/interfaces/mysql,docs/integrations/interfaces/mysql.md,integrations/connectors/data-integrations/drivers-and-interfaces/mysql.mdx,https://clickhouse.com/docs/interfaces/mysql,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/mysql,matched,de14b44afeedd37f,true,de14b44afeedd37f,2026-05-08T11:53:27+00:00,false
-/interfaces/natives-clients-and-interfaces,docs/interfaces/native-clients-interfaces-index.md,integrations/connectors/data-integrations/drivers-and-interfaces/native-clients-interfaces-index.mdx,https://clickhouse.com/docs/interfaces/natives-clients-and-interfaces,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/native-clients-interfaces-index,matched,bc9842824ee60cf0,true,bc9842824ee60cf0,2026-05-19T11:08:53+00:00,false
-/interfaces/odbc,docs/integrations/interfaces/odbc.md,integrations/connectors/data-integrations/drivers-and-interfaces/odbc.mdx,https://clickhouse.com/docs/interfaces/odbc,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/odbc,matched,18014418fca702e2,true,18014418fca702e2,2026-05-13T13:16:51+00:00,false
-/interfaces/overview,docs/integrations/interfaces/overview.md,integrations/connectors/data-integrations/drivers-and-interfaces/overview.mdx,https://clickhouse.com/docs/interfaces/overview,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/overview,matched,cf59fe61367d7168,true,cf59fe61367d7168,2026-05-13T13:16:51+00:00,false
-/interfaces/postgresql,docs/integrations/interfaces/postgresql.md,integrations/connectors/data-integrations/drivers-and-interfaces/postgresql.mdx,https://clickhouse.com/docs/interfaces/postgresql,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/postgresql,matched,3b3e0a1f7ddb7471,true,3b3e0a1f7ddb7471,2026-05-08T09:09:20+00:00,false
-/interfaces/prometheus,docs/integrations/interfaces/prometheus.md,integrations/connectors/data-integrations/drivers-and-interfaces/prometheus.mdx,https://clickhouse.com/docs/interfaces/prometheus,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/prometheus,matched,1119bf9a3149424f,true,d10ca35ac3147e57,2026-05-08T09:09:20+00:00,false
-/interfaces/schema-inference,docs/interfaces/schema-inference.md,integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference.mdx,https://clickhouse.com/docs/interfaces/schema-inference,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference,matched,4c061756fb7e7549,true,4c061756fb7e7549,2026-05-19T11:08:53+00:00,false
-/interfaces/ssh,docs/integrations/interfaces/ssh.md,integrations/connectors/data-integrations/drivers-and-interfaces/ssh.mdx,https://clickhouse.com/docs/interfaces/ssh,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/ssh,matched,05310f7271c1ee03,true,05310f7271c1ee03,2026-05-08T09:09:20+00:00,false
-/interfaces/tcp,docs/integrations/interfaces/tcp.md,integrations/connectors/data-integrations/drivers-and-interfaces/tcp.mdx,https://clickhouse.com/docs/interfaces/tcp,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/tcp,matched,6ef79e809370ded1,true,c65c3ea67e2e1c06,2026-05-08T09:09:20+00:00,false
-/interfaces/third-party/,docs/interfaces/third-party/index.md,integrations/connectors/data-integrations/drivers-and-interfaces/third-party/index.mdx,https://clickhouse.com/docs/interfaces/third-party/,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/third-party,matched,fca7f456f51a4121,true,fca7f456f51a4121,2026-05-19T11:08:53+00:00,false
+/interfaces/arrowflight,docs/integrations/interfaces/arrowflight.md,core/concepts/features/interfaces/arrowflight.mdx,https://clickhouse.com/docs/interfaces/arrowflight,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/arrowflight,matched,a2da273f48ba5a95,true,a2da273f48ba5a95,2026-05-19T11:08:53+00:00,false
+/interfaces/cli,docs/interfaces/cli.md,core/concepts/features/interfaces/cli.mdx,https://clickhouse.com/docs/interfaces/cli,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/cli,matched,8497def37a58edb5,true,8497def37a58edb5,2026-05-08T09:09:20+00:00,false
+/interfaces/client,docs/interfaces/client.md,core/concepts/features/interfaces/client.mdx,https://clickhouse.com/docs/interfaces/client,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/client,matched,c3109f2b192e00f8,true,c3109f2b192e00f8,2026-05-13T15:43:28+00:00,false
+/interfaces/cpp,docs/integrations/language-clients/cpp.md,integrations/language-clients/cpp.mdx | core/concepts/features/interfaces/cpp.mdx,https://clickhouse.com/docs/interfaces/cpp,,ambiguous,c5ebd1fb86153394,true,51b1fb17abd7387f,2026-05-08T19:29:49+00:00,false
+/interfaces/formats,docs/interfaces/formats.md,core/reference/formats/index.mdx,https://clickhouse.com/docs/interfaces/formats,https://private-7c7dfe99.mintlify.app/core/reference/formats/index,matched,df34f62628d8e02d,true,df34f62628d8e02d,2026-05-13T13:16:51+00:00,false
+/interfaces/formats/Arrow,docs/interfaces/formats/Arrow/Arrow.md,core/reference/formats/Arrow/Arrow.mdx,https://clickhouse.com/docs/interfaces/formats/Arrow,https://private-7c7dfe99.mintlify.app/core/reference/formats/Arrow/Arrow,matched,fefd4875760cc33c,true,fefd4875760cc33c,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/ArrowStream,docs/interfaces/formats/Arrow/ArrowStream.md,core/reference/formats/Arrow/ArrowStream.mdx,https://clickhouse.com/docs/interfaces/formats/ArrowStream,https://private-7c7dfe99.mintlify.app/core/reference/formats/Arrow/ArrowStream,matched,e26bd50b67b6a445,false,,,false
+/interfaces/formats/Avro,docs/interfaces/formats/Avro/Avro.md,core/reference/formats/Avro/Avro.mdx,https://clickhouse.com/docs/interfaces/formats/Avro,https://private-7c7dfe99.mintlify.app/core/reference/formats/Avro/Avro,matched,aa68e4488567e4ec,true,aa68e4488567e4ec,2026-05-09T14:41:34+00:00,false
+/interfaces/formats/AvroConfluent,docs/interfaces/formats/Avro/AvroConfluent.md,core/reference/formats/Avro/AvroConfluent.mdx,https://clickhouse.com/docs/interfaces/formats/AvroConfluent,https://private-7c7dfe99.mintlify.app/core/reference/formats/Avro/AvroConfluent,matched,c922737f2307ceec,true,c922737f2307ceec,2026-05-13T13:16:51+00:00,false
+/interfaces/formats/BSONEachRow,docs/interfaces/formats/BSONEachRow.md,core/reference/formats/BSONEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/BSONEachRow,https://private-7c7dfe99.mintlify.app/core/reference/formats/BSONEachRow,matched,5405382560ae38c8,true,5405382560ae38c8,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/Buffers,docs/interfaces/formats/Buffers.md,core/reference/formats/Buffers.mdx,https://clickhouse.com/docs/interfaces/formats/Buffers,https://private-7c7dfe99.mintlify.app/core/reference/formats/Buffers,matched,e7fd70effa797248,true,e7fd70effa797248,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/CSV,docs/interfaces/formats/CSV/CSV.md,core/reference/formats/CSV/CSV.mdx,https://clickhouse.com/docs/interfaces/formats/CSV,https://private-7c7dfe99.mintlify.app/core/reference/formats/CSV/CSV,matched,78c8f7d218a9c211,true,78c8f7d218a9c211,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/CSVWithNames,docs/interfaces/formats/CSV/CSVWithNames.md,core/reference/formats/CSV/CSVWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/CSVWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/CSV/CSVWithNames,matched,c042f748c77a461d,true,c042f748c77a461d,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/CSVWithNamesAndTypes,docs/interfaces/formats/CSV/CSVWithNamesAndTypes.md,core/reference/formats/CSV/CSVWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/CSVWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/CSV/CSVWithNamesAndTypes,matched,c626b9222d67c0a1,true,c626b9222d67c0a1,2026-05-08T11:53:27+00:00,false
+/interfaces/formats/CapnProto,docs/interfaces/formats/CapnProto.md,core/reference/formats/CapnProto.mdx,https://clickhouse.com/docs/interfaces/formats/CapnProto,https://private-7c7dfe99.mintlify.app/core/reference/formats/CapnProto,matched,e52f05211d11daf4,true,e52f05211d11daf4,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/CustomSeparated,docs/interfaces/formats/CustomSeparated/CustomSeparated.md,core/reference/formats/CustomSeparated/CustomSeparated.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparated,https://private-7c7dfe99.mintlify.app/core/reference/formats/CustomSeparated/CustomSeparated,matched,2b4ac034aba018ed,true,2b4ac034aba018ed,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/CustomSeparatedIgnoreSpaces,docs/interfaces/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.md,core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedIgnoreSpaces,https://private-7c7dfe99.mintlify.app/core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces,matched,27bd6d01dce2d644,false,,,false
+/interfaces/formats/CustomSeparatedIgnoreSpacesWithNames,docs/interfaces/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.md,core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedIgnoreSpacesWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames,matched,4cfca9fae37346c2,false,,,false
+/interfaces/formats/CustomSeparatedIgnoreSpacesWithNamesAndTypes,docs/interfaces/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.md,core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedIgnoreSpacesWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes,matched,8cde4367a08c4c85,false,,,false
+/interfaces/formats/CustomSeparatedWithNames,docs/interfaces/formats/CustomSeparated/CustomSeparatedWithNames.md,core/reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/CustomSeparated/CustomSeparatedWithNames,matched,1dd4bcf22efaf403,true,1dd4bcf22efaf403,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/CustomSeparatedWithNamesAndTypes,docs/interfaces/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.md,core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/CustomSeparatedWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes,matched,31443088162bd3a0,true,31443088162bd3a0,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/DWARF,docs/interfaces/formats/DWARF.md,core/reference/formats/DWARF.mdx,https://clickhouse.com/docs/interfaces/formats/DWARF,https://private-7c7dfe99.mintlify.app/core/reference/formats/DWARF,matched,c2f203731c8694cf,true,c2f203731c8694cf,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/Form,docs/interfaces/formats/Form.md,core/reference/formats/Form.mdx,https://clickhouse.com/docs/interfaces/formats/Form,https://private-7c7dfe99.mintlify.app/core/reference/formats/Form,matched,c9a05803f13e7580,false,,,false
+/interfaces/formats/Hash,docs/interfaces/formats/Hash.md,core/reference/formats/Hash.mdx,https://clickhouse.com/docs/interfaces/formats/Hash,https://private-7c7dfe99.mintlify.app/core/reference/formats/Hash,matched,1126bfe846bb5fcd,false,,,false
+/interfaces/formats/HiveText,docs/interfaces/formats/HiveText.md,core/reference/formats/HiveText.mdx,https://clickhouse.com/docs/interfaces/formats/HiveText,https://private-7c7dfe99.mintlify.app/core/reference/formats/HiveText,matched,22c4567427f06c4f,false,,,false
+/interfaces/formats/JSON,docs/interfaces/formats/JSON/JSON.md,core/reference/formats/JSON/JSON.mdx,https://clickhouse.com/docs/interfaces/formats/JSON,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSON,matched,fe45037d34e9b052,true,fe45037d34e9b052,2026-05-07T15:41:11+00:00,false
+/interfaces/formats/JSON/format-settings,docs/interfaces/formats/JSON/format-settings.md,core/reference/formats/JSON/format-settings.mdx,https://clickhouse.com/docs/interfaces/formats/JSON/format-settings,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/format-settings,matched,d58e38a4b38f0454,true,d58e38a4b38f0454,2026-05-08T20:59:51+00:00,false
+/interfaces/formats/JSONAsObject,docs/interfaces/formats/JSON/JSONAsObject.md,core/reference/formats/JSON/JSONAsObject.mdx,https://clickhouse.com/docs/interfaces/formats/JSONAsObject,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONAsObject,matched,535b7ebcc2bbcc05,true,535b7ebcc2bbcc05,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/JSONAsString,docs/interfaces/formats/JSON/JSONAsString.md,core/reference/formats/JSON/JSONAsString.mdx,https://clickhouse.com/docs/interfaces/formats/JSONAsString,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONAsString,matched,b777d33223c2f6e1,true,b777d33223c2f6e1,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/JSONColumns,docs/interfaces/formats/JSON/JSONColumns.md,core/reference/formats/JSON/JSONColumns.mdx,https://clickhouse.com/docs/interfaces/formats/JSONColumns,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONColumns,matched,8fd5347285441089,true,8fd5347285441089,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/JSONColumnsWithMetadata,docs/interfaces/formats/JSON/JSONColumnsWithMetadata.md,core/reference/formats/JSON/JSONColumnsWithMetadata.mdx,https://clickhouse.com/docs/interfaces/formats/JSONColumnsWithMetadata,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONColumnsWithMetadata,matched,96f0f82692a94d11,true,96f0f82692a94d11,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompact,docs/interfaces/formats/JSON/JSONCompact.md,core/reference/formats/JSON/JSONCompact.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompact,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompact,matched,bb371d742e1c3d8b,true,bb371d742e1c3d8b,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompactColumns,docs/interfaces/formats/JSON/JSONCompactColumns.md,core/reference/formats/JSON/JSONCompactColumns.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactColumns,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactColumns,matched,90eb1bd6cd208752,true,90eb1bd6cd208752,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/JSONCompactEachRow,docs/interfaces/formats/JSON/JSONCompactEachRow.md,core/reference/formats/JSON/JSONCompactEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRow,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactEachRow,matched,54f6ee288acad577,true,54f6ee288acad577,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompactEachRowWithNames,docs/interfaces/formats/JSON/JSONCompactEachRowWithNames.md,core/reference/formats/JSON/JSONCompactEachRowWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRowWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactEachRowWithNames,matched,b37e005c51f403fc,true,b37e005c51f403fc,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompactEachRowWithNamesAndTypes,docs/interfaces/formats/JSON/JSONCompactEachRowWithNamesAndTypes.md,core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRowWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes,matched,9c79376ce670521b,true,9c79376ce670521b,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompactEachRowWithProgress,docs/interfaces/formats/JSON/JSONCompactEachRowWithProgress.md,core/reference/formats/JSON/JSONCompactEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactEachRowWithProgress,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactEachRowWithProgress,matched,a1fbebb255566158,false,,,false
+/interfaces/formats/JSONCompactStrings,docs/interfaces/formats/JSON/JSONCompactStrings.md,core/reference/formats/JSON/JSONCompactStrings.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStrings,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactStrings,matched,5792c89f06fcaed3,true,5792c89f06fcaed3,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompactStringsEachRow,docs/interfaces/formats/JSON/JSONCompactStringsEachRow.md,core/reference/formats/JSON/JSONCompactStringsEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRow,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactStringsEachRow,matched,cf8035df5e02498f,true,cf8035df5e02498f,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompactStringsEachRowWithNames,docs/interfaces/formats/JSON/JSONCompactStringsEachRowWithNames.md,core/reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRowWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactStringsEachRowWithNames,matched,6dadcbfab042a7bc,true,6dadcbfab042a7bc,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONCompactStringsEachRowWithNamesAndTypes,docs/interfaces/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.md,core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRowWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes,matched,0d3df994d73dcce5,true,0d3df994d73dcce5,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/JSONCompactStringsEachRowWithProgress,docs/interfaces/formats/JSON/JSONCompactStringsEachRowWithProgress.md,core/reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONCompactStringsEachRowWithProgress,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONCompactStringsEachRowWithProgress,matched,fb5ace8ecf41cd7a,true,fb5ace8ecf41cd7a,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/JSONEachRow,docs/interfaces/formats/JSON/JSONEachRow.md,core/reference/formats/JSON/JSONEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONEachRow,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONEachRow,matched,d64cf47163473324,true,d64cf47163473324,2026-05-07T15:41:11+00:00,false
+/interfaces/formats/JSONEachRowWithProgress,docs/interfaces/formats/JSON/JSONEachRowWithProgress.md,core/reference/formats/JSON/JSONEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONEachRowWithProgress,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONEachRowWithProgress,matched,f49e9e3f91b64b35,true,f49e9e3f91b64b35,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONLines,docs/interfaces/formats/JSON/JSONLines.md,core/reference/formats/JSON/JSONLines.mdx,https://clickhouse.com/docs/interfaces/formats/JSONLines,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONLines,matched,e3e518cc255f6764,true,e3e518cc255f6764,2026-05-07T15:41:11+00:00,false
+/interfaces/formats/JSONObjectEachRow,docs/interfaces/formats/JSON/JSONObjectEachRow.md,core/reference/formats/JSON/JSONObjectEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONObjectEachRow,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONObjectEachRow,matched,8bbad16681851331,true,8bbad16681851331,2026-05-19T11:08:53+00:00,false
+/interfaces/formats/JSONStrings,docs/interfaces/formats/JSON/JSONStrings.md,core/reference/formats/JSON/JSONStrings.mdx,https://clickhouse.com/docs/interfaces/formats/JSONStrings,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONStrings,matched,ac07bacf3135df09,true,ac07bacf3135df09,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONStringsEachRow,docs/interfaces/formats/JSON/JSONStringsEachRow.md,core/reference/formats/JSON/JSONStringsEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/JSONStringsEachRow,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONStringsEachRow,matched,d28f12f9ff28bee7,true,d28f12f9ff28bee7,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/JSONStringsEachRowWithProgress,docs/interfaces/formats/JSON/JSONStringsEachRowWithProgress.md,core/reference/formats/JSON/JSONStringsEachRowWithProgress.mdx,https://clickhouse.com/docs/interfaces/formats/JSONStringsEachRowWithProgress,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/JSONStringsEachRowWithProgress,matched,31a8fa488c7303d5,false,,,false
+/interfaces/formats/LineAsString,docs/interfaces/formats/LineAsString/LineAsString.md,core/reference/formats/LineAsString/LineAsString.mdx,https://clickhouse.com/docs/interfaces/formats/LineAsString,https://private-7c7dfe99.mintlify.app/core/reference/formats/LineAsString/LineAsString,matched,1adc889763f86e07,true,1adc889763f86e07,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/LineAsStringWithNames,docs/interfaces/formats/LineAsString/LineAsStringWithNames.md,core/reference/formats/LineAsString/LineAsStringWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/LineAsStringWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/LineAsString/LineAsStringWithNames,matched,0d354a4bc3cf5327,true,0d354a4bc3cf5327,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/LineAsStringWithNamesAndTypes,docs/interfaces/formats/LineAsString/LineAsStringWithNamesAndTypes.md,core/reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/LineAsStringWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/LineAsString/LineAsStringWithNamesAndTypes,matched,d6c75e44e7297d78,true,d6c75e44e7297d78,2026-05-19T11:08:53+00:00,false
+/interfaces/formats/Markdown,docs/interfaces/formats/Markdown.md,core/reference/formats/Markdown.mdx,https://clickhouse.com/docs/interfaces/formats/Markdown,https://private-7c7dfe99.mintlify.app/core/reference/formats/Markdown,matched,85b1114daba44b00,false,,,false
+/interfaces/formats/MsgPack,docs/interfaces/formats/MsgPack.md,core/reference/formats/MsgPack.mdx,https://clickhouse.com/docs/interfaces/formats/MsgPack,https://private-7c7dfe99.mintlify.app/core/reference/formats/MsgPack,matched,948846a8743f4a90,true,948846a8743f4a90,2026-05-07T15:41:11+00:00,false
+/interfaces/formats/MySQLDump,docs/interfaces/formats/MySQLDump.md,core/reference/formats/MySQLDump.mdx,https://clickhouse.com/docs/interfaces/formats/MySQLDump,https://private-7c7dfe99.mintlify.app/core/reference/formats/MySQLDump,matched,ac6f44e72647bc38,true,ac6f44e72647bc38,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/MySQLWire,docs/interfaces/formats/MySQLWire.md,core/reference/formats/MySQLWire.mdx,https://clickhouse.com/docs/interfaces/formats/MySQLWire,https://private-7c7dfe99.mintlify.app/core/reference/formats/MySQLWire,matched,488ca0a5b4cba0af,false,,,false
+/interfaces/formats/Native,docs/interfaces/formats/Native.md,core/reference/formats/Native.mdx,https://clickhouse.com/docs/interfaces/formats/Native,https://private-7c7dfe99.mintlify.app/core/reference/formats/Native,matched,d900939a969da7d4,true,d900939a969da7d4,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/Npy,docs/interfaces/formats/Npy.md,core/reference/formats/Npy.mdx,https://clickhouse.com/docs/interfaces/formats/Npy,https://private-7c7dfe99.mintlify.app/core/reference/formats/Npy,matched,da8c2bbfc6c34aa9,true,da8c2bbfc6c34aa9,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/Null,docs/interfaces/formats/Null.md,core/reference/formats/Null.mdx,https://clickhouse.com/docs/interfaces/formats/Null,https://private-7c7dfe99.mintlify.app/core/reference/formats/Null,matched,f80ac33db9f2499e,true,f80ac33db9f2499e,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/ODBCDriver2,docs/interfaces/formats/ODBCDriver2.md,core/reference/formats/ODBCDriver2.mdx,https://clickhouse.com/docs/interfaces/formats/ODBCDriver2,https://private-7c7dfe99.mintlify.app/core/reference/formats/ODBCDriver2,matched,1724335ae6c5171c,false,,,false
+/interfaces/formats/ORC,docs/interfaces/formats/ORC.md,core/reference/formats/ORC.mdx,https://clickhouse.com/docs/interfaces/formats/ORC,https://private-7c7dfe99.mintlify.app/core/reference/formats/ORC,matched,3344d9c5165b7b63,true,3344d9c5165b7b63,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/One,docs/interfaces/formats/One.md,core/reference/formats/One.mdx,https://clickhouse.com/docs/interfaces/formats/One,https://private-7c7dfe99.mintlify.app/core/reference/formats/One,matched,b6e7b7146868d159,true,b6e7b7146868d159,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/Parquet,docs/interfaces/formats/Parquet/Parquet.md,core/reference/formats/Parquet/Parquet.mdx,https://clickhouse.com/docs/interfaces/formats/Parquet,https://private-7c7dfe99.mintlify.app/core/reference/formats/Parquet/Parquet,matched,b490e7db2c2d91b3,true,b490e7db2c2d91b3,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/ParquetMetadata,docs/interfaces/formats/Parquet/ParquetMetadata.md,core/reference/formats/Parquet/ParquetMetadata.mdx,https://clickhouse.com/docs/interfaces/formats/ParquetMetadata,https://private-7c7dfe99.mintlify.app/core/reference/formats/Parquet/ParquetMetadata,matched,9b6474c5f66a5e77,false,,,false
+/interfaces/formats/PostgreSQLWire,docs/interfaces/formats/PostgreSQLWire.md,core/reference/formats/PostgreSQLWire.mdx,https://clickhouse.com/docs/interfaces/formats/PostgreSQLWire,https://private-7c7dfe99.mintlify.app/core/reference/formats/PostgreSQLWire,matched,ce873407eda99fea,false,,,false
+/interfaces/formats/Pretty,docs/interfaces/formats/Pretty/Pretty.md,core/reference/formats/Pretty/Pretty.mdx,https://clickhouse.com/docs/interfaces/formats/Pretty,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/Pretty,matched,1691e237ea64aaca,true,1691e237ea64aaca,2026-05-09T14:41:32+00:00,false
+/interfaces/formats/PrettyCompact,docs/interfaces/formats/Pretty/PrettyCompact.md,core/reference/formats/Pretty/PrettyCompact.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompact,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettyCompact,matched,1fee80d8af00c415,true,1fee80d8af00c415,2026-05-09T14:41:32+00:00,false
+/interfaces/formats/PrettyCompactMonoBlock,docs/interfaces/formats/Pretty/PrettyCompactMonoBlock.md,core/reference/formats/Pretty/PrettyCompactMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompactMonoBlock,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettyCompactMonoBlock,matched,af620cd5ed38d265,true,af620cd5ed38d265,2026-05-09T14:41:32+00:00,false
+/interfaces/formats/PrettyCompactNoEscapes,docs/interfaces/formats/Pretty/PrettyCompactNoEscapes.md,core/reference/formats/Pretty/PrettyCompactNoEscapes.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompactNoEscapes,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettyCompactNoEscapes,matched,e97df2367ee337a5,true,e97df2367ee337a5,2026-05-09T14:41:32+00:00,false
+/interfaces/formats/PrettyCompactNoEscapesMonoBlock,docs/interfaces/formats/Pretty/PrettyCompactNoEscapesMonoBlock.md,core/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyCompactNoEscapesMonoBlock,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock,matched,c61769f8b34a280f,true,c61769f8b34a280f,2026-05-09T14:41:33+00:00,false
+/interfaces/formats/PrettyJSONEachRow,docs/interfaces/formats/JSON/PrettyJSONEachRow.md,core/reference/formats/JSON/PrettyJSONEachRow.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyJSONEachRow,https://private-7c7dfe99.mintlify.app/core/reference/formats/JSON/PrettyJSONEachRow,matched,fe2aceb75f41309c,true,fe2aceb75f41309c,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/PrettyMonoBlock,docs/interfaces/formats/Pretty/PrettyMonoBlock.md,core/reference/formats/Pretty/PrettyMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyMonoBlock,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettyMonoBlock,matched,40371c6acad07196,true,40371c6acad07196,2026-05-09T14:41:33+00:00,false
+/interfaces/formats/PrettyNoEscapes,docs/interfaces/formats/Pretty/PrettyNoEscapes.md,core/reference/formats/Pretty/PrettyNoEscapes.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyNoEscapes,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettyNoEscapes,matched,d3721cad34be7ac8,true,d3721cad34be7ac8,2026-05-09T14:41:33+00:00,false
+/interfaces/formats/PrettyNoEscapesMonoBlock,docs/interfaces/formats/Pretty/PrettyNoEscapesMonoBlock.md,core/reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettyNoEscapesMonoBlock,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettyNoEscapesMonoBlock,matched,a35e75c19a0f228c,true,a35e75c19a0f228c,2026-05-09T14:41:33+00:00,false
+/interfaces/formats/PrettySpace,docs/interfaces/formats/Pretty/PrettySpace.md,core/reference/formats/Pretty/PrettySpace.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpace,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettySpace,matched,28f4800b7936b39a,true,28f4800b7936b39a,2026-05-09T14:41:33+00:00,false
+/interfaces/formats/PrettySpaceMonoBlock,docs/interfaces/formats/Pretty/PrettySpaceMonoBlock.md,core/reference/formats/Pretty/PrettySpaceMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpaceMonoBlock,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettySpaceMonoBlock,matched,77a1b67ca7c88505,true,77a1b67ca7c88505,2026-05-09T14:41:33+00:00,false
+/interfaces/formats/PrettySpaceNoEscapes,docs/interfaces/formats/Pretty/PrettySpaceNoEscapes.md,core/reference/formats/Pretty/PrettySpaceNoEscapes.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpaceNoEscapes,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettySpaceNoEscapes,matched,3f956529d3724204,true,3f956529d3724204,2026-05-09T14:41:33+00:00,false
+/interfaces/formats/PrettySpaceNoEscapesMonoBlock,docs/interfaces/formats/Pretty/PrettySpaceNoEscapesMonoBlock.md,core/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx,https://clickhouse.com/docs/interfaces/formats/PrettySpaceNoEscapesMonoBlock,https://private-7c7dfe99.mintlify.app/core/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock,matched,aba92e4ddf93c8ac,true,aba92e4ddf93c8ac,2026-05-09T14:41:34+00:00,false
+/interfaces/formats/Prometheus,docs/interfaces/formats/Prometheus.md,core/reference/formats/Prometheus.mdx,https://clickhouse.com/docs/interfaces/formats/Prometheus,https://private-7c7dfe99.mintlify.app/core/reference/formats/Prometheus,matched,72f38826fa27979a,true,72f38826fa27979a,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/Protobuf,docs/interfaces/formats/Protobuf/Protobuf.md,core/reference/formats/Protobuf/Protobuf.mdx,https://clickhouse.com/docs/interfaces/formats/Protobuf,https://private-7c7dfe99.mintlify.app/core/reference/formats/Protobuf/Protobuf,matched,d81d1d65b756efb0,true,d81d1d65b756efb0,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/ProtobufList,docs/interfaces/formats/Protobuf/ProtobufList.md,core/reference/formats/Protobuf/ProtobufList.mdx,https://clickhouse.com/docs/interfaces/formats/ProtobufList,https://private-7c7dfe99.mintlify.app/core/reference/formats/Protobuf/ProtobufList,matched,e99d4f3c7174e773,true,e99d4f3c7174e773,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/ProtobufSingle,docs/interfaces/formats/Protobuf/ProtobufSingle.md,core/reference/formats/Protobuf/ProtobufSingle.mdx,https://clickhouse.com/docs/interfaces/formats/ProtobufSingle,https://private-7c7dfe99.mintlify.app/core/reference/formats/Protobuf/ProtobufSingle,matched,6c958d1bfa513f4a,true,6c958d1bfa513f4a,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/RawBLOB,docs/interfaces/formats/RawBLOB.md,core/reference/formats/RawBLOB.mdx,https://clickhouse.com/docs/interfaces/formats/RawBLOB,https://private-7c7dfe99.mintlify.app/core/reference/formats/RawBLOB,matched,d344c46f769e848e,true,d344c46f769e848e,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/Regexp,docs/interfaces/formats/Regexp.md,core/reference/formats/Regexp.mdx,https://clickhouse.com/docs/interfaces/formats/Regexp,https://private-7c7dfe99.mintlify.app/core/reference/formats/Regexp,matched,01db9b97751fe567,true,01db9b97751fe567,2026-05-19T11:08:53+00:00,false
+/interfaces/formats/RowBinary,docs/interfaces/formats/RowBinary/RowBinary.md,core/reference/formats/RowBinary/RowBinary.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinary,https://private-7c7dfe99.mintlify.app/core/reference/formats/RowBinary/RowBinary,matched,687bad02e366f12b,true,687bad02e366f12b,2026-05-09T14:41:34+00:00,false
+/interfaces/formats/RowBinaryWithDefaults,docs/interfaces/formats/RowBinary/RowBinaryWithDefaults.md,core/reference/formats/RowBinary/RowBinaryWithDefaults.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinaryWithDefaults,https://private-7c7dfe99.mintlify.app/core/reference/formats/RowBinary/RowBinaryWithDefaults,matched,e6b73b30c4502fd5,true,e6b73b30c4502fd5,2026-05-09T14:41:34+00:00,false
+/interfaces/formats/RowBinaryWithNames,docs/interfaces/formats/RowBinary/RowBinaryWithNames.md,core/reference/formats/RowBinary/RowBinaryWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinaryWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/RowBinary/RowBinaryWithNames,matched,2a83ac2cbaf9b2ed,true,2a83ac2cbaf9b2ed,2026-05-09T14:41:34+00:00,false
+/interfaces/formats/RowBinaryWithNamesAndTypes,docs/interfaces/formats/RowBinary/RowBinaryWithNamesAndTypes.md,core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/RowBinaryWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes,matched,3c8db57986756c0b,true,3c8db57986756c0b,2026-05-09T14:41:34+00:00,false
+/interfaces/formats/SQLInsert,docs/interfaces/formats/SQLInsert.md,core/reference/formats/SQLInsert.mdx,https://clickhouse.com/docs/interfaces/formats/SQLInsert,https://private-7c7dfe99.mintlify.app/core/reference/formats/SQLInsert,matched,2a5bbf839d622f7e,true,2a5bbf839d622f7e,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/TSKV,docs/interfaces/formats/TabSeparated/TSKV.md,core/reference/formats/TabSeparated/TSKV.mdx,https://clickhouse.com/docs/interfaces/formats/TSKV,https://private-7c7dfe99.mintlify.app/core/reference/formats/TabSeparated/TSKV,matched,414e7c4dfb6cd3da,true,414e7c4dfb6cd3da,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/TabSeparated,docs/interfaces/formats/TabSeparated/TabSeparated.md,core/reference/formats/TabSeparated/TabSeparated.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparated,https://private-7c7dfe99.mintlify.app/core/reference/formats/TabSeparated/TabSeparated,matched,d699d4175df21acc,true,d699d4175df21acc,2026-05-07T15:41:11+00:00,false
+/interfaces/formats/TabSeparatedRaw,docs/interfaces/formats/TabSeparated/TabSeparatedRaw.md,core/reference/formats/TabSeparated/TabSeparatedRaw.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedRaw,https://private-7c7dfe99.mintlify.app/core/reference/formats/TabSeparated/TabSeparatedRaw,matched,8640bb0e91d0ce24,true,8640bb0e91d0ce24,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/TabSeparatedRawWithNames,docs/interfaces/formats/TabSeparated/TabSeparatedRawWithNames.md,core/reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedRawWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/TabSeparated/TabSeparatedRawWithNames,matched,8e9c8e608b5e9c9e,true,8e9c8e608b5e9c9e,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/TabSeparatedRawWithNamesAndTypes,docs/interfaces/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.md,core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedRawWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes,matched,6526c7597b3e43df,true,6526c7597b3e43df,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/TabSeparatedWithNames,docs/interfaces/formats/TabSeparated/TabSeparatedWithNames.md,core/reference/formats/TabSeparated/TabSeparatedWithNames.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedWithNames,https://private-7c7dfe99.mintlify.app/core/reference/formats/TabSeparated/TabSeparatedWithNames,matched,71530532e2635ead,true,71530532e2635ead,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/TabSeparatedWithNamesAndTypes,docs/interfaces/formats/TabSeparated/TabSeparatedWithNamesAndTypes.md,core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx,https://clickhouse.com/docs/interfaces/formats/TabSeparatedWithNamesAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes,matched,79af085e05f9fd13,true,79af085e05f9fd13,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/Template,docs/interfaces/formats/Template/Template.md,core/reference/formats/Template/Template.mdx,https://clickhouse.com/docs/interfaces/formats/Template,https://private-7c7dfe99.mintlify.app/core/reference/formats/Template/Template,matched,faa699829df50e5c,true,faa699829df50e5c,2026-05-19T11:08:53+00:00,false
+/interfaces/formats/TemplateIgnoreSpaces,docs/interfaces/formats/Template/TemplateIgnoreSpaces.md,core/reference/formats/Template/TemplateIgnoreSpaces.mdx,https://clickhouse.com/docs/interfaces/formats/TemplateIgnoreSpaces,https://private-7c7dfe99.mintlify.app/core/reference/formats/Template/TemplateIgnoreSpaces,matched,190e7c7b34bba92c,true,190e7c7b34bba92c,2026-05-08T09:09:20+00:00,false
+/interfaces/formats/Values,docs/interfaces/formats/Values.md,core/reference/formats/Values.mdx,https://clickhouse.com/docs/interfaces/formats/Values,https://private-7c7dfe99.mintlify.app/core/reference/formats/Values,matched,635a54eaaef6f5e7,true,635a54eaaef6f5e7,2026-05-09T09:39:38+00:00,false
+/interfaces/formats/Vertical,docs/interfaces/formats/Vertical.md,core/reference/formats/Vertical.mdx,https://clickhouse.com/docs/interfaces/formats/Vertical,https://private-7c7dfe99.mintlify.app/core/reference/formats/Vertical,matched,3de10984a294ee3a,true,3de10984a294ee3a,2026-05-07T14:49:41+00:00,false
+/interfaces/formats/XML,docs/interfaces/formats/XML.md,core/reference/formats/XML.mdx,https://clickhouse.com/docs/interfaces/formats/XML,https://private-7c7dfe99.mintlify.app/core/reference/formats/XML,matched,f33dc7dd4c81c9ff,true,f33dc7dd4c81c9ff,2026-05-07T14:49:41+00:00,false
+/interfaces/grpc,docs/integrations/interfaces/grpc.md,core/concepts/features/interfaces/grpc.mdx,https://clickhouse.com/docs/interfaces/grpc,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/grpc,matched,71ce9ab564fe65cf,true,71ce9ab564fe65cf,2026-05-13T13:16:51+00:00,false
+/interfaces/http,docs/integrations/interfaces/http.md,core/concepts/features/interfaces/http.mdx,https://clickhouse.com/docs/interfaces/http,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/http,matched,a26f7c7e0b5565b2,true,a26f7c7e0b5565b2,2026-05-13T15:43:29+00:00,false
+/interfaces/jdbc,docs/integrations/interfaces/jdbc.md,core/concepts/features/interfaces/jdbc.mdx,https://clickhouse.com/docs/interfaces/jdbc,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/jdbc,matched,96ba684e632efee8,true,cfce448da448f5c7,2026-05-08T09:09:20+00:00,false
+/interfaces/mysql,docs/integrations/interfaces/mysql.md,core/concepts/features/interfaces/mysql.mdx,https://clickhouse.com/docs/interfaces/mysql,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/mysql,matched,de14b44afeedd37f,true,de14b44afeedd37f,2026-05-08T11:53:27+00:00,false
+/interfaces/natives-clients-and-interfaces,docs/interfaces/native-clients-interfaces-index.md,core/concepts/features/interfaces/native-clients-interfaces-index.mdx,https://clickhouse.com/docs/interfaces/natives-clients-and-interfaces,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/native-clients-interfaces-index,matched,bc9842824ee60cf0,true,bc9842824ee60cf0,2026-05-19T11:08:53+00:00,false
+/interfaces/odbc,docs/integrations/interfaces/odbc.md,core/concepts/features/interfaces/odbc.mdx,https://clickhouse.com/docs/interfaces/odbc,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/odbc,matched,18014418fca702e2,true,18014418fca702e2,2026-05-13T13:16:51+00:00,false
+/interfaces/overview,docs/integrations/interfaces/overview.md,core/concepts/features/interfaces/overview.mdx,https://clickhouse.com/docs/interfaces/overview,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/overview,matched,cf59fe61367d7168,true,cf59fe61367d7168,2026-05-13T13:16:51+00:00,false
+/interfaces/postgresql,docs/integrations/interfaces/postgresql.md,core/concepts/features/interfaces/postgresql.mdx,https://clickhouse.com/docs/interfaces/postgresql,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/postgresql,matched,3b3e0a1f7ddb7471,true,3b3e0a1f7ddb7471,2026-05-08T09:09:20+00:00,false
+/interfaces/prometheus,docs/integrations/interfaces/prometheus.md,core/concepts/features/interfaces/prometheus.mdx,https://clickhouse.com/docs/interfaces/prometheus,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/prometheus,matched,1119bf9a3149424f,true,d10ca35ac3147e57,2026-05-08T09:09:20+00:00,false
+/interfaces/schema-inference,docs/interfaces/schema-inference.md,core/concepts/features/interfaces/schema-inference.mdx,https://clickhouse.com/docs/interfaces/schema-inference,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/schema-inference,matched,4c061756fb7e7549,true,4c061756fb7e7549,2026-05-19T11:08:53+00:00,false
+/interfaces/ssh,docs/integrations/interfaces/ssh.md,core/concepts/features/interfaces/ssh.mdx,https://clickhouse.com/docs/interfaces/ssh,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/ssh,matched,05310f7271c1ee03,true,05310f7271c1ee03,2026-05-08T09:09:20+00:00,false
+/interfaces/tcp,docs/integrations/interfaces/tcp.md,core/concepts/features/interfaces/tcp.mdx,https://clickhouse.com/docs/interfaces/tcp,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/tcp,matched,6ef79e809370ded1,true,c65c3ea67e2e1c06,2026-05-08T09:09:20+00:00,false
+/interfaces/third-party/,docs/interfaces/third-party/index.md,core/concepts/features/interfaces/third-party/index.mdx,https://clickhouse.com/docs/interfaces/third-party/,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/third-party/index,matched,fca7f456f51a4121,true,fca7f456f51a4121,2026-05-19T11:08:53+00:00,false
/interfaces/third-party/client-libraries,docs/interfaces/third-party/client-libraries.md,integrations/language-clients/third-party/client-libraries.mdx,https://clickhouse.com/docs/interfaces/third-party/client-libraries,https://private-7c7dfe99.mintlify.app/integrations/language-clients/third-party/client-libraries,matched,3beb41b07132bdef,true,3beb41b07132bdef,2026-05-19T11:08:53+00:00,false
/interfaces/third-party/gui,docs/interfaces/third-party/gui.md,integrations/connectors/tools/gui.mdx,https://clickhouse.com/docs/interfaces/third-party/gui,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/gui,matched,b8e1bd3fa87f6dca,true,b8e1bd3fa87f6dca,2026-05-19T11:08:53+00:00,false
/interfaces/third-party/integrations,docs/interfaces/third-party/integrations.md,integrations/connectors/tools/third-party-libraries.mdx,https://clickhouse.com/docs/interfaces/third-party/integrations,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/third-party-libraries,matched,69ab0ffb17efb049,true,69ab0ffb17efb049,2026-05-19T11:08:53+00:00,false
/interfaces/third-party/moose-olap,docs/integrations/language-clients/moose-olap.md,integrations/language-clients/third-party/moose-olap.mdx,https://clickhouse.com/docs/interfaces/third-party/moose-olap,https://private-7c7dfe99.mintlify.app/integrations/language-clients/third-party/moose-olap,matched,7fcc162cac8f6a59,true,7fcc162cac8f6a59,2026-05-09T17:02:01+00:00,false
/interfaces/third-party/proxy,docs/interfaces/third-party/proxy.md,integrations/connectors/tools/proxy.mdx,https://clickhouse.com/docs/interfaces/third-party/proxy,https://private-7c7dfe99.mintlify.app/integrations/connectors/tools/proxy,matched,53379d5b0eb5251c,true,53379d5b0eb5251c,2026-05-19T11:08:53+00:00,false
-/interfaces/web-terminal,docs/interfaces/web-terminal.md,integrations/connectors/data-integrations/drivers-and-interfaces/web-terminal.mdx,https://clickhouse.com/docs/interfaces/web-terminal,https://private-7c7dfe99.mintlify.app/integrations/connectors/data-integrations/drivers-and-interfaces/web-terminal,matched,b2246e2495028370,true,b2246e2495028370,2026-05-19T11:48:22+00:00,false
-/intro,docs/intro.md,get-started/about/intro.mdx,https://clickhouse.com/docs/intro,https://private-7c7dfe99.mintlify.app/get-started/about/intro,matched,ffe506c24865d5fd,true,ffe506c24865d5fd,2026-05-08T20:59:47+00:00,false
+/interfaces/web-terminal,docs/interfaces/web-terminal.md,core/concepts/features/interfaces/web-terminal.mdx,https://clickhouse.com/docs/interfaces/web-terminal,https://private-7c7dfe99.mintlify.app/core/concepts/features/interfaces/web-terminal,matched,b2246e2495028370,true,b2246e2495028370,2026-05-19T11:48:22+00:00,false
+/intro,docs/intro.md,core/get-started/about/intro.mdx,https://clickhouse.com/docs/intro,https://private-7c7dfe99.mintlify.app/core/get-started/about/intro,matched,ffe506c24865d5fd,true,ffe506c24865d5fd,2026-05-08T20:59:47+00:00,false
/introduction-clickhouse,docs/introduction-index.md,,https://clickhouse.com/docs/introduction-clickhouse,,unmatched,dc72366dcf698c0d,false,,,false
/knowledgebase/Insert_select_settings_tuning,knowledgebase/Insert_select_settings_tuning.mdx,,https://clickhouse.com/docs/knowledgebase/Insert_select_settings_tuning,,unmatched,a0801c6bb244ad72,false,,,false
/knowledgebase/ODBC-authentication-failed-error-using-PowerBI-CH-connector,knowledgebase/ODBC-authentication-failed-error-using-PowerBI-CH-connector.mdx,resources/support-center/knowledge-base/integrations/ODBC-authentication-failed-error-using-PowerBI-CH-connector.mdx,https://clickhouse.com/docs/knowledgebase/ODBC-authentication-failed-error-using-PowerBI-CH-connector,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/integrations/ODBC-authentication-failed-error-using-PowerBI-CH-connector,matched,3d443c4abc73eddf,false,,,false
@@ -936,7 +936,7 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/knowledgebase/llvm-clang-up-to-date,knowledgebase/llvm-clang-up-to-date.mdx,resources/support-center/knowledge-base/setup-installation/llvm-clang-up-to-date.mdx,https://clickhouse.com/docs/knowledgebase/llvm-clang-up-to-date,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/setup-installation/llvm-clang-up-to-date,matched,94c625175686dfb0,false,,,false
/knowledgebase/mapping-of-system-metrics-to-prometheus-metrics,knowledgebase/mapping-of-system-metrics-to-prometheus-metrics.mdx,resources/support-center/knowledge-base/monitoring-debugging/mapping-of-system-metrics-to-prometheus-metrics.mdx,https://clickhouse.com/docs/knowledgebase/mapping-of-system-metrics-to-prometheus-metrics,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/monitoring-debugging/mapping-of-system-metrics-to-prometheus-metrics,matched,8d293de1b22941bb,false,,,false
/knowledgebase/mapreduce,knowledgebase/mapreduce.mdx,resources/support-center/knowledge-base/general-faqs/mapreduce.mdx,https://clickhouse.com/docs/knowledgebase/mapreduce,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/general-faqs/mapreduce,matched,40ccc189c309d816,false,,,false
-/knowledgebase/materialized-view-rollup-timeseries,docs/use-cases/time-series/06_materialized-view-rollup.mdx,guides/real-time-analytics/time-series/materialized-view-rollup.mdx,https://clickhouse.com/docs/knowledgebase/materialized-view-rollup-timeseries,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series/materialized-view-rollup,matched,cbf44b30af8d3934,true,cbf44b30af8d3934,2026-05-08T09:09:20+00:00,false
+/knowledgebase/materialized-view-rollup-timeseries,docs/use-cases/time-series/06_materialized-view-rollup.mdx,core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup.mdx,https://clickhouse.com/docs/knowledgebase/materialized-view-rollup-timeseries,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup,matched,cbf44b30af8d3934,true,cbf44b30af8d3934,2026-05-08T09:09:20+00:00,false
/knowledgebase/maximum_number_of_tables_and_databases,knowledgebase/maximum_number_of_tables_and_databases.mdx,,https://clickhouse.com/docs/knowledgebase/maximum_number_of_tables_and_databases,,unmatched,a4494efc6991ad7d,false,,,false
/knowledgebase/memory-limit-exceeded-for-query,knowledgebase/memory-limit-exceeded-for-query.mdx,resources/support-center/knowledge-base/performance-optimization/memory-limit-exceeded-for-query.mdx,https://clickhouse.com/docs/knowledgebase/memory-limit-exceeded-for-query,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/performance-optimization/memory-limit-exceeded-for-query,matched,be2b70c111bb6868,false,,,false
/knowledgebase/multi-region-replication,knowledgebase/multi-region-replication.mdx,resources/support-center/knowledge-base/cloud-services/multi-region-replication.mdx,https://clickhouse.com/docs/knowledgebase/multi-region-replication,https://private-7c7dfe99.mintlify.app/resources/support-center/knowledge-base/cloud-services/multi-region-replication,matched,5255a26915e56655,false,,,false
@@ -996,793 +996,793 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/manage/security/gcp-private-service-connect,docs/cloud/guides/security/02_connectivity/private_networking/03_gcp-private-service-connect.md,products/cloud/guides/security/connectivity/private-networking/gcp-private-service-connect.mdx,https://clickhouse.com/docs/manage/security/gcp-private-service-connect,https://private-7c7dfe99.mintlify.app/products/cloud/guides/security/connectivity/private-networking/gcp-private-service-connect,matched,6cdb6679989b8a4f,true,6cdb6679989b8a4f,2026-05-13T15:43:30+00:00,false
/manage/settings,docs/cloud/reference/08_settings.md,products/cloud/reference/settings.mdx,https://clickhouse.com/docs/manage/settings,https://private-7c7dfe99.mintlify.app/products/cloud/reference/settings,matched,f7ab2f792dc532d7,true,f7ab2f792dc532d7,2026-05-08T09:09:20+00:00,false
/manage/updates,docs/cloud/features/06_admin_features/upgrades.md,products/cloud/features/admin-features/upgrades.mdx,https://clickhouse.com/docs/manage/updates,https://private-7c7dfe99.mintlify.app/products/cloud/features/admin-features/upgrades,matched,ffc268ebb1ea7ea1,true,ffc268ebb1ea7ea1,2026-05-13T13:16:51+00:00,false
-/managing-data/core-concepts,docs/managing-data/core-concepts/index.md,concepts/core-concepts/index.mdx,https://clickhouse.com/docs/managing-data/core-concepts,https://private-7c7dfe99.mintlify.app/concepts/core-concepts,matched,490ca15b90dd7fad,true,490ca15b90dd7fad,2026-05-08T18:23:34+00:00,false
-/managing-data/delete_mutations,docs/managing-data/deleting-data/delete_mutations.mdx,concepts/operations/delete/delete-mutations.mdx,https://clickhouse.com/docs/managing-data/delete_mutations,https://private-7c7dfe99.mintlify.app/concepts/operations/delete/delete-mutations,matched,9a516f2e140076fd,true,9a516f2e140076fd,2026-05-09T17:02:01+00:00,false
-/managing-data/deleting-data/overview,docs/managing-data/deleting-data/index.md,guides/data-modelling/deleting-data/index.mdx,https://clickhouse.com/docs/managing-data/deleting-data/overview,https://private-7c7dfe99.mintlify.app/guides/data-modelling/deleting-data,matched,c07ea006ce7ea6ab,true,c07ea006ce7ea6ab,2026-05-09T17:51:26+00:00,false
-/managing-data/drop_partition,docs/managing-data/drop_partition.mdx,concepts/operations/delete/drop-partition.mdx,https://clickhouse.com/docs/managing-data/drop_partition,https://private-7c7dfe99.mintlify.app/concepts/operations/delete/drop-partition,matched,1c57c679e355f3f9,true,1c57c679e355f3f9,2026-05-07T14:49:41+00:00,false
-/managing-data/materialized-views-versus-projections,docs/data-modeling/projections/2_materialized-views-versus-projections.md,concepts/features/projections/materialized-views-versus-projections.mdx,https://clickhouse.com/docs/managing-data/materialized-views-versus-projections,https://private-7c7dfe99.mintlify.app/concepts/features/projections/materialized-views-versus-projections,matched,ecec14a993aa486e,true,ecec14a993aa486e,2026-05-08T09:09:20+00:00,false
-/managing-data/truncate,docs/managing-data/truncate.md,concepts/operations/delete/truncate.mdx,https://clickhouse.com/docs/managing-data/truncate,https://private-7c7dfe99.mintlify.app/concepts/operations/delete/truncate,matched,85c977ff2c68bbc2,true,85c977ff2c68bbc2,2026-05-09T17:42:52+00:00,false
-/materialized-view/incremental-materialized-view,docs/materialized-view/incremental-materialized-view.md,concepts/features/materialized-views/incremental-materialized-view.mdx,https://clickhouse.com/docs/materialized-view/incremental-materialized-view,https://private-7c7dfe99.mintlify.app/concepts/features/materialized-views/incremental-materialized-view,matched,b8d188b15cf0f6d6,true,b8d188b15cf0f6d6,2026-05-08T09:09:20+00:00,false
-/materialized-view/refreshable-materialized-view,docs/materialized-view/refreshable-materialized-view.md,concepts/features/materialized-views/refreshable-materialized-view.mdx,https://clickhouse.com/docs/materialized-view/refreshable-materialized-view,https://private-7c7dfe99.mintlify.app/concepts/features/materialized-views/refreshable-materialized-view,matched,c2f2accf06323932,true,c2f2accf06323932,2026-05-08T12:19:52+00:00,false
-/materialized-views,docs/materialized-view/index.md,concepts/features/materialized-views/index.mdx,https://clickhouse.com/docs/materialized-views,https://private-7c7dfe99.mintlify.app/concepts/features/materialized-views,matched,15213eb6a61085ad,true,15213eb6a61085ad,2026-05-08T12:19:52+00:00,false
-/merges,docs/managing-data/core-concepts/merges.mdx,concepts/core-concepts/merges.mdx,https://clickhouse.com/docs/merges,https://private-7c7dfe99.mintlify.app/concepts/core-concepts/merges,matched,23cd1a4eacc6d35e,true,23cd1a4eacc6d35e,2026-05-08T09:09:20+00:00,false
-/migrations/bigquery,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/index.md,get-started/setup/migration-guides/bigquery/index.mdx,https://clickhouse.com/docs/migrations/bigquery,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/bigquery,matched,6e9ef6dfd8e741fb,true,524a54c710aefcd2,2026-05-13T13:25:34+00:00,false
-/migrations/bigquery/biquery-vs-clickhouse-cloud,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/01_overview.md,get-started/setup/migration-guides/bigquery/overview.mdx,https://clickhouse.com/docs/migrations/bigquery/biquery-vs-clickhouse-cloud,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/bigquery/overview,matched,dd35989fc89db44d,true,dd35989fc89db44d,2026-05-19T11:08:53+00:00,false
-/migrations/bigquery/loading-data,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/03_loading-data.md,get-started/setup/migration-guides/bigquery/loading-data.mdx,https://clickhouse.com/docs/migrations/bigquery/loading-data,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/bigquery/loading-data,matched,db99c807a578b973,true,db99c807a578b973,2026-05-08T09:09:20+00:00,false
-/migrations/bigquery/migrating-to-clickhouse-cloud,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/02_migrating-to-clickhouse-cloud.md,get-started/setup/migration-guides/bigquery/migrating-to-clickhouse-cloud.mdx,https://clickhouse.com/docs/migrations/bigquery/migrating-to-clickhouse-cloud,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/bigquery/migrating-to-clickhouse-cloud,matched,acfd8dc42b8be408,true,acfd8dc42b8be408,2026-05-13T15:43:26+00:00,false
-/migrations/elastic-overview,docs/cloud/onboard/02_migrate/01_migration_guides/05_elastic/01_overview.md,get-started/setup/migration-guides/elastic/overview.mdx,https://clickhouse.com/docs/migrations/elastic-overview,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/elastic/overview,matched,573b1095d6f3b021,true,573b1095d6f3b021,2026-05-13T13:16:51+00:00,false
-/migrations/postgresql,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/index.md,get-started/setup/migration-guides/postgres/index.mdx,https://clickhouse.com/docs/migrations/postgresql,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/postgres,matched,1fc6d064882a931f,true,1fc6d064882a931f,2026-05-09T10:08:44+00:00,false
-/migrations/postgresql/appendix,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/appendix.md,get-started/setup/migration-guides/postgres/appendix.mdx,https://clickhouse.com/docs/migrations/postgresql/appendix,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/postgres/appendix,matched,f7211aaf84e07266,true,f7211aaf84e07266,2026-05-08T09:09:20+00:00,false
-/migrations/postgresql/data-modeling-techniques,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/migration_guide/03_migration_guide_part3.md,get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3.mdx,https://clickhouse.com/docs/migrations/postgresql/data-modeling-techniques,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3,matched,c30cdf3133afce5d,true,c30cdf3133afce5d,2026-05-08T09:09:20+00:00,false
-/migrations/postgresql/dataset,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/migration_guide/01_migration_guide_part1.md,get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part1.mdx,https://clickhouse.com/docs/migrations/postgresql/dataset,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part1,matched,c3c60d781f027a81,true,c3c60d781f027a81,2026-05-08T09:09:20+00:00,false
-/migrations/postgresql/overview,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/01_overview.md,get-started/setup/migration-guides/postgres/overview.mdx,https://clickhouse.com/docs/migrations/postgresql/overview,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/postgres/overview,matched,921719ea95cc7747,true,921719ea95cc7747,2026-05-13T13:25:35+00:00,false
-/migrations/postgresql/rewriting-queries,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/migration_guide/02_migration_guide_part2.md,get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part2.mdx,https://clickhouse.com/docs/migrations/postgresql/rewriting-queries,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part2,matched,dea71bd599e21414,true,dea71bd599e21414,2026-05-19T11:08:53+00:00,false
-/migrations/redshift-overview,docs/cloud/onboard/02_migrate/01_migration_guides/06_redshift/01_overview.md,get-started/setup/migration-guides/redshift/overview.mdx,https://clickhouse.com/docs/migrations/redshift-overview,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/redshift/overview,matched,d531bf94e01014ae,true,d531bf94e01014ae,2026-05-13T13:16:51+00:00,false
-/migrations/redshift/migration-guide,docs/cloud/onboard/02_migrate/01_migration_guides/06_redshift/02_migration_guide.md,get-started/setup/migration-guides/redshift/migration-guide.mdx,https://clickhouse.com/docs/migrations/redshift/migration-guide,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/redshift/migration-guide,matched,9b17a57ce389bca0,true,9b17a57ce389bca0,2026-05-08T11:33:34+00:00,false
-/migrations/redshift/sql-translation-reference,docs/cloud/onboard/02_migrate/01_migration_guides/06_redshift/03_sql_translation_reference.md,get-started/setup/migration-guides/redshift/sql-translation-reference.mdx,https://clickhouse.com/docs/migrations/redshift/sql-translation-reference,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/redshift/sql-translation-reference,matched,d24fd1be1d55216c,true,d24fd1be1d55216c,2026-05-13T13:16:51+00:00,false
-/migrations/snowflake,docs/cloud/onboard/02_migrate/01_migration_guides/04_snowflake/02_migration_guide.md,get-started/setup/migration-guides/snowflake/migration-guide.mdx,https://clickhouse.com/docs/migrations/snowflake,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/snowflake/migration-guide,matched,c650d56bdfeafa74,true,c650d56bdfeafa74,2026-05-08T09:09:20+00:00,false
-/migrations/snowflake-overview,docs/cloud/onboard/02_migrate/01_migration_guides/04_snowflake/01_overview.md,get-started/setup/migration-guides/snowflake/overview.mdx,https://clickhouse.com/docs/migrations/snowflake-overview,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/snowflake/overview,matched,5e48b24459dae079,true,5e48b24459dae079,2026-05-08T09:09:20+00:00,false
-/migrations/snowflake-translation-reference,docs/cloud/onboard/02_migrate/01_migration_guides/04_snowflake/03_sql_translation_reference.md,get-started/setup/migration-guides/snowflake/sql-translation-reference.mdx,https://clickhouse.com/docs/migrations/snowflake-translation-reference,https://private-7c7dfe99.mintlify.app/get-started/setup/migration-guides/snowflake/sql-translation-reference,matched,bddeed8dc9dd6960,true,bddeed8dc9dd6960,2026-05-13T13:16:51+00:00,false
-/native-protocol/basics,docs/native-protocol/basics.md,resources/contribute/native-protocol/basics.mdx,https://clickhouse.com/docs/native-protocol/basics,https://private-7c7dfe99.mintlify.app/resources/contribute/native-protocol/basics,matched,6c83b8764e912961,true,63c7afb1ad7b7072,2026-05-08T09:09:20+00:00,false
-/native-protocol/client,docs/native-protocol/client.md,resources/contribute/native-protocol/client.mdx,https://clickhouse.com/docs/native-protocol/client,https://private-7c7dfe99.mintlify.app/resources/contribute/native-protocol/client,matched,d284978f67c3edba,true,d284978f67c3edba,2026-05-13T13:16:51+00:00,false
-/native-protocol/columns,docs/native-protocol/columns.md,resources/contribute/native-protocol/columns.mdx,https://clickhouse.com/docs/native-protocol/columns,https://private-7c7dfe99.mintlify.app/resources/contribute/native-protocol/columns,matched,6ac09babfb2345ea,true,d125f35b59774466,2026-05-08T09:09:20+00:00,false
-/native-protocol/hash,docs/native-protocol/hash.md,resources/contribute/native-protocol/hash.mdx,https://clickhouse.com/docs/native-protocol/hash,https://private-7c7dfe99.mintlify.app/resources/contribute/native-protocol/hash,matched,6458e0d78f3458b5,true,11ca88940183f46c,2026-05-08T09:09:20+00:00,false
-/native-protocol/server,docs/native-protocol/server.md,resources/contribute/native-protocol/server.mdx,https://clickhouse.com/docs/native-protocol/server,https://private-7c7dfe99.mintlify.app/resources/contribute/native-protocol/server,matched,5749421cd457053a,true,b1a72f898456e3c0,2026-05-09T09:39:38+00:00,false
-/observability/demo-application,docs/use-cases/observability/build-your-own/demo-application.md,guides/observability/build-your-own/demo-application.mdx,https://clickhouse.com/docs/observability/demo-application,https://private-7c7dfe99.mintlify.app/guides/observability/build-your-own/demo-application,matched,1f0a4b693ba5e0ec,false,,,false
-/observability/grafana,docs/use-cases/observability/build-your-own/grafana.md,guides/observability/build-your-own/grafana.mdx,https://clickhouse.com/docs/observability/grafana,https://private-7c7dfe99.mintlify.app/guides/observability/build-your-own/grafana,matched,6dc8fd3088ed4f08,true,6dc8fd3088ed4f08,2026-05-08T09:09:20+00:00,false
-/observability/integrating-opentelemetry,docs/use-cases/observability/build-your-own/integrating-opentelemetry.md,guides/observability/build-your-own/integrating-opentelemetry.mdx,https://clickhouse.com/docs/observability/integrating-opentelemetry,https://private-7c7dfe99.mintlify.app/guides/observability/build-your-own/integrating-opentelemetry,matched,5165c90c3e181d42,true,5165c90c3e181d42,2026-05-08T09:09:20+00:00,false
-/observability/managing-data,docs/use-cases/observability/build-your-own/managing-data.md,guides/observability/build-your-own/managing-data.mdx,https://clickhouse.com/docs/observability/managing-data,https://private-7c7dfe99.mintlify.app/guides/observability/build-your-own/managing-data,matched,4e906e75b0ab47ca,true,4e906e75b0ab47ca,2026-05-08T09:09:20+00:00,false
-/operations/access-rights,docs/guides/sre/user-management/index.md,concepts/features/security/access-rights.mdx,https://clickhouse.com/docs/operations/access-rights,https://private-7c7dfe99.mintlify.app/concepts/features/security/access-rights,matched,c352e5c6a23a8793,true,c352e5c6a23a8793,2026-05-13T13:16:51+00:00,false
-/operations/allocation-profiling,docs/operations/allocation-profiling.md,concepts/features/performance/allocation-profiling.mdx,https://clickhouse.com/docs/operations/allocation-profiling,https://private-7c7dfe99.mintlify.app/concepts/features/performance/allocation-profiling,matched,aeeb6ec3bd877a51,true,aeeb6ec3bd877a51,2026-05-08T09:09:20+00:00,false
-/operations/allocation-profiling-old,docs/operations/allocation-profiling-old.md,concepts/features/performance/allocation-profiling-old.mdx,https://clickhouse.com/docs/operations/allocation-profiling-old,https://private-7c7dfe99.mintlify.app/concepts/features/performance/allocation-profiling-old,matched,09dbdbce2cf9b2dd,true,09dbdbce2cf9b2dd,2026-05-08T09:09:20+00:00,false
-/operations/analyzer,docs/operations/analyzer.md,guides/cloud-oss/performance-and-monitoring/analyzer.mdx,https://clickhouse.com/docs/operations/analyzer,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/performance-and-monitoring/analyzer,matched,244df0221ad8f2c7,true,30d060b9f19f6985,2026-05-08T09:09:20+00:00,false
-/operations/backup/alternative_methods,docs/operations_/backup_restore/04_alternative_methods.md,concepts/features/backup-restore/alternative-methods.mdx,https://clickhouse.com/docs/operations/backup/alternative_methods,https://private-7c7dfe99.mintlify.app/concepts/features/backup-restore/alternative-methods,matched,6f1567f45a37d48d,true,6f1567f45a37d48d,2026-05-13T13:16:51+00:00,false
-/operations/backup/azure,docs/operations_/backup_restore/03_azure_blob_storage.md,concepts/features/backup-restore/azure-blob-storage.mdx,https://clickhouse.com/docs/operations/backup/azure,https://private-7c7dfe99.mintlify.app/concepts/features/backup-restore/azure-blob-storage,matched,a014826091cc7de6,true,a014826091cc7de6,2026-05-08T09:09:20+00:00,false
-/operations/backup/disk,docs/operations_/backup_restore/01_local_disk.md,concepts/features/backup-restore/local-disk.mdx,https://clickhouse.com/docs/operations/backup/disk,https://private-7c7dfe99.mintlify.app/concepts/features/backup-restore/local-disk,matched,c4dd19b827ee5be4,true,c4dd19b827ee5be4,2026-05-13T15:43:24+00:00,false
-/operations/backup/overview,docs/operations_/backup_restore/00_overview.md,concepts/features/backup-restore/overview.mdx,https://clickhouse.com/docs/operations/backup/overview,https://private-7c7dfe99.mintlify.app/concepts/features/backup-restore/overview,matched,cf2f951338bcd3c1,true,cf2f951338bcd3c1,2026-05-13T15:43:24+00:00,false
-/operations/backup/s3_endpoint,docs/operations_/backup_restore/02_s3_endpoint.md,concepts/features/backup-restore/s3-endpoint.mdx,https://clickhouse.com/docs/operations/backup/s3_endpoint,https://private-7c7dfe99.mintlify.app/concepts/features/backup-restore/s3-endpoint,matched,c3ff551589fda47e,true,c3ff551589fda47e,2026-05-09T17:02:01+00:00,false
-/operations/backup/snapshot,docs/operations_/backup_restore/05_snapshot.md,concepts/features/backup-restore/snapshot.mdx,https://clickhouse.com/docs/operations/backup/snapshot,https://private-7c7dfe99.mintlify.app/concepts/features/backup-restore/snapshot,matched,26a73917b328cf38,true,26a73917b328cf38,2026-05-13T13:16:51+00:00,false
-/operations/caches,docs/operations/caches.md,concepts/features/performance/caches/caches.mdx,https://clickhouse.com/docs/operations/caches,https://private-7c7dfe99.mintlify.app/concepts/features/performance/caches/caches,matched,55fdfbf942985753,true,e18f1ea2efc46626,2026-05-07T14:49:41+00:00,false
-/operations/cluster-discovery,docs/operations/cluster-discovery.md,guides/oss/deployment-and-scaling/cluster-discovery.mdx,https://clickhouse.com/docs/operations/cluster-discovery,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/cluster-discovery,matched,bfb072f645be9235,true,343ceb09449e6436,2026-05-08T09:09:20+00:00,false
-/operations/configuration-files,docs/operations/configuration-files.md,concepts/features/configuration/server-config/configuration-files.mdx,https://clickhouse.com/docs/operations/configuration-files,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/server-config/configuration-files,matched,9e71d3c2fa185cdf,true,9e71d3c2fa185cdf,2026-05-08T09:09:20+00:00,false
-/operations/external-authenticators/,docs/operations/external-authenticators/index.md,concepts/features/security/external-authenticators/index.mdx,https://clickhouse.com/docs/operations/external-authenticators/,https://private-7c7dfe99.mintlify.app/concepts/features/security/external-authenticators,matched,16c47449f5275998,true,16c47449f5275998,2026-05-08T09:09:20+00:00,false
-/operations/external-authenticators/http,docs/operations/external-authenticators/http.md,concepts/features/security/external-authenticators/http.mdx,https://clickhouse.com/docs/operations/external-authenticators/http,https://private-7c7dfe99.mintlify.app/concepts/features/security/external-authenticators/http,matched,04f510d66c9b376c,true,04f510d66c9b376c,2026-05-08T09:09:20+00:00,false
-/operations/external-authenticators/kerberos,docs/operations/external-authenticators/kerberos.md,concepts/features/security/external-authenticators/kerberos.mdx,https://clickhouse.com/docs/operations/external-authenticators/kerberos,https://private-7c7dfe99.mintlify.app/concepts/features/security/external-authenticators/kerberos,matched,b7a3734788840b66,true,b7a3734788840b66,2026-05-08T09:09:20+00:00,false
-/operations/external-authenticators/ldap,docs/operations/external-authenticators/ldap.md,concepts/features/security/external-authenticators/ldap.mdx,https://clickhouse.com/docs/operations/external-authenticators/ldap,https://private-7c7dfe99.mintlify.app/concepts/features/security/external-authenticators/ldap,matched,9449246250219a1a,true,9449246250219a1a,2026-05-19T11:08:53+00:00,false
-/operations/external-authenticators/ssl-x509,docs/operations/external-authenticators/ssl-x509.md,concepts/features/security/external-authenticators/ssl-x509.mdx,https://clickhouse.com/docs/operations/external-authenticators/ssl-x509,https://private-7c7dfe99.mintlify.app/concepts/features/security/external-authenticators/ssl-x509,matched,947a7d558e471c72,true,947a7d558e471c72,2026-05-08T09:09:20+00:00,false
-/operations/monitoring,docs/operations/monitoring.md,guides/oss/deployment-and-scaling/monitoring/monitoring.mdx,https://clickhouse.com/docs/operations/monitoring,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/monitoring/monitoring,matched,ee6d9f1af26926d6,true,ee6d9f1af26926d6,2026-05-08T09:09:20+00:00,false
-/operations/named-collections,docs/operations/named-collections.md,concepts/features/configuration/server-config/named-collections.mdx,https://clickhouse.com/docs/operations/named-collections,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/server-config/named-collections,matched,8dc09979b83996cf,true,8dc09979b83996cf,2026-05-13T15:43:24+00:00,false
-/operations/opentelemetry,docs/operations/opentelemetry.md,guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx,https://clickhouse.com/docs/operations/opentelemetry,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/monitoring/opentelemetry,matched,57b2ec3c9af7907d,true,57b2ec3c9af7907d,2026-05-08T09:09:20+00:00,false
-/operations/optimizing-performance/profile-guided-optimization,docs/operations/optimizing-performance/profile-guided-optimization.md,resources/contribute/profile-guided-optimization.mdx,https://clickhouse.com/docs/operations/optimizing-performance/profile-guided-optimization,https://private-7c7dfe99.mintlify.app/resources/contribute/profile-guided-optimization,matched,a06cd352188c57c4,true,a06cd352188c57c4,2026-05-13T14:36:45+00:00,false
-/operations/optimizing-performance/sampling-query-profiler,docs/operations/optimizing-performance/sampling-query-profiler.md,concepts/features/performance/troubleshoot/sampling-query-profiler.mdx,https://clickhouse.com/docs/operations/optimizing-performance/sampling-query-profiler,https://private-7c7dfe99.mintlify.app/concepts/features/performance/troubleshoot/sampling-query-profiler,matched,331303dc6c9ac8ef,true,331303dc6c9ac8ef,2026-05-13T14:36:43+00:00,false
-/operations/overview,docs/guides/best-practices/index.md,guides/performance-and-monitoring/index.mdx,https://clickhouse.com/docs/operations/overview,https://private-7c7dfe99.mintlify.app/guides/performance-and-monitoring,matched,63df4b0ede3f1809,true,63df4b0ede3f1809,2026-05-08T11:28:15+00:00,false
-/operations/performance-test,docs/operations/performance-test.md,concepts/features/performance/troubleshoot/performance-test.mdx,https://clickhouse.com/docs/operations/performance-test,https://private-7c7dfe99.mintlify.app/concepts/features/performance/troubleshoot/performance-test,matched,9e5d4bd1e5379d30,true,9e5d4bd1e5379d30,2026-05-08T09:09:20+00:00,false
-/operations/query-cache,docs/operations/query-cache.md,concepts/features/performance/caches/query-cache.mdx,https://clickhouse.com/docs/operations/query-cache,https://private-7c7dfe99.mintlify.app/concepts/features/performance/caches/query-cache,matched,e8a08aebb039a807,true,7867cf786d57b72d,2026-05-09T11:14:51+00:00,false
-/operations/query-condition-cache,docs/operations/query-condition-cache.md,concepts/features/performance/caches/query-condition-cache.mdx,https://clickhouse.com/docs/operations/query-condition-cache,https://private-7c7dfe99.mintlify.app/concepts/features/performance/caches/query-condition-cache,matched,01b02051819a2cf0,true,f67e1d9bf36c40cc,2026-05-09T10:26:02+00:00,false
-/operations/quotas,docs/operations/quotas.md,concepts/features/configuration/server-config/quotas.mdx,https://clickhouse.com/docs/operations/quotas,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/server-config/quotas,matched,91a218790dd605e3,true,91a218790dd605e3,2026-05-08T09:09:20+00:00,false
-/operations/server-configuration-parameters/settings,docs/operations/server-configuration-parameters/settings.md,reference/settings/server-settings/settings.mdx,https://clickhouse.com/docs/operations/server-configuration-parameters/settings,https://private-7c7dfe99.mintlify.app/reference/settings/server-settings/settings,matched,89179d24153a293d,true,89179d24153a293d,2026-05-19T11:08:53+00:00,false
-/operations/settings/,docs/operations/settings/index.md,reference/settings/index.mdx,https://clickhouse.com/docs/operations/settings/,https://private-7c7dfe99.mintlify.app/reference/settings,matched,027d2488fe130352,true,027d2488fe130352,2026-05-08T21:00:24+00:00,false
-/operations/settings/composable-protocols,docs/operations/settings/composable-protocols.md,concepts/features/configuration/server-config/composable-protocols.mdx,https://clickhouse.com/docs/operations/settings/composable-protocols,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/server-config/composable-protocols,matched,a959ce46b6a2f90d,true,fac105353a202b3d,2026-05-08T09:09:20+00:00,false
-/operations/settings/constraints-on-settings,docs/operations/settings/constraints-on-settings.md,concepts/features/configuration/settings/constraints-on-settings.mdx,https://clickhouse.com/docs/operations/settings/constraints-on-settings,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/constraints-on-settings,matched,b657f299aea82d59,true,8a07567dde304465,2026-05-08T09:09:20+00:00,false
-/operations/settings/formats,docs/operations/settings/settings-formats.md,reference/settings/formats.mdx,https://clickhouse.com/docs/operations/settings/formats,https://private-7c7dfe99.mintlify.app/reference/settings/formats,matched,8333038917eb65c6,true,8333038917eb65c6,2026-05-19T11:08:53+00:00,false
-/operations/settings/memory-overcommit,docs/operations/settings/memory-overcommit.md,concepts/features/configuration/settings/memory-overcommit.mdx,https://clickhouse.com/docs/operations/settings/memory-overcommit,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/memory-overcommit,matched,0a243f5510171522,true,56a8436026a55bc5,2026-05-07T14:49:41+00:00,false
-/operations/settings/merge-tree-settings,docs/operations/settings/merge-tree-settings.md,reference/settings/merge-tree-settings.mdx,https://clickhouse.com/docs/operations/settings/merge-tree-settings,https://private-7c7dfe99.mintlify.app/reference/settings/merge-tree-settings,matched,d52091bc92ce17c6,true,d52091bc92ce17c6,2026-05-19T11:08:53+00:00,false
-/operations/settings/overview,docs/operations/settings/overview.md,concepts/features/configuration/settings/overview.mdx,https://clickhouse.com/docs/operations/settings/overview,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/overview,matched,756466e653966891,true,d67f616f50eb112f,2026-05-08T09:09:20+00:00,false
-/operations/settings/permissions-for-queries,docs/operations/settings/permissions-for-queries.md,concepts/features/configuration/settings/permissions-for-queries.mdx,https://clickhouse.com/docs/operations/settings/permissions-for-queries,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/permissions-for-queries,matched,89955380f36ffec5,true,b20d70e81bda348f,2026-05-09T11:14:51+00:00,false
-/operations/settings/query-complexity,docs/operations/settings/query-complexity.md,concepts/features/configuration/settings/query-complexity.mdx,https://clickhouse.com/docs/operations/settings/query-complexity,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/query-complexity,matched,cdc147d9f7450ac5,true,a3b2b2da1705264e,2026-05-08T09:09:20+00:00,false
-/operations/settings/query-level,docs/operations/settings/settings-query-level.md,concepts/features/configuration/settings/settings-query-level.mdx,https://clickhouse.com/docs/operations/settings/query-level,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/settings-query-level,matched,03f99ff0a17572c9,true,03f99ff0a17572c9,2026-05-13T15:43:24+00:00,false
-/operations/settings/server-overload,docs/operations/settings/server-overload.md,concepts/features/configuration/settings/server-overload.mdx,https://clickhouse.com/docs/operations/settings/server-overload,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/server-overload,matched,f021b72d2f0dadf4,true,62c5c6e1debf8e9f,2026-05-07T14:49:41+00:00,false
-/operations/settings/settings,docs/operations/settings/settings.md,reference/settings/session-settings.mdx,https://clickhouse.com/docs/operations/settings/settings,https://private-7c7dfe99.mintlify.app/reference/settings/session-settings,matched,ea427818c0ffa5b8,true,ea427818c0ffa5b8,2026-05-19T11:08:53+00:00,false
-/operations/settings/settings-profiles,docs/operations/settings/settings-profiles.md,concepts/features/configuration/settings/settings-profiles.mdx,https://clickhouse.com/docs/operations/settings/settings-profiles,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/settings-profiles,matched,d74579c90b16c65e,true,d921a22cfbb36622,2026-05-08T09:09:20+00:00,false
-/operations/settings/settings-users,docs/operations/settings/settings-users.md,concepts/features/configuration/settings/settings-users.mdx,https://clickhouse.com/docs/operations/settings/settings-users,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/settings-users,matched,6883ddb871f8a016,true,75b7bfaa451e0787,2026-05-08T09:09:20+00:00,false
-/operations/settings/tcp-connection-limits,docs/operations/settings/tcp-connection-limits.md,concepts/features/configuration/settings/tcp-connection-limits.mdx,https://clickhouse.com/docs/operations/settings/tcp-connection-limits,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/settings/tcp-connection-limits,matched,8e9898ab564cb4b6,true,27fdf16a587cb870,2026-05-07T14:49:41+00:00,false
-/operations/ssl-zookeeper,docs/operations/ssl-zookeeper.md,guides/oss/deployment-and-scaling/keeper/ssl-zookeeper.mdx,https://clickhouse.com/docs/operations/ssl-zookeeper,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper,matched,315bad9ae2949888,true,9a1b6a07af2168ed,2026-05-08T09:09:20+00:00,false
-/operations/startup-scripts,docs/operations/startup-scripts.md,concepts/features/configuration/server-config/startup-scripts.mdx,https://clickhouse.com/docs/operations/startup-scripts,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/server-config/startup-scripts,matched,c7b28f8f3c2d8032,true,4866f2bf5a753196,2026-05-08T09:09:20+00:00,false
-/operations/storing-data,docs/operations/storing-data.md,concepts/features/configuration/server-config/storing-data.mdx,https://clickhouse.com/docs/operations/storing-data,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/server-config/storing-data,matched,ba0615ec15899614,true,ba0615ec15899614,2026-05-13T15:43:24+00:00,false
-/operations/system-tables/,docs/operations/system-tables/index.md,reference/system-tables/index.mdx,https://clickhouse.com/docs/operations/system-tables/,https://private-7c7dfe99.mintlify.app/reference/system-tables,matched,01004dd20053c0a5,true,01004dd20053c0a5,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/aggregate_function_combinators,docs/operations/system-tables/aggregate_function_combinators.md,reference/system-tables/aggregate_function_combinators.mdx,https://clickhouse.com/docs/operations/system-tables/aggregate_function_combinators,https://private-7c7dfe99.mintlify.app/reference/system-tables/aggregate_function_combinators,matched,74e843ffb796d988,true,74e843ffb796d988,2026-05-08T21:00:25+00:00,false
-/operations/system-tables/aggregated_zookeeper_log,docs/operations/system-tables/aggregated_zookeeper_log.md,reference/system-tables/aggregated_zookeeper_log.mdx,https://clickhouse.com/docs/operations/system-tables/aggregated_zookeeper_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/aggregated_zookeeper_log,matched,c68bf57f9f3d3579,true,c68bf57f9f3d3579,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/asynchronous_insert_log,docs/operations/system-tables/asynchronous_insert_log.md,reference/system-tables/asynchronous_insert_log.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_insert_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/asynchronous_insert_log,matched,b7dc3a891bbc2cdc,true,b7dc3a891bbc2cdc,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/asynchronous_inserts,docs/operations/system-tables/asynchronous_inserts.md,reference/system-tables/asynchronous_inserts.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_inserts,https://private-7c7dfe99.mintlify.app/reference/system-tables/asynchronous_inserts,matched,6160869499ef76dd,true,6160869499ef76dd,2026-05-08T21:00:26+00:00,false
-/operations/system-tables/asynchronous_loader,docs/operations/system-tables/asynchronous_loader.md,reference/system-tables/asynchronous_loader.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_loader,https://private-7c7dfe99.mintlify.app/reference/system-tables/asynchronous_loader,matched,2974d35942161d69,true,2974d35942161d69,2026-05-08T21:00:26+00:00,false
-/operations/system-tables/asynchronous_metric_log,docs/operations/system-tables/asynchronous_metric_log.md,reference/system-tables/asynchronous_metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_metric_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/asynchronous_metric_log,matched,c63b53195c4f4369,true,c63b53195c4f4369,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/asynchronous_metrics,docs/operations/system-tables/asynchronous_metrics.md,reference/system-tables/asynchronous_metrics.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_metrics,https://private-7c7dfe99.mintlify.app/reference/system-tables/asynchronous_metrics,matched,cc0904c2c2f9c5b3,true,cc0904c2c2f9c5b3,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/azure_queue_log,docs/operations/system-tables/azure_queue_log.md,reference/system-tables/azure_queue_log.mdx,https://clickhouse.com/docs/operations/system-tables/azure_queue_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/azure_queue_log,matched,6c8baa0a78b5a9f0,true,6c8baa0a78b5a9f0,2026-05-13T13:08:27+00:00,false
-/operations/system-tables/azure_queue_metadata_cache,docs/operations/system-tables/azure_queue_metadata_cache.md,reference/system-tables/azure_queue_metadata_cache.mdx,https://clickhouse.com/docs/operations/system-tables/azure_queue_metadata_cache,https://private-7c7dfe99.mintlify.app/reference/system-tables/azure_queue_metadata_cache,matched,a1a4f88881741c60,true,a1a4f88881741c60,2026-05-08T21:00:26+00:00,false
-/operations/system-tables/azure_queue_settings,docs/operations/system-tables/azure_queue_settings.md,reference/system-tables/azure_queue_settings.mdx,https://clickhouse.com/docs/operations/system-tables/azure_queue_settings,https://private-7c7dfe99.mintlify.app/reference/system-tables/azure_queue_settings,matched,b47c4addf4ff730f,true,b47c4addf4ff730f,2026-05-08T21:00:26+00:00,false
-/operations/system-tables/background_schedule_pool,docs/operations/system-tables/background_schedule_pool.md,reference/system-tables/background_schedule_pool.mdx,https://clickhouse.com/docs/operations/system-tables/background_schedule_pool,https://private-7c7dfe99.mintlify.app/reference/system-tables/background_schedule_pool,matched,003f06920ccec6ad,true,003f06920ccec6ad,2026-05-08T21:00:27+00:00,false
-/operations/system-tables/background_schedule_pool_log,docs/operations/system-tables/background_schedule_pool_log.md,reference/system-tables/background_schedule_pool_log.mdx,https://clickhouse.com/docs/operations/system-tables/background_schedule_pool_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/background_schedule_pool_log,matched,801268572623f510,true,801268572623f510,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/backup_log,docs/operations/system-tables/backup_log.md,reference/system-tables/backup_log.mdx,https://clickhouse.com/docs/operations/system-tables/backup_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/backup_log,matched,23f64f52bedff424,true,23f64f52bedff424,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/backups,docs/operations/system-tables/backups.md,reference/system-tables/backups.mdx,https://clickhouse.com/docs/operations/system-tables/backups,https://private-7c7dfe99.mintlify.app/reference/system-tables/backups,matched,474096c2d8465fd9,true,474096c2d8465fd9,2026-05-08T21:00:27+00:00,false
-/operations/system-tables/blob_storage_log,docs/operations/system-tables/blob_storage_log.md,reference/system-tables/blob_storage_log.mdx,https://clickhouse.com/docs/operations/system-tables/blob_storage_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/blob_storage_log,matched,40e7e7b30c3c4fde,true,40e7e7b30c3c4fde,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/build_options,docs/operations/system-tables/build_options.md,reference/system-tables/build_options.mdx,https://clickhouse.com/docs/operations/system-tables/build_options,https://private-7c7dfe99.mintlify.app/reference/system-tables/build_options,matched,fb2cc9ed0b52f163,true,fb2cc9ed0b52f163,2026-05-08T21:00:28+00:00,false
-/operations/system-tables/certificates,docs/operations/system-tables/certificates.md,reference/system-tables/certificates.mdx,https://clickhouse.com/docs/operations/system-tables/certificates,https://private-7c7dfe99.mintlify.app/reference/system-tables/certificates,matched,7dfacd8a49ab3d16,true,7dfacd8a49ab3d16,2026-05-08T21:00:28+00:00,false
-/operations/system-tables/clusters,docs/operations/system-tables/clusters.md,reference/system-tables/clusters.mdx,https://clickhouse.com/docs/operations/system-tables/clusters,https://private-7c7dfe99.mintlify.app/reference/system-tables/clusters,matched,61e9f75ff22c879e,true,61e9f75ff22c879e,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/codecs,docs/operations/system-tables/codecs.md,reference/system-tables/codecs.mdx,https://clickhouse.com/docs/operations/system-tables/codecs,https://private-7c7dfe99.mintlify.app/reference/system-tables/codecs,matched,7cf08cdbeb0adcf4,true,7cf08cdbeb0adcf4,2026-05-08T21:00:28+00:00,false
-/operations/system-tables/collations,docs/operations/system-tables/collations.md,reference/system-tables/collations.mdx,https://clickhouse.com/docs/operations/system-tables/collations,https://private-7c7dfe99.mintlify.app/reference/system-tables/collations,matched,1018414d0db6f58b,true,1018414d0db6f58b,2026-05-08T21:00:28+00:00,false
-/operations/system-tables/columns,docs/operations/system-tables/columns.md,reference/system-tables/columns.mdx,https://clickhouse.com/docs/operations/system-tables/columns,https://private-7c7dfe99.mintlify.app/reference/system-tables/columns,matched,2c156066c46d67db,true,2c156066c46d67db,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/completions,docs/operations/system-tables/completions.md,reference/system-tables/completions.mdx,https://clickhouse.com/docs/operations/system-tables/completions,https://private-7c7dfe99.mintlify.app/reference/system-tables/completions,matched,b24edc206695568d,true,b24edc206695568d,2026-05-08T21:00:29+00:00,false
-/operations/system-tables/contributors,docs/operations/system-tables/contributors.md,reference/system-tables/contributors.mdx,https://clickhouse.com/docs/operations/system-tables/contributors,https://private-7c7dfe99.mintlify.app/reference/system-tables/contributors,matched,ed99fe2f369bdcd6,true,ed99fe2f369bdcd6,2026-05-08T21:00:29+00:00,false
-/operations/system-tables/crash_log,docs/operations/system-tables/crash_log.md,reference/system-tables/crash_log.mdx,https://clickhouse.com/docs/operations/system-tables/crash_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/crash_log,matched,789e998674334ab0,true,789e998674334ab0,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/current_roles,docs/operations/system-tables/current_roles.md,reference/system-tables/current_roles.mdx,https://clickhouse.com/docs/operations/system-tables/current_roles,https://private-7c7dfe99.mintlify.app/reference/system-tables/current_roles,matched,d5fa5b1ccc479454,true,d5fa5b1ccc479454,2026-05-08T21:00:29+00:00,false
-/operations/system-tables/dashboards,docs/operations/system-tables/dashboards.md,reference/system-tables/dashboards.mdx,https://clickhouse.com/docs/operations/system-tables/dashboards,https://private-7c7dfe99.mintlify.app/reference/system-tables/dashboards,matched,32447efddfacf342,true,32447efddfacf342,2026-05-08T21:00:29+00:00,false
-/operations/system-tables/data_skipping_indices,docs/operations/system-tables/data_skipping_indices.md,reference/system-tables/data_skipping_indices.mdx,https://clickhouse.com/docs/operations/system-tables/data_skipping_indices,https://private-7c7dfe99.mintlify.app/reference/system-tables/data_skipping_indices,matched,1c40e02429b9f61c,true,1c40e02429b9f61c,2026-05-08T21:00:29+00:00,false
-/operations/system-tables/data_type_families,docs/operations/system-tables/data_type_families.md,reference/system-tables/data_type_families.mdx,https://clickhouse.com/docs/operations/system-tables/data_type_families,https://private-7c7dfe99.mintlify.app/reference/system-tables/data_type_families,matched,ccb0ebaf9e3ed522,true,ccb0ebaf9e3ed522,2026-05-08T21:00:30+00:00,false
-/operations/system-tables/database_engines,docs/operations/system-tables/database_engines.md,reference/system-tables/database_engines.mdx,https://clickhouse.com/docs/operations/system-tables/database_engines,https://private-7c7dfe99.mintlify.app/reference/system-tables/database_engines,matched,f01ae499a1ec57e3,true,f01ae499a1ec57e3,2026-05-08T21:00:30+00:00,false
-/operations/system-tables/database_replicas,docs/operations/system-tables/database_replicas.md,reference/system-tables/database_replicas.mdx,https://clickhouse.com/docs/operations/system-tables/database_replicas,https://private-7c7dfe99.mintlify.app/reference/system-tables/database_replicas,matched,b5267afb5b3dc4b3,true,b5267afb5b3dc4b3,2026-05-08T21:00:30+00:00,false
-/operations/system-tables/databases,docs/operations/system-tables/databases.md,reference/system-tables/databases.mdx,https://clickhouse.com/docs/operations/system-tables/databases,https://private-7c7dfe99.mintlify.app/reference/system-tables/databases,matched,3d184b14fc64a891,true,3d184b14fc64a891,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/dead_letter_queue,docs/operations/system-tables/dead_letter_queue.md,reference/system-tables/dead_letter_queue.mdx,https://clickhouse.com/docs/operations/system-tables/dead_letter_queue,https://private-7c7dfe99.mintlify.app/reference/system-tables/dead_letter_queue,matched,0e30043a5c5eba2a,true,0e30043a5c5eba2a,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/delta_lake_metadata_log,docs/operations/system-tables/delta_lake_metadata_log.md,reference/system-tables/delta_metadata_log.mdx,https://clickhouse.com/docs/operations/system-tables/delta_lake_metadata_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/delta_metadata_log,matched,f6cf90bd863544db,true,f6cf90bd863544db,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/detached_parts,docs/operations/system-tables/detached_parts.md,reference/system-tables/detached_parts.mdx,https://clickhouse.com/docs/operations/system-tables/detached_parts,https://private-7c7dfe99.mintlify.app/reference/system-tables/detached_parts,matched,40b3900db699b5e0,true,40b3900db699b5e0,2026-05-08T21:00:31+00:00,false
-/operations/system-tables/detached_tables,docs/operations/system-tables/detached_tables.md,reference/system-tables/detached_tables.mdx,https://clickhouse.com/docs/operations/system-tables/detached_tables,https://private-7c7dfe99.mintlify.app/reference/system-tables/detached_tables,matched,363ca00e053d40a5,true,363ca00e053d40a5,2026-05-08T21:00:31+00:00,false
-/operations/system-tables/dictionaries,docs/operations/system-tables/dictionaries.md,reference/system-tables/dictionaries.mdx,https://clickhouse.com/docs/operations/system-tables/dictionaries,https://private-7c7dfe99.mintlify.app/reference/system-tables/dictionaries,matched,30d9c72de8848950,true,30d9c72de8848950,2026-05-08T21:00:31+00:00,false
-/operations/system-tables/dimensional_metrics,docs/operations/system-tables/dimensional_metrics.md,reference/system-tables/dimensional_metrics.mdx,https://clickhouse.com/docs/operations/system-tables/dimensional_metrics,https://private-7c7dfe99.mintlify.app/reference/system-tables/dimensional_metrics,matched,41a8e212bd7abc30,true,41a8e212bd7abc30,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/disks,docs/operations/system-tables/disks.md,reference/system-tables/disks.mdx,https://clickhouse.com/docs/operations/system-tables/disks,https://private-7c7dfe99.mintlify.app/reference/system-tables/disks,matched,f5aad12f0f49430a,true,f5aad12f0f49430a,2026-05-08T21:00:31+00:00,false
-/operations/system-tables/distributed_ddl_queue,docs/operations/system-tables/distributed_ddl_queue.md,reference/system-tables/distributed_ddl_queue.mdx,https://clickhouse.com/docs/operations/system-tables/distributed_ddl_queue,https://private-7c7dfe99.mintlify.app/reference/system-tables/distributed_ddl_queue,matched,1ffce34c4d08703f,true,1ffce34c4d08703f,2026-05-19T11:48:22+00:00,false
-/operations/system-tables/distribution_queue,docs/operations/system-tables/distribution_queue.md,reference/system-tables/distribution_queue.mdx,https://clickhouse.com/docs/operations/system-tables/distribution_queue,https://private-7c7dfe99.mintlify.app/reference/system-tables/distribution_queue,matched,9a1e70d903a00965,true,9a1e70d903a00965,2026-05-08T21:00:32+00:00,false
-/operations/system-tables/dns_cache,docs/operations/system-tables/dns_cache.md,reference/system-tables/dns_cache.mdx,https://clickhouse.com/docs/operations/system-tables/dns_cache,https://private-7c7dfe99.mintlify.app/reference/system-tables/dns_cache,matched,832dfe91488177fd,true,832dfe91488177fd,2026-05-08T21:00:32+00:00,false
-/operations/system-tables/dropped_tables,docs/operations/system-tables/dropped_tables.md,reference/system-tables/dropped_tables.mdx,https://clickhouse.com/docs/operations/system-tables/dropped_tables,https://private-7c7dfe99.mintlify.app/reference/system-tables/dropped_tables,matched,99ce3ddea83a7a37,true,99ce3ddea83a7a37,2026-05-08T21:00:32+00:00,false
-/operations/system-tables/dropped_tables_parts,docs/operations/system-tables/dropped_tables_parts.md,reference/system-tables/dropped_tables_parts.mdx,https://clickhouse.com/docs/operations/system-tables/dropped_tables_parts,https://private-7c7dfe99.mintlify.app/reference/system-tables/dropped_tables_parts,matched,4dddb00c8826eeec,true,4dddb00c8826eeec,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/enabled_roles,docs/operations/system-tables/enabled_roles.md,reference/system-tables/enabled_roles.mdx,https://clickhouse.com/docs/operations/system-tables/enabled_roles,https://private-7c7dfe99.mintlify.app/reference/system-tables/enabled_roles,matched,53ba95975c120c13,true,53ba95975c120c13,2026-05-08T21:00:32+00:00,false
-/operations/system-tables/errors,docs/operations/system-tables/errors.md,reference/system-tables/errors.mdx,https://clickhouse.com/docs/operations/system-tables/errors,https://private-7c7dfe99.mintlify.app/reference/system-tables/errors,matched,7779b6a80d11c73a,true,7779b6a80d11c73a,2026-05-08T21:00:33+00:00,false
-/operations/system-tables/events,docs/operations/system-tables/events.md,reference/system-tables/events.mdx,https://clickhouse.com/docs/operations/system-tables/events,https://private-7c7dfe99.mintlify.app/reference/system-tables/events,matched,cb79808f837bd1dc,true,cb79808f837bd1dc,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/fail_points,docs/operations/system-tables/fail_points.md,reference/system-tables/fail_points.mdx,https://clickhouse.com/docs/operations/system-tables/fail_points,https://private-7c7dfe99.mintlify.app/reference/system-tables/fail_points,matched,dba698b365d9ef95,true,dba698b365d9ef95,2026-05-08T21:00:33+00:00,false
-/operations/system-tables/filesystem_cache,docs/operations/system-tables/filesystem_cache.md,reference/system-tables/filesystem_cache.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_cache,https://private-7c7dfe99.mintlify.app/reference/system-tables/filesystem_cache,matched,a2328859464bad53,true,a2328859464bad53,2026-05-08T21:00:33+00:00,false
-/operations/system-tables/filesystem_cache_log,docs/operations/system-tables/filesystem_cache_log.md,reference/system-tables/filesystem_cache_log.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_cache_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/filesystem_cache_log,matched,19f3dfba8f9194aa,true,19f3dfba8f9194aa,2026-05-13T13:08:27+00:00,false
-/operations/system-tables/filesystem_cache_settings,docs/operations/system-tables/filesystem_cache_settings.md,reference/system-tables/filesystem_cache_settings.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_cache_settings,https://private-7c7dfe99.mintlify.app/reference/system-tables/filesystem_cache_settings,matched,21d405c24e403f88,true,21d405c24e403f88,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/filesystem_read_prefetches_log,docs/operations/system-tables/filesystem_read_prefetches_log.md,reference/system-tables/filesystem_read_prefetches_log.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_read_prefetches_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/filesystem_read_prefetches_log,matched,5b6d5025431391a3,true,5b6d5025431391a3,2026-05-13T13:08:27+00:00,false
-/operations/system-tables/formats,docs/operations/system-tables/formats.md,reference/system-tables/formats.mdx,https://clickhouse.com/docs/operations/system-tables/formats,https://private-7c7dfe99.mintlify.app/reference/system-tables/formats,matched,6bf140e370f7095a,true,6bf140e370f7095a,2026-05-08T21:00:34+00:00,false
-/operations/system-tables/functions,docs/operations/system-tables/functions.md,reference/system-tables/functions.mdx,https://clickhouse.com/docs/operations/system-tables/functions,https://private-7c7dfe99.mintlify.app/reference/system-tables/functions,matched,8257e4513f41c25b,true,8257e4513f41c25b,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/grants,docs/operations/system-tables/grants.md,reference/system-tables/grants.mdx,https://clickhouse.com/docs/operations/system-tables/grants,https://private-7c7dfe99.mintlify.app/reference/system-tables/grants,matched,7eff8cb2a297443e,true,7eff8cb2a297443e,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/graphite_retentions,docs/operations/system-tables/graphite_retentions.md,reference/system-tables/graphite_retentions.mdx,https://clickhouse.com/docs/operations/system-tables/graphite_retentions,https://private-7c7dfe99.mintlify.app/reference/system-tables/graphite_retentions,matched,464bac9447aad728,true,464bac9447aad728,2026-05-08T21:00:34+00:00,false
-/operations/system-tables/histogram_metric_log,docs/operations/system-tables/histogram_metric_log.md,reference/system-tables/histogram_metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/histogram_metric_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/histogram_metric_log,matched,fd61b7501ffc08ff,true,fd61b7501ffc08ff,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/histogram_metrics,docs/operations/system-tables/histogram_metrics.md,reference/system-tables/histogram_metrics.mdx,https://clickhouse.com/docs/operations/system-tables/histogram_metrics,https://private-7c7dfe99.mintlify.app/reference/system-tables/histogram_metrics,matched,2620e2192210eefe,true,2620e2192210eefe,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/iceberg_history,docs/operations/system-tables/iceberg_history.md,reference/system-tables/iceberg_history.mdx,https://clickhouse.com/docs/operations/system-tables/iceberg_history,https://private-7c7dfe99.mintlify.app/reference/system-tables/iceberg_history,matched,0ffc57c3e2b81eab,true,0ffc57c3e2b81eab,2026-05-08T21:00:35+00:00,false
-/operations/system-tables/iceberg_metadata_log,docs/operations/system-tables/iceberg_metadata_log.md,reference/system-tables/iceberg_metadata_log.mdx,https://clickhouse.com/docs/operations/system-tables/iceberg_metadata_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/iceberg_metadata_log,matched,3666b153c2ed6ec6,true,3666b153c2ed6ec6,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/information_schema,docs/operations/system-tables/information_schema.md,reference/system-tables/information_schema.mdx,https://clickhouse.com/docs/operations/system-tables/information_schema,https://private-7c7dfe99.mintlify.app/reference/system-tables/information_schema,matched,d3c9bff2eaf6d8c1,true,d3c9bff2eaf6d8c1,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/instrumentation,docs/operations/system-tables/instrumentation.md,reference/system-tables/instrumentation.mdx,https://clickhouse.com/docs/operations/system-tables/instrumentation,https://private-7c7dfe99.mintlify.app/reference/system-tables/instrumentation,matched,84e4433828e2eebd,true,84e4433828e2eebd,2026-05-08T21:00:35+00:00,false
-/operations/system-tables/jemalloc_bins,docs/operations/system-tables/jemalloc_bins.md,reference/system-tables/jemalloc_bins.mdx,https://clickhouse.com/docs/operations/system-tables/jemalloc_bins,https://private-7c7dfe99.mintlify.app/reference/system-tables/jemalloc_bins,matched,df9e8107e5309350,true,df9e8107e5309350,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/jemalloc_profile_text,docs/operations/system-tables/jemalloc_profile_text.md,reference/system-tables/jemalloc_profile_text.mdx,https://clickhouse.com/docs/operations/system-tables/jemalloc_profile_text,https://private-7c7dfe99.mintlify.app/reference/system-tables/jemalloc_profile_text,matched,cca46516004deb0d,true,cca46516004deb0d,2026-05-08T21:00:36+00:00,false
-/operations/system-tables/jemalloc_stats,docs/operations/system-tables/jemalloc_stats.md,reference/system-tables/jemalloc_stats.mdx,https://clickhouse.com/docs/operations/system-tables/jemalloc_stats,https://private-7c7dfe99.mintlify.app/reference/system-tables/jemalloc_stats,matched,929f907b08f2ee2d,true,929f907b08f2ee2d,2026-05-08T21:00:36+00:00,false
-/operations/system-tables/kafka_consumers,docs/operations/system-tables/kafka_consumers.md,reference/system-tables/kafka_consumers.mdx,https://clickhouse.com/docs/operations/system-tables/kafka_consumers,https://private-7c7dfe99.mintlify.app/reference/system-tables/kafka_consumers,matched,e094d2f770da5230,true,e094d2f770da5230,2026-05-08T21:00:36+00:00,false
-/operations/system-tables/keywords,docs/operations/system-tables/keywords.md,reference/system-tables/keywords.mdx,https://clickhouse.com/docs/operations/system-tables/keywords,https://private-7c7dfe99.mintlify.app/reference/system-tables/keywords,matched,580293e04e4b5ef0,true,580293e04e4b5ef0,2026-05-08T21:00:36+00:00,false
-/operations/system-tables/licenses,docs/operations/system-tables/licenses.md,reference/system-tables/licenses.mdx,https://clickhouse.com/docs/operations/system-tables/licenses,https://private-7c7dfe99.mintlify.app/reference/system-tables/licenses,matched,9d1423ef5ce07210,true,9d1423ef5ce07210,2026-05-08T21:00:36+00:00,false
-/operations/system-tables/macros,docs/operations/system-tables/macros.md,reference/system-tables/macros.mdx,https://clickhouse.com/docs/operations/system-tables/macros,https://private-7c7dfe99.mintlify.app/reference/system-tables/macros,matched,ca6dd30401322eb5,true,ca6dd30401322eb5,2026-05-08T21:00:37+00:00,false
-/operations/system-tables/masking_policies,docs/operations/system-tables/masking_policies.md,reference/system-tables/masking_policies.mdx,https://clickhouse.com/docs/operations/system-tables/masking_policies,https://private-7c7dfe99.mintlify.app/reference/system-tables/masking_policies,matched,2122b6c04db57faf,true,2122b6c04db57faf,2026-05-08T21:00:37+00:00,false
-/operations/system-tables/merge_tree_settings,docs/operations/system-tables/merge_tree_settings.md,reference/system-tables/merge_tree_settings.mdx,https://clickhouse.com/docs/operations/system-tables/merge_tree_settings,https://private-7c7dfe99.mintlify.app/reference/system-tables/merge_tree_settings,matched,e5e8db50498b1673,true,e5e8db50498b1673,2026-05-08T21:00:37+00:00,false
-/operations/system-tables/merges,docs/operations/system-tables/merges.md,reference/system-tables/merges.mdx,https://clickhouse.com/docs/operations/system-tables/merges,https://private-7c7dfe99.mintlify.app/reference/system-tables/merges,matched,60c36e1d757cb666,true,60c36e1d757cb666,2026-05-08T21:00:37+00:00,false
-/operations/system-tables/metric_log,docs/operations/system-tables/metric_log.md,reference/system-tables/metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/metric_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/metric_log,matched,c382d8f1285baef6,true,c382d8f1285baef6,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/metrics,docs/operations/system-tables/metrics.md,reference/system-tables/metrics.mdx,https://clickhouse.com/docs/operations/system-tables/metrics,https://private-7c7dfe99.mintlify.app/reference/system-tables/metrics,matched,11bd6e6af02ec49f,true,11bd6e6af02ec49f,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/models,docs/operations/system-tables/models.md,reference/system-tables/models.mdx,https://clickhouse.com/docs/operations/system-tables/models,https://private-7c7dfe99.mintlify.app/reference/system-tables/models,matched,6d6f942a7cc2bcb5,true,6d6f942a7cc2bcb5,2026-05-08T21:00:38+00:00,false
-/operations/system-tables/moves,docs/operations/system-tables/moves.md,reference/system-tables/moves.mdx,https://clickhouse.com/docs/operations/system-tables/moves,https://private-7c7dfe99.mintlify.app/reference/system-tables/moves,matched,b7f2eb2b29243e5a,true,b7f2eb2b29243e5a,2026-05-08T21:00:38+00:00,false
-/operations/system-tables/mutations,docs/operations/system-tables/mutations.md,reference/system-tables/mutations.mdx,https://clickhouse.com/docs/operations/system-tables/mutations,https://private-7c7dfe99.mintlify.app/reference/system-tables/mutations,matched,5e9568ccde263373,true,5e9568ccde263373,2026-05-08T21:00:38+00:00,false
-/operations/system-tables/named_collections,docs/operations/system-tables/named_collections.md,reference/system-tables/named_collections.mdx,https://clickhouse.com/docs/operations/system-tables/named_collections,https://private-7c7dfe99.mintlify.app/reference/system-tables/named_collections,matched,7219d93d3bc75213,true,7219d93d3bc75213,2026-05-08T21:00:38+00:00,false
-/operations/system-tables/numbers,docs/operations/system-tables/numbers.md,reference/system-tables/numbers.mdx,https://clickhouse.com/docs/operations/system-tables/numbers,https://private-7c7dfe99.mintlify.app/reference/system-tables/numbers,matched,99047aec8c3514df,true,99047aec8c3514df,2026-05-08T21:00:38+00:00,false
-/operations/system-tables/numbers_mt,docs/operations/system-tables/numbers_mt.md,reference/system-tables/numbers_mt.mdx,https://clickhouse.com/docs/operations/system-tables/numbers_mt,https://private-7c7dfe99.mintlify.app/reference/system-tables/numbers_mt,matched,fb734a6e8fefc43a,true,fb734a6e8fefc43a,2026-05-08T21:00:39+00:00,false
-/operations/system-tables/one,docs/operations/system-tables/one.md,reference/system-tables/one.mdx,https://clickhouse.com/docs/operations/system-tables/one,https://private-7c7dfe99.mintlify.app/reference/system-tables/one,matched,8cebbfc8b51d7d1e,true,8cebbfc8b51d7d1e,2026-05-08T21:00:39+00:00,false
-/operations/system-tables/opentelemetry_span_log,docs/operations/system-tables/opentelemetry_span_log.md,reference/system-tables/opentelemetry_span_log.mdx,https://clickhouse.com/docs/operations/system-tables/opentelemetry_span_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/opentelemetry_span_log,matched,c177a0be6bda91a4,true,c177a0be6bda91a4,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/overview,docs/operations/system-tables/overview.md,reference/system-tables/overview.mdx,https://clickhouse.com/docs/operations/system-tables/overview,https://private-7c7dfe99.mintlify.app/reference/system-tables/overview,matched,9aff12963c1e1db4,true,9aff12963c1e1db4,2026-05-08T09:09:20+00:00,false
-/operations/system-tables/part_log,docs/operations/system-tables/part_log.md,reference/system-tables/part_log.mdx,https://clickhouse.com/docs/operations/system-tables/part_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/part_log,matched,968e900e95aa9ea2,true,968e900e95aa9ea2,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/part_moves_between_shards,docs/operations/system-tables/part_moves_between_shards.md,reference/system-tables/part_moves_between_shards.mdx,https://clickhouse.com/docs/operations/system-tables/part_moves_between_shards,https://private-7c7dfe99.mintlify.app/reference/system-tables/part_moves_between_shards,matched,2caa49aba757cf95,true,2caa49aba757cf95,2026-05-08T21:00:39+00:00,false
-/operations/system-tables/parts,docs/operations/system-tables/parts.md,reference/system-tables/parts.mdx,https://clickhouse.com/docs/operations/system-tables/parts,https://private-7c7dfe99.mintlify.app/reference/system-tables/parts,matched,fa6125a81bc4ca7a,true,fa6125a81bc4ca7a,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/parts_columns,docs/operations/system-tables/parts_columns.md,reference/system-tables/parts_columns.mdx,https://clickhouse.com/docs/operations/system-tables/parts_columns,https://private-7c7dfe99.mintlify.app/reference/system-tables/parts_columns,matched,54ddc77af6501853,true,54ddc77af6501853,2026-05-08T21:00:40+00:00,false
-/operations/system-tables/predicate_statistics_log,docs/operations/system-tables/predicate_statistics_log.md,reference/system-tables/predicate_statistics_log.mdx,https://clickhouse.com/docs/operations/system-tables/predicate_statistics_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/predicate_statistics_log,matched,0c4c9b03e9bb41d4,true,0c4c9b03e9bb41d4,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/primes,docs/operations/system-tables/primes.md,reference/system-tables/primes.mdx,https://clickhouse.com/docs/operations/system-tables/primes,https://private-7c7dfe99.mintlify.app/reference/system-tables/primes,matched,c8bd5508638d5ac1,true,c8bd5508638d5ac1,2026-05-08T21:00:40+00:00,false
-/operations/system-tables/privileges,docs/operations/system-tables/privileges.md,reference/system-tables/privileges.mdx,https://clickhouse.com/docs/operations/system-tables/privileges,https://private-7c7dfe99.mintlify.app/reference/system-tables/privileges,matched,5b98c7994d5dca05,true,5b98c7994d5dca05,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/processes,docs/operations/system-tables/processes.md,reference/system-tables/processes.mdx,https://clickhouse.com/docs/operations/system-tables/processes,https://private-7c7dfe99.mintlify.app/reference/system-tables/processes,matched,4f1747c6f8fca7cc,true,4f1747c6f8fca7cc,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/processors_profile_log,docs/operations/system-tables/processors_profile_log.md,reference/system-tables/processors_profile_log.mdx,https://clickhouse.com/docs/operations/system-tables/processors_profile_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/processors_profile_log,matched,55bb2416a7045d67,true,55bb2416a7045d67,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/projection_parts,docs/operations/system-tables/projection_parts.md,reference/system-tables/projection_parts.mdx,https://clickhouse.com/docs/operations/system-tables/projection_parts,https://private-7c7dfe99.mintlify.app/reference/system-tables/projection_parts,matched,997eca3070cbeda5,true,997eca3070cbeda5,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/projection_parts_columns,docs/operations/system-tables/projection_parts_columns.md,reference/system-tables/projection_parts_columns.mdx,https://clickhouse.com/docs/operations/system-tables/projection_parts_columns,https://private-7c7dfe99.mintlify.app/reference/system-tables/projection_parts_columns,matched,213c257e7c406aee,true,213c257e7c406aee,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/projections,docs/operations/system-tables/projections.md,reference/system-tables/projections.mdx,https://clickhouse.com/docs/operations/system-tables/projections,https://private-7c7dfe99.mintlify.app/reference/system-tables/projections,matched,43812f2032aac42f,true,43812f2032aac42f,2026-05-08T21:00:41+00:00,false
-/operations/system-tables/query_cache,docs/operations/system-tables/query_cache.md,reference/system-tables/query_cache.mdx,https://clickhouse.com/docs/operations/system-tables/query_cache,https://private-7c7dfe99.mintlify.app/reference/system-tables/query_cache,matched,23a6576a6892b3c7,true,23a6576a6892b3c7,2026-05-08T21:00:41+00:00,false
-/operations/system-tables/query_condition_cache,docs/operations/system-tables/query_condition_cache.md,reference/system-tables/query_condition_cache.mdx,https://clickhouse.com/docs/operations/system-tables/query_condition_cache,https://private-7c7dfe99.mintlify.app/reference/system-tables/query_condition_cache,matched,2cdfd85810116d3e,true,2cdfd85810116d3e,2026-05-08T21:00:41+00:00,false
-/operations/system-tables/query_log,docs/operations/system-tables/query_log.md,reference/system-tables/query_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/query_log,matched,a05473143f339793,true,a05473143f339793,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/query_metric_log,docs/operations/system-tables/query_metric_log.md,reference/system-tables/query_metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_metric_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/query_metric_log,matched,e861f29f7e4fd511,true,e861f29f7e4fd511,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/query_thread_log,docs/operations/system-tables/query_thread_log.md,reference/system-tables/query_thread_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_thread_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/query_thread_log,matched,08a8395420867420,true,08a8395420867420,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/query_views_log,docs/operations/system-tables/query_views_log.md,reference/system-tables/query_views_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_views_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/query_views_log,matched,ab38df93c47223cd,true,ab38df93c47223cd,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/quota_limits,docs/operations/system-tables/quota_limits.md,reference/system-tables/quota_limits.mdx,https://clickhouse.com/docs/operations/system-tables/quota_limits,https://private-7c7dfe99.mintlify.app/reference/system-tables/quota_limits,matched,89cf3fd2c278ac25,true,89cf3fd2c278ac25,2026-05-08T21:00:42+00:00,false
-/operations/system-tables/quota_usage,docs/operations/system-tables/quota_usage.md,reference/system-tables/quota_usage.mdx,https://clickhouse.com/docs/operations/system-tables/quota_usage,https://private-7c7dfe99.mintlify.app/reference/system-tables/quota_usage,matched,553a83991534ff79,true,553a83991534ff79,2026-05-08T21:00:42+00:00,false
-/operations/system-tables/quotas,docs/operations/system-tables/quotas.md,reference/system-tables/quotas.mdx,https://clickhouse.com/docs/operations/system-tables/quotas,https://private-7c7dfe99.mintlify.app/reference/system-tables/quotas,matched,c7e6b2b4098b55ea,true,c7e6b2b4098b55ea,2026-05-08T21:00:43+00:00,false
-/operations/system-tables/quotas_usage,docs/operations/system-tables/quotas_usage.md,reference/system-tables/quotas_usage.mdx,https://clickhouse.com/docs/operations/system-tables/quotas_usage,https://private-7c7dfe99.mintlify.app/reference/system-tables/quotas_usage,matched,e236c52aec1f14c5,true,e236c52aec1f14c5,2026-05-08T21:00:43+00:00,false
-/operations/system-tables/remote_data_paths,docs/operations/system-tables/remote_data_paths.md,reference/system-tables/remote_data_paths.mdx,https://clickhouse.com/docs/operations/system-tables/remote_data_paths,https://private-7c7dfe99.mintlify.app/reference/system-tables/remote_data_paths,matched,16f789c68faf453c,true,16f789c68faf453c,2026-05-08T21:00:43+00:00,false
-/operations/system-tables/replicas,docs/operations/system-tables/replicas.md,reference/system-tables/replicas.mdx,https://clickhouse.com/docs/operations/system-tables/replicas,https://private-7c7dfe99.mintlify.app/reference/system-tables/replicas,matched,f8c198de4d3d6054,true,f8c198de4d3d6054,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/replicated_fetches,docs/operations/system-tables/replicated_fetches.md,reference/system-tables/replicated_fetches.mdx,https://clickhouse.com/docs/operations/system-tables/replicated_fetches,https://private-7c7dfe99.mintlify.app/reference/system-tables/replicated_fetches,matched,36f5e02689262f81,true,36f5e02689262f81,2026-05-08T21:00:43+00:00,false
-/operations/system-tables/replicated_merge_tree_settings,docs/operations/system-tables/replicated_merge_tree_settings.md,reference/system-tables/replicated_merge_tree_settings.mdx,https://clickhouse.com/docs/operations/system-tables/replicated_merge_tree_settings,https://private-7c7dfe99.mintlify.app/reference/system-tables/replicated_merge_tree_settings,matched,9db9dabaac8efd5c,true,9db9dabaac8efd5c,2026-05-08T21:00:43+00:00,false
-/operations/system-tables/replication_queue,docs/operations/system-tables/replication_queue.md,reference/system-tables/replication_queue.mdx,https://clickhouse.com/docs/operations/system-tables/replication_queue,https://private-7c7dfe99.mintlify.app/reference/system-tables/replication_queue,matched,d358990d7d9272e1,true,d358990d7d9272e1,2026-05-08T21:00:44+00:00,false
-/operations/system-tables/resources,docs/operations/system-tables/resources.md,reference/system-tables/resources.mdx,https://clickhouse.com/docs/operations/system-tables/resources,https://private-7c7dfe99.mintlify.app/reference/system-tables/resources,matched,4fb371b9dfddd759,true,4fb371b9dfddd759,2026-05-08T21:00:44+00:00,false
-/operations/system-tables/rocksdb,docs/operations/system-tables/rocksdb.md,reference/system-tables/rocksdb.mdx,https://clickhouse.com/docs/operations/system-tables/rocksdb,https://private-7c7dfe99.mintlify.app/reference/system-tables/rocksdb,matched,82024034ca9109cc,true,82024034ca9109cc,2026-05-08T21:00:44+00:00,false
-/operations/system-tables/role_grants,docs/operations/system-tables/role_grants.md,reference/system-tables/role_grants.mdx,https://clickhouse.com/docs/operations/system-tables/role_grants,https://private-7c7dfe99.mintlify.app/reference/system-tables/role_grants,matched,b74709322c8154c6,true,b74709322c8154c6,2026-05-08T21:00:44+00:00,false
-/operations/system-tables/roles,docs/operations/system-tables/roles.md,reference/system-tables/roles.mdx,https://clickhouse.com/docs/operations/system-tables/roles,https://private-7c7dfe99.mintlify.app/reference/system-tables/roles,matched,af7a908a7c67e751,true,af7a908a7c67e751,2026-05-08T21:00:44+00:00,false
-/operations/system-tables/row_policies,docs/operations/system-tables/row_policies.md,reference/system-tables/row_policies.mdx,https://clickhouse.com/docs/operations/system-tables/row_policies,https://private-7c7dfe99.mintlify.app/reference/system-tables/row_policies,matched,6890a710e54e1699,true,6890a710e54e1699,2026-05-08T21:00:44+00:00,false
-/operations/system-tables/s3_queue_settings,docs/operations/system-tables/s3_queue_settings.md,reference/system-tables/s3_queue_settings.mdx,https://clickhouse.com/docs/operations/system-tables/s3_queue_settings,https://private-7c7dfe99.mintlify.app/reference/system-tables/s3_queue_settings,matched,83ef2d10121b8a8e,true,83ef2d10121b8a8e,2026-05-08T21:00:45+00:00,false
-/operations/system-tables/s3queue_log,docs/operations/system-tables/s3queue_log.md,reference/system-tables/s3queue_log.mdx,https://clickhouse.com/docs/operations/system-tables/s3queue_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/s3queue_log,matched,b30949fb7bc700eb,true,b30949fb7bc700eb,2026-05-13T13:08:27+00:00,false
-/operations/system-tables/s3queue_metadata_cache,docs/operations/system-tables/s3queue_metadata_cache.md,reference/system-tables/s3queue_metadata_cache.mdx,https://clickhouse.com/docs/operations/system-tables/s3queue_metadata_cache,https://private-7c7dfe99.mintlify.app/reference/system-tables/s3queue_metadata_cache,matched,5383de79a1001a99,true,5383de79a1001a99,2026-05-08T21:00:45+00:00,false
-/operations/system-tables/scheduler,docs/operations/system-tables/scheduler.md,reference/system-tables/scheduler.mdx,https://clickhouse.com/docs/operations/system-tables/scheduler,https://private-7c7dfe99.mintlify.app/reference/system-tables/scheduler,matched,31f0f12a50186fe9,true,31f0f12a50186fe9,2026-05-08T21:00:45+00:00,false
-/operations/system-tables/schema_inference_cache,docs/operations/system-tables/schema_inference_cache.md,reference/system-tables/schema_inference_cache.mdx,https://clickhouse.com/docs/operations/system-tables/schema_inference_cache,https://private-7c7dfe99.mintlify.app/reference/system-tables/schema_inference_cache,matched,553ff97032d7232d,true,553ff97032d7232d,2026-05-08T21:00:45+00:00,false
-/operations/system-tables/server_settings,docs/operations/system-tables/server_settings.md,reference/system-tables/server_settings.mdx,https://clickhouse.com/docs/operations/system-tables/server_settings,https://private-7c7dfe99.mintlify.app/reference/system-tables/server_settings,matched,e25fce44808bcb06,true,e25fce44808bcb06,2026-05-08T21:00:45+00:00,false
-/operations/system-tables/session_log,docs/operations/system-tables/session_log.md,reference/system-tables/session_log.mdx,https://clickhouse.com/docs/operations/system-tables/session_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/session_log,matched,182a99be8f6003af,true,182a99be8f6003af,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/settings,docs/operations/system-tables/settings.md,reference/system-tables/settings.mdx,https://clickhouse.com/docs/operations/system-tables/settings,https://private-7c7dfe99.mintlify.app/reference/system-tables/settings,matched,2ebf7340bff64f63,true,2ebf7340bff64f63,2026-05-08T21:00:46+00:00,false
-/operations/system-tables/settings_changes,docs/operations/system-tables/settings_changes.md,reference/system-tables/settings_changes.mdx,https://clickhouse.com/docs/operations/system-tables/settings_changes,https://private-7c7dfe99.mintlify.app/reference/system-tables/settings_changes,matched,1cd1742d0fa202ae,true,1cd1742d0fa202ae,2026-05-09T09:39:38+00:00,false
-/operations/system-tables/settings_profile_elements,docs/operations/system-tables/settings_profile_elements.md,reference/system-tables/settings_profile_elements.mdx,https://clickhouse.com/docs/operations/system-tables/settings_profile_elements,https://private-7c7dfe99.mintlify.app/reference/system-tables/settings_profile_elements,matched,97bd32e8684d20f5,true,97bd32e8684d20f5,2026-05-08T21:00:46+00:00,false
-/operations/system-tables/settings_profiles,docs/operations/system-tables/settings_profiles.md,reference/system-tables/settings_profiles.mdx,https://clickhouse.com/docs/operations/system-tables/settings_profiles,https://private-7c7dfe99.mintlify.app/reference/system-tables/settings_profiles,matched,37014ff91f7b8d7d,true,37014ff91f7b8d7d,2026-05-08T21:00:46+00:00,false
-/operations/system-tables/stack_trace,docs/operations/system-tables/stack_trace.md,reference/system-tables/stack_trace.mdx,https://clickhouse.com/docs/operations/system-tables/stack_trace,https://private-7c7dfe99.mintlify.app/reference/system-tables/stack_trace,matched,1411b6e4f944dbe1,true,1411b6e4f944dbe1,2026-05-08T21:00:46+00:00,false
-/operations/system-tables/storage_policies,docs/operations/system-tables/storage_policies.md,reference/system-tables/storage_policies.mdx,https://clickhouse.com/docs/operations/system-tables/storage_policies,https://private-7c7dfe99.mintlify.app/reference/system-tables/storage_policies,matched,cf96fd26b4e69802,true,cf96fd26b4e69802,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/symbols,docs/operations/system-tables/symbols.md,reference/system-tables/symbols.mdx,https://clickhouse.com/docs/operations/system-tables/symbols,https://private-7c7dfe99.mintlify.app/reference/system-tables/symbols,matched,54037cfdf8943d44,true,54037cfdf8943d44,2026-05-08T21:00:47+00:00,false
-/operations/system-tables/system-error-log,docs/operations/system-tables/error_log.md,reference/system-tables/error_log.mdx,https://clickhouse.com/docs/operations/system-tables/system-error-log,https://private-7c7dfe99.mintlify.app/reference/system-tables/error_log,matched,a5bafc2aaa88cebc,true,a5bafc2aaa88cebc,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/system_warnings,docs/operations/system-tables/system_warnings.md,reference/system-tables/system_warnings.mdx,https://clickhouse.com/docs/operations/system-tables/system_warnings,https://private-7c7dfe99.mintlify.app/reference/system-tables/system_warnings,matched,019d08eb5d53c4d2,true,019d08eb5d53c4d2,2026-05-08T09:09:20+00:00,false
-/operations/system-tables/table_engines,docs/operations/system-tables/table_engines.md,reference/system-tables/table_engines.mdx,https://clickhouse.com/docs/operations/system-tables/table_engines,https://private-7c7dfe99.mintlify.app/reference/system-tables/table_engines,matched,8638422eb124890a,true,8638422eb124890a,2026-05-08T21:00:47+00:00,false
-/operations/system-tables/table_functions,docs/operations/system-tables/table_functions.md,reference/system-tables/table_functions.mdx,https://clickhouse.com/docs/operations/system-tables/table_functions,https://private-7c7dfe99.mintlify.app/reference/system-tables/table_functions,matched,49b4a602760f3947,true,49b4a602760f3947,2026-05-08T21:00:47+00:00,false
-/operations/system-tables/tables,docs/operations/system-tables/tables.md,reference/system-tables/tables.mdx,https://clickhouse.com/docs/operations/system-tables/tables,https://private-7c7dfe99.mintlify.app/reference/system-tables/tables,matched,735ebc55efcf816b,true,735ebc55efcf816b,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/text_log,docs/operations/system-tables/text_log.md,reference/system-tables/text_log.mdx,https://clickhouse.com/docs/operations/system-tables/text_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/text_log,matched,b6f1b3a8e96de9e9,true,b6f1b3a8e96de9e9,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/time_zones,docs/operations/system-tables/time_zones.md,reference/system-tables/time_zones.mdx,https://clickhouse.com/docs/operations/system-tables/time_zones,https://private-7c7dfe99.mintlify.app/reference/system-tables/time_zones,matched,bb828e8cbba5f6cb,true,bb828e8cbba5f6cb,2026-05-08T21:00:48+00:00,false
-/operations/system-tables/tokenizers,docs/operations/system-tables/tokenizers.md,reference/system-tables/tokenizers.mdx,https://clickhouse.com/docs/operations/system-tables/tokenizers,https://private-7c7dfe99.mintlify.app/reference/system-tables/tokenizers,matched,f38b49844109c253,true,f38b49844109c253,2026-05-08T21:00:48+00:00,false
-/operations/system-tables/trace_log,docs/operations/system-tables/trace_log.md,reference/system-tables/trace_log.mdx,https://clickhouse.com/docs/operations/system-tables/trace_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/trace_log,matched,3e1cb8623ee915fc,true,3e1cb8623ee915fc,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/transactions,docs/operations/system-tables/transactions.md,reference/system-tables/transactions.mdx,https://clickhouse.com/docs/operations/system-tables/transactions,https://private-7c7dfe99.mintlify.app/reference/system-tables/transactions,matched,2bf44ed2ecafc08d,true,2bf44ed2ecafc08d,2026-05-08T21:00:48+00:00,false
-/operations/system-tables/transactions_info_log,docs/operations/system-tables/transactions_info_log.md,reference/system-tables/transactions_info_log.mdx,https://clickhouse.com/docs/operations/system-tables/transactions_info_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/transactions_info_log,matched,e7289c550ebd1706,true,e7289c550ebd1706,2026-05-13T13:08:27+00:00,false
-/operations/system-tables/unicode,docs/operations/system-tables/unicode.md,reference/system-tables/unicode.mdx,https://clickhouse.com/docs/operations/system-tables/unicode,https://private-7c7dfe99.mintlify.app/reference/system-tables/unicode,matched,627dfc36a5b58ce7,true,627dfc36a5b58ce7,2026-05-08T21:00:48+00:00,false
-/operations/system-tables/user_defined_functions,docs/operations/system-tables/user_defined_functions.md,reference/system-tables/user_defined_functions.mdx,https://clickhouse.com/docs/operations/system-tables/user_defined_functions,https://private-7c7dfe99.mintlify.app/reference/system-tables/user_defined_functions,matched,b1a8f52c5076b0b4,true,b1a8f52c5076b0b4,2026-05-08T21:00:48+00:00,false
-/operations/system-tables/user_directories,docs/operations/system-tables/user_directories.md,reference/system-tables/user_directories.mdx,https://clickhouse.com/docs/operations/system-tables/user_directories,https://private-7c7dfe99.mintlify.app/reference/system-tables/user_directories,matched,54f4b3a41b32add7,true,54f4b3a41b32add7,2026-05-08T21:00:49+00:00,false
-/operations/system-tables/user_processes,docs/operations/system-tables/user_processes.md,reference/system-tables/user_processes.mdx,https://clickhouse.com/docs/operations/system-tables/user_processes,https://private-7c7dfe99.mintlify.app/reference/system-tables/user_processes,matched,8c2f38c2abb68784,true,8c2f38c2abb68784,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/users,docs/operations/system-tables/users.md,reference/system-tables/users.mdx,https://clickhouse.com/docs/operations/system-tables/users,https://private-7c7dfe99.mintlify.app/reference/system-tables/users,matched,221907cf57c6edf9,true,221907cf57c6edf9,2026-05-08T21:00:49+00:00,false
-/operations/system-tables/view_refreshes,docs/operations/system-tables/view_refreshes.md,reference/system-tables/view_refreshes.mdx,https://clickhouse.com/docs/operations/system-tables/view_refreshes,https://private-7c7dfe99.mintlify.app/reference/system-tables/view_refreshes,matched,b66716f71c70efe5,true,b66716f71c70efe5,2026-05-08T21:00:49+00:00,false
-/operations/system-tables/warnings,docs/operations/system-tables/warnings.md,reference/system-tables/warnings.mdx,https://clickhouse.com/docs/operations/system-tables/warnings,https://private-7c7dfe99.mintlify.app/reference/system-tables/warnings,matched,4ca12d45f778f2dd,true,4ca12d45f778f2dd,2026-05-08T21:00:49+00:00,false
-/operations/system-tables/workloads,docs/operations/system-tables/workloads.md,reference/system-tables/workloads.mdx,https://clickhouse.com/docs/operations/system-tables/workloads,https://private-7c7dfe99.mintlify.app/reference/system-tables/workloads,matched,53709c958ad3629b,true,53709c958ad3629b,2026-05-08T21:00:49+00:00,false
-/operations/system-tables/zeros,docs/operations/system-tables/zeros.md,reference/system-tables/zeros.mdx,https://clickhouse.com/docs/operations/system-tables/zeros,https://private-7c7dfe99.mintlify.app/reference/system-tables/zeros,matched,c97ffc28ac196b6f,true,c97ffc28ac196b6f,2026-05-08T21:00:50+00:00,false
-/operations/system-tables/zeros_mt,docs/operations/system-tables/zeros_mt.md,reference/system-tables/zeros_mt.mdx,https://clickhouse.com/docs/operations/system-tables/zeros_mt,https://private-7c7dfe99.mintlify.app/reference/system-tables/zeros_mt,matched,f709df8aa2bea480,true,f709df8aa2bea480,2026-05-08T21:00:50+00:00,false
-/operations/system-tables/zookeeper,docs/operations/system-tables/zookeeper.md,reference/system-tables/zookeeper.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper,https://private-7c7dfe99.mintlify.app/reference/system-tables/zookeeper,matched,8450f27e685917ef,true,8450f27e685917ef,2026-05-08T21:00:50+00:00,false
-/operations/system-tables/zookeeper_connection,docs/operations/system-tables/zookeeper_connection.md,reference/system-tables/zookeeper_connection.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_connection,https://private-7c7dfe99.mintlify.app/reference/system-tables/zookeeper_connection,matched,b9e9457ffdd3c09e,true,b9e9457ffdd3c09e,2026-05-08T21:00:50+00:00,false
-/operations/system-tables/zookeeper_connection_log,docs/operations/system-tables/zookeeper_connection_log.md,reference/system-tables/zookeeper_connection_log.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_connection_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/zookeeper_connection_log,matched,bdab459af8810550,true,bdab459af8810550,2026-05-13T13:16:51+00:00,false
-/operations/system-tables/zookeeper_info,docs/operations/system-tables/zookeeper_info.md,reference/system-tables/zookeeper_info.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_info,https://private-7c7dfe99.mintlify.app/reference/system-tables/zookeeper_info,matched,71cb3c42bf1acccf,true,71cb3c42bf1acccf,2026-05-08T21:00:51+00:00,false
-/operations/system-tables/zookeeper_log,docs/operations/system-tables/zookeeper_log.md,reference/system-tables/zookeeper_log.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_log,https://private-7c7dfe99.mintlify.app/reference/system-tables/zookeeper_log,matched,4c97301867745792,true,4c97301867745792,2026-05-19T11:08:53+00:00,false
-/operations/system-tables/zookeeper_watches,docs/operations/system-tables/zookeeper_watches.md,reference/system-tables/zookeeper_watches.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_watches,https://private-7c7dfe99.mintlify.app/reference/system-tables/zookeeper_watches,matched,55bceb25398b0ba4,true,55bceb25398b0ba4,2026-05-07T14:49:41+00:00,false
-/operations/tips,docs/operations/tips.md,guides/oss/best-practices/tips.mdx,https://clickhouse.com/docs/operations/tips,https://private-7c7dfe99.mintlify.app/guides/oss/best-practices/tips,matched,5994e62267d818a6,true,5994e62267d818a6,2026-05-08T09:09:20+00:00,false
-/operations/update,docs/operations/update.md,guides/oss/update.mdx,https://clickhouse.com/docs/operations/update,https://private-7c7dfe99.mintlify.app/guides/oss/update,matched,3ad40142a5980106,true,3ad40142a5980106,2026-05-08T09:09:20+00:00,false
-/operations/userspace-page-cache,docs/operations/userspace-page-cache.md,concepts/features/performance/caches/userspace-page-cache.mdx,https://clickhouse.com/docs/operations/userspace-page-cache,https://private-7c7dfe99.mintlify.app/concepts/features/performance/caches/userspace-page-cache,matched,f8ca381cc071560d,true,ea6fc6dcc9635bc1,2026-05-08T09:09:20+00:00,false
-/operations/utilities/,docs/operations/utilities/index.md,concepts/features/tools-and-utilities/index.mdx,https://clickhouse.com/docs/operations/utilities/,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities,matched,139b82d21c5fea2d,true,139b82d21c5fea2d,2026-05-08T09:09:20+00:00,false
-/operations/utilities/backupview,docs/operations/utilities/backupview.md,concepts/features/tools-and-utilities/backupview.mdx,https://clickhouse.com/docs/operations/utilities/backupview,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/backupview,matched,76f60a7add5869d9,true,76f60a7add5869d9,2026-05-19T11:08:53+00:00,false
-/operations/utilities/clickhouse-benchmark,docs/operations/utilities/clickhouse-benchmark.md,concepts/features/tools-and-utilities/clickhouse-benchmark.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-benchmark,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-benchmark,matched,b64e050ba49bfc55,true,a600c7b329322e5b,2026-05-07T14:49:41+00:00,false
-/operations/utilities/clickhouse-compressor,docs/operations/utilities/clickhouse-compressor.md,concepts/features/tools-and-utilities/clickhouse-compressor.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-compressor,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-compressor,matched,e1d20246377ea770,false,,,false
-/operations/utilities/clickhouse-disks,docs/operations/utilities/clickhouse-disks.md,concepts/features/tools-and-utilities/clickhouse-disks.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-disks,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-disks,matched,5cda23056924a385,true,39a62a98184d3c05,2026-05-07T14:49:41+00:00,false
-/operations/utilities/clickhouse-format,docs/operations/utilities/clickhouse-format.md,concepts/features/tools-and-utilities/clickhouse-format.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-format,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-format,matched,a84351289ccbef46,true,a84351289ccbef46,2026-05-19T11:08:53+00:00,false
-/operations/utilities/clickhouse-keeper-client,docs/operations/utilities/clickhouse-keeper-client.md,concepts/features/tools-and-utilities/clickhouse-keeper-client.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-keeper-client,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-keeper-client,matched,dc02ae2c6ced91d3,true,a09632bedf043e16,2026-05-07T14:49:41+00:00,false
-/operations/utilities/clickhouse-keeper-http-api,docs/operations/utilities/clickhouse-keeper-http-api.md,concepts/features/tools-and-utilities/clickhouse-keeper-http-api.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-keeper-http-api,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-keeper-http-api,matched,d6935497cb291c4b,true,149558e56598d90d,2026-05-07T14:49:41+00:00,false
-/operations/utilities/clickhouse-local,docs/operations/utilities/clickhouse-local.md,concepts/features/tools-and-utilities/clickhouse-local.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-local,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-local,matched,ec740cea7203f856,true,ec740cea7203f856,2026-05-19T11:08:53+00:00,false
-/operations/utilities/clickhouse-obfuscator,docs/operations/utilities/clickhouse-obfuscator.md,concepts/features/tools-and-utilities/clickhouse-obfuscator.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-obfuscator,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/clickhouse-obfuscator,matched,a1465aea8fd40bd2,false,,,false
-/operations/utilities/odbc-bridge,docs/operations/utilities/odbc-bridge.md,concepts/features/tools-and-utilities/odbc-bridge.mdx,https://clickhouse.com/docs/operations/utilities/odbc-bridge,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/odbc-bridge,matched,85d971b7567c96e5,false,,,false
-/operations/utilities/static-files-disk-uploader,docs/tools-and-utilities/static-files-disk-uploader.md,concepts/features/tools-and-utilities/static-files-disk-uploader.mdx,https://clickhouse.com/docs/operations/utilities/static-files-disk-uploader,https://private-7c7dfe99.mintlify.app/concepts/features/tools-and-utilities/static-files-disk-uploader,matched,419f3e9045c39dd2,true,74f0f1b06ffe8edd,2026-05-07T14:49:41+00:00,false
-/operations/workload-scheduling,docs/operations/workload-scheduling.md,concepts/features/configuration/server-config/workload-scheduling.mdx,https://clickhouse.com/docs/operations/workload-scheduling,https://private-7c7dfe99.mintlify.app/concepts/features/configuration/server-config/workload-scheduling,matched,8032e74c1af9f4e6,true,8032e74c1af9f4e6,2026-05-08T09:09:20+00:00,false
-/optimize/asynchronous-inserts,docs/guides/best-practices/asyncinserts.md,concepts/operations/insert/asyncinserts.mdx,https://clickhouse.com/docs/optimize/asynchronous-inserts,https://private-7c7dfe99.mintlify.app/concepts/operations/insert/asyncinserts,matched,090826f9f6e052fc,true,090826f9f6e052fc,2026-05-08T09:09:20+00:00,false
+/managing-data/core-concepts,docs/managing-data/core-concepts/index.md,core/concepts/core-concepts/index.mdx,https://clickhouse.com/docs/managing-data/core-concepts,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/index,matched,490ca15b90dd7fad,true,490ca15b90dd7fad,2026-05-08T18:23:34+00:00,false
+/managing-data/delete_mutations,docs/managing-data/deleting-data/delete_mutations.mdx,core/concepts/features/operations/delete/delete-mutations.mdx,https://clickhouse.com/docs/managing-data/delete_mutations,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/delete/delete-mutations,matched,9a516f2e140076fd,true,9a516f2e140076fd,2026-05-09T17:02:01+00:00,false
+/managing-data/deleting-data/overview,docs/managing-data/deleting-data/index.md,core/concepts/features/operations/delete/index.mdx,https://clickhouse.com/docs/managing-data/deleting-data/overview,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/delete/index,matched,c07ea006ce7ea6ab,true,c07ea006ce7ea6ab,2026-05-09T17:51:26+00:00,false
+/managing-data/drop_partition,docs/managing-data/drop_partition.mdx,core/concepts/features/operations/delete/drop-partition.mdx,https://clickhouse.com/docs/managing-data/drop_partition,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/delete/drop-partition,matched,1c57c679e355f3f9,true,1c57c679e355f3f9,2026-05-07T14:49:41+00:00,false
+/managing-data/materialized-views-versus-projections,docs/data-modeling/projections/2_materialized-views-versus-projections.md,core/concepts/features/projections/materialized-views-versus-projections.mdx,https://clickhouse.com/docs/managing-data/materialized-views-versus-projections,https://private-7c7dfe99.mintlify.app/core/concepts/features/projections/materialized-views-versus-projections,matched,ecec14a993aa486e,true,ecec14a993aa486e,2026-05-08T09:09:20+00:00,false
+/managing-data/truncate,docs/managing-data/truncate.md,core/concepts/features/operations/delete/truncate.mdx,https://clickhouse.com/docs/managing-data/truncate,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/delete/truncate,matched,85c977ff2c68bbc2,true,85c977ff2c68bbc2,2026-05-09T17:42:52+00:00,false
+/materialized-view/incremental-materialized-view,docs/materialized-view/incremental-materialized-view.md,core/concepts/features/materialized-views/incremental-materialized-view.mdx,https://clickhouse.com/docs/materialized-view/incremental-materialized-view,https://private-7c7dfe99.mintlify.app/core/concepts/features/materialized-views/incremental-materialized-view,matched,b8d188b15cf0f6d6,true,b8d188b15cf0f6d6,2026-05-08T09:09:20+00:00,false
+/materialized-view/refreshable-materialized-view,docs/materialized-view/refreshable-materialized-view.md,core/concepts/features/materialized-views/refreshable-materialized-view.mdx,https://clickhouse.com/docs/materialized-view/refreshable-materialized-view,https://private-7c7dfe99.mintlify.app/core/concepts/features/materialized-views/refreshable-materialized-view,matched,c2f2accf06323932,true,c2f2accf06323932,2026-05-08T12:19:52+00:00,false
+/materialized-views,docs/materialized-view/index.md,core/concepts/features/materialized-views/index.mdx,https://clickhouse.com/docs/materialized-views,https://private-7c7dfe99.mintlify.app/core/concepts/features/materialized-views/index,matched,15213eb6a61085ad,true,15213eb6a61085ad,2026-05-08T12:19:52+00:00,false
+/merges,docs/managing-data/core-concepts/merges.mdx,core/concepts/core-concepts/merges.mdx,https://clickhouse.com/docs/merges,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/merges,matched,23cd1a4eacc6d35e,true,23cd1a4eacc6d35e,2026-05-08T09:09:20+00:00,false
+/migrations/bigquery,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/index.md,core/get-started/setup/migration-guides/bigquery/index.mdx,https://clickhouse.com/docs/migrations/bigquery,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/bigquery/index,matched,6e9ef6dfd8e741fb,true,524a54c710aefcd2,2026-05-13T13:25:34+00:00,false
+/migrations/bigquery/biquery-vs-clickhouse-cloud,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/01_overview.md,core/get-started/setup/migration-guides/bigquery/overview.mdx,https://clickhouse.com/docs/migrations/bigquery/biquery-vs-clickhouse-cloud,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/bigquery/overview,matched,dd35989fc89db44d,true,dd35989fc89db44d,2026-05-19T11:08:53+00:00,false
+/migrations/bigquery/loading-data,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/03_loading-data.md,core/get-started/setup/migration-guides/bigquery/loading-data.mdx,https://clickhouse.com/docs/migrations/bigquery/loading-data,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/bigquery/loading-data,matched,db99c807a578b973,true,db99c807a578b973,2026-05-08T09:09:20+00:00,false
+/migrations/bigquery/migrating-to-clickhouse-cloud,docs/cloud/onboard/02_migrate/01_migration_guides/03_bigquery/02_migrating-to-clickhouse-cloud.md,core/get-started/setup/migration-guides/bigquery/migrating-to-clickhouse-cloud.mdx,https://clickhouse.com/docs/migrations/bigquery/migrating-to-clickhouse-cloud,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/bigquery/migrating-to-clickhouse-cloud,matched,acfd8dc42b8be408,true,acfd8dc42b8be408,2026-05-13T15:43:26+00:00,false
+/migrations/elastic-overview,docs/cloud/onboard/02_migrate/01_migration_guides/05_elastic/01_overview.md,core/get-started/setup/migration-guides/elastic/overview.mdx,https://clickhouse.com/docs/migrations/elastic-overview,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/elastic/overview,matched,573b1095d6f3b021,true,573b1095d6f3b021,2026-05-13T13:16:51+00:00,false
+/migrations/postgresql,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/index.md,core/get-started/setup/migration-guides/postgres/index.mdx,https://clickhouse.com/docs/migrations/postgresql,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/postgres/index,matched,1fc6d064882a931f,true,1fc6d064882a931f,2026-05-09T10:08:44+00:00,false
+/migrations/postgresql/appendix,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/appendix.md,core/get-started/setup/migration-guides/postgres/appendix.mdx,https://clickhouse.com/docs/migrations/postgresql/appendix,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/postgres/appendix,matched,f7211aaf84e07266,true,f7211aaf84e07266,2026-05-08T09:09:20+00:00,false
+/migrations/postgresql/data-modeling-techniques,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/migration_guide/03_migration_guide_part3.md,core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3.mdx,https://clickhouse.com/docs/migrations/postgresql/data-modeling-techniques,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3,matched,c30cdf3133afce5d,true,c30cdf3133afce5d,2026-05-08T09:09:20+00:00,false
+/migrations/postgresql/dataset,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/migration_guide/01_migration_guide_part1.md,core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part1.mdx,https://clickhouse.com/docs/migrations/postgresql/dataset,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part1,matched,c3c60d781f027a81,true,c3c60d781f027a81,2026-05-08T09:09:20+00:00,false
+/migrations/postgresql/overview,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/01_overview.md,core/get-started/setup/migration-guides/postgres/overview.mdx,https://clickhouse.com/docs/migrations/postgresql/overview,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/postgres/overview,matched,921719ea95cc7747,true,921719ea95cc7747,2026-05-13T13:25:35+00:00,false
+/migrations/postgresql/rewriting-queries,docs/cloud/onboard/02_migrate/01_migration_guides/02_postgres/migration_guide/02_migration_guide_part2.md,core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part2.mdx,https://clickhouse.com/docs/migrations/postgresql/rewriting-queries,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part2,matched,dea71bd599e21414,true,dea71bd599e21414,2026-05-19T11:08:53+00:00,false
+/migrations/redshift-overview,docs/cloud/onboard/02_migrate/01_migration_guides/06_redshift/01_overview.md,core/get-started/setup/migration-guides/redshift/overview.mdx,https://clickhouse.com/docs/migrations/redshift-overview,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/redshift/overview,matched,d531bf94e01014ae,true,d531bf94e01014ae,2026-05-13T13:16:51+00:00,false
+/migrations/redshift/migration-guide,docs/cloud/onboard/02_migrate/01_migration_guides/06_redshift/02_migration_guide.md,core/get-started/setup/migration-guides/redshift/migration-guide.mdx,https://clickhouse.com/docs/migrations/redshift/migration-guide,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/redshift/migration-guide,matched,9b17a57ce389bca0,true,9b17a57ce389bca0,2026-05-08T11:33:34+00:00,false
+/migrations/redshift/sql-translation-reference,docs/cloud/onboard/02_migrate/01_migration_guides/06_redshift/03_sql_translation_reference.md,core/get-started/setup/migration-guides/redshift/sql-translation-reference.mdx,https://clickhouse.com/docs/migrations/redshift/sql-translation-reference,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/redshift/sql-translation-reference,matched,d24fd1be1d55216c,true,d24fd1be1d55216c,2026-05-13T13:16:51+00:00,false
+/migrations/snowflake,docs/cloud/onboard/02_migrate/01_migration_guides/04_snowflake/02_migration_guide.md,core/get-started/setup/migration-guides/snowflake/migration-guide.mdx,https://clickhouse.com/docs/migrations/snowflake,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/snowflake/migration-guide,matched,c650d56bdfeafa74,true,c650d56bdfeafa74,2026-05-08T09:09:20+00:00,false
+/migrations/snowflake-overview,docs/cloud/onboard/02_migrate/01_migration_guides/04_snowflake/01_overview.md,core/get-started/setup/migration-guides/snowflake/overview.mdx,https://clickhouse.com/docs/migrations/snowflake-overview,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/snowflake/overview,matched,5e48b24459dae079,true,5e48b24459dae079,2026-05-08T09:09:20+00:00,false
+/migrations/snowflake-translation-reference,docs/cloud/onboard/02_migrate/01_migration_guides/04_snowflake/03_sql_translation_reference.md,core/get-started/setup/migration-guides/snowflake/sql-translation-reference.mdx,https://clickhouse.com/docs/migrations/snowflake-translation-reference,https://private-7c7dfe99.mintlify.app/core/get-started/setup/migration-guides/snowflake/sql-translation-reference,matched,bddeed8dc9dd6960,true,bddeed8dc9dd6960,2026-05-13T13:16:51+00:00,false
+/native-protocol/basics,docs/native-protocol/basics.md,resources/develop-contribute/native-protocol/basics.mdx,https://clickhouse.com/docs/native-protocol/basics,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/native-protocol/basics,matched,6c83b8764e912961,true,63c7afb1ad7b7072,2026-05-08T09:09:20+00:00,false
+/native-protocol/client,docs/native-protocol/client.md,resources/develop-contribute/native-protocol/client.mdx,https://clickhouse.com/docs/native-protocol/client,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/native-protocol/client,matched,d284978f67c3edba,true,d284978f67c3edba,2026-05-13T13:16:51+00:00,false
+/native-protocol/columns,docs/native-protocol/columns.md,resources/develop-contribute/native-protocol/columns.mdx,https://clickhouse.com/docs/native-protocol/columns,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/native-protocol/columns,matched,6ac09babfb2345ea,true,d125f35b59774466,2026-05-08T09:09:20+00:00,false
+/native-protocol/hash,docs/native-protocol/hash.md,resources/develop-contribute/native-protocol/hash.mdx,https://clickhouse.com/docs/native-protocol/hash,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/native-protocol/hash,matched,6458e0d78f3458b5,true,11ca88940183f46c,2026-05-08T09:09:20+00:00,false
+/native-protocol/server,docs/native-protocol/server.md,resources/develop-contribute/native-protocol/server.mdx,https://clickhouse.com/docs/native-protocol/server,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/native-protocol/server,matched,5749421cd457053a,true,b1a72f898456e3c0,2026-05-09T09:39:38+00:00,false
+/observability/demo-application,docs/use-cases/observability/build-your-own/demo-application.md,core/guides/use-cases/observability/build-your-own/demo-application.mdx,https://clickhouse.com/docs/observability/demo-application,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/build-your-own/demo-application,matched,1f0a4b693ba5e0ec,false,,,false
+/observability/grafana,docs/use-cases/observability/build-your-own/grafana.md,core/guides/use-cases/observability/build-your-own/grafana.mdx,https://clickhouse.com/docs/observability/grafana,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/build-your-own/grafana,matched,6dc8fd3088ed4f08,true,6dc8fd3088ed4f08,2026-05-08T09:09:20+00:00,false
+/observability/integrating-opentelemetry,docs/use-cases/observability/build-your-own/integrating-opentelemetry.md,core/guides/use-cases/observability/build-your-own/integrating-opentelemetry.mdx,https://clickhouse.com/docs/observability/integrating-opentelemetry,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/build-your-own/integrating-opentelemetry,matched,5165c90c3e181d42,true,5165c90c3e181d42,2026-05-08T09:09:20+00:00,false
+/observability/managing-data,docs/use-cases/observability/build-your-own/managing-data.md,core/guides/use-cases/observability/build-your-own/managing-data.mdx,https://clickhouse.com/docs/observability/managing-data,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/build-your-own/managing-data,matched,4e906e75b0ab47ca,true,4e906e75b0ab47ca,2026-05-08T09:09:20+00:00,false
+/operations/access-rights,docs/guides/sre/user-management/index.md,core/concepts/features/security/access-rights.mdx,https://clickhouse.com/docs/operations/access-rights,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/access-rights,matched,c352e5c6a23a8793,true,c352e5c6a23a8793,2026-05-13T13:16:51+00:00,false
+/operations/allocation-profiling,docs/operations/allocation-profiling.md,core/concepts/features/performance/allocation-profiling.mdx,https://clickhouse.com/docs/operations/allocation-profiling,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/allocation-profiling,matched,aeeb6ec3bd877a51,true,aeeb6ec3bd877a51,2026-05-08T09:09:20+00:00,false
+/operations/allocation-profiling-old,docs/operations/allocation-profiling-old.md,core/concepts/features/performance/allocation-profiling-old.mdx,https://clickhouse.com/docs/operations/allocation-profiling-old,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/allocation-profiling-old,matched,09dbdbce2cf9b2dd,true,09dbdbce2cf9b2dd,2026-05-08T09:09:20+00:00,false
+/operations/analyzer,docs/operations/analyzer.md,core/guides/clickhouse/performance-and-monitoring/analyzer.mdx,https://clickhouse.com/docs/operations/analyzer,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/performance-and-monitoring/analyzer,matched,244df0221ad8f2c7,true,30d060b9f19f6985,2026-05-08T09:09:20+00:00,false
+/operations/backup/alternative_methods,docs/operations_/backup_restore/04_alternative_methods.md,core/concepts/features/backup-restore/alternative-methods.mdx,https://clickhouse.com/docs/operations/backup/alternative_methods,https://private-7c7dfe99.mintlify.app/core/concepts/features/backup-restore/alternative-methods,matched,6f1567f45a37d48d,true,6f1567f45a37d48d,2026-05-13T13:16:51+00:00,false
+/operations/backup/azure,docs/operations_/backup_restore/03_azure_blob_storage.md,core/concepts/features/backup-restore/azure-blob-storage.mdx,https://clickhouse.com/docs/operations/backup/azure,https://private-7c7dfe99.mintlify.app/core/concepts/features/backup-restore/azure-blob-storage,matched,a014826091cc7de6,true,a014826091cc7de6,2026-05-08T09:09:20+00:00,false
+/operations/backup/disk,docs/operations_/backup_restore/01_local_disk.md,core/concepts/features/backup-restore/local-disk.mdx,https://clickhouse.com/docs/operations/backup/disk,https://private-7c7dfe99.mintlify.app/core/concepts/features/backup-restore/local-disk,matched,c4dd19b827ee5be4,true,c4dd19b827ee5be4,2026-05-13T15:43:24+00:00,false
+/operations/backup/overview,docs/operations_/backup_restore/00_overview.md,core/concepts/features/backup-restore/overview.mdx,https://clickhouse.com/docs/operations/backup/overview,https://private-7c7dfe99.mintlify.app/core/concepts/features/backup-restore/overview,matched,cf2f951338bcd3c1,true,cf2f951338bcd3c1,2026-05-13T15:43:24+00:00,false
+/operations/backup/s3_endpoint,docs/operations_/backup_restore/02_s3_endpoint.md,core/concepts/features/backup-restore/s3-endpoint.mdx,https://clickhouse.com/docs/operations/backup/s3_endpoint,https://private-7c7dfe99.mintlify.app/core/concepts/features/backup-restore/s3-endpoint,matched,c3ff551589fda47e,true,c3ff551589fda47e,2026-05-09T17:02:01+00:00,false
+/operations/backup/snapshot,docs/operations_/backup_restore/05_snapshot.md,core/concepts/features/backup-restore/snapshot.mdx,https://clickhouse.com/docs/operations/backup/snapshot,https://private-7c7dfe99.mintlify.app/core/concepts/features/backup-restore/snapshot,matched,26a73917b328cf38,true,26a73917b328cf38,2026-05-13T13:16:51+00:00,false
+/operations/caches,docs/operations/caches.md,core/concepts/features/performance/caches/caches.mdx,https://clickhouse.com/docs/operations/caches,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/caches/caches,matched,55fdfbf942985753,true,e18f1ea2efc46626,2026-05-07T14:49:41+00:00,false
+/operations/cluster-discovery,docs/operations/cluster-discovery.md,core/guides/oss/deployment-and-scaling/cluster-discovery.mdx,https://clickhouse.com/docs/operations/cluster-discovery,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/cluster-discovery,matched,bfb072f645be9235,true,343ceb09449e6436,2026-05-08T09:09:20+00:00,false
+/operations/configuration-files,docs/operations/configuration-files.md,core/concepts/features/configuration/server-config/configuration-files.mdx,https://clickhouse.com/docs/operations/configuration-files,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/server-config/configuration-files,matched,9e71d3c2fa185cdf,true,9e71d3c2fa185cdf,2026-05-08T09:09:20+00:00,false
+/operations/external-authenticators/,docs/operations/external-authenticators/index.md,core/concepts/features/security/external-authenticators/index.mdx,https://clickhouse.com/docs/operations/external-authenticators/,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/external-authenticators/index,matched,16c47449f5275998,true,16c47449f5275998,2026-05-08T09:09:20+00:00,false
+/operations/external-authenticators/http,docs/operations/external-authenticators/http.md,core/concepts/features/security/external-authenticators/http.mdx,https://clickhouse.com/docs/operations/external-authenticators/http,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/external-authenticators/http,matched,04f510d66c9b376c,true,04f510d66c9b376c,2026-05-08T09:09:20+00:00,false
+/operations/external-authenticators/kerberos,docs/operations/external-authenticators/kerberos.md,core/concepts/features/security/external-authenticators/kerberos.mdx,https://clickhouse.com/docs/operations/external-authenticators/kerberos,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/external-authenticators/kerberos,matched,b7a3734788840b66,true,b7a3734788840b66,2026-05-08T09:09:20+00:00,false
+/operations/external-authenticators/ldap,docs/operations/external-authenticators/ldap.md,core/concepts/features/security/external-authenticators/ldap.mdx,https://clickhouse.com/docs/operations/external-authenticators/ldap,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/external-authenticators/ldap,matched,9449246250219a1a,true,9449246250219a1a,2026-05-19T11:08:53+00:00,false
+/operations/external-authenticators/ssl-x509,docs/operations/external-authenticators/ssl-x509.md,core/concepts/features/security/external-authenticators/ssl-x509.mdx,https://clickhouse.com/docs/operations/external-authenticators/ssl-x509,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/external-authenticators/ssl-x509,matched,947a7d558e471c72,true,947a7d558e471c72,2026-05-08T09:09:20+00:00,false
+/operations/monitoring,docs/operations/monitoring.md,core/guides/oss/deployment-and-scaling/monitoring/monitoring.mdx,https://clickhouse.com/docs/operations/monitoring,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/monitoring/monitoring,matched,ee6d9f1af26926d6,true,ee6d9f1af26926d6,2026-05-08T09:09:20+00:00,false
+/operations/named-collections,docs/operations/named-collections.md,core/concepts/features/configuration/server-config/named-collections.mdx,https://clickhouse.com/docs/operations/named-collections,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/server-config/named-collections,matched,8dc09979b83996cf,true,8dc09979b83996cf,2026-05-13T15:43:24+00:00,false
+/operations/opentelemetry,docs/operations/opentelemetry.md,core/guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx,https://clickhouse.com/docs/operations/opentelemetry,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/monitoring/opentelemetry,matched,57b2ec3c9af7907d,true,57b2ec3c9af7907d,2026-05-08T09:09:20+00:00,false
+/operations/optimizing-performance/profile-guided-optimization,docs/operations/optimizing-performance/profile-guided-optimization.md,resources/develop-contribute/contribute/profile-guided-optimization.mdx,https://clickhouse.com/docs/operations/optimizing-performance/profile-guided-optimization,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/contribute/profile-guided-optimization,matched,a06cd352188c57c4,true,a06cd352188c57c4,2026-05-13T14:36:45+00:00,false
+/operations/optimizing-performance/sampling-query-profiler,docs/operations/optimizing-performance/sampling-query-profiler.md,core/concepts/features/performance/troubleshoot/sampling-query-profiler.mdx,https://clickhouse.com/docs/operations/optimizing-performance/sampling-query-profiler,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/troubleshoot/sampling-query-profiler,matched,331303dc6c9ac8ef,true,331303dc6c9ac8ef,2026-05-13T14:36:43+00:00,false
+/operations/overview,docs/guides/best-practices/index.md,core/concepts/features/performance/index.mdx,https://clickhouse.com/docs/operations/overview,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/index,matched,63df4b0ede3f1809,true,63df4b0ede3f1809,2026-05-08T11:28:15+00:00,false
+/operations/performance-test,docs/operations/performance-test.md,core/concepts/features/performance/troubleshoot/performance-test.mdx,https://clickhouse.com/docs/operations/performance-test,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/troubleshoot/performance-test,matched,9e5d4bd1e5379d30,true,9e5d4bd1e5379d30,2026-05-08T09:09:20+00:00,false
+/operations/query-cache,docs/operations/query-cache.md,core/concepts/features/performance/caches/query-cache.mdx,https://clickhouse.com/docs/operations/query-cache,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/caches/query-cache,matched,e8a08aebb039a807,true,7867cf786d57b72d,2026-05-09T11:14:51+00:00,false
+/operations/query-condition-cache,docs/operations/query-condition-cache.md,core/concepts/features/performance/caches/query-condition-cache.mdx,https://clickhouse.com/docs/operations/query-condition-cache,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/caches/query-condition-cache,matched,01b02051819a2cf0,true,f67e1d9bf36c40cc,2026-05-09T10:26:02+00:00,false
+/operations/quotas,docs/operations/quotas.md,core/concepts/features/configuration/server-config/quotas.mdx,https://clickhouse.com/docs/operations/quotas,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/server-config/quotas,matched,91a218790dd605e3,true,91a218790dd605e3,2026-05-08T09:09:20+00:00,false
+/operations/server-configuration-parameters/settings,docs/operations/server-configuration-parameters/settings.md,core/reference/settings/server-settings/settings.mdx,https://clickhouse.com/docs/operations/server-configuration-parameters/settings,https://private-7c7dfe99.mintlify.app/core/reference/settings/server-settings/settings,matched,89179d24153a293d,true,89179d24153a293d,2026-05-19T11:08:53+00:00,false
+/operations/settings/,docs/operations/settings/index.md,core/reference/settings/index.mdx,https://clickhouse.com/docs/operations/settings/,https://private-7c7dfe99.mintlify.app/core/reference/settings/index,matched,027d2488fe130352,true,027d2488fe130352,2026-05-08T21:00:24+00:00,false
+/operations/settings/composable-protocols,docs/operations/settings/composable-protocols.md,core/concepts/features/configuration/server-config/composable-protocols.mdx,https://clickhouse.com/docs/operations/settings/composable-protocols,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/server-config/composable-protocols,matched,a959ce46b6a2f90d,true,fac105353a202b3d,2026-05-08T09:09:20+00:00,false
+/operations/settings/constraints-on-settings,docs/operations/settings/constraints-on-settings.md,core/concepts/features/configuration/settings/constraints-on-settings.mdx,https://clickhouse.com/docs/operations/settings/constraints-on-settings,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/constraints-on-settings,matched,b657f299aea82d59,true,8a07567dde304465,2026-05-08T09:09:20+00:00,false
+/operations/settings/formats,docs/operations/settings/settings-formats.md,core/reference/settings/formats.mdx,https://clickhouse.com/docs/operations/settings/formats,https://private-7c7dfe99.mintlify.app/core/reference/settings/formats,matched,8333038917eb65c6,true,8333038917eb65c6,2026-05-19T11:08:53+00:00,false
+/operations/settings/memory-overcommit,docs/operations/settings/memory-overcommit.md,core/concepts/features/configuration/settings/memory-overcommit.mdx,https://clickhouse.com/docs/operations/settings/memory-overcommit,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/memory-overcommit,matched,0a243f5510171522,true,56a8436026a55bc5,2026-05-07T14:49:41+00:00,false
+/operations/settings/merge-tree-settings,docs/operations/settings/merge-tree-settings.md,core/reference/settings/merge-tree-settings.mdx,https://clickhouse.com/docs/operations/settings/merge-tree-settings,https://private-7c7dfe99.mintlify.app/core/reference/settings/merge-tree-settings,matched,d52091bc92ce17c6,true,d52091bc92ce17c6,2026-05-19T11:08:53+00:00,false
+/operations/settings/overview,docs/operations/settings/overview.md,core/concepts/features/configuration/settings/overview.mdx,https://clickhouse.com/docs/operations/settings/overview,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/overview,matched,756466e653966891,true,d67f616f50eb112f,2026-05-08T09:09:20+00:00,false
+/operations/settings/permissions-for-queries,docs/operations/settings/permissions-for-queries.md,core/concepts/features/configuration/settings/permissions-for-queries.mdx,https://clickhouse.com/docs/operations/settings/permissions-for-queries,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/permissions-for-queries,matched,89955380f36ffec5,true,b20d70e81bda348f,2026-05-09T11:14:51+00:00,false
+/operations/settings/query-complexity,docs/operations/settings/query-complexity.md,core/concepts/features/configuration/settings/query-complexity.mdx,https://clickhouse.com/docs/operations/settings/query-complexity,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/query-complexity,matched,cdc147d9f7450ac5,true,a3b2b2da1705264e,2026-05-08T09:09:20+00:00,false
+/operations/settings/query-level,docs/operations/settings/settings-query-level.md,core/concepts/features/configuration/settings/settings-query-level.mdx,https://clickhouse.com/docs/operations/settings/query-level,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/settings-query-level,matched,03f99ff0a17572c9,true,03f99ff0a17572c9,2026-05-13T15:43:24+00:00,false
+/operations/settings/server-overload,docs/operations/settings/server-overload.md,core/concepts/features/configuration/settings/server-overload.mdx,https://clickhouse.com/docs/operations/settings/server-overload,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/server-overload,matched,f021b72d2f0dadf4,true,62c5c6e1debf8e9f,2026-05-07T14:49:41+00:00,false
+/operations/settings/settings,docs/operations/settings/settings.md,core/reference/settings/session-settings.mdx,https://clickhouse.com/docs/operations/settings/settings,https://private-7c7dfe99.mintlify.app/core/reference/settings/session-settings,matched,ea427818c0ffa5b8,true,ea427818c0ffa5b8,2026-05-21T07:18:57+00:00,false
+/operations/settings/settings-profiles,docs/operations/settings/settings-profiles.md,core/concepts/features/configuration/settings/settings-profiles.mdx,https://clickhouse.com/docs/operations/settings/settings-profiles,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/settings-profiles,matched,d74579c90b16c65e,true,d921a22cfbb36622,2026-05-08T09:09:20+00:00,false
+/operations/settings/settings-users,docs/operations/settings/settings-users.md,core/concepts/features/configuration/settings/settings-users.mdx,https://clickhouse.com/docs/operations/settings/settings-users,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/settings-users,matched,6883ddb871f8a016,true,75b7bfaa451e0787,2026-05-08T09:09:20+00:00,false
+/operations/settings/tcp-connection-limits,docs/operations/settings/tcp-connection-limits.md,core/concepts/features/configuration/settings/tcp-connection-limits.mdx,https://clickhouse.com/docs/operations/settings/tcp-connection-limits,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/settings/tcp-connection-limits,matched,8e9898ab564cb4b6,true,27fdf16a587cb870,2026-05-07T14:49:41+00:00,false
+/operations/ssl-zookeeper,docs/operations/ssl-zookeeper.md,core/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper.mdx,https://clickhouse.com/docs/operations/ssl-zookeeper,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper,matched,315bad9ae2949888,true,9a1b6a07af2168ed,2026-05-08T09:09:20+00:00,false
+/operations/startup-scripts,docs/operations/startup-scripts.md,core/concepts/features/configuration/server-config/startup-scripts.mdx,https://clickhouse.com/docs/operations/startup-scripts,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/server-config/startup-scripts,matched,c7b28f8f3c2d8032,true,4866f2bf5a753196,2026-05-08T09:09:20+00:00,false
+/operations/storing-data,docs/operations/storing-data.md,core/concepts/features/configuration/server-config/storing-data.mdx,https://clickhouse.com/docs/operations/storing-data,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/server-config/storing-data,matched,ba0615ec15899614,true,ba0615ec15899614,2026-05-13T15:43:24+00:00,false
+/operations/system-tables/,docs/operations/system-tables/index.md,core/reference/system-tables/index.mdx,https://clickhouse.com/docs/operations/system-tables/,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/index,matched,01004dd20053c0a5,true,01004dd20053c0a5,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/aggregate_function_combinators,docs/operations/system-tables/aggregate_function_combinators.md,core/reference/system-tables/aggregate_function_combinators.mdx,https://clickhouse.com/docs/operations/system-tables/aggregate_function_combinators,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/aggregate_function_combinators,matched,74e843ffb796d988,true,74e843ffb796d988,2026-05-08T21:00:25+00:00,false
+/operations/system-tables/aggregated_zookeeper_log,docs/operations/system-tables/aggregated_zookeeper_log.md,core/reference/system-tables/aggregated_zookeeper_log.mdx,https://clickhouse.com/docs/operations/system-tables/aggregated_zookeeper_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/aggregated_zookeeper_log,matched,c68bf57f9f3d3579,true,c68bf57f9f3d3579,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/asynchronous_insert_log,docs/operations/system-tables/asynchronous_insert_log.md,core/reference/system-tables/asynchronous_insert_log.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_insert_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/asynchronous_insert_log,matched,b7dc3a891bbc2cdc,true,b7dc3a891bbc2cdc,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/asynchronous_inserts,docs/operations/system-tables/asynchronous_inserts.md,core/reference/system-tables/asynchronous_inserts.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_inserts,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/asynchronous_inserts,matched,6160869499ef76dd,true,6160869499ef76dd,2026-05-08T21:00:26+00:00,false
+/operations/system-tables/asynchronous_loader,docs/operations/system-tables/asynchronous_loader.md,core/reference/system-tables/asynchronous_loader.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_loader,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/asynchronous_loader,matched,2974d35942161d69,true,2974d35942161d69,2026-05-08T21:00:26+00:00,false
+/operations/system-tables/asynchronous_metric_log,docs/operations/system-tables/asynchronous_metric_log.md,core/reference/system-tables/asynchronous_metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_metric_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/asynchronous_metric_log,matched,c63b53195c4f4369,true,c63b53195c4f4369,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/asynchronous_metrics,docs/operations/system-tables/asynchronous_metrics.md,core/reference/system-tables/asynchronous_metrics.mdx,https://clickhouse.com/docs/operations/system-tables/asynchronous_metrics,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/asynchronous_metrics,matched,cc0904c2c2f9c5b3,true,cc0904c2c2f9c5b3,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/azure_queue_log,docs/operations/system-tables/azure_queue_log.md,core/reference/system-tables/azure_queue_log.mdx,https://clickhouse.com/docs/operations/system-tables/azure_queue_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/azure_queue_log,matched,6c8baa0a78b5a9f0,true,6c8baa0a78b5a9f0,2026-05-13T13:08:27+00:00,false
+/operations/system-tables/azure_queue_metadata_cache,docs/operations/system-tables/azure_queue_metadata_cache.md,core/reference/system-tables/azure_queue_metadata_cache.mdx,https://clickhouse.com/docs/operations/system-tables/azure_queue_metadata_cache,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/azure_queue_metadata_cache,matched,a1a4f88881741c60,true,a1a4f88881741c60,2026-05-08T21:00:26+00:00,false
+/operations/system-tables/azure_queue_settings,docs/operations/system-tables/azure_queue_settings.md,core/reference/system-tables/azure_queue_settings.mdx,https://clickhouse.com/docs/operations/system-tables/azure_queue_settings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/azure_queue_settings,matched,b47c4addf4ff730f,true,b47c4addf4ff730f,2026-05-08T21:00:26+00:00,false
+/operations/system-tables/background_schedule_pool,docs/operations/system-tables/background_schedule_pool.md,core/reference/system-tables/background_schedule_pool.mdx,https://clickhouse.com/docs/operations/system-tables/background_schedule_pool,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/background_schedule_pool,matched,003f06920ccec6ad,true,003f06920ccec6ad,2026-05-08T21:00:27+00:00,false
+/operations/system-tables/background_schedule_pool_log,docs/operations/system-tables/background_schedule_pool_log.md,core/reference/system-tables/background_schedule_pool_log.mdx,https://clickhouse.com/docs/operations/system-tables/background_schedule_pool_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/background_schedule_pool_log,matched,801268572623f510,true,801268572623f510,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/backup_log,docs/operations/system-tables/backup_log.md,core/reference/system-tables/backup_log.mdx,https://clickhouse.com/docs/operations/system-tables/backup_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/backup_log,matched,23f64f52bedff424,true,23f64f52bedff424,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/backups,docs/operations/system-tables/backups.md,core/reference/system-tables/backups.mdx,https://clickhouse.com/docs/operations/system-tables/backups,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/backups,matched,474096c2d8465fd9,true,474096c2d8465fd9,2026-05-08T21:00:27+00:00,false
+/operations/system-tables/blob_storage_log,docs/operations/system-tables/blob_storage_log.md,core/reference/system-tables/blob_storage_log.mdx,https://clickhouse.com/docs/operations/system-tables/blob_storage_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/blob_storage_log,matched,40e7e7b30c3c4fde,true,40e7e7b30c3c4fde,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/build_options,docs/operations/system-tables/build_options.md,core/reference/system-tables/build_options.mdx,https://clickhouse.com/docs/operations/system-tables/build_options,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/build_options,matched,fb2cc9ed0b52f163,true,fb2cc9ed0b52f163,2026-05-08T21:00:28+00:00,false
+/operations/system-tables/certificates,docs/operations/system-tables/certificates.md,core/reference/system-tables/certificates.mdx,https://clickhouse.com/docs/operations/system-tables/certificates,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/certificates,matched,7dfacd8a49ab3d16,true,7dfacd8a49ab3d16,2026-05-08T21:00:28+00:00,false
+/operations/system-tables/clusters,docs/operations/system-tables/clusters.md,core/reference/system-tables/clusters.mdx,https://clickhouse.com/docs/operations/system-tables/clusters,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/clusters,matched,61e9f75ff22c879e,true,61e9f75ff22c879e,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/codecs,docs/operations/system-tables/codecs.md,core/reference/system-tables/codecs.mdx,https://clickhouse.com/docs/operations/system-tables/codecs,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/codecs,matched,7cf08cdbeb0adcf4,true,7cf08cdbeb0adcf4,2026-05-08T21:00:28+00:00,false
+/operations/system-tables/collations,docs/operations/system-tables/collations.md,core/reference/system-tables/collations.mdx,https://clickhouse.com/docs/operations/system-tables/collations,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/collations,matched,1018414d0db6f58b,true,1018414d0db6f58b,2026-05-08T21:00:28+00:00,false
+/operations/system-tables/columns,docs/operations/system-tables/columns.md,core/reference/system-tables/columns.mdx,https://clickhouse.com/docs/operations/system-tables/columns,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/columns,matched,2c156066c46d67db,true,2c156066c46d67db,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/completions,docs/operations/system-tables/completions.md,core/reference/system-tables/completions.mdx,https://clickhouse.com/docs/operations/system-tables/completions,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/completions,matched,b24edc206695568d,true,b24edc206695568d,2026-05-08T21:00:29+00:00,false
+/operations/system-tables/contributors,docs/operations/system-tables/contributors.md,core/reference/system-tables/contributors.mdx,https://clickhouse.com/docs/operations/system-tables/contributors,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/contributors,matched,ed99fe2f369bdcd6,true,ed99fe2f369bdcd6,2026-05-08T21:00:29+00:00,false
+/operations/system-tables/crash_log,docs/operations/system-tables/crash_log.md,core/reference/system-tables/crash_log.mdx,https://clickhouse.com/docs/operations/system-tables/crash_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/crash_log,matched,789e998674334ab0,true,789e998674334ab0,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/current_roles,docs/operations/system-tables/current_roles.md,core/reference/system-tables/current_roles.mdx,https://clickhouse.com/docs/operations/system-tables/current_roles,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/current_roles,matched,d5fa5b1ccc479454,true,d5fa5b1ccc479454,2026-05-08T21:00:29+00:00,false
+/operations/system-tables/dashboards,docs/operations/system-tables/dashboards.md,core/reference/system-tables/dashboards.mdx,https://clickhouse.com/docs/operations/system-tables/dashboards,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/dashboards,matched,32447efddfacf342,true,32447efddfacf342,2026-05-08T21:00:29+00:00,false
+/operations/system-tables/data_skipping_indices,docs/operations/system-tables/data_skipping_indices.md,core/reference/system-tables/data_skipping_indices.mdx,https://clickhouse.com/docs/operations/system-tables/data_skipping_indices,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/data_skipping_indices,matched,1c40e02429b9f61c,true,1c40e02429b9f61c,2026-05-08T21:00:29+00:00,false
+/operations/system-tables/data_type_families,docs/operations/system-tables/data_type_families.md,core/reference/system-tables/data_type_families.mdx,https://clickhouse.com/docs/operations/system-tables/data_type_families,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/data_type_families,matched,ccb0ebaf9e3ed522,true,ccb0ebaf9e3ed522,2026-05-08T21:00:30+00:00,false
+/operations/system-tables/database_engines,docs/operations/system-tables/database_engines.md,core/reference/system-tables/database_engines.mdx,https://clickhouse.com/docs/operations/system-tables/database_engines,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/database_engines,matched,f01ae499a1ec57e3,true,f01ae499a1ec57e3,2026-05-08T21:00:30+00:00,false
+/operations/system-tables/database_replicas,docs/operations/system-tables/database_replicas.md,core/reference/system-tables/database_replicas.mdx,https://clickhouse.com/docs/operations/system-tables/database_replicas,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/database_replicas,matched,b5267afb5b3dc4b3,true,b5267afb5b3dc4b3,2026-05-08T21:00:30+00:00,false
+/operations/system-tables/databases,docs/operations/system-tables/databases.md,core/reference/system-tables/databases.mdx,https://clickhouse.com/docs/operations/system-tables/databases,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/databases,matched,3d184b14fc64a891,true,3d184b14fc64a891,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/dead_letter_queue,docs/operations/system-tables/dead_letter_queue.md,core/reference/system-tables/dead_letter_queue.mdx,https://clickhouse.com/docs/operations/system-tables/dead_letter_queue,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/dead_letter_queue,matched,0e30043a5c5eba2a,true,0e30043a5c5eba2a,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/delta_lake_metadata_log,docs/operations/system-tables/delta_lake_metadata_log.md,core/reference/system-tables/delta_metadata_log.mdx,https://clickhouse.com/docs/operations/system-tables/delta_lake_metadata_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/delta_metadata_log,matched,f6cf90bd863544db,true,f6cf90bd863544db,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/detached_parts,docs/operations/system-tables/detached_parts.md,core/reference/system-tables/detached_parts.mdx,https://clickhouse.com/docs/operations/system-tables/detached_parts,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/detached_parts,matched,40b3900db699b5e0,true,40b3900db699b5e0,2026-05-08T21:00:31+00:00,false
+/operations/system-tables/detached_tables,docs/operations/system-tables/detached_tables.md,core/reference/system-tables/detached_tables.mdx,https://clickhouse.com/docs/operations/system-tables/detached_tables,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/detached_tables,matched,363ca00e053d40a5,true,363ca00e053d40a5,2026-05-08T21:00:31+00:00,false
+/operations/system-tables/dictionaries,docs/operations/system-tables/dictionaries.md,core/reference/system-tables/dictionaries.mdx,https://clickhouse.com/docs/operations/system-tables/dictionaries,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/dictionaries,matched,30d9c72de8848950,true,30d9c72de8848950,2026-05-08T21:00:31+00:00,false
+/operations/system-tables/dimensional_metrics,docs/operations/system-tables/dimensional_metrics.md,core/reference/system-tables/dimensional_metrics.mdx,https://clickhouse.com/docs/operations/system-tables/dimensional_metrics,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/dimensional_metrics,matched,41a8e212bd7abc30,true,41a8e212bd7abc30,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/disks,docs/operations/system-tables/disks.md,core/reference/system-tables/disks.mdx,https://clickhouse.com/docs/operations/system-tables/disks,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/disks,matched,f5aad12f0f49430a,true,f5aad12f0f49430a,2026-05-08T21:00:31+00:00,false
+/operations/system-tables/distributed_ddl_queue,docs/operations/system-tables/distributed_ddl_queue.md,core/reference/system-tables/distributed_ddl_queue.mdx,https://clickhouse.com/docs/operations/system-tables/distributed_ddl_queue,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/distributed_ddl_queue,matched,1ffce34c4d08703f,true,1ffce34c4d08703f,2026-05-19T11:48:22+00:00,false
+/operations/system-tables/distribution_queue,docs/operations/system-tables/distribution_queue.md,core/reference/system-tables/distribution_queue.mdx,https://clickhouse.com/docs/operations/system-tables/distribution_queue,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/distribution_queue,matched,9a1e70d903a00965,true,9a1e70d903a00965,2026-05-08T21:00:32+00:00,false
+/operations/system-tables/dns_cache,docs/operations/system-tables/dns_cache.md,core/reference/system-tables/dns_cache.mdx,https://clickhouse.com/docs/operations/system-tables/dns_cache,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/dns_cache,matched,832dfe91488177fd,true,832dfe91488177fd,2026-05-08T21:00:32+00:00,false
+/operations/system-tables/dropped_tables,docs/operations/system-tables/dropped_tables.md,core/reference/system-tables/dropped_tables.mdx,https://clickhouse.com/docs/operations/system-tables/dropped_tables,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/dropped_tables,matched,99ce3ddea83a7a37,true,99ce3ddea83a7a37,2026-05-08T21:00:32+00:00,false
+/operations/system-tables/dropped_tables_parts,docs/operations/system-tables/dropped_tables_parts.md,core/reference/system-tables/dropped_tables_parts.mdx,https://clickhouse.com/docs/operations/system-tables/dropped_tables_parts,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/dropped_tables_parts,matched,4dddb00c8826eeec,true,4dddb00c8826eeec,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/enabled_roles,docs/operations/system-tables/enabled_roles.md,core/reference/system-tables/enabled_roles.mdx,https://clickhouse.com/docs/operations/system-tables/enabled_roles,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/enabled_roles,matched,53ba95975c120c13,true,53ba95975c120c13,2026-05-08T21:00:32+00:00,false
+/operations/system-tables/errors,docs/operations/system-tables/errors.md,core/reference/system-tables/errors.mdx,https://clickhouse.com/docs/operations/system-tables/errors,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/errors,matched,7779b6a80d11c73a,true,7779b6a80d11c73a,2026-05-08T21:00:33+00:00,false
+/operations/system-tables/events,docs/operations/system-tables/events.md,core/reference/system-tables/events.mdx,https://clickhouse.com/docs/operations/system-tables/events,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/events,matched,cb79808f837bd1dc,true,cb79808f837bd1dc,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/fail_points,docs/operations/system-tables/fail_points.md,core/reference/system-tables/fail_points.mdx,https://clickhouse.com/docs/operations/system-tables/fail_points,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/fail_points,matched,dba698b365d9ef95,true,dba698b365d9ef95,2026-05-08T21:00:33+00:00,false
+/operations/system-tables/filesystem_cache,docs/operations/system-tables/filesystem_cache.md,core/reference/system-tables/filesystem_cache.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_cache,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/filesystem_cache,matched,a2328859464bad53,true,a2328859464bad53,2026-05-08T21:00:33+00:00,false
+/operations/system-tables/filesystem_cache_log,docs/operations/system-tables/filesystem_cache_log.md,core/reference/system-tables/filesystem_cache_log.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_cache_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/filesystem_cache_log,matched,19f3dfba8f9194aa,true,19f3dfba8f9194aa,2026-05-13T13:08:27+00:00,false
+/operations/system-tables/filesystem_cache_settings,docs/operations/system-tables/filesystem_cache_settings.md,core/reference/system-tables/filesystem_cache_settings.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_cache_settings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/filesystem_cache_settings,matched,21d405c24e403f88,true,21d405c24e403f88,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/filesystem_read_prefetches_log,docs/operations/system-tables/filesystem_read_prefetches_log.md,core/reference/system-tables/filesystem_read_prefetches_log.mdx,https://clickhouse.com/docs/operations/system-tables/filesystem_read_prefetches_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/filesystem_read_prefetches_log,matched,5b6d5025431391a3,true,5b6d5025431391a3,2026-05-13T13:08:27+00:00,false
+/operations/system-tables/formats,docs/operations/system-tables/formats.md,core/reference/system-tables/formats.mdx,https://clickhouse.com/docs/operations/system-tables/formats,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/formats,matched,6bf140e370f7095a,true,6bf140e370f7095a,2026-05-08T21:00:34+00:00,false
+/operations/system-tables/functions,docs/operations/system-tables/functions.md,core/reference/system-tables/functions.mdx,https://clickhouse.com/docs/operations/system-tables/functions,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/functions,matched,8257e4513f41c25b,true,8257e4513f41c25b,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/grants,docs/operations/system-tables/grants.md,core/reference/system-tables/grants.mdx,https://clickhouse.com/docs/operations/system-tables/grants,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/grants,matched,7eff8cb2a297443e,true,7eff8cb2a297443e,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/graphite_retentions,docs/operations/system-tables/graphite_retentions.md,core/reference/system-tables/graphite_retentions.mdx,https://clickhouse.com/docs/operations/system-tables/graphite_retentions,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/graphite_retentions,matched,464bac9447aad728,true,464bac9447aad728,2026-05-08T21:00:34+00:00,false
+/operations/system-tables/histogram_metric_log,docs/operations/system-tables/histogram_metric_log.md,core/reference/system-tables/histogram_metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/histogram_metric_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/histogram_metric_log,matched,fd61b7501ffc08ff,true,fd61b7501ffc08ff,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/histogram_metrics,docs/operations/system-tables/histogram_metrics.md,core/reference/system-tables/histogram_metrics.mdx,https://clickhouse.com/docs/operations/system-tables/histogram_metrics,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/histogram_metrics,matched,2620e2192210eefe,true,2620e2192210eefe,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/iceberg_history,docs/operations/system-tables/iceberg_history.md,core/reference/system-tables/iceberg_history.mdx,https://clickhouse.com/docs/operations/system-tables/iceberg_history,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/iceberg_history,matched,0ffc57c3e2b81eab,true,0ffc57c3e2b81eab,2026-05-08T21:00:35+00:00,false
+/operations/system-tables/iceberg_metadata_log,docs/operations/system-tables/iceberg_metadata_log.md,core/reference/system-tables/iceberg_metadata_log.mdx,https://clickhouse.com/docs/operations/system-tables/iceberg_metadata_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/iceberg_metadata_log,matched,3666b153c2ed6ec6,true,3666b153c2ed6ec6,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/information_schema,docs/operations/system-tables/information_schema.md,core/reference/system-tables/information_schema.mdx,https://clickhouse.com/docs/operations/system-tables/information_schema,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/information_schema,matched,d3c9bff2eaf6d8c1,true,d3c9bff2eaf6d8c1,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/instrumentation,docs/operations/system-tables/instrumentation.md,core/reference/system-tables/instrumentation.mdx,https://clickhouse.com/docs/operations/system-tables/instrumentation,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/instrumentation,matched,84e4433828e2eebd,true,84e4433828e2eebd,2026-05-08T21:00:35+00:00,false
+/operations/system-tables/jemalloc_bins,docs/operations/system-tables/jemalloc_bins.md,core/reference/system-tables/jemalloc_bins.mdx,https://clickhouse.com/docs/operations/system-tables/jemalloc_bins,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/jemalloc_bins,matched,df9e8107e5309350,true,df9e8107e5309350,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/jemalloc_profile_text,docs/operations/system-tables/jemalloc_profile_text.md,core/reference/system-tables/jemalloc_profile_text.mdx,https://clickhouse.com/docs/operations/system-tables/jemalloc_profile_text,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/jemalloc_profile_text,matched,cca46516004deb0d,true,cca46516004deb0d,2026-05-08T21:00:36+00:00,false
+/operations/system-tables/jemalloc_stats,docs/operations/system-tables/jemalloc_stats.md,core/reference/system-tables/jemalloc_stats.mdx,https://clickhouse.com/docs/operations/system-tables/jemalloc_stats,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/jemalloc_stats,matched,929f907b08f2ee2d,true,929f907b08f2ee2d,2026-05-08T21:00:36+00:00,false
+/operations/system-tables/kafka_consumers,docs/operations/system-tables/kafka_consumers.md,core/reference/system-tables/kafka_consumers.mdx,https://clickhouse.com/docs/operations/system-tables/kafka_consumers,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/kafka_consumers,matched,e094d2f770da5230,true,e094d2f770da5230,2026-05-08T21:00:36+00:00,false
+/operations/system-tables/keywords,docs/operations/system-tables/keywords.md,core/reference/system-tables/keywords.mdx,https://clickhouse.com/docs/operations/system-tables/keywords,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/keywords,matched,580293e04e4b5ef0,true,580293e04e4b5ef0,2026-05-08T21:00:36+00:00,false
+/operations/system-tables/licenses,docs/operations/system-tables/licenses.md,core/reference/system-tables/licenses.mdx,https://clickhouse.com/docs/operations/system-tables/licenses,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/licenses,matched,9d1423ef5ce07210,true,9d1423ef5ce07210,2026-05-08T21:00:36+00:00,false
+/operations/system-tables/macros,docs/operations/system-tables/macros.md,core/reference/system-tables/macros.mdx,https://clickhouse.com/docs/operations/system-tables/macros,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/macros,matched,ca6dd30401322eb5,true,ca6dd30401322eb5,2026-05-08T21:00:37+00:00,false
+/operations/system-tables/masking_policies,docs/operations/system-tables/masking_policies.md,core/reference/system-tables/masking_policies.mdx,https://clickhouse.com/docs/operations/system-tables/masking_policies,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/masking_policies,matched,2122b6c04db57faf,true,2122b6c04db57faf,2026-05-08T21:00:37+00:00,false
+/operations/system-tables/merge_tree_settings,docs/operations/system-tables/merge_tree_settings.md,core/reference/system-tables/merge_tree_settings.mdx,https://clickhouse.com/docs/operations/system-tables/merge_tree_settings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/merge_tree_settings,matched,e5e8db50498b1673,true,e5e8db50498b1673,2026-05-08T21:00:37+00:00,false
+/operations/system-tables/merges,docs/operations/system-tables/merges.md,core/reference/system-tables/merges.mdx,https://clickhouse.com/docs/operations/system-tables/merges,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/merges,matched,60c36e1d757cb666,true,60c36e1d757cb666,2026-05-08T21:00:37+00:00,false
+/operations/system-tables/metric_log,docs/operations/system-tables/metric_log.md,core/reference/system-tables/metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/metric_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/metric_log,matched,c382d8f1285baef6,true,c382d8f1285baef6,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/metrics,docs/operations/system-tables/metrics.md,core/reference/system-tables/metrics.mdx,https://clickhouse.com/docs/operations/system-tables/metrics,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/metrics,matched,11bd6e6af02ec49f,true,11bd6e6af02ec49f,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/models,docs/operations/system-tables/models.md,core/reference/system-tables/models.mdx,https://clickhouse.com/docs/operations/system-tables/models,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/models,matched,6d6f942a7cc2bcb5,true,6d6f942a7cc2bcb5,2026-05-08T21:00:38+00:00,false
+/operations/system-tables/moves,docs/operations/system-tables/moves.md,core/reference/system-tables/moves.mdx,https://clickhouse.com/docs/operations/system-tables/moves,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/moves,matched,b7f2eb2b29243e5a,true,b7f2eb2b29243e5a,2026-05-08T21:00:38+00:00,false
+/operations/system-tables/mutations,docs/operations/system-tables/mutations.md,core/reference/system-tables/mutations.mdx,https://clickhouse.com/docs/operations/system-tables/mutations,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/mutations,matched,5e9568ccde263373,true,5e9568ccde263373,2026-05-08T21:00:38+00:00,false
+/operations/system-tables/named_collections,docs/operations/system-tables/named_collections.md,core/reference/system-tables/named_collections.mdx,https://clickhouse.com/docs/operations/system-tables/named_collections,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/named_collections,matched,7219d93d3bc75213,true,7219d93d3bc75213,2026-05-08T21:00:38+00:00,false
+/operations/system-tables/numbers,docs/operations/system-tables/numbers.md,core/reference/system-tables/numbers.mdx,https://clickhouse.com/docs/operations/system-tables/numbers,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/numbers,matched,99047aec8c3514df,true,99047aec8c3514df,2026-05-08T21:00:38+00:00,false
+/operations/system-tables/numbers_mt,docs/operations/system-tables/numbers_mt.md,core/reference/system-tables/numbers_mt.mdx,https://clickhouse.com/docs/operations/system-tables/numbers_mt,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/numbers_mt,matched,fb734a6e8fefc43a,true,fb734a6e8fefc43a,2026-05-08T21:00:39+00:00,false
+/operations/system-tables/one,docs/operations/system-tables/one.md,core/reference/system-tables/one.mdx,https://clickhouse.com/docs/operations/system-tables/one,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/one,matched,8cebbfc8b51d7d1e,true,8cebbfc8b51d7d1e,2026-05-08T21:00:39+00:00,false
+/operations/system-tables/opentelemetry_span_log,docs/operations/system-tables/opentelemetry_span_log.md,core/reference/system-tables/opentelemetry_span_log.mdx,https://clickhouse.com/docs/operations/system-tables/opentelemetry_span_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/opentelemetry_span_log,matched,c177a0be6bda91a4,true,c177a0be6bda91a4,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/overview,docs/operations/system-tables/overview.md,core/reference/system-tables/overview.mdx,https://clickhouse.com/docs/operations/system-tables/overview,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/overview,matched,9aff12963c1e1db4,true,9aff12963c1e1db4,2026-05-08T09:09:20+00:00,false
+/operations/system-tables/part_log,docs/operations/system-tables/part_log.md,core/reference/system-tables/part_log.mdx,https://clickhouse.com/docs/operations/system-tables/part_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/part_log,matched,968e900e95aa9ea2,true,968e900e95aa9ea2,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/part_moves_between_shards,docs/operations/system-tables/part_moves_between_shards.md,core/reference/system-tables/part_moves_between_shards.mdx,https://clickhouse.com/docs/operations/system-tables/part_moves_between_shards,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/part_moves_between_shards,matched,2caa49aba757cf95,true,2caa49aba757cf95,2026-05-08T21:00:39+00:00,false
+/operations/system-tables/parts,docs/operations/system-tables/parts.md,core/reference/system-tables/parts.mdx,https://clickhouse.com/docs/operations/system-tables/parts,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/parts,matched,fa6125a81bc4ca7a,true,fa6125a81bc4ca7a,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/parts_columns,docs/operations/system-tables/parts_columns.md,core/reference/system-tables/parts_columns.mdx,https://clickhouse.com/docs/operations/system-tables/parts_columns,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/parts_columns,matched,54ddc77af6501853,true,54ddc77af6501853,2026-05-08T21:00:40+00:00,false
+/operations/system-tables/predicate_statistics_log,docs/operations/system-tables/predicate_statistics_log.md,core/reference/system-tables/predicate_statistics_log.mdx,https://clickhouse.com/docs/operations/system-tables/predicate_statistics_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/predicate_statistics_log,matched,0c4c9b03e9bb41d4,true,0c4c9b03e9bb41d4,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/primes,docs/operations/system-tables/primes.md,core/reference/system-tables/primes.mdx,https://clickhouse.com/docs/operations/system-tables/primes,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/primes,matched,c8bd5508638d5ac1,true,c8bd5508638d5ac1,2026-05-08T21:00:40+00:00,false
+/operations/system-tables/privileges,docs/operations/system-tables/privileges.md,core/reference/system-tables/privileges.mdx,https://clickhouse.com/docs/operations/system-tables/privileges,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/privileges,matched,5b98c7994d5dca05,true,5b98c7994d5dca05,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/processes,docs/operations/system-tables/processes.md,core/reference/system-tables/processes.mdx,https://clickhouse.com/docs/operations/system-tables/processes,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/processes,matched,4f1747c6f8fca7cc,true,4f1747c6f8fca7cc,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/processors_profile_log,docs/operations/system-tables/processors_profile_log.md,core/reference/system-tables/processors_profile_log.mdx,https://clickhouse.com/docs/operations/system-tables/processors_profile_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/processors_profile_log,matched,55bb2416a7045d67,true,55bb2416a7045d67,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/projection_parts,docs/operations/system-tables/projection_parts.md,core/reference/system-tables/projection_parts.mdx,https://clickhouse.com/docs/operations/system-tables/projection_parts,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/projection_parts,matched,997eca3070cbeda5,true,997eca3070cbeda5,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/projection_parts_columns,docs/operations/system-tables/projection_parts_columns.md,core/reference/system-tables/projection_parts_columns.mdx,https://clickhouse.com/docs/operations/system-tables/projection_parts_columns,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/projection_parts_columns,matched,213c257e7c406aee,true,213c257e7c406aee,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/projections,docs/operations/system-tables/projections.md,core/reference/system-tables/projections.mdx,https://clickhouse.com/docs/operations/system-tables/projections,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/projections,matched,43812f2032aac42f,true,43812f2032aac42f,2026-05-08T21:00:41+00:00,false
+/operations/system-tables/query_cache,docs/operations/system-tables/query_cache.md,core/reference/system-tables/query_cache.mdx,https://clickhouse.com/docs/operations/system-tables/query_cache,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/query_cache,matched,23a6576a6892b3c7,true,23a6576a6892b3c7,2026-05-08T21:00:41+00:00,false
+/operations/system-tables/query_condition_cache,docs/operations/system-tables/query_condition_cache.md,core/reference/system-tables/query_condition_cache.mdx,https://clickhouse.com/docs/operations/system-tables/query_condition_cache,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/query_condition_cache,matched,2cdfd85810116d3e,true,2cdfd85810116d3e,2026-05-08T21:00:41+00:00,false
+/operations/system-tables/query_log,docs/operations/system-tables/query_log.md,core/reference/system-tables/query_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/query_log,matched,a05473143f339793,true,a05473143f339793,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/query_metric_log,docs/operations/system-tables/query_metric_log.md,core/reference/system-tables/query_metric_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_metric_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/query_metric_log,matched,e861f29f7e4fd511,true,e861f29f7e4fd511,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/query_thread_log,docs/operations/system-tables/query_thread_log.md,core/reference/system-tables/query_thread_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_thread_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/query_thread_log,matched,08a8395420867420,true,08a8395420867420,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/query_views_log,docs/operations/system-tables/query_views_log.md,core/reference/system-tables/query_views_log.mdx,https://clickhouse.com/docs/operations/system-tables/query_views_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/query_views_log,matched,ab38df93c47223cd,true,ab38df93c47223cd,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/quota_limits,docs/operations/system-tables/quota_limits.md,core/reference/system-tables/quota_limits.mdx,https://clickhouse.com/docs/operations/system-tables/quota_limits,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/quota_limits,matched,89cf3fd2c278ac25,true,89cf3fd2c278ac25,2026-05-08T21:00:42+00:00,false
+/operations/system-tables/quota_usage,docs/operations/system-tables/quota_usage.md,core/reference/system-tables/quota_usage.mdx,https://clickhouse.com/docs/operations/system-tables/quota_usage,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/quota_usage,matched,553a83991534ff79,true,553a83991534ff79,2026-05-08T21:00:42+00:00,false
+/operations/system-tables/quotas,docs/operations/system-tables/quotas.md,core/reference/system-tables/quotas.mdx,https://clickhouse.com/docs/operations/system-tables/quotas,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/quotas,matched,c7e6b2b4098b55ea,true,c7e6b2b4098b55ea,2026-05-08T21:00:43+00:00,false
+/operations/system-tables/quotas_usage,docs/operations/system-tables/quotas_usage.md,core/reference/system-tables/quotas_usage.mdx,https://clickhouse.com/docs/operations/system-tables/quotas_usage,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/quotas_usage,matched,e236c52aec1f14c5,true,e236c52aec1f14c5,2026-05-08T21:00:43+00:00,false
+/operations/system-tables/remote_data_paths,docs/operations/system-tables/remote_data_paths.md,core/reference/system-tables/remote_data_paths.mdx,https://clickhouse.com/docs/operations/system-tables/remote_data_paths,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/remote_data_paths,matched,16f789c68faf453c,true,16f789c68faf453c,2026-05-08T21:00:43+00:00,false
+/operations/system-tables/replicas,docs/operations/system-tables/replicas.md,core/reference/system-tables/replicas.mdx,https://clickhouse.com/docs/operations/system-tables/replicas,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/replicas,matched,f8c198de4d3d6054,true,f8c198de4d3d6054,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/replicated_fetches,docs/operations/system-tables/replicated_fetches.md,core/reference/system-tables/replicated_fetches.mdx,https://clickhouse.com/docs/operations/system-tables/replicated_fetches,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/replicated_fetches,matched,36f5e02689262f81,true,36f5e02689262f81,2026-05-08T21:00:43+00:00,false
+/operations/system-tables/replicated_merge_tree_settings,docs/operations/system-tables/replicated_merge_tree_settings.md,core/reference/system-tables/replicated_merge_tree_settings.mdx,https://clickhouse.com/docs/operations/system-tables/replicated_merge_tree_settings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/replicated_merge_tree_settings,matched,9db9dabaac8efd5c,true,9db9dabaac8efd5c,2026-05-08T21:00:43+00:00,false
+/operations/system-tables/replication_queue,docs/operations/system-tables/replication_queue.md,core/reference/system-tables/replication_queue.mdx,https://clickhouse.com/docs/operations/system-tables/replication_queue,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/replication_queue,matched,d358990d7d9272e1,true,d358990d7d9272e1,2026-05-08T21:00:44+00:00,false
+/operations/system-tables/resources,docs/operations/system-tables/resources.md,core/reference/system-tables/resources.mdx,https://clickhouse.com/docs/operations/system-tables/resources,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/resources,matched,4fb371b9dfddd759,true,4fb371b9dfddd759,2026-05-08T21:00:44+00:00,false
+/operations/system-tables/rocksdb,docs/operations/system-tables/rocksdb.md,core/reference/system-tables/rocksdb.mdx,https://clickhouse.com/docs/operations/system-tables/rocksdb,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/rocksdb,matched,82024034ca9109cc,true,82024034ca9109cc,2026-05-08T21:00:44+00:00,false
+/operations/system-tables/role_grants,docs/operations/system-tables/role_grants.md,core/reference/system-tables/role_grants.mdx,https://clickhouse.com/docs/operations/system-tables/role_grants,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/role_grants,matched,b74709322c8154c6,true,b74709322c8154c6,2026-05-08T21:00:44+00:00,false
+/operations/system-tables/roles,docs/operations/system-tables/roles.md,core/reference/system-tables/roles.mdx,https://clickhouse.com/docs/operations/system-tables/roles,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/roles,matched,af7a908a7c67e751,true,af7a908a7c67e751,2026-05-08T21:00:44+00:00,false
+/operations/system-tables/row_policies,docs/operations/system-tables/row_policies.md,core/reference/system-tables/row_policies.mdx,https://clickhouse.com/docs/operations/system-tables/row_policies,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/row_policies,matched,6890a710e54e1699,true,6890a710e54e1699,2026-05-08T21:00:44+00:00,false
+/operations/system-tables/s3_queue_settings,docs/operations/system-tables/s3_queue_settings.md,core/reference/system-tables/s3_queue_settings.mdx,https://clickhouse.com/docs/operations/system-tables/s3_queue_settings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/s3_queue_settings,matched,83ef2d10121b8a8e,true,83ef2d10121b8a8e,2026-05-08T21:00:45+00:00,false
+/operations/system-tables/s3queue_log,docs/operations/system-tables/s3queue_log.md,core/reference/system-tables/s3queue_log.mdx,https://clickhouse.com/docs/operations/system-tables/s3queue_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/s3queue_log,matched,b30949fb7bc700eb,true,b30949fb7bc700eb,2026-05-13T13:08:27+00:00,false
+/operations/system-tables/s3queue_metadata_cache,docs/operations/system-tables/s3queue_metadata_cache.md,core/reference/system-tables/s3queue_metadata_cache.mdx,https://clickhouse.com/docs/operations/system-tables/s3queue_metadata_cache,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/s3queue_metadata_cache,matched,5383de79a1001a99,true,5383de79a1001a99,2026-05-08T21:00:45+00:00,false
+/operations/system-tables/scheduler,docs/operations/system-tables/scheduler.md,core/reference/system-tables/scheduler.mdx,https://clickhouse.com/docs/operations/system-tables/scheduler,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/scheduler,matched,31f0f12a50186fe9,true,31f0f12a50186fe9,2026-05-08T21:00:45+00:00,false
+/operations/system-tables/schema_inference_cache,docs/operations/system-tables/schema_inference_cache.md,core/reference/system-tables/schema_inference_cache.mdx,https://clickhouse.com/docs/operations/system-tables/schema_inference_cache,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/schema_inference_cache,matched,553ff97032d7232d,true,553ff97032d7232d,2026-05-08T21:00:45+00:00,false
+/operations/system-tables/server_settings,docs/operations/system-tables/server_settings.md,core/reference/system-tables/server_settings.mdx,https://clickhouse.com/docs/operations/system-tables/server_settings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/server_settings,matched,e25fce44808bcb06,true,e25fce44808bcb06,2026-05-08T21:00:45+00:00,false
+/operations/system-tables/session_log,docs/operations/system-tables/session_log.md,core/reference/system-tables/session_log.mdx,https://clickhouse.com/docs/operations/system-tables/session_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/session_log,matched,182a99be8f6003af,true,182a99be8f6003af,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/settings,docs/operations/system-tables/settings.md,core/reference/system-tables/settings.mdx,https://clickhouse.com/docs/operations/system-tables/settings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/settings,matched,2ebf7340bff64f63,true,2ebf7340bff64f63,2026-05-08T21:00:46+00:00,false
+/operations/system-tables/settings_changes,docs/operations/system-tables/settings_changes.md,core/reference/system-tables/settings_changes.mdx,https://clickhouse.com/docs/operations/system-tables/settings_changes,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/settings_changes,matched,1cd1742d0fa202ae,true,1cd1742d0fa202ae,2026-05-09T09:39:38+00:00,false
+/operations/system-tables/settings_profile_elements,docs/operations/system-tables/settings_profile_elements.md,core/reference/system-tables/settings_profile_elements.mdx,https://clickhouse.com/docs/operations/system-tables/settings_profile_elements,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/settings_profile_elements,matched,97bd32e8684d20f5,true,97bd32e8684d20f5,2026-05-08T21:00:46+00:00,false
+/operations/system-tables/settings_profiles,docs/operations/system-tables/settings_profiles.md,core/reference/system-tables/settings_profiles.mdx,https://clickhouse.com/docs/operations/system-tables/settings_profiles,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/settings_profiles,matched,37014ff91f7b8d7d,true,37014ff91f7b8d7d,2026-05-08T21:00:46+00:00,false
+/operations/system-tables/stack_trace,docs/operations/system-tables/stack_trace.md,core/reference/system-tables/stack_trace.mdx,https://clickhouse.com/docs/operations/system-tables/stack_trace,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/stack_trace,matched,1411b6e4f944dbe1,true,1411b6e4f944dbe1,2026-05-08T21:00:46+00:00,false
+/operations/system-tables/storage_policies,docs/operations/system-tables/storage_policies.md,core/reference/system-tables/storage_policies.mdx,https://clickhouse.com/docs/operations/system-tables/storage_policies,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/storage_policies,matched,cf96fd26b4e69802,true,cf96fd26b4e69802,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/symbols,docs/operations/system-tables/symbols.md,core/reference/system-tables/symbols.mdx,https://clickhouse.com/docs/operations/system-tables/symbols,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/symbols,matched,54037cfdf8943d44,true,54037cfdf8943d44,2026-05-08T21:00:47+00:00,false
+/operations/system-tables/system-error-log,docs/operations/system-tables/error_log.md,core/reference/system-tables/error_log.mdx,https://clickhouse.com/docs/operations/system-tables/system-error-log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/error_log,matched,a5bafc2aaa88cebc,true,a5bafc2aaa88cebc,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/system_warnings,docs/operations/system-tables/system_warnings.md,core/reference/system-tables/system_warnings.mdx,https://clickhouse.com/docs/operations/system-tables/system_warnings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/system_warnings,matched,019d08eb5d53c4d2,true,019d08eb5d53c4d2,2026-05-08T09:09:20+00:00,false
+/operations/system-tables/table_engines,docs/operations/system-tables/table_engines.md,core/reference/system-tables/table_engines.mdx,https://clickhouse.com/docs/operations/system-tables/table_engines,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/table_engines,matched,8638422eb124890a,true,8638422eb124890a,2026-05-08T21:00:47+00:00,false
+/operations/system-tables/table_functions,docs/operations/system-tables/table_functions.md,core/reference/system-tables/table_functions.mdx,https://clickhouse.com/docs/operations/system-tables/table_functions,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/table_functions,matched,49b4a602760f3947,true,49b4a602760f3947,2026-05-08T21:00:47+00:00,false
+/operations/system-tables/tables,docs/operations/system-tables/tables.md,core/reference/system-tables/tables.mdx,https://clickhouse.com/docs/operations/system-tables/tables,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/tables,matched,735ebc55efcf816b,true,735ebc55efcf816b,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/text_log,docs/operations/system-tables/text_log.md,core/reference/system-tables/text_log.mdx,https://clickhouse.com/docs/operations/system-tables/text_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/text_log,matched,b6f1b3a8e96de9e9,true,b6f1b3a8e96de9e9,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/time_zones,docs/operations/system-tables/time_zones.md,core/reference/system-tables/time_zones.mdx,https://clickhouse.com/docs/operations/system-tables/time_zones,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/time_zones,matched,bb828e8cbba5f6cb,true,bb828e8cbba5f6cb,2026-05-08T21:00:48+00:00,false
+/operations/system-tables/tokenizers,docs/operations/system-tables/tokenizers.md,core/reference/system-tables/tokenizers.mdx,https://clickhouse.com/docs/operations/system-tables/tokenizers,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/tokenizers,matched,f38b49844109c253,true,f38b49844109c253,2026-05-08T21:00:48+00:00,false
+/operations/system-tables/trace_log,docs/operations/system-tables/trace_log.md,core/reference/system-tables/trace_log.mdx,https://clickhouse.com/docs/operations/system-tables/trace_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/trace_log,matched,3e1cb8623ee915fc,true,3e1cb8623ee915fc,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/transactions,docs/operations/system-tables/transactions.md,core/reference/system-tables/transactions.mdx,https://clickhouse.com/docs/operations/system-tables/transactions,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/transactions,matched,2bf44ed2ecafc08d,true,2bf44ed2ecafc08d,2026-05-08T21:00:48+00:00,false
+/operations/system-tables/transactions_info_log,docs/operations/system-tables/transactions_info_log.md,core/reference/system-tables/transactions_info_log.mdx,https://clickhouse.com/docs/operations/system-tables/transactions_info_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/transactions_info_log,matched,e7289c550ebd1706,true,e7289c550ebd1706,2026-05-13T13:08:27+00:00,false
+/operations/system-tables/unicode,docs/operations/system-tables/unicode.md,core/reference/system-tables/unicode.mdx,https://clickhouse.com/docs/operations/system-tables/unicode,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/unicode,matched,627dfc36a5b58ce7,true,627dfc36a5b58ce7,2026-05-08T21:00:48+00:00,false
+/operations/system-tables/user_defined_functions,docs/operations/system-tables/user_defined_functions.md,core/reference/system-tables/user_defined_functions.mdx,https://clickhouse.com/docs/operations/system-tables/user_defined_functions,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/user_defined_functions,matched,b1a8f52c5076b0b4,true,b1a8f52c5076b0b4,2026-05-08T21:00:48+00:00,false
+/operations/system-tables/user_directories,docs/operations/system-tables/user_directories.md,core/reference/system-tables/user_directories.mdx,https://clickhouse.com/docs/operations/system-tables/user_directories,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/user_directories,matched,54f4b3a41b32add7,true,54f4b3a41b32add7,2026-05-08T21:00:49+00:00,false
+/operations/system-tables/user_processes,docs/operations/system-tables/user_processes.md,core/reference/system-tables/user_processes.mdx,https://clickhouse.com/docs/operations/system-tables/user_processes,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/user_processes,matched,8c2f38c2abb68784,true,8c2f38c2abb68784,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/users,docs/operations/system-tables/users.md,core/reference/system-tables/users.mdx,https://clickhouse.com/docs/operations/system-tables/users,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/users,matched,221907cf57c6edf9,true,221907cf57c6edf9,2026-05-08T21:00:49+00:00,false
+/operations/system-tables/view_refreshes,docs/operations/system-tables/view_refreshes.md,core/reference/system-tables/view_refreshes.mdx,https://clickhouse.com/docs/operations/system-tables/view_refreshes,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/view_refreshes,matched,b66716f71c70efe5,true,b66716f71c70efe5,2026-05-08T21:00:49+00:00,false
+/operations/system-tables/warnings,docs/operations/system-tables/warnings.md,core/reference/system-tables/warnings.mdx,https://clickhouse.com/docs/operations/system-tables/warnings,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/warnings,matched,4ca12d45f778f2dd,true,4ca12d45f778f2dd,2026-05-08T21:00:49+00:00,false
+/operations/system-tables/workloads,docs/operations/system-tables/workloads.md,core/reference/system-tables/workloads.mdx,https://clickhouse.com/docs/operations/system-tables/workloads,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/workloads,matched,53709c958ad3629b,true,53709c958ad3629b,2026-05-08T21:00:49+00:00,false
+/operations/system-tables/zeros,docs/operations/system-tables/zeros.md,core/reference/system-tables/zeros.mdx,https://clickhouse.com/docs/operations/system-tables/zeros,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zeros,matched,c97ffc28ac196b6f,true,c97ffc28ac196b6f,2026-05-08T21:00:50+00:00,false
+/operations/system-tables/zeros_mt,docs/operations/system-tables/zeros_mt.md,core/reference/system-tables/zeros_mt.mdx,https://clickhouse.com/docs/operations/system-tables/zeros_mt,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zeros_mt,matched,f709df8aa2bea480,true,f709df8aa2bea480,2026-05-08T21:00:50+00:00,false
+/operations/system-tables/zookeeper,docs/operations/system-tables/zookeeper.md,core/reference/system-tables/zookeeper.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zookeeper,matched,8450f27e685917ef,true,8450f27e685917ef,2026-05-08T21:00:50+00:00,false
+/operations/system-tables/zookeeper_connection,docs/operations/system-tables/zookeeper_connection.md,core/reference/system-tables/zookeeper_connection.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_connection,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zookeeper_connection,matched,b9e9457ffdd3c09e,true,b9e9457ffdd3c09e,2026-05-08T21:00:50+00:00,false
+/operations/system-tables/zookeeper_connection_log,docs/operations/system-tables/zookeeper_connection_log.md,core/reference/system-tables/zookeeper_connection_log.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_connection_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zookeeper_connection_log,matched,bdab459af8810550,true,bdab459af8810550,2026-05-13T13:16:51+00:00,false
+/operations/system-tables/zookeeper_info,docs/operations/system-tables/zookeeper_info.md,core/reference/system-tables/zookeeper_info.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_info,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zookeeper_info,matched,71cb3c42bf1acccf,true,71cb3c42bf1acccf,2026-05-08T21:00:51+00:00,false
+/operations/system-tables/zookeeper_log,docs/operations/system-tables/zookeeper_log.md,core/reference/system-tables/zookeeper_log.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_log,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zookeeper_log,matched,4c97301867745792,true,4c97301867745792,2026-05-19T11:08:53+00:00,false
+/operations/system-tables/zookeeper_watches,docs/operations/system-tables/zookeeper_watches.md,core/reference/system-tables/zookeeper_watches.mdx,https://clickhouse.com/docs/operations/system-tables/zookeeper_watches,https://private-7c7dfe99.mintlify.app/core/reference/system-tables/zookeeper_watches,matched,55bceb25398b0ba4,true,55bceb25398b0ba4,2026-05-07T14:49:41+00:00,false
+/operations/tips,docs/operations/tips.md,core/guides/oss/best-practices/tips.mdx,https://clickhouse.com/docs/operations/tips,https://private-7c7dfe99.mintlify.app/core/guides/oss/best-practices/tips,matched,5994e62267d818a6,true,5994e62267d818a6,2026-05-08T09:09:20+00:00,false
+/operations/update,docs/operations/update.md,core/guides/oss/update.mdx,https://clickhouse.com/docs/operations/update,https://private-7c7dfe99.mintlify.app/core/guides/oss/update,matched,3ad40142a5980106,true,3ad40142a5980106,2026-05-08T09:09:20+00:00,false
+/operations/userspace-page-cache,docs/operations/userspace-page-cache.md,core/concepts/features/performance/caches/userspace-page-cache.mdx,https://clickhouse.com/docs/operations/userspace-page-cache,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/caches/userspace-page-cache,matched,f8ca381cc071560d,true,ea6fc6dcc9635bc1,2026-05-08T09:09:20+00:00,false
+/operations/utilities/,docs/operations/utilities/index.md,core/concepts/features/tools-and-utilities/index.mdx,https://clickhouse.com/docs/operations/utilities/,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/index,matched,139b82d21c5fea2d,true,139b82d21c5fea2d,2026-05-08T09:09:20+00:00,false
+/operations/utilities/backupview,docs/operations/utilities/backupview.md,core/concepts/features/tools-and-utilities/backupview.mdx,https://clickhouse.com/docs/operations/utilities/backupview,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/backupview,matched,76f60a7add5869d9,true,76f60a7add5869d9,2026-05-19T11:08:53+00:00,false
+/operations/utilities/clickhouse-benchmark,docs/operations/utilities/clickhouse-benchmark.md,core/concepts/features/tools-and-utilities/clickhouse-benchmark.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-benchmark,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-benchmark,matched,b64e050ba49bfc55,true,a600c7b329322e5b,2026-05-07T14:49:41+00:00,false
+/operations/utilities/clickhouse-compressor,docs/operations/utilities/clickhouse-compressor.md,core/concepts/features/tools-and-utilities/clickhouse-compressor.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-compressor,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-compressor,matched,e1d20246377ea770,false,,,false
+/operations/utilities/clickhouse-disks,docs/operations/utilities/clickhouse-disks.md,core/concepts/features/tools-and-utilities/clickhouse-disks.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-disks,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-disks,matched,5cda23056924a385,true,39a62a98184d3c05,2026-05-07T14:49:41+00:00,false
+/operations/utilities/clickhouse-format,docs/operations/utilities/clickhouse-format.md,core/concepts/features/tools-and-utilities/clickhouse-format.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-format,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-format,matched,a84351289ccbef46,true,a84351289ccbef46,2026-05-19T11:08:53+00:00,false
+/operations/utilities/clickhouse-keeper-client,docs/operations/utilities/clickhouse-keeper-client.md,core/concepts/features/tools-and-utilities/clickhouse-keeper-client.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-keeper-client,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-keeper-client,matched,dc02ae2c6ced91d3,true,a09632bedf043e16,2026-05-07T14:49:41+00:00,false
+/operations/utilities/clickhouse-keeper-http-api,docs/operations/utilities/clickhouse-keeper-http-api.md,core/concepts/features/tools-and-utilities/clickhouse-keeper-http-api.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-keeper-http-api,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-keeper-http-api,matched,d6935497cb291c4b,true,149558e56598d90d,2026-05-07T14:49:41+00:00,false
+/operations/utilities/clickhouse-local,docs/operations/utilities/clickhouse-local.md,core/concepts/features/tools-and-utilities/clickhouse-local.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-local,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-local,matched,ec740cea7203f856,true,ec740cea7203f856,2026-05-19T11:08:53+00:00,false
+/operations/utilities/clickhouse-obfuscator,docs/operations/utilities/clickhouse-obfuscator.md,core/concepts/features/tools-and-utilities/clickhouse-obfuscator.mdx,https://clickhouse.com/docs/operations/utilities/clickhouse-obfuscator,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/clickhouse-obfuscator,matched,a1465aea8fd40bd2,false,,,false
+/operations/utilities/odbc-bridge,docs/operations/utilities/odbc-bridge.md,core/concepts/features/tools-and-utilities/odbc-bridge.mdx,https://clickhouse.com/docs/operations/utilities/odbc-bridge,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/odbc-bridge,matched,85d971b7567c96e5,false,,,false
+/operations/utilities/static-files-disk-uploader,docs/tools-and-utilities/static-files-disk-uploader.md,core/concepts/features/tools-and-utilities/static-files-disk-uploader.mdx,https://clickhouse.com/docs/operations/utilities/static-files-disk-uploader,https://private-7c7dfe99.mintlify.app/core/concepts/features/tools-and-utilities/static-files-disk-uploader,matched,419f3e9045c39dd2,true,74f0f1b06ffe8edd,2026-05-07T14:49:41+00:00,false
+/operations/workload-scheduling,docs/operations/workload-scheduling.md,core/concepts/features/configuration/server-config/workload-scheduling.mdx,https://clickhouse.com/docs/operations/workload-scheduling,https://private-7c7dfe99.mintlify.app/core/concepts/features/configuration/server-config/workload-scheduling,matched,8032e74c1af9f4e6,true,8032e74c1af9f4e6,2026-05-08T09:09:20+00:00,false
+/optimize/asynchronous-inserts,docs/guides/best-practices/asyncinserts.md,core/concepts/features/operations/insert/asyncinserts.mdx,https://clickhouse.com/docs/optimize/asynchronous-inserts,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/insert/asyncinserts,matched,090826f9f6e052fc,true,090826f9f6e052fc,2026-05-08T09:09:20+00:00,false
/optimize/avoid-mutations,docs/guides/best-practices/avoidmutations.md,,https://clickhouse.com/docs/optimize/avoid-mutations,,unmatched,d6bdbbc76771255f,false,,,false
-/optimize/avoid-nullable-columns,docs/guides/best-practices/avoidnullablecolumns.md,concepts/best-practices/avoidnullablecolumns.mdx,https://clickhouse.com/docs/optimize/avoid-nullable-columns,https://private-7c7dfe99.mintlify.app/concepts/best-practices/avoidnullablecolumns,matched,ebe75f7a8b4095db,true,ebe75f7a8b4095db,2026-05-08T09:09:20+00:00,false
+/optimize/avoid-nullable-columns,docs/guides/best-practices/avoidnullablecolumns.md,core/concepts/best-practices/avoidnullablecolumns.mdx,https://clickhouse.com/docs/optimize/avoid-nullable-columns,https://private-7c7dfe99.mintlify.app/core/concepts/best-practices/avoidnullablecolumns,matched,ebe75f7a8b4095db,true,ebe75f7a8b4095db,2026-05-08T09:09:20+00:00,false
/optimize/avoidoptimizefinal,docs/guides/best-practices/avoidoptimizefinal.md,,https://clickhouse.com/docs/optimize/avoidoptimizefinal,,unmatched,e4c6027417950512,false,,,false
-/optimize/bulk-inserts,docs/guides/best-practices/bulkinserts.md,concepts/operations/insert/bulkinserts.mdx,https://clickhouse.com/docs/optimize/bulk-inserts,https://private-7c7dfe99.mintlify.app/concepts/operations/insert/bulkinserts,matched,c3a2fac6bf16acda,true,c3a2fac6bf16acda,2026-05-08T09:09:20+00:00,false
-/optimize/lazy-materialization,docs/guides/lazy-materialization.mdx,concepts/features/performance/lazy-materialization.mdx,https://clickhouse.com/docs/optimize/lazy-materialization,https://private-7c7dfe99.mintlify.app/concepts/features/performance/lazy-materialization,matched,3179c84b30d5c3f0,true,3179c84b30d5c3f0,2026-05-13T15:43:25+00:00,false
+/optimize/bulk-inserts,docs/guides/best-practices/bulkinserts.md,core/concepts/features/operations/insert/bulkinserts.mdx,https://clickhouse.com/docs/optimize/bulk-inserts,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/insert/bulkinserts,matched,c3a2fac6bf16acda,true,c3a2fac6bf16acda,2026-05-08T09:09:20+00:00,false
+/optimize/lazy-materialization,docs/guides/lazy-materialization.mdx,core/concepts/features/performance/lazy-materialization.mdx,https://clickhouse.com/docs/optimize/lazy-materialization,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/lazy-materialization,matched,3179c84b30d5c3f0,true,3179c84b30d5c3f0,2026-05-13T15:43:25+00:00,false
/optimize/partitioning-key,docs/guides/best-practices/partitioningkey.md,,https://clickhouse.com/docs/optimize/partitioning-key,,unmatched,34465b4971d3c1d3,false,,,false
-/optimize/prewhere,docs/guides/best-practices/prewhere.md,concepts/features/performance/prewhere.mdx,https://clickhouse.com/docs/optimize/prewhere,https://private-7c7dfe99.mintlify.app/concepts/features/performance/prewhere,matched,2336e34b998efec4,true,2336e34b998efec4,2026-05-08T09:09:20+00:00,false
-/optimize/query-optimization,docs/guides/best-practices/query-optimization.md,guides/cloud-oss/performance-and-monitoring/query-optimization.mdx,https://clickhouse.com/docs/optimize/query-optimization,https://private-7c7dfe99.mintlify.app/guides/cloud-oss/performance-and-monitoring/query-optimization,matched,eb97d0e4804d4a57,true,eb97d0e4804d4a57,2026-05-09T10:06:27+00:00,false
-/optimize/query-parallelism,docs/guides/best-practices/query-parallelism.md,concepts/core-concepts/query-parallelism.mdx,https://clickhouse.com/docs/optimize/query-parallelism,https://private-7c7dfe99.mintlify.app/concepts/core-concepts/query-parallelism,matched,4b49846b352f28ab,true,4b49846b352f28ab,2026-05-08T12:19:52+00:00,false
-/optimize/skipping-indexes,docs/guides/best-practices/skipping-indexes.md,concepts/features/performance/skip-indexes/skipping-indexes.mdx,https://clickhouse.com/docs/optimize/skipping-indexes,https://private-7c7dfe99.mintlify.app/concepts/features/performance/skip-indexes/skipping-indexes,matched,a0765ef7def30754,true,a0765ef7def30754,2026-05-08T20:59:47+00:00,false
-/optimize/skipping-indexes/examples,docs/guides/best-practices/skipping-indexes-examples.md,concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx,https://clickhouse.com/docs/optimize/skipping-indexes/examples,https://private-7c7dfe99.mintlify.app/concepts/features/performance/skip-indexes/skipping-indexes-examples,matched,7a79053af7c17e5c,true,7a79053af7c17e5c,2026-05-13T13:16:51+00:00,false
-/partitions,docs/managing-data/core-concepts/partitions.mdx,concepts/core-concepts/partitions.mdx,https://clickhouse.com/docs/partitions,https://private-7c7dfe99.mintlify.app/concepts/core-concepts/partitions,matched,705e5c138efe6555,true,705e5c138efe6555,2026-05-08T09:09:20+00:00,false
-/parts,docs/managing-data/core-concepts/parts.md,concepts/core-concepts/parts.mdx,https://clickhouse.com/docs/parts,https://private-7c7dfe99.mintlify.app/concepts/core-concepts/parts,matched,2159d40884f408fa,true,2159d40884f408fa,2026-05-08T09:09:20+00:00,false
-/primary-indexes,docs/managing-data/core-concepts/primary-indexes.mdx,concepts/core-concepts/primary-indexes.mdx,https://clickhouse.com/docs/primary-indexes,https://private-7c7dfe99.mintlify.app/concepts/core-concepts/primary-indexes,matched,72e33543511fe165,true,72e33543511fe165,2026-05-08T09:09:20+00:00,false
-/security-and-authentication,docs/guides/sre/index.md,guides/security/index.mdx,https://clickhouse.com/docs/security-and-authentication,https://private-7c7dfe99.mintlify.app/guides/security,matched,765ed19ac411d1bf,true,765ed19ac411d1bf,2026-05-08T09:09:20+00:00,false
-/shards,docs/managing-data/core-concepts/shards.mdx,guides/oss/deployment-and-scaling/shards.mdx,https://clickhouse.com/docs/shards,https://private-7c7dfe99.mintlify.app/guides/oss/deployment-and-scaling/shards,matched,c09957405447bdec,true,c09957405447bdec,2026-05-19T11:48:22+00:00,false
-/sql-reference,docs/sql-reference/index.md,reference/home.mdx,https://clickhouse.com/docs/sql-reference,https://private-7c7dfe99.mintlify.app/reference/home,matched,1aafbee1019940fc,true,1aafbee1019940fc,2026-05-09T14:57:56+00:00,false
-/sql-reference/aggregate-functions/,docs/sql-reference/aggregate-functions/index.md,reference/functions/aggregate-functions/index.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions,matched,df7ce95c5f1c1b12,true,df7ce95c5f1c1b12,2026-05-19T11:08:53+00:00,false
-/sql-reference/aggregate-functions/combinators,docs/sql-reference/aggregate-functions/combinators.md,reference/functions/aggregate-functions/combinators.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/combinators,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/combinators,matched,378575d2d4484704,true,378575d2d4484704,2026-05-19T11:08:53+00:00,false
-/sql-reference/aggregate-functions/grouping_function,docs/sql-reference/aggregate-functions/grouping_function.md,reference/functions/aggregate-functions/grouping_function.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/grouping_function,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/grouping_function,matched,762a3b737dc65489,true,4ae0bd2c9234eb6b,2026-05-08T09:09:20+00:00,false
-/sql-reference/aggregate-functions/parametric-functions,docs/sql-reference/aggregate-functions/parametric-functions.md,reference/functions/aggregate-functions/parametric-functions.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/parametric-functions,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/parametric-functions,matched,5a0e0da43f9b2ee6,true,5a0e0da43f9b2ee6,2026-05-19T11:08:53+00:00,false
-/sql-reference/aggregate-functions/reference/,docs/sql-reference/aggregate-functions/reference/index.md,reference/functions/aggregate-functions/reference/index.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference,matched,f6e3dff3f3ba3633,true,f6e3dff3f3ba3633,2026-05-19T11:08:53+00:00,false
-/sql-reference/aggregate-functions/reference/aggthrow,docs/sql-reference/aggregate-functions/reference/aggThrow.md,reference/functions/aggregate-functions/reference/aggThrow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/aggthrow,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/aggThrow,matched,6ba276ab5cfbe4d3,true,6ba276ab5cfbe4d3,2026-05-08T20:59:52+00:00,false
-/sql-reference/aggregate-functions/reference/analysis_of_variance,docs/sql-reference/aggregate-functions/reference/analysisOfVariance.md,reference/functions/aggregate-functions/reference/analysis_of_variance.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/analysis_of_variance,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/analysis_of_variance,matched,398aae7e93baf0b0,true,398aae7e93baf0b0,2026-05-08T20:59:52+00:00,false
-/sql-reference/aggregate-functions/reference/any,docs/sql-reference/aggregate-functions/reference/any.md,reference/functions/aggregate-functions/reference/any.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/any,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/any,matched,a3176632042c5129,true,a3176632042c5129,2026-05-08T20:59:52+00:00,false
-/sql-reference/aggregate-functions/reference/anyheavy,docs/sql-reference/aggregate-functions/reference/anyHeavy.md,reference/functions/aggregate-functions/reference/anyHeavy.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anyheavy,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/anyHeavy,matched,a21ee7b1ac3b959c,true,a21ee7b1ac3b959c,2026-05-08T20:59:52+00:00,false
-/sql-reference/aggregate-functions/reference/anylast,docs/sql-reference/aggregate-functions/reference/anyLast.md,reference/functions/aggregate-functions/reference/anyLast.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anylast,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/anyLast,matched,b7d60158c0d2b54a,true,b7d60158c0d2b54a,2026-05-08T20:59:52+00:00,false
-/sql-reference/aggregate-functions/reference/approxtopk,docs/sql-reference/aggregate-functions/reference/approx_top_k.md,reference/functions/aggregate-functions/reference/approxtopk.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopk,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/approxtopk,matched,e759b1fe48e70697,true,e759b1fe48e70697,2026-05-08T20:59:53+00:00,false
-/sql-reference/aggregate-functions/reference/approxtopsum,docs/sql-reference/aggregate-functions/reference/approx_top_sum.md,reference/functions/aggregate-functions/reference/approxtopsum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopsum,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/approxtopsum,matched,dd0d07b84d9d533f,true,dd0d07b84d9d533f,2026-05-08T20:59:53+00:00,false
-/sql-reference/aggregate-functions/reference/argandmax,docs/sql-reference/aggregate-functions/reference/argAndMax.md,reference/functions/aggregate-functions/reference/argAndMax.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmax,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/argAndMax,matched,4a0b65b563ac6374,true,4a0b65b563ac6374,2026-05-09T10:03:34+00:00,false
-/sql-reference/aggregate-functions/reference/argandmin,docs/sql-reference/aggregate-functions/reference/argAndMin.md,reference/functions/aggregate-functions/reference/argAndMin.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmin,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/argAndMin,matched,0cb02e2dc7a0ac01,true,0cb02e2dc7a0ac01,2026-05-09T10:03:34+00:00,false
-/sql-reference/aggregate-functions/reference/argmax,docs/sql-reference/aggregate-functions/reference/argMax.md,reference/functions/aggregate-functions/reference/argMax.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmax,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/argMax,matched,1bb7830c175f6110,true,1bb7830c175f6110,2026-05-08T20:59:53+00:00,false
-/sql-reference/aggregate-functions/reference/argmin,docs/sql-reference/aggregate-functions/reference/argMin.md,reference/functions/aggregate-functions/reference/argMin.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmin,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/argMin,matched,2323b12ec894a16b,true,2323b12ec894a16b,2026-05-08T20:59:54+00:00,false
-/sql-reference/aggregate-functions/reference/avg,docs/sql-reference/aggregate-functions/reference/avg.md,reference/functions/aggregate-functions/reference/avg.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avg,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/avg,matched,d9d595a6a1a18d45,true,d9d595a6a1a18d45,2026-05-08T20:59:54+00:00,false
-/sql-reference/aggregate-functions/reference/avgweighted,docs/sql-reference/aggregate-functions/reference/avgWeighted.md,reference/functions/aggregate-functions/reference/avgWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avgweighted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/avgWeighted,matched,e383814143b85e4d,true,e383814143b85e4d,2026-05-08T20:59:54+00:00,false
-/sql-reference/aggregate-functions/reference/boundingRatio,docs/sql-reference/aggregate-functions/reference/boundingRatio.md,reference/functions/aggregate-functions/reference/boundrat.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/boundingRatio,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/boundrat,matched,698529c1c233004e,true,698529c1c233004e,2026-05-08T20:59:54+00:00,false
-/sql-reference/aggregate-functions/reference/categoricalinformationvalue,docs/sql-reference/aggregate-functions/reference/categoricalInformationValue.md,reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/categoricalinformationvalue,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/categoricalInformationValue,matched,8e2f2cade587700c,true,8e2f2cade587700c,2026-05-08T20:59:54+00:00,false
-/sql-reference/aggregate-functions/reference/contingency,docs/sql-reference/aggregate-functions/reference/contingency.md,reference/functions/aggregate-functions/reference/contingency.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/contingency,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/contingency,matched,76fe747ef9e3df7f,true,76fe747ef9e3df7f,2026-05-08T20:59:54+00:00,false
-/sql-reference/aggregate-functions/reference/corr,docs/sql-reference/aggregate-functions/reference/corr.md,reference/functions/aggregate-functions/reference/corr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corr,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/corr,matched,c8693c629f190e01,true,c8693c629f190e01,2026-05-09T09:39:38+00:00,false
-/sql-reference/aggregate-functions/reference/corrmatrix,docs/sql-reference/aggregate-functions/reference/corrMatrix.md,reference/functions/aggregate-functions/reference/corrMatrix.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrmatrix,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/corrMatrix,matched,5ccf3ca405085bfb,true,5ccf3ca405085bfb,2026-05-08T20:59:55+00:00,false
-/sql-reference/aggregate-functions/reference/corrstable,docs/sql-reference/aggregate-functions/reference/corrStable.md,reference/functions/aggregate-functions/reference/corrStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrstable,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/corrStable,matched,a67a928a769a9165,true,a67a928a769a9165,2026-05-08T20:59:55+00:00,false
-/sql-reference/aggregate-functions/reference/count,docs/sql-reference/aggregate-functions/reference/count.md,reference/functions/aggregate-functions/reference/count.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/count,matched,b2ef50a73b4e4418,true,b2ef50a73b4e4418,2026-05-08T20:59:55+00:00,false
-/sql-reference/aggregate-functions/reference/covarpop,docs/sql-reference/aggregate-functions/reference/covarPop.md,reference/functions/aggregate-functions/reference/covarPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpop,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/covarPop,matched,cfd2dc76064c59d6,true,cfd2dc76064c59d6,2026-05-09T09:39:38+00:00,false
-/sql-reference/aggregate-functions/reference/covarpopmatrix,docs/sql-reference/aggregate-functions/reference/covarPopMatrix.md,reference/functions/aggregate-functions/reference/covarPopMatrix.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopmatrix,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/covarPopMatrix,matched,d338a39820758b31,true,d338a39820758b31,2026-05-08T20:59:55+00:00,false
-/sql-reference/aggregate-functions/reference/covarpopstable,docs/sql-reference/aggregate-functions/reference/covarPopStable.md,reference/functions/aggregate-functions/reference/covarPopStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopstable,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/covarPopStable,matched,5c31fcdb71165467,true,5c31fcdb71165467,2026-05-08T20:59:56+00:00,false
-/sql-reference/aggregate-functions/reference/covarsamp,docs/sql-reference/aggregate-functions/reference/covarSamp.md,reference/functions/aggregate-functions/reference/covarSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsamp,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/covarSamp,matched,fcce329920930fbd,true,fcce329920930fbd,2026-05-08T20:59:56+00:00,false
-/sql-reference/aggregate-functions/reference/covarsampmatrix,docs/sql-reference/aggregate-functions/reference/covarSampMatrix.md,reference/functions/aggregate-functions/reference/covarSampMatrix.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampmatrix,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/covarSampMatrix,matched,624cd9deedc19d98,true,624cd9deedc19d98,2026-05-08T20:59:56+00:00,false
-/sql-reference/aggregate-functions/reference/covarsampstable,docs/sql-reference/aggregate-functions/reference/covarSampStable.md,reference/functions/aggregate-functions/reference/covarSampStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampstable,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/covarSampStable,matched,fce0840da6fb476b,true,fce0840da6fb476b,2026-05-08T20:59:56+00:00,false
-/sql-reference/aggregate-functions/reference/cramersv,docs/sql-reference/aggregate-functions/reference/cramersV.md,reference/functions/aggregate-functions/reference/cramersV.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersv,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/cramersV,matched,652aacd423f4e473,true,652aacd423f4e473,2026-05-08T20:59:56+00:00,false
-/sql-reference/aggregate-functions/reference/cramersvbiascorrected,docs/sql-reference/aggregate-functions/reference/cramersVBiasCorrected.md,reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersvbiascorrected,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/cramersVBiasCorrected,matched,d42c0e3dc3e9b596,true,d42c0e3dc3e9b596,2026-05-08T20:59:56+00:00,false
-/sql-reference/aggregate-functions/reference/deltasum,docs/sql-reference/aggregate-functions/reference/deltaSum.md,reference/functions/aggregate-functions/reference/deltaSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasum,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/deltaSum,matched,73e5fae7d5e1cf9c,true,73e5fae7d5e1cf9c,2026-05-08T20:59:57+00:00,false
-/sql-reference/aggregate-functions/reference/deltasumtimestamp,docs/sql-reference/aggregate-functions/reference/deltaSumTimestamp.md,reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasumtimestamp,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/deltaSumTimestamp,matched,ebec021fbb72405d,true,ebec021fbb72405d,2026-05-08T20:59:57+00:00,false
-/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes,docs/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes.md,reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes,matched,35a8ceaed4a39ddb,true,35a8ceaed4a39ddb,2026-05-08T20:59:57+00:00,false
-/sql-reference/aggregate-functions/reference/distinctdynamictypes,docs/sql-reference/aggregate-functions/reference/distinctDynamicTypes.md,reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctdynamictypes,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/distinctDynamicTypes,matched,b350efeb3af95f80,true,b350efeb3af95f80,2026-05-08T20:59:57+00:00,false
-/sql-reference/aggregate-functions/reference/distinctjsonpaths,docs/sql-reference/aggregate-functions/reference/distinctJSONPaths.md,reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctjsonpaths,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/distinctJSONPaths,matched,2fdae4509a21feab,true,2fdae4509a21feab,2026-05-08T20:59:57+00:00,false
-/sql-reference/aggregate-functions/reference/entropy,docs/sql-reference/aggregate-functions/reference/entropy.md,reference/functions/aggregate-functions/reference/entropy.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/entropy,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/entropy,matched,ed58fc9337c3b0ad,true,ed58fc9337c3b0ad,2026-05-08T20:59:57+00:00,false
-/sql-reference/aggregate-functions/reference/estimateCompressionRatio,docs/sql-reference/aggregate-functions/reference/estimateCompressionRatio.md,reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/estimateCompressionRatio,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/estimateCompressionRatio,matched,dfd4fd08c59b8f2c,true,dfd4fd08c59b8f2c,2026-05-08T20:59:58+00:00,false
-/sql-reference/aggregate-functions/reference/exponentialMovingAverage,docs/sql-reference/aggregate-functions/reference/exponentialMovingAverage.md,reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialMovingAverage,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/exponentialMovingAverage,matched,29a32c3dfbe7431c,true,29a32c3dfbe7431c,2026-05-08T20:59:58+00:00,false
-/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg.md,reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg,matched,990377788926a74e,true,990377788926a74e,2026-05-08T20:59:58+00:00,false
-/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount.md,reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount,matched,fbadbbdc7fe13930,true,fbadbbdc7fe13930,2026-05-08T20:59:58+00:00,false
-/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax.md,reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax,matched,5adb749a9d666932,true,5adb749a9d666932,2026-05-08T20:59:58+00:00,false
-/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum.md,reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum,matched,e9a76eae13bb7219,true,e9a76eae13bb7219,2026-05-08T20:59:58+00:00,false
-/sql-reference/aggregate-functions/reference/first_value,docs/sql-reference/aggregate-functions/reference/first_value.md,reference/functions/aggregate-functions/reference/first_value.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/first_value,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/first_value,matched,5df182c6b8526daa,true,4221d7097f28b112,2026-05-09T09:39:38+00:00,false
-/sql-reference/aggregate-functions/reference/flame_graph,docs/sql-reference/aggregate-functions/reference/flameGraph.md,reference/functions/aggregate-functions/reference/flame_graph.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/flame_graph,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/flame_graph,matched,7c582ef0059274e3,true,7c582ef0059274e3,2026-05-19T11:08:53+00:00,false
-/sql-reference/aggregate-functions/reference/grouparray,docs/sql-reference/aggregate-functions/reference/groupArray.md,reference/functions/aggregate-functions/reference/groupArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparray,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArray,matched,494298de736b875e,true,494298de736b875e,2026-05-08T20:59:59+00:00,false
-/sql-reference/aggregate-functions/reference/grouparrayarray,docs/sql-reference/aggregate-functions/reference/groupArrayArray.md,reference/functions/aggregate-functions/reference/groupArrayArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayarray,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArrayArray,matched,30aaf8f2841c94b9,true,3a1d95bba36015c5,2026-05-07T14:49:41+00:00,false
-/sql-reference/aggregate-functions/reference/grouparrayinsertat,docs/sql-reference/aggregate-functions/reference/groupArrayInsertAt.md,reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayinsertat,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArrayInsertAt,matched,5200d13fb0ecbec5,true,5200d13fb0ecbec5,2026-05-08T20:59:59+00:00,false
-/sql-reference/aggregate-functions/reference/grouparrayintersect,docs/sql-reference/aggregate-functions/reference/groupArrayIntersect.md,reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayintersect,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArrayIntersect,matched,73542684e7ae142e,true,73542684e7ae142e,2026-05-08T20:59:59+00:00,false
-/sql-reference/aggregate-functions/reference/grouparraylast,docs/sql-reference/aggregate-functions/reference/groupArrayLast.md,reference/functions/aggregate-functions/reference/groupArrayLast.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraylast,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArrayLast,matched,72f024a3d7e462f9,true,72f024a3d7e462f9,2026-05-08T20:59:59+00:00,false
-/sql-reference/aggregate-functions/reference/grouparraymovingavg,docs/sql-reference/aggregate-functions/reference/groupArrayMovingAvg.md,reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingavg,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArrayMovingAvg,matched,1b782bf5bd48245c,true,1b782bf5bd48245c,2026-05-08T20:59:59+00:00,false
-/sql-reference/aggregate-functions/reference/grouparraymovingsum,docs/sql-reference/aggregate-functions/reference/groupArrayMovingSum.md,reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingsum,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArrayMovingSum,matched,3c19fe86868926c9,true,3c19fe86868926c9,2026-05-08T21:00:00+00:00,false
-/sql-reference/aggregate-functions/reference/grouparraysample,docs/sql-reference/aggregate-functions/reference/groupArraySample.md,reference/functions/aggregate-functions/reference/groupArraySample.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysample,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArraySample,matched,2bf4ef5f0bef08cd,true,2bf4ef5f0bef08cd,2026-05-08T21:00:00+00:00,false
-/sql-reference/aggregate-functions/reference/grouparraysorted,docs/sql-reference/aggregate-functions/reference/groupArraySorted.md,reference/functions/aggregate-functions/reference/groupArraySorted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysorted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupArraySorted,matched,36d5fb7771b569b5,true,36d5fb7771b569b5,2026-05-08T21:00:00+00:00,false
-/sql-reference/aggregate-functions/reference/groupbitand,docs/sql-reference/aggregate-functions/reference/groupBitAnd.md,reference/functions/aggregate-functions/reference/groupBitAnd.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitand,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupBitAnd,matched,4b2443b2330e1677,true,4b2443b2330e1677,2026-05-08T21:00:00+00:00,false
-/sql-reference/aggregate-functions/reference/groupbitmap,docs/sql-reference/aggregate-functions/reference/groupBitmap.md,reference/functions/aggregate-functions/reference/groupBitmap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmap,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupBitmap,matched,c90dbfa2b1c8ef6c,true,c90dbfa2b1c8ef6c,2026-05-08T21:00:01+00:00,false
-/sql-reference/aggregate-functions/reference/groupbitmapand,docs/sql-reference/aggregate-functions/reference/groupBitmapAnd.md,reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapand,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupBitmapAnd,matched,df6c684bf932f088,true,df6c684bf932f088,2026-05-08T21:00:01+00:00,false
-/sql-reference/aggregate-functions/reference/groupbitmapor,docs/sql-reference/aggregate-functions/reference/groupBitmapOr.md,reference/functions/aggregate-functions/reference/groupBitmapOr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapor,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupBitmapOr,matched,0eaec4ec9af6dde2,true,0eaec4ec9af6dde2,2026-05-08T21:00:01+00:00,false
-/sql-reference/aggregate-functions/reference/groupbitmapxor,docs/sql-reference/aggregate-functions/reference/groupBitmapXor.md,reference/functions/aggregate-functions/reference/groupBitmapXor.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapxor,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupBitmapXor,matched,1e730d1721dd63a6,true,1e730d1721dd63a6,2026-05-08T21:00:01+00:00,false
-/sql-reference/aggregate-functions/reference/groupbitor,docs/sql-reference/aggregate-functions/reference/groupBitOr.md,reference/functions/aggregate-functions/reference/groupBitOr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitor,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupBitOr,matched,b0b38466e6e43952,true,b0b38466e6e43952,2026-05-08T21:00:00+00:00,false
-/sql-reference/aggregate-functions/reference/groupbitxor,docs/sql-reference/aggregate-functions/reference/groupBitXor.md,reference/functions/aggregate-functions/reference/groupBitXor.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitxor,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupBitXor,matched,6f9cf66e8d91ee27,true,6f9cf66e8d91ee27,2026-05-08T21:00:00+00:00,false
-/sql-reference/aggregate-functions/reference/groupconcat,docs/sql-reference/aggregate-functions/reference/groupConcat.md,reference/functions/aggregate-functions/reference/groupConcat.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupconcat,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupConcat,matched,aef59c59999cb93f,true,aef59c59999cb93f,2026-05-08T21:00:01+00:00,false
-/sql-reference/aggregate-functions/reference/groupuniqarray,docs/sql-reference/aggregate-functions/reference/groupUniqArray.md,reference/functions/aggregate-functions/reference/groupUniqArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupuniqarray,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/groupUniqArray,matched,4f1528557c879670,true,4f1528557c879670,2026-05-08T21:00:01+00:00,false
-/sql-reference/aggregate-functions/reference/intervalLengthSum,docs/sql-reference/aggregate-functions/reference/intervalLengthSum.md,reference/functions/aggregate-functions/reference/intervalLengthSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/intervalLengthSum,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/intervalLengthSum,matched,c362c634343f806c,true,c362c634343f806c,2026-05-08T21:00:02+00:00,false
-/sql-reference/aggregate-functions/reference/kolmogorovsmirnovtest,docs/sql-reference/aggregate-functions/reference/kolmogorovSmirnovTest.md,reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kolmogorovsmirnovtest,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest,matched,27687d12b6f1c455,true,27687d12b6f1c455,2026-05-08T21:00:02+00:00,false
-/sql-reference/aggregate-functions/reference/kurtpop,docs/sql-reference/aggregate-functions/reference/kurtPop.md,reference/functions/aggregate-functions/reference/kurtPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtpop,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/kurtPop,matched,33b95ba74805d730,true,33b95ba74805d730,2026-05-08T21:00:02+00:00,false
-/sql-reference/aggregate-functions/reference/kurtsamp,docs/sql-reference/aggregate-functions/reference/kurtSamp.md,reference/functions/aggregate-functions/reference/kurtSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtsamp,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/kurtSamp,matched,16d5e9fb741c9428,true,16d5e9fb741c9428,2026-05-08T21:00:02+00:00,false
-/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets,docs/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets.md,reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets,matched,faacd7ce22cd604f,true,faacd7ce22cd604f,2026-05-08T21:00:02+00:00,false
-/sql-reference/aggregate-functions/reference/last_value,docs/sql-reference/aggregate-functions/reference/last_value.md,reference/functions/aggregate-functions/reference/last_value.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/last_value,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/last_value,matched,f56dfaab318ae549,true,0b3c34b1376a8b6a,2026-05-09T09:39:38+00:00,false
-/sql-reference/aggregate-functions/reference/mannwhitneyutest,docs/sql-reference/aggregate-functions/reference/mannWhitneyUTest.md,reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/mannwhitneyutest,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/mannWhitneyUTest,matched,4367510976c76b40,true,4367510976c76b40,2026-05-08T21:00:03+00:00,false
-/sql-reference/aggregate-functions/reference/max,docs/sql-reference/aggregate-functions/reference/max.md,reference/functions/aggregate-functions/reference/max.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/max,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/max,matched,b0cbff46a8a26271,true,b0cbff46a8a26271,2026-05-08T21:00:03+00:00,false
-/sql-reference/aggregate-functions/reference/maxintersections,docs/sql-reference/aggregate-functions/reference/maxIntersections.md,reference/functions/aggregate-functions/reference/maxIntersections.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersections,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/maxIntersections,matched,1db6c9bf885f905c,true,1db6c9bf885f905c,2026-05-08T21:00:03+00:00,false
-/sql-reference/aggregate-functions/reference/maxintersectionsposition,docs/sql-reference/aggregate-functions/reference/maxIntersectionsPosition.md,reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersectionsposition,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/maxIntersectionsPosition,matched,2f7f75d00642024e,true,2f7f75d00642024e,2026-05-08T21:00:03+00:00,false
-/sql-reference/aggregate-functions/reference/maxmap,docs/sql-reference/aggregate-functions/reference/maxMappedArrays.md,reference/functions/aggregate-functions/reference/maxMap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxmap,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/maxMap,matched,f0fe439c1f7370f3,true,f0fe439c1f7370f3,2026-05-13T13:16:51+00:00,false
-/sql-reference/aggregate-functions/reference/meanztest,docs/sql-reference/aggregate-functions/reference/meanZTest.md,reference/functions/aggregate-functions/reference/meanZTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/meanztest,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/meanZTest,matched,51be0a7689b2a9f9,true,51be0a7689b2a9f9,2026-05-08T21:00:03+00:00,false
-/sql-reference/aggregate-functions/reference/median,docs/sql-reference/aggregate-functions/reference/median.md,reference/functions/aggregate-functions/reference/median.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/median,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/median,matched,ad5f042fbebec65e,true,ad5f042fbebec65e,2026-05-19T11:08:53+00:00,false
-/sql-reference/aggregate-functions/reference/min,docs/sql-reference/aggregate-functions/reference/min.md,reference/functions/aggregate-functions/reference/min.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/min,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/min,matched,b84822a35e335c8a,true,b84822a35e335c8a,2026-05-08T21:00:04+00:00,false
-/sql-reference/aggregate-functions/reference/minmap,docs/sql-reference/aggregate-functions/reference/minMappedArrays.md,reference/functions/aggregate-functions/reference/minMap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/minmap,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/minMap,matched,e3a1e1ace77e38b6,true,e3a1e1ace77e38b6,2026-05-08T21:00:04+00:00,false
-/sql-reference/aggregate-functions/reference/quantile,docs/sql-reference/aggregate-functions/reference/quantile.md,reference/functions/aggregate-functions/reference/quantile.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantile,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantile,matched,4ba18890167b40fd,true,4ba18890167b40fd,2026-05-09T09:39:38+00:00,false
-/sql-reference/aggregate-functions/reference/quantileExactExclusive,docs/sql-reference/aggregate-functions/reference/quantileExactExclusive.md,reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactExclusive,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileExactExclusive,matched,ed2a0f781f64a5ae,true,ed2a0f781f64a5ae,2026-05-08T21:00:05+00:00,false
-/sql-reference/aggregate-functions/reference/quantileExactHigh,docs/sql-reference/aggregate-functions/reference/quantileExactHigh.md,reference/functions/aggregate-functions/reference/quantileExactHigh.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactHigh,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileExactHigh,matched,4a48e8ed7359f12e,true,4a48e8ed7359f12e,2026-05-08T21:00:05+00:00,false
-/sql-reference/aggregate-functions/reference/quantileExactInclusive,docs/sql-reference/aggregate-functions/reference/quantileExactInclusive.md,reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactInclusive,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileExactInclusive,matched,e650a118cfedfa52,true,e650a118cfedfa52,2026-05-08T21:00:05+00:00,false
-/sql-reference/aggregate-functions/reference/quantileExactLow,docs/sql-reference/aggregate-functions/reference/quantileExactLow.md,reference/functions/aggregate-functions/reference/quantileExactLow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactLow,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileExactLow,matched,e755c0c350683c45,true,e755c0c350683c45,2026-05-08T21:00:05+00:00,false
-/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated,docs/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated.md,reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated,matched,599497aa7290178e,true,599497aa7290178e,2026-05-08T21:00:06+00:00,false
-/sql-reference/aggregate-functions/reference/quantileGK,docs/sql-reference/aggregate-functions/reference/quantileGK.md,reference/functions/aggregate-functions/reference/quantileGK.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileGK,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileGK,matched,d2a54f56603dc2f3,true,d2a54f56603dc2f3,2026-05-08T21:00:06+00:00,false
-/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted,docs/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted.md,reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted,matched,e1ea7341c5f539b8,true,e1ea7341c5f539b8,2026-05-08T21:00:06+00:00,false
-/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram,docs/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram.md,reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram,matched,29ce947c5bccd54e,true,29ce947c5bccd54e,2026-05-08T21:00:06+00:00,false
-/sql-reference/aggregate-functions/reference/quantilebfloat16,docs/sql-reference/aggregate-functions/reference/quantileBFloat16.md,reference/functions/aggregate-functions/reference/quantileBFloat16.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilebfloat16,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileBFloat16,matched,e02f8398a1e6c992,true,e02f8398a1e6c992,2026-05-08T21:00:04+00:00,false
-/sql-reference/aggregate-functions/reference/quantileddsketch,docs/sql-reference/aggregate-functions/reference/quantileDD.md,reference/functions/aggregate-functions/reference/quantileddsketch.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileddsketch,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileddsketch,matched,b70b5911fe4dcdcd,true,b70b5911fe4dcdcd,2026-05-08T21:00:07+00:00,false
-/sql-reference/aggregate-functions/reference/quantiledeterministic,docs/sql-reference/aggregate-functions/reference/quantileDeterministic.md,reference/functions/aggregate-functions/reference/quantileDeterministic.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiledeterministic,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileDeterministic,matched,6b577bef9f8aabe5,true,6b577bef9f8aabe5,2026-05-08T21:00:04+00:00,false
-/sql-reference/aggregate-functions/reference/quantileexact,docs/sql-reference/aggregate-functions/reference/quantileExact.md,reference/functions/aggregate-functions/reference/quantileExact.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexact,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileExact,matched,c06d0383b8fa44d6,true,c06d0383b8fa44d6,2026-05-08T21:00:04+00:00,false
-/sql-reference/aggregate-functions/reference/quantileexactweighted,docs/sql-reference/aggregate-functions/reference/quantileExactWeighted.md,reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexactweighted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileExactWeighted,matched,55fe1cc2813d807d,true,55fe1cc2813d807d,2026-05-08T21:00:05+00:00,false
-/sql-reference/aggregate-functions/reference/quantiles,docs/sql-reference/aggregate-functions/reference/quantiles.md,reference/functions/aggregate-functions/reference/quantiles.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiles,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantiles,matched,10a8a9fb55d3667e,true,10a8a9fb55d3667e,2026-05-08T21:00:07+00:00,false
-/sql-reference/aggregate-functions/reference/quantilesExactExclusive,docs/sql-reference/aggregate-functions/reference/quantilesExactExclusive.md,reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactExclusive,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantilesExactExclusive,matched,d34559dee60fa650,true,d34559dee60fa650,2026-05-08T21:00:07+00:00,false
-/sql-reference/aggregate-functions/reference/quantilesExactInclusive,docs/sql-reference/aggregate-functions/reference/quantilesExactInclusive.md,reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactInclusive,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantilesExactInclusive,matched,585098e46f9ed905,true,585098e46f9ed905,2026-05-08T21:00:07+00:00,false
-/sql-reference/aggregate-functions/reference/quantilesGK,docs/sql-reference/aggregate-functions/reference/quantilesGK.md,reference/functions/aggregate-functions/reference/quantilesGK.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesGK,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantilesGK,matched,94e0f130f7219917,true,94e0f130f7219917,2026-05-08T21:00:08+00:00,false
-/sql-reference/aggregate-functions/reference/quantilestimingweighted,docs/sql-reference/aggregate-functions/reference/quantilesTimingWeighted.md,reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilestimingweighted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantilesTimingWeighted,matched,62b3f7a28b018c37,true,62b3f7a28b018c37,2026-05-08T21:00:08+00:00,false
-/sql-reference/aggregate-functions/reference/quantiletdigest,docs/sql-reference/aggregate-functions/reference/quantileTDigest.md,reference/functions/aggregate-functions/reference/quantileTDigest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigest,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileTDigest,matched,1d7cc3bd0a254723,true,1d7cc3bd0a254723,2026-05-08T21:00:06+00:00,false
-/sql-reference/aggregate-functions/reference/quantiletdigestweighted,docs/sql-reference/aggregate-functions/reference/quantileTDigestWeighted.md,reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigestweighted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileTDigestWeighted,matched,75265d258c6d0d1c,true,75265d258c6d0d1c,2026-05-08T21:00:06+00:00,false
-/sql-reference/aggregate-functions/reference/quantiletiming,docs/sql-reference/aggregate-functions/reference/quantileTiming.md,reference/functions/aggregate-functions/reference/quantileTiming.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletiming,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileTiming,matched,01a30e87131303d3,true,01a30e87131303d3,2026-05-08T21:00:07+00:00,false
-/sql-reference/aggregate-functions/reference/quantiletimingweighted,docs/sql-reference/aggregate-functions/reference/quantileTimingWeighted.md,reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletimingweighted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/quantileTimingWeighted,matched,6d110c327a873af2,true,6d110c327a873af2,2026-05-08T21:00:07+00:00,false
-/sql-reference/aggregate-functions/reference/rankCorr,docs/sql-reference/aggregate-functions/reference/rankCorr.md,reference/functions/aggregate-functions/reference/rankCorr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/rankCorr,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/rankCorr,matched,5eb236ef7745a0b9,true,5eb236ef7745a0b9,2026-05-08T21:00:08+00:00,false
-/sql-reference/aggregate-functions/reference/simplelinearregression,docs/sql-reference/aggregate-functions/reference/simpleLinearRegression.md,reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/simplelinearregression,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/simpleLinearRegression,matched,d7486769247276c2,true,d7486769247276c2,2026-05-08T21:00:08+00:00,false
-/sql-reference/aggregate-functions/reference/singlevalueornull,docs/sql-reference/aggregate-functions/reference/singleValueOrNull.md,reference/functions/aggregate-functions/reference/singleValueOrNull.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/singlevalueornull,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/singleValueOrNull,matched,067ce8f52cc34020,true,067ce8f52cc34020,2026-05-08T21:00:08+00:00,false
-/sql-reference/aggregate-functions/reference/skewpop,docs/sql-reference/aggregate-functions/reference/skewPop.md,reference/functions/aggregate-functions/reference/skewPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewpop,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/skewPop,matched,e2af24567eed8273,true,e2af24567eed8273,2026-05-08T21:00:08+00:00,false
-/sql-reference/aggregate-functions/reference/skewsamp,docs/sql-reference/aggregate-functions/reference/skewSamp.md,reference/functions/aggregate-functions/reference/skewSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewsamp,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/skewSamp,matched,4016cf36e3a3e5ec,true,4016cf36e3a3e5ec,2026-05-08T21:00:09+00:00,false
-/sql-reference/aggregate-functions/reference/sparkbar,docs/sql-reference/aggregate-functions/reference/sparkbar.md,reference/functions/aggregate-functions/reference/sparkbar.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sparkbar,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/sparkbar,matched,7bd5a27027209cee,true,7bd5a27027209cee,2026-05-08T21:00:09+00:00,false
-/sql-reference/aggregate-functions/reference/stddevpop,docs/sql-reference/aggregate-functions/reference/stddevPop.md,reference/functions/aggregate-functions/reference/stddevPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpop,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/stddevPop,matched,c5ce3f3d8df7d8d6,true,c5ce3f3d8df7d8d6,2026-05-08T21:00:09+00:00,false
-/sql-reference/aggregate-functions/reference/stddevpopstable,docs/sql-reference/aggregate-functions/reference/stddevPopStable.md,reference/functions/aggregate-functions/reference/stddevPopStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpopstable,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/stddevPopStable,matched,16baf1cfe989fd73,true,16baf1cfe989fd73,2026-05-08T21:00:09+00:00,false
-/sql-reference/aggregate-functions/reference/stddevsamp,docs/sql-reference/aggregate-functions/reference/stddevSamp.md,reference/functions/aggregate-functions/reference/stddevSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsamp,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/stddevSamp,matched,379c0a8ad495e0b1,true,379c0a8ad495e0b1,2026-05-19T11:08:53+00:00,false
-/sql-reference/aggregate-functions/reference/stddevsampstable,docs/sql-reference/aggregate-functions/reference/stddevSampStable.md,reference/functions/aggregate-functions/reference/stddevSampStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsampstable,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/stddevSampStable,matched,1fadf143f4ef0cf4,true,1fadf143f4ef0cf4,2026-05-08T21:00:09+00:00,false
-/sql-reference/aggregate-functions/reference/stochasticlinearregression,docs/sql-reference/aggregate-functions/reference/stochasticLinearRegression.md,reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlinearregression,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/stochasticLinearRegression,matched,c4d9e3bbe8e1bc68,true,c4d9e3bbe8e1bc68,2026-05-08T21:00:10+00:00,false
-/sql-reference/aggregate-functions/reference/stochasticlogisticregression,docs/sql-reference/aggregate-functions/reference/stochasticLogisticRegression.md,reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlogisticregression,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/stochasticLogisticRegression,matched,8b69bdb0a3aa259f,true,8b69bdb0a3aa259f,2026-05-08T21:00:10+00:00,false
-/sql-reference/aggregate-functions/reference/studentttest,docs/sql-reference/aggregate-functions/reference/studentTTest.md,reference/functions/aggregate-functions/reference/studentTTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttest,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/studentTTest,matched,cfe4523cefd58cc8,true,cfe4523cefd58cc8,2026-05-08T21:00:10+00:00,false
-/sql-reference/aggregate-functions/reference/studentttestonesample,docs/sql-reference/aggregate-functions/reference/studentTTestOneSample.md,reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttestonesample,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/studentTTestOneSample,matched,502a06938cf42f44,true,502a06938cf42f44,2026-05-08T21:00:10+00:00,false
-/sql-reference/aggregate-functions/reference/sum,docs/sql-reference/aggregate-functions/reference/sum.md,reference/functions/aggregate-functions/reference/sum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sum,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/sum,matched,0549c49a93aa84fe,true,0549c49a93aa84fe,2026-05-08T21:00:10+00:00,false
-/sql-reference/aggregate-functions/reference/sumcount,docs/sql-reference/aggregate-functions/reference/sumCount.md,reference/functions/aggregate-functions/reference/sumCount.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumcount,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/sumCount,matched,706546f7617d6591,true,706546f7617d6591,2026-05-08T21:00:10+00:00,false
-/sql-reference/aggregate-functions/reference/sumkahan,docs/sql-reference/aggregate-functions/reference/sumKahan.md,reference/functions/aggregate-functions/reference/sumKahan.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumkahan,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/sumKahan,matched,c77086880163f32d,true,c77086880163f32d,2026-05-08T21:00:11+00:00,false
-/sql-reference/aggregate-functions/reference/summap,docs/sql-reference/aggregate-functions/reference/sumMappedArrays.md,reference/functions/aggregate-functions/reference/sumMap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summap,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/sumMap,matched,07b0d144a6cab0bd,true,07b0d144a6cab0bd,2026-05-08T21:00:11+00:00,false
-/sql-reference/aggregate-functions/reference/summapwithoverflow,docs/sql-reference/aggregate-functions/reference/sumMapWithOverflow.md,reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summapwithoverflow,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/sumMapWithOverflow,matched,ae19536ac544cab1,true,ae19536ac544cab1,2026-05-08T21:00:11+00:00,false
-/sql-reference/aggregate-functions/reference/sumwithoverflow,docs/sql-reference/aggregate-functions/reference/sumWithOverflow.md,reference/functions/aggregate-functions/reference/sumWithOverflow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumwithoverflow,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/sumWithOverflow,matched,a575e1e9e1aa17c6,true,a575e1e9e1aa17c6,2026-05-08T21:00:11+00:00,false
-/sql-reference/aggregate-functions/reference/theilsu,docs/sql-reference/aggregate-functions/reference/theilsU.md,reference/functions/aggregate-functions/reference/theilsU.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/theilsu,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/theilsU,matched,f9641d2fa8c06b43,true,f9641d2fa8c06b43,2026-05-08T21:00:11+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid,matched,465c63acace057e4,true,465c63acace057e4,2026-05-08T21:00:12+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid,matched,a7575992cec3b9c1,true,a7575992cec3b9c1,2026-05-08T21:00:12+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid,matched,020c5de99f82c4de,true,020c5de99f82c4de,2026-05-08T21:00:12+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesGroupArray,docs/sql-reference/aggregate-functions/reference/timeSeriesGroupArray.md,reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesGroupArray,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesGroupArray,matched,2a88a94362703b47,true,2a88a94362703b47,2026-05-08T21:00:12+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid,matched,867429d1a5c91300,true,867429d1a5c91300,2026-05-08T21:00:12+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid,matched,6d6f94fdd0571b8c,true,6d6f94fdd0571b8c,2026-05-08T21:00:12+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples,docs/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples.md,reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples,matched,011ddcf3bc0d196f,true,011ddcf3bc0d196f,2026-05-08T21:00:13+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid,matched,402cbd0464433072,true,402cbd0464433072,2026-05-08T21:00:13+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid,matched,b5bd48b48922623f,true,b5bd48b48922623f,2026-05-08T21:00:13+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness,docs/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.md,reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness,matched,d370d2e8ea9928d6,true,d370d2e8ea9928d6,2026-05-08T21:00:13+00:00,false
-/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid.md,reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid,matched,b44ffe5bd8ce26a9,true,b44ffe5bd8ce26a9,2026-05-08T21:00:13+00:00,false
-/sql-reference/aggregate-functions/reference/topk,docs/sql-reference/aggregate-functions/reference/topK.md,reference/functions/aggregate-functions/reference/topK.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topk,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/topK,matched,273a5a9e0902dab6,true,273a5a9e0902dab6,2026-05-08T21:00:13+00:00,false
-/sql-reference/aggregate-functions/reference/topkweighted,docs/sql-reference/aggregate-functions/reference/topKWeighted.md,reference/functions/aggregate-functions/reference/topKWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topkweighted,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/topKWeighted,matched,4b44410a1a7a8c5e,true,4b44410a1a7a8c5e,2026-05-08T21:00:14+00:00,false
-/sql-reference/aggregate-functions/reference/uniq,docs/sql-reference/aggregate-functions/reference/uniq.md,reference/functions/aggregate-functions/reference/uniq.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniq,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/uniq,matched,57a4ad14f7750346,true,57a4ad14f7750346,2026-05-08T21:00:14+00:00,false
-/sql-reference/aggregate-functions/reference/uniqcombined,docs/sql-reference/aggregate-functions/reference/uniqCombined.md,reference/functions/aggregate-functions/reference/uniqCombined.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/uniqCombined,matched,47d53db402a92a77,true,47d53db402a92a77,2026-05-08T21:00:14+00:00,false
-/sql-reference/aggregate-functions/reference/uniqcombined64,docs/sql-reference/aggregate-functions/reference/uniqCombined64.md,reference/functions/aggregate-functions/reference/uniqCombined64.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined64,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/uniqCombined64,matched,ed89f2bb16c50034,true,ed89f2bb16c50034,2026-05-08T21:00:14+00:00,false
-/sql-reference/aggregate-functions/reference/uniqexact,docs/sql-reference/aggregate-functions/reference/uniqExact.md,reference/functions/aggregate-functions/reference/uniqExact.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqexact,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/uniqExact,matched,29f6f4cd3446c2f6,true,29f6f4cd3446c2f6,2026-05-08T21:00:14+00:00,false
-/sql-reference/aggregate-functions/reference/uniqhll12,docs/sql-reference/aggregate-functions/reference/uniqHLL12.md,reference/functions/aggregate-functions/reference/uniqHLL12.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqhll12,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/uniqHLL12,matched,510a2dd8db5c0a6e,true,510a2dd8db5c0a6e,2026-05-08T21:00:14+00:00,false
-/sql-reference/aggregate-functions/reference/uniqthetasketch,docs/sql-reference/aggregate-functions/reference/uniqTheta.md,reference/functions/aggregate-functions/reference/uniqthetasketch.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqthetasketch,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/uniqthetasketch,matched,0f2139338a6b37aa,true,0f2139338a6b37aa,2026-05-08T21:00:15+00:00,false
-/sql-reference/aggregate-functions/reference/varPop,docs/sql-reference/aggregate-functions/reference/varPop.md,reference/functions/aggregate-functions/reference/varPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varPop,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/varPop,matched,1579e9b9fca97bf8,true,1579e9b9fca97bf8,2026-05-08T21:00:15+00:00,false
-/sql-reference/aggregate-functions/reference/varSamp,docs/sql-reference/aggregate-functions/reference/varSamp.md,reference/functions/aggregate-functions/reference/varSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varSamp,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/varSamp,matched,e6f744197741c8c8,true,e6f744197741c8c8,2026-05-08T21:00:15+00:00,false
-/sql-reference/aggregate-functions/reference/varpopstable,docs/sql-reference/aggregate-functions/reference/varPopStable.md,reference/functions/aggregate-functions/reference/varPopStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varpopstable,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/varPopStable,matched,4fd75682cc5a8796,true,4fd75682cc5a8796,2026-05-08T21:00:15+00:00,false
-/sql-reference/aggregate-functions/reference/varsampstable,docs/sql-reference/aggregate-functions/reference/varSampStable.md,reference/functions/aggregate-functions/reference/varSampStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varsampstable,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/varSampStable,matched,571f165781684dfd,true,571f165781684dfd,2026-05-08T21:00:15+00:00,false
-/sql-reference/aggregate-functions/reference/welchttest,docs/sql-reference/aggregate-functions/reference/welchTTest.md,reference/functions/aggregate-functions/reference/welchTTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/welchttest,https://private-7c7dfe99.mintlify.app/reference/functions/aggregate-functions/reference/welchTTest,matched,093589621f5bd26b,true,093589621f5bd26b,2026-05-08T21:00:15+00:00,false
-/sql-reference/data-types/,docs/sql-reference/data-types/index.md,reference/data-types/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/,https://private-7c7dfe99.mintlify.app/reference/data-types,matched,9132f1b9b2ddc8df,true,4108560a1744ad07,2026-05-09T09:39:38+00:00,false
-/sql-reference/data-types/aggregatefunction,docs/sql-reference/data-types/aggregatefunction.md,reference/data-types/aggregatefunction.mdx,https://clickhouse.com/docs/sql-reference/data-types/aggregatefunction,https://private-7c7dfe99.mintlify.app/reference/data-types/aggregatefunction,matched,72700501d63e067f,true,52272796a3ff10b3,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/array,docs/sql-reference/data-types/array.md,reference/data-types/array.mdx,https://clickhouse.com/docs/sql-reference/data-types/array,https://private-7c7dfe99.mintlify.app/reference/data-types/array,matched,1e77a6674f8339d9,true,1e77a6674f8339d9,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/boolean,docs/sql-reference/data-types/boolean.md,reference/data-types/boolean.mdx,https://clickhouse.com/docs/sql-reference/data-types/boolean,https://private-7c7dfe99.mintlify.app/reference/data-types/boolean,matched,1030c84f2f356452,true,184622e2d0685a28,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/data-types-binary-encoding,docs/sql-reference/data-types/data-types-binary-encoding.md,reference/data-types/data-types-binary-encoding.mdx,https://clickhouse.com/docs/sql-reference/data-types/data-types-binary-encoding,https://private-7c7dfe99.mintlify.app/reference/data-types/data-types-binary-encoding,matched,4f9c147ef25a77fd,true,86296003488064b4,2026-05-09T09:39:38+00:00,false
-/sql-reference/data-types/date,docs/sql-reference/data-types/date.md,reference/data-types/date.mdx,https://clickhouse.com/docs/sql-reference/data-types/date,https://private-7c7dfe99.mintlify.app/reference/data-types/date,matched,a4e08d45fe47f80e,true,c5d8b4488de9c51f,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/date32,docs/sql-reference/data-types/date32.md,reference/data-types/date32.mdx,https://clickhouse.com/docs/sql-reference/data-types/date32,https://private-7c7dfe99.mintlify.app/reference/data-types/date32,matched,bdf2f799fb7d1f31,true,aed29aa437dec69f,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/datetime,docs/sql-reference/data-types/datetime.md,reference/data-types/datetime.mdx,https://clickhouse.com/docs/sql-reference/data-types/datetime,https://private-7c7dfe99.mintlify.app/reference/data-types/datetime,matched,707225593664b6b5,true,0e7133cab0e8062e,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/datetime64,docs/sql-reference/data-types/datetime64.md,reference/data-types/datetime64.mdx,https://clickhouse.com/docs/sql-reference/data-types/datetime64,https://private-7c7dfe99.mintlify.app/reference/data-types/datetime64,matched,be0c73ee4d2ab665,true,b4bdfab5749d54b1,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/decimal,docs/sql-reference/data-types/decimal.md,reference/data-types/decimal.mdx,https://clickhouse.com/docs/sql-reference/data-types/decimal,https://private-7c7dfe99.mintlify.app/reference/data-types/decimal,matched,653899069662089c,true,653899069662089c,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/domains/,docs/sql-reference/data-types/domains/index.md,reference/data-types/domains/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/domains/,https://private-7c7dfe99.mintlify.app/reference/data-types/domains,matched,0d25ebf14e813c04,true,35e6467692a1dada,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/dynamic,docs/sql-reference/data-types/dynamic.md,reference/data-types/dynamic.mdx,https://clickhouse.com/docs/sql-reference/data-types/dynamic,https://private-7c7dfe99.mintlify.app/reference/data-types/dynamic,matched,85e7013c7806b92c,true,e0aa544319320b10,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/enum,docs/sql-reference/data-types/enum.md,reference/data-types/enum.mdx,https://clickhouse.com/docs/sql-reference/data-types/enum,https://private-7c7dfe99.mintlify.app/reference/data-types/enum,matched,31c2da25a9947c25,true,641d2a22f3cbbdbb,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/fixedstring,docs/sql-reference/data-types/fixedstring.md,reference/data-types/fixedstring.mdx,https://clickhouse.com/docs/sql-reference/data-types/fixedstring,https://private-7c7dfe99.mintlify.app/reference/data-types/fixedstring,matched,9434b8c9845ff691,true,0151197975962877,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/float,docs/sql-reference/data-types/float.md,reference/data-types/float.mdx,https://clickhouse.com/docs/sql-reference/data-types/float,https://private-7c7dfe99.mintlify.app/reference/data-types/float,matched,2d7561d0476ccb3e,true,2d7561d0476ccb3e,2026-05-08T21:09:58+00:00,false
-/sql-reference/data-types/geo,docs/sql-reference/data-types/geo.md,reference/data-types/geo.mdx,https://clickhouse.com/docs/sql-reference/data-types/geo,https://private-7c7dfe99.mintlify.app/reference/data-types/geo,matched,6b11f46eea07e5df,true,6b11f46eea07e5df,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/int-uint,docs/sql-reference/data-types/int-uint.md,reference/data-types/int-uint.mdx,https://clickhouse.com/docs/sql-reference/data-types/int-uint,https://private-7c7dfe99.mintlify.app/reference/data-types/int-uint,matched,5cb5606bdf1fcec7,true,5cb5606bdf1fcec7,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/ipv4,docs/sql-reference/data-types/ipv4.md,reference/data-types/ipv4.mdx,https://clickhouse.com/docs/sql-reference/data-types/ipv4,https://private-7c7dfe99.mintlify.app/reference/data-types/ipv4,matched,5c8a7b7c41cedb9f,true,5c8a7b7c41cedb9f,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/ipv6,docs/sql-reference/data-types/ipv6.md,reference/data-types/ipv6.mdx,https://clickhouse.com/docs/sql-reference/data-types/ipv6,https://private-7c7dfe99.mintlify.app/reference/data-types/ipv6,matched,37840663d4e6d0f5,true,37840663d4e6d0f5,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/lowcardinality,docs/sql-reference/data-types/lowcardinality.md,reference/data-types/lowcardinality.mdx,https://clickhouse.com/docs/sql-reference/data-types/lowcardinality,https://private-7c7dfe99.mintlify.app/reference/data-types/lowcardinality,matched,201a6b0e68f5b0b2,true,8f86b16b90906a6a,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/map,docs/sql-reference/data-types/map.md,reference/data-types/map.mdx,https://clickhouse.com/docs/sql-reference/data-types/map,https://private-7c7dfe99.mintlify.app/reference/data-types/map,matched,6ae06faace8b64f4,true,6ae06faace8b64f4,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/nested-data-structures/nested,docs/sql-reference/data-types/nested-data-structures/index.md,reference/data-types/nested-data-structures/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/nested-data-structures/nested,https://private-7c7dfe99.mintlify.app/reference/data-types/nested-data-structures,matched,c11aa1da8c94f713,true,4749e80d37f15822,2026-05-08T09:09:20+00:00,false
-/sql-reference/data-types/newjson,docs/sql-reference/data-types/newjson.md,reference/data-types/newjson.mdx,https://clickhouse.com/docs/sql-reference/data-types/newjson,https://private-7c7dfe99.mintlify.app/reference/data-types/newjson,matched,753d1eabe311c68b,true,753d1eabe311c68b,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/nullable,docs/sql-reference/data-types/nullable.md,reference/data-types/nullable.mdx,https://clickhouse.com/docs/sql-reference/data-types/nullable,https://private-7c7dfe99.mintlify.app/reference/data-types/nullable,matched,e3e7ea75631dfd16,true,e3e7ea75631dfd16,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/qbit,docs/sql-reference/data-types/qbit.md,reference/data-types/qbit.mdx,https://clickhouse.com/docs/sql-reference/data-types/qbit,https://private-7c7dfe99.mintlify.app/reference/data-types/qbit,matched,3fc9aea952342cbf,true,3fc9aea952342cbf,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/simpleaggregatefunction,docs/sql-reference/data-types/simpleaggregatefunction.md,reference/data-types/simpleaggregatefunction.mdx,https://clickhouse.com/docs/sql-reference/data-types/simpleaggregatefunction,https://private-7c7dfe99.mintlify.app/reference/data-types/simpleaggregatefunction,matched,421e3771a4d1e80d,true,c976c4c588a9ad9f,2026-05-09T10:03:34+00:00,false
-/sql-reference/data-types/special-data-types/,docs/sql-reference/data-types/special-data-types/index.md,reference/data-types/special-data-types/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/,https://private-7c7dfe99.mintlify.app/reference/data-types/special-data-types,matched,ef0b6f747acfa0ec,true,ef0b6f747acfa0ec,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/special-data-types/expression,docs/sql-reference/data-types/special-data-types/expression.md,reference/data-types/special-data-types/expression.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/expression,https://private-7c7dfe99.mintlify.app/reference/data-types/special-data-types/expression,matched,88a8bd0cf24ef01e,true,383175d865a3e8e5,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/special-data-types/interval,docs/sql-reference/data-types/special-data-types/interval.md,reference/data-types/special-data-types/interval.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/interval,https://private-7c7dfe99.mintlify.app/reference/data-types/special-data-types/interval,matched,5837b36610c2b5b2,true,d9e724b9d8f9fbae,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/special-data-types/nothing,docs/sql-reference/data-types/special-data-types/nothing.md,reference/data-types/special-data-types/nothing.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/nothing,https://private-7c7dfe99.mintlify.app/reference/data-types/special-data-types/nothing,matched,1c1875de77fd50b2,true,54d4adf41787f75b,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/special-data-types/set,docs/sql-reference/data-types/special-data-types/set.md,reference/data-types/special-data-types/set.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/set,https://private-7c7dfe99.mintlify.app/reference/data-types/special-data-types/set,matched,aca07b0f37813976,true,b3961ee327c6fafc,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/string,docs/sql-reference/data-types/string.md,reference/data-types/string.mdx,https://clickhouse.com/docs/sql-reference/data-types/string,https://private-7c7dfe99.mintlify.app/reference/data-types/string,matched,0bf0ed2ba989b68d,true,664e682e3d269a46,2026-05-07T14:49:41+00:00,false
-/sql-reference/data-types/time,docs/sql-reference/data-types/time.md,reference/data-types/time.mdx,https://clickhouse.com/docs/sql-reference/data-types/time,https://private-7c7dfe99.mintlify.app/reference/data-types/time,matched,13ac35c7dfecd788,true,6fba9e18761cacdc,2026-05-09T09:39:38+00:00,false
-/sql-reference/data-types/time64,docs/sql-reference/data-types/time64.md,reference/data-types/time64.mdx,https://clickhouse.com/docs/sql-reference/data-types/time64,https://private-7c7dfe99.mintlify.app/reference/data-types/time64,matched,b76965019f794890,true,36de758d3be79f5c,2026-05-09T09:39:38+00:00,false
-/sql-reference/data-types/tuple,docs/sql-reference/data-types/tuple.md,reference/data-types/tuple.mdx,https://clickhouse.com/docs/sql-reference/data-types/tuple,https://private-7c7dfe99.mintlify.app/reference/data-types/tuple,matched,2a7e6ccb9df89177,true,2a7e6ccb9df89177,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/uuid,docs/sql-reference/data-types/uuid.md,reference/data-types/uuid.mdx,https://clickhouse.com/docs/sql-reference/data-types/uuid,https://private-7c7dfe99.mintlify.app/reference/data-types/uuid,matched,0f5f115af04037cc,true,0f5f115af04037cc,2026-05-19T11:08:53+00:00,false
-/sql-reference/data-types/variant,docs/sql-reference/data-types/variant.md,reference/data-types/variant.mdx,https://clickhouse.com/docs/sql-reference/data-types/variant,https://private-7c7dfe99.mintlify.app/reference/data-types/variant,matched,907bde6f04e567df,true,2cf40b2865b06390,2026-05-08T09:09:20+00:00,false
-/sql-reference/datalakes,docs/sql-reference/datalakes.md,reference/datalakes.mdx,https://clickhouse.com/docs/sql-reference/datalakes,https://private-7c7dfe99.mintlify.app/reference/datalakes,matched,576c6b22e45a20fa,true,576c6b22e45a20fa,2026-05-07T14:49:41+00:00,false
-/sql-reference/distributed-ddl,docs/sql-reference/distributed-ddl.md,reference/statements/distributed-ddl.mdx,https://clickhouse.com/docs/sql-reference/distributed-ddl,https://private-7c7dfe99.mintlify.app/reference/statements/distributed-ddl,matched,112d13bcf3046cf7,true,112d13bcf3046cf7,2026-05-09T17:02:01+00:00,false
+/optimize/prewhere,docs/guides/best-practices/prewhere.md,core/concepts/features/performance/prewhere.mdx,https://clickhouse.com/docs/optimize/prewhere,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/prewhere,matched,2336e34b998efec4,true,2336e34b998efec4,2026-05-08T09:09:20+00:00,false
+/optimize/query-optimization,docs/guides/best-practices/query-optimization.md,core/guides/clickhouse/performance-and-monitoring/query-optimization.mdx,https://clickhouse.com/docs/optimize/query-optimization,https://private-7c7dfe99.mintlify.app/core/guides/clickhouse/performance-and-monitoring/query-optimization,matched,eb97d0e4804d4a57,true,eb97d0e4804d4a57,2026-05-09T10:06:27+00:00,false
+/optimize/query-parallelism,docs/guides/best-practices/query-parallelism.md,core/concepts/core-concepts/query-parallelism.mdx,https://clickhouse.com/docs/optimize/query-parallelism,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/query-parallelism,matched,4b49846b352f28ab,true,4b49846b352f28ab,2026-05-08T12:19:52+00:00,false
+/optimize/skipping-indexes,docs/guides/best-practices/skipping-indexes.md,core/concepts/features/performance/skip-indexes/skipping-indexes.mdx,https://clickhouse.com/docs/optimize/skipping-indexes,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/skip-indexes/skipping-indexes,matched,a0765ef7def30754,true,a0765ef7def30754,2026-05-08T20:59:47+00:00,false
+/optimize/skipping-indexes/examples,docs/guides/best-practices/skipping-indexes-examples.md,core/concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx,https://clickhouse.com/docs/optimize/skipping-indexes/examples,https://private-7c7dfe99.mintlify.app/core/concepts/features/performance/skip-indexes/skipping-indexes-examples,matched,7a79053af7c17e5c,true,7a79053af7c17e5c,2026-05-13T13:16:51+00:00,false
+/partitions,docs/managing-data/core-concepts/partitions.mdx,core/concepts/core-concepts/partitions.mdx,https://clickhouse.com/docs/partitions,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/partitions,matched,705e5c138efe6555,true,705e5c138efe6555,2026-05-08T09:09:20+00:00,false
+/parts,docs/managing-data/core-concepts/parts.md,core/concepts/core-concepts/parts.mdx,https://clickhouse.com/docs/parts,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/parts,matched,2159d40884f408fa,true,2159d40884f408fa,2026-05-08T09:09:20+00:00,false
+/primary-indexes,docs/managing-data/core-concepts/primary-indexes.mdx,core/concepts/core-concepts/primary-indexes.mdx,https://clickhouse.com/docs/primary-indexes,https://private-7c7dfe99.mintlify.app/core/concepts/core-concepts/primary-indexes,matched,72e33543511fe165,true,72e33543511fe165,2026-05-08T09:09:20+00:00,false
+/security-and-authentication,docs/guides/sre/index.md,core/concepts/features/security/index.mdx,https://clickhouse.com/docs/security-and-authentication,https://private-7c7dfe99.mintlify.app/core/concepts/features/security/index,matched,765ed19ac411d1bf,true,765ed19ac411d1bf,2026-05-08T09:09:20+00:00,false
+/shards,docs/managing-data/core-concepts/shards.mdx,core/guides/oss/deployment-and-scaling/shards.mdx,https://clickhouse.com/docs/shards,https://private-7c7dfe99.mintlify.app/core/guides/oss/deployment-and-scaling/shards,matched,c09957405447bdec,true,c09957405447bdec,2026-05-19T11:48:22+00:00,false
+/sql-reference,docs/sql-reference/index.md,core/reference/home.mdx,https://clickhouse.com/docs/sql-reference,https://private-7c7dfe99.mintlify.app/core/reference/home,matched,1aafbee1019940fc,true,1aafbee1019940fc,2026-05-21T08:24:25+00:00,false
+/sql-reference/aggregate-functions/,docs/sql-reference/aggregate-functions/index.md,core/reference/functions/aggregate-functions/index.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/index,matched,df7ce95c5f1c1b12,true,df7ce95c5f1c1b12,2026-05-19T11:08:53+00:00,false
+/sql-reference/aggregate-functions/combinators,docs/sql-reference/aggregate-functions/combinators.md,core/reference/functions/aggregate-functions/combinators.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/combinators,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/combinators,matched,378575d2d4484704,true,378575d2d4484704,2026-05-19T11:08:53+00:00,false
+/sql-reference/aggregate-functions/grouping_function,docs/sql-reference/aggregate-functions/grouping_function.md,core/reference/functions/aggregate-functions/grouping_function.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/grouping_function,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/grouping_function,matched,762a3b737dc65489,true,4ae0bd2c9234eb6b,2026-05-08T09:09:20+00:00,false
+/sql-reference/aggregate-functions/parametric-functions,docs/sql-reference/aggregate-functions/parametric-functions.md,core/reference/functions/aggregate-functions/parametric-functions.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/parametric-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/parametric-functions,matched,5a0e0da43f9b2ee6,true,5a0e0da43f9b2ee6,2026-05-19T11:08:53+00:00,false
+/sql-reference/aggregate-functions/reference/,docs/sql-reference/aggregate-functions/reference/index.md,core/reference/functions/aggregate-functions/reference/index.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/index,matched,f6e3dff3f3ba3633,true,f6e3dff3f3ba3633,2026-05-19T11:08:53+00:00,false
+/sql-reference/aggregate-functions/reference/aggthrow,docs/sql-reference/aggregate-functions/reference/aggThrow.md,core/reference/functions/aggregate-functions/reference/aggThrow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/aggthrow,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/aggThrow,matched,6ba276ab5cfbe4d3,true,6ba276ab5cfbe4d3,2026-05-08T20:59:52+00:00,false
+/sql-reference/aggregate-functions/reference/analysis_of_variance,docs/sql-reference/aggregate-functions/reference/analysisOfVariance.md,core/reference/functions/aggregate-functions/reference/analysis_of_variance.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/analysis_of_variance,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/analysis_of_variance,matched,398aae7e93baf0b0,true,398aae7e93baf0b0,2026-05-08T20:59:52+00:00,false
+/sql-reference/aggregate-functions/reference/any,docs/sql-reference/aggregate-functions/reference/any.md,core/reference/functions/aggregate-functions/reference/any.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/any,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/any,matched,a3176632042c5129,true,a3176632042c5129,2026-05-08T20:59:52+00:00,false
+/sql-reference/aggregate-functions/reference/anyheavy,docs/sql-reference/aggregate-functions/reference/anyHeavy.md,core/reference/functions/aggregate-functions/reference/anyHeavy.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anyheavy,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/anyHeavy,matched,a21ee7b1ac3b959c,true,a21ee7b1ac3b959c,2026-05-08T20:59:52+00:00,false
+/sql-reference/aggregate-functions/reference/anylast,docs/sql-reference/aggregate-functions/reference/anyLast.md,core/reference/functions/aggregate-functions/reference/anyLast.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/anylast,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/anyLast,matched,b7d60158c0d2b54a,true,b7d60158c0d2b54a,2026-05-08T20:59:52+00:00,false
+/sql-reference/aggregate-functions/reference/approxtopk,docs/sql-reference/aggregate-functions/reference/approx_top_k.md,core/reference/functions/aggregate-functions/reference/approxtopk.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopk,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/approxtopk,matched,e759b1fe48e70697,true,e759b1fe48e70697,2026-05-08T20:59:53+00:00,false
+/sql-reference/aggregate-functions/reference/approxtopsum,docs/sql-reference/aggregate-functions/reference/approx_top_sum.md,core/reference/functions/aggregate-functions/reference/approxtopsum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/approxtopsum,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/approxtopsum,matched,dd0d07b84d9d533f,true,dd0d07b84d9d533f,2026-05-08T20:59:53+00:00,false
+/sql-reference/aggregate-functions/reference/argandmax,docs/sql-reference/aggregate-functions/reference/argAndMax.md,core/reference/functions/aggregate-functions/reference/argAndMax.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmax,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/argAndMax,matched,4a0b65b563ac6374,true,4a0b65b563ac6374,2026-05-09T10:03:34+00:00,false
+/sql-reference/aggregate-functions/reference/argandmin,docs/sql-reference/aggregate-functions/reference/argAndMin.md,core/reference/functions/aggregate-functions/reference/argAndMin.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argandmin,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/argAndMin,matched,0cb02e2dc7a0ac01,true,0cb02e2dc7a0ac01,2026-05-09T10:03:34+00:00,false
+/sql-reference/aggregate-functions/reference/argmax,docs/sql-reference/aggregate-functions/reference/argMax.md,core/reference/functions/aggregate-functions/reference/argMax.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmax,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/argMax,matched,1bb7830c175f6110,true,1bb7830c175f6110,2026-05-08T20:59:53+00:00,false
+/sql-reference/aggregate-functions/reference/argmin,docs/sql-reference/aggregate-functions/reference/argMin.md,core/reference/functions/aggregate-functions/reference/argMin.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/argmin,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/argMin,matched,2323b12ec894a16b,true,2323b12ec894a16b,2026-05-08T20:59:54+00:00,false
+/sql-reference/aggregate-functions/reference/avg,docs/sql-reference/aggregate-functions/reference/avg.md,core/reference/functions/aggregate-functions/reference/avg.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avg,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/avg,matched,d9d595a6a1a18d45,true,d9d595a6a1a18d45,2026-05-08T20:59:54+00:00,false
+/sql-reference/aggregate-functions/reference/avgweighted,docs/sql-reference/aggregate-functions/reference/avgWeighted.md,core/reference/functions/aggregate-functions/reference/avgWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/avgweighted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/avgWeighted,matched,e383814143b85e4d,true,e383814143b85e4d,2026-05-08T20:59:54+00:00,false
+/sql-reference/aggregate-functions/reference/boundingRatio,docs/sql-reference/aggregate-functions/reference/boundingRatio.md,core/reference/functions/aggregate-functions/reference/boundrat.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/boundingRatio,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/boundrat,matched,698529c1c233004e,true,698529c1c233004e,2026-05-08T20:59:54+00:00,false
+/sql-reference/aggregate-functions/reference/categoricalinformationvalue,docs/sql-reference/aggregate-functions/reference/categoricalInformationValue.md,core/reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/categoricalinformationvalue,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/categoricalInformationValue,matched,8e2f2cade587700c,true,8e2f2cade587700c,2026-05-08T20:59:54+00:00,false
+/sql-reference/aggregate-functions/reference/contingency,docs/sql-reference/aggregate-functions/reference/contingency.md,core/reference/functions/aggregate-functions/reference/contingency.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/contingency,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/contingency,matched,76fe747ef9e3df7f,true,76fe747ef9e3df7f,2026-05-08T20:59:54+00:00,false
+/sql-reference/aggregate-functions/reference/corr,docs/sql-reference/aggregate-functions/reference/corr.md,core/reference/functions/aggregate-functions/reference/corr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corr,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/corr,matched,c8693c629f190e01,true,c8693c629f190e01,2026-05-09T09:39:38+00:00,false
+/sql-reference/aggregate-functions/reference/corrmatrix,docs/sql-reference/aggregate-functions/reference/corrMatrix.md,core/reference/functions/aggregate-functions/reference/corrMatrix.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrmatrix,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/corrMatrix,matched,5ccf3ca405085bfb,true,5ccf3ca405085bfb,2026-05-08T20:59:55+00:00,false
+/sql-reference/aggregate-functions/reference/corrstable,docs/sql-reference/aggregate-functions/reference/corrStable.md,core/reference/functions/aggregate-functions/reference/corrStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/corrstable,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/corrStable,matched,a67a928a769a9165,true,a67a928a769a9165,2026-05-08T20:59:55+00:00,false
+/sql-reference/aggregate-functions/reference/count,docs/sql-reference/aggregate-functions/reference/count.md,core/reference/functions/aggregate-functions/reference/count.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/count,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/count,matched,b2ef50a73b4e4418,true,b2ef50a73b4e4418,2026-05-08T20:59:55+00:00,false
+/sql-reference/aggregate-functions/reference/covarpop,docs/sql-reference/aggregate-functions/reference/covarPop.md,core/reference/functions/aggregate-functions/reference/covarPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpop,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/covarPop,matched,cfd2dc76064c59d6,true,cfd2dc76064c59d6,2026-05-09T09:39:38+00:00,false
+/sql-reference/aggregate-functions/reference/covarpopmatrix,docs/sql-reference/aggregate-functions/reference/covarPopMatrix.md,core/reference/functions/aggregate-functions/reference/covarPopMatrix.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopmatrix,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/covarPopMatrix,matched,d338a39820758b31,true,d338a39820758b31,2026-05-08T20:59:55+00:00,false
+/sql-reference/aggregate-functions/reference/covarpopstable,docs/sql-reference/aggregate-functions/reference/covarPopStable.md,core/reference/functions/aggregate-functions/reference/covarPopStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarpopstable,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/covarPopStable,matched,5c31fcdb71165467,true,5c31fcdb71165467,2026-05-08T20:59:56+00:00,false
+/sql-reference/aggregate-functions/reference/covarsamp,docs/sql-reference/aggregate-functions/reference/covarSamp.md,core/reference/functions/aggregate-functions/reference/covarSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsamp,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/covarSamp,matched,fcce329920930fbd,true,fcce329920930fbd,2026-05-08T20:59:56+00:00,false
+/sql-reference/aggregate-functions/reference/covarsampmatrix,docs/sql-reference/aggregate-functions/reference/covarSampMatrix.md,core/reference/functions/aggregate-functions/reference/covarSampMatrix.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampmatrix,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/covarSampMatrix,matched,624cd9deedc19d98,true,624cd9deedc19d98,2026-05-08T20:59:56+00:00,false
+/sql-reference/aggregate-functions/reference/covarsampstable,docs/sql-reference/aggregate-functions/reference/covarSampStable.md,core/reference/functions/aggregate-functions/reference/covarSampStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/covarsampstable,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/covarSampStable,matched,fce0840da6fb476b,true,fce0840da6fb476b,2026-05-08T20:59:56+00:00,false
+/sql-reference/aggregate-functions/reference/cramersv,docs/sql-reference/aggregate-functions/reference/cramersV.md,core/reference/functions/aggregate-functions/reference/cramersV.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersv,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/cramersV,matched,652aacd423f4e473,true,652aacd423f4e473,2026-05-08T20:59:56+00:00,false
+/sql-reference/aggregate-functions/reference/cramersvbiascorrected,docs/sql-reference/aggregate-functions/reference/cramersVBiasCorrected.md,core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/cramersvbiascorrected,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected,matched,d42c0e3dc3e9b596,true,d42c0e3dc3e9b596,2026-05-08T20:59:56+00:00,false
+/sql-reference/aggregate-functions/reference/deltasum,docs/sql-reference/aggregate-functions/reference/deltaSum.md,core/reference/functions/aggregate-functions/reference/deltaSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasum,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/deltaSum,matched,73e5fae7d5e1cf9c,true,73e5fae7d5e1cf9c,2026-05-08T20:59:57+00:00,false
+/sql-reference/aggregate-functions/reference/deltasumtimestamp,docs/sql-reference/aggregate-functions/reference/deltaSumTimestamp.md,core/reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/deltasumtimestamp,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/deltaSumTimestamp,matched,ebec021fbb72405d,true,ebec021fbb72405d,2026-05-08T20:59:57+00:00,false
+/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes,docs/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes.md,core/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctJSONPathsAndTypes,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes,matched,35a8ceaed4a39ddb,true,35a8ceaed4a39ddb,2026-05-08T20:59:57+00:00,false
+/sql-reference/aggregate-functions/reference/distinctdynamictypes,docs/sql-reference/aggregate-functions/reference/distinctDynamicTypes.md,core/reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctdynamictypes,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/distinctDynamicTypes,matched,b350efeb3af95f80,true,b350efeb3af95f80,2026-05-08T20:59:57+00:00,false
+/sql-reference/aggregate-functions/reference/distinctjsonpaths,docs/sql-reference/aggregate-functions/reference/distinctJSONPaths.md,core/reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/distinctjsonpaths,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/distinctJSONPaths,matched,2fdae4509a21feab,true,2fdae4509a21feab,2026-05-08T20:59:57+00:00,false
+/sql-reference/aggregate-functions/reference/entropy,docs/sql-reference/aggregate-functions/reference/entropy.md,core/reference/functions/aggregate-functions/reference/entropy.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/entropy,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/entropy,matched,ed58fc9337c3b0ad,true,ed58fc9337c3b0ad,2026-05-08T20:59:57+00:00,false
+/sql-reference/aggregate-functions/reference/estimateCompressionRatio,docs/sql-reference/aggregate-functions/reference/estimateCompressionRatio.md,core/reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/estimateCompressionRatio,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/estimateCompressionRatio,matched,dfd4fd08c59b8f2c,true,dfd4fd08c59b8f2c,2026-05-08T20:59:58+00:00,false
+/sql-reference/aggregate-functions/reference/exponentialMovingAverage,docs/sql-reference/aggregate-functions/reference/exponentialMovingAverage.md,core/reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialMovingAverage,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/exponentialMovingAverage,matched,29a32c3dfbe7431c,true,29a32c3dfbe7431c,2026-05-08T20:59:58+00:00,false
+/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg.md,core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedAvg,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg,matched,990377788926a74e,true,990377788926a74e,2026-05-08T20:59:58+00:00,false
+/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount.md,core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedCount,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount,matched,fbadbbdc7fe13930,true,fbadbbdc7fe13930,2026-05-08T20:59:58+00:00,false
+/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax.md,core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedMax,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax,matched,5adb749a9d666932,true,5adb749a9d666932,2026-05-08T20:59:58+00:00,false
+/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum,docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum.md,core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/exponentialTimeDecayedSum,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum,matched,e9a76eae13bb7219,true,e9a76eae13bb7219,2026-05-08T20:59:58+00:00,false
+/sql-reference/aggregate-functions/reference/first_value,docs/sql-reference/aggregate-functions/reference/first_value.md,core/reference/functions/aggregate-functions/reference/first_value.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/first_value,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/first_value,matched,5df182c6b8526daa,true,4221d7097f28b112,2026-05-09T09:39:38+00:00,false
+/sql-reference/aggregate-functions/reference/flame_graph,docs/sql-reference/aggregate-functions/reference/flameGraph.md,core/reference/functions/aggregate-functions/reference/flame_graph.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/flame_graph,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/flame_graph,matched,7c582ef0059274e3,true,7c582ef0059274e3,2026-05-19T11:08:53+00:00,false
+/sql-reference/aggregate-functions/reference/grouparray,docs/sql-reference/aggregate-functions/reference/groupArray.md,core/reference/functions/aggregate-functions/reference/groupArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparray,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArray,matched,494298de736b875e,true,494298de736b875e,2026-05-08T20:59:59+00:00,false
+/sql-reference/aggregate-functions/reference/grouparrayarray,docs/sql-reference/aggregate-functions/reference/groupArrayArray.md,core/reference/functions/aggregate-functions/reference/groupArrayArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayarray,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArrayArray,matched,30aaf8f2841c94b9,true,3a1d95bba36015c5,2026-05-07T14:49:41+00:00,false
+/sql-reference/aggregate-functions/reference/grouparrayinsertat,docs/sql-reference/aggregate-functions/reference/groupArrayInsertAt.md,core/reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayinsertat,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArrayInsertAt,matched,5200d13fb0ecbec5,true,5200d13fb0ecbec5,2026-05-08T20:59:59+00:00,false
+/sql-reference/aggregate-functions/reference/grouparrayintersect,docs/sql-reference/aggregate-functions/reference/groupArrayIntersect.md,core/reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparrayintersect,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArrayIntersect,matched,73542684e7ae142e,true,73542684e7ae142e,2026-05-08T20:59:59+00:00,false
+/sql-reference/aggregate-functions/reference/grouparraylast,docs/sql-reference/aggregate-functions/reference/groupArrayLast.md,core/reference/functions/aggregate-functions/reference/groupArrayLast.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraylast,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArrayLast,matched,72f024a3d7e462f9,true,72f024a3d7e462f9,2026-05-08T20:59:59+00:00,false
+/sql-reference/aggregate-functions/reference/grouparraymovingavg,docs/sql-reference/aggregate-functions/reference/groupArrayMovingAvg.md,core/reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingavg,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArrayMovingAvg,matched,1b782bf5bd48245c,true,1b782bf5bd48245c,2026-05-08T20:59:59+00:00,false
+/sql-reference/aggregate-functions/reference/grouparraymovingsum,docs/sql-reference/aggregate-functions/reference/groupArrayMovingSum.md,core/reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraymovingsum,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArrayMovingSum,matched,3c19fe86868926c9,true,3c19fe86868926c9,2026-05-08T21:00:00+00:00,false
+/sql-reference/aggregate-functions/reference/grouparraysample,docs/sql-reference/aggregate-functions/reference/groupArraySample.md,core/reference/functions/aggregate-functions/reference/groupArraySample.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysample,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArraySample,matched,2bf4ef5f0bef08cd,true,2bf4ef5f0bef08cd,2026-05-08T21:00:00+00:00,false
+/sql-reference/aggregate-functions/reference/grouparraysorted,docs/sql-reference/aggregate-functions/reference/groupArraySorted.md,core/reference/functions/aggregate-functions/reference/groupArraySorted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/grouparraysorted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupArraySorted,matched,36d5fb7771b569b5,true,36d5fb7771b569b5,2026-05-08T21:00:00+00:00,false
+/sql-reference/aggregate-functions/reference/groupbitand,docs/sql-reference/aggregate-functions/reference/groupBitAnd.md,core/reference/functions/aggregate-functions/reference/groupBitAnd.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitand,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupBitAnd,matched,4b2443b2330e1677,true,4b2443b2330e1677,2026-05-08T21:00:00+00:00,false
+/sql-reference/aggregate-functions/reference/groupbitmap,docs/sql-reference/aggregate-functions/reference/groupBitmap.md,core/reference/functions/aggregate-functions/reference/groupBitmap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmap,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupBitmap,matched,c90dbfa2b1c8ef6c,true,c90dbfa2b1c8ef6c,2026-05-08T21:00:01+00:00,false
+/sql-reference/aggregate-functions/reference/groupbitmapand,docs/sql-reference/aggregate-functions/reference/groupBitmapAnd.md,core/reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapand,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupBitmapAnd,matched,df6c684bf932f088,true,df6c684bf932f088,2026-05-08T21:00:01+00:00,false
+/sql-reference/aggregate-functions/reference/groupbitmapor,docs/sql-reference/aggregate-functions/reference/groupBitmapOr.md,core/reference/functions/aggregate-functions/reference/groupBitmapOr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapor,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupBitmapOr,matched,0eaec4ec9af6dde2,true,0eaec4ec9af6dde2,2026-05-08T21:00:01+00:00,false
+/sql-reference/aggregate-functions/reference/groupbitmapxor,docs/sql-reference/aggregate-functions/reference/groupBitmapXor.md,core/reference/functions/aggregate-functions/reference/groupBitmapXor.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitmapxor,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupBitmapXor,matched,1e730d1721dd63a6,true,1e730d1721dd63a6,2026-05-08T21:00:01+00:00,false
+/sql-reference/aggregate-functions/reference/groupbitor,docs/sql-reference/aggregate-functions/reference/groupBitOr.md,core/reference/functions/aggregate-functions/reference/groupBitOr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitor,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupBitOr,matched,b0b38466e6e43952,true,b0b38466e6e43952,2026-05-08T21:00:00+00:00,false
+/sql-reference/aggregate-functions/reference/groupbitxor,docs/sql-reference/aggregate-functions/reference/groupBitXor.md,core/reference/functions/aggregate-functions/reference/groupBitXor.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupbitxor,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupBitXor,matched,6f9cf66e8d91ee27,true,6f9cf66e8d91ee27,2026-05-08T21:00:00+00:00,false
+/sql-reference/aggregate-functions/reference/groupconcat,docs/sql-reference/aggregate-functions/reference/groupConcat.md,core/reference/functions/aggregate-functions/reference/groupConcat.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupconcat,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupConcat,matched,aef59c59999cb93f,true,aef59c59999cb93f,2026-05-08T21:00:01+00:00,false
+/sql-reference/aggregate-functions/reference/groupuniqarray,docs/sql-reference/aggregate-functions/reference/groupUniqArray.md,core/reference/functions/aggregate-functions/reference/groupUniqArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/groupuniqarray,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/groupUniqArray,matched,4f1528557c879670,true,4f1528557c879670,2026-05-08T21:00:01+00:00,false
+/sql-reference/aggregate-functions/reference/intervalLengthSum,docs/sql-reference/aggregate-functions/reference/intervalLengthSum.md,core/reference/functions/aggregate-functions/reference/intervalLengthSum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/intervalLengthSum,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/intervalLengthSum,matched,c362c634343f806c,true,c362c634343f806c,2026-05-08T21:00:02+00:00,false
+/sql-reference/aggregate-functions/reference/kolmogorovsmirnovtest,docs/sql-reference/aggregate-functions/reference/kolmogorovSmirnovTest.md,core/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kolmogorovsmirnovtest,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest,matched,27687d12b6f1c455,true,27687d12b6f1c455,2026-05-08T21:00:02+00:00,false
+/sql-reference/aggregate-functions/reference/kurtpop,docs/sql-reference/aggregate-functions/reference/kurtPop.md,core/reference/functions/aggregate-functions/reference/kurtPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtpop,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/kurtPop,matched,33b95ba74805d730,true,33b95ba74805d730,2026-05-08T21:00:02+00:00,false
+/sql-reference/aggregate-functions/reference/kurtsamp,docs/sql-reference/aggregate-functions/reference/kurtSamp.md,core/reference/functions/aggregate-functions/reference/kurtSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/kurtsamp,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/kurtSamp,matched,16d5e9fb741c9428,true,16d5e9fb741c9428,2026-05-08T21:00:02+00:00,false
+/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets,docs/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets.md,core/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/largestTriangleThreeBuckets,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets,matched,faacd7ce22cd604f,true,faacd7ce22cd604f,2026-05-08T21:00:02+00:00,false
+/sql-reference/aggregate-functions/reference/last_value,docs/sql-reference/aggregate-functions/reference/last_value.md,core/reference/functions/aggregate-functions/reference/last_value.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/last_value,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/last_value,matched,f56dfaab318ae549,true,0b3c34b1376a8b6a,2026-05-09T09:39:38+00:00,false
+/sql-reference/aggregate-functions/reference/mannwhitneyutest,docs/sql-reference/aggregate-functions/reference/mannWhitneyUTest.md,core/reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/mannwhitneyutest,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/mannWhitneyUTest,matched,4367510976c76b40,true,4367510976c76b40,2026-05-08T21:00:03+00:00,false
+/sql-reference/aggregate-functions/reference/max,docs/sql-reference/aggregate-functions/reference/max.md,core/reference/functions/aggregate-functions/reference/max.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/max,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/max,matched,b0cbff46a8a26271,true,b0cbff46a8a26271,2026-05-08T21:00:03+00:00,false
+/sql-reference/aggregate-functions/reference/maxintersections,docs/sql-reference/aggregate-functions/reference/maxIntersections.md,core/reference/functions/aggregate-functions/reference/maxIntersections.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersections,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/maxIntersections,matched,1db6c9bf885f905c,true,1db6c9bf885f905c,2026-05-08T21:00:03+00:00,false
+/sql-reference/aggregate-functions/reference/maxintersectionsposition,docs/sql-reference/aggregate-functions/reference/maxIntersectionsPosition.md,core/reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxintersectionsposition,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/maxIntersectionsPosition,matched,2f7f75d00642024e,true,2f7f75d00642024e,2026-05-08T21:00:03+00:00,false
+/sql-reference/aggregate-functions/reference/maxmap,docs/sql-reference/aggregate-functions/reference/maxMappedArrays.md,core/reference/functions/aggregate-functions/reference/maxMap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/maxmap,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/maxMap,matched,f0fe439c1f7370f3,true,f0fe439c1f7370f3,2026-05-13T13:16:51+00:00,false
+/sql-reference/aggregate-functions/reference/meanztest,docs/sql-reference/aggregate-functions/reference/meanZTest.md,core/reference/functions/aggregate-functions/reference/meanZTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/meanztest,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/meanZTest,matched,51be0a7689b2a9f9,true,51be0a7689b2a9f9,2026-05-08T21:00:03+00:00,false
+/sql-reference/aggregate-functions/reference/median,docs/sql-reference/aggregate-functions/reference/median.md,core/reference/functions/aggregate-functions/reference/median.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/median,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/median,matched,ad5f042fbebec65e,true,ad5f042fbebec65e,2026-05-19T11:08:53+00:00,false
+/sql-reference/aggregate-functions/reference/min,docs/sql-reference/aggregate-functions/reference/min.md,core/reference/functions/aggregate-functions/reference/min.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/min,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/min,matched,b84822a35e335c8a,true,b84822a35e335c8a,2026-05-08T21:00:04+00:00,false
+/sql-reference/aggregate-functions/reference/minmap,docs/sql-reference/aggregate-functions/reference/minMappedArrays.md,core/reference/functions/aggregate-functions/reference/minMap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/minmap,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/minMap,matched,e3a1e1ace77e38b6,true,e3a1e1ace77e38b6,2026-05-08T21:00:04+00:00,false
+/sql-reference/aggregate-functions/reference/quantile,docs/sql-reference/aggregate-functions/reference/quantile.md,core/reference/functions/aggregate-functions/reference/quantile.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantile,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantile,matched,4ba18890167b40fd,true,4ba18890167b40fd,2026-05-09T09:39:38+00:00,false
+/sql-reference/aggregate-functions/reference/quantileExactExclusive,docs/sql-reference/aggregate-functions/reference/quantileExactExclusive.md,core/reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactExclusive,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileExactExclusive,matched,ed2a0f781f64a5ae,true,ed2a0f781f64a5ae,2026-05-08T21:00:05+00:00,false
+/sql-reference/aggregate-functions/reference/quantileExactHigh,docs/sql-reference/aggregate-functions/reference/quantileExactHigh.md,core/reference/functions/aggregate-functions/reference/quantileExactHigh.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactHigh,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileExactHigh,matched,4a48e8ed7359f12e,true,4a48e8ed7359f12e,2026-05-08T21:00:05+00:00,false
+/sql-reference/aggregate-functions/reference/quantileExactInclusive,docs/sql-reference/aggregate-functions/reference/quantileExactInclusive.md,core/reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactInclusive,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileExactInclusive,matched,e650a118cfedfa52,true,e650a118cfedfa52,2026-05-08T21:00:05+00:00,false
+/sql-reference/aggregate-functions/reference/quantileExactLow,docs/sql-reference/aggregate-functions/reference/quantileExactLow.md,core/reference/functions/aggregate-functions/reference/quantileExactLow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactLow,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileExactLow,matched,e755c0c350683c45,true,e755c0c350683c45,2026-05-08T21:00:05+00:00,false
+/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated,docs/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated.md,core/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileExactWeightedInterpolated,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated,matched,599497aa7290178e,true,599497aa7290178e,2026-05-08T21:00:06+00:00,false
+/sql-reference/aggregate-functions/reference/quantileGK,docs/sql-reference/aggregate-functions/reference/quantileGK.md,core/reference/functions/aggregate-functions/reference/quantileGK.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileGK,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileGK,matched,d2a54f56603dc2f3,true,d2a54f56603dc2f3,2026-05-08T21:00:06+00:00,false
+/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted,docs/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted.md,core/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileInterpolatedWeighted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted,matched,e1ea7341c5f539b8,true,e1ea7341c5f539b8,2026-05-08T21:00:06+00:00,false
+/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram,docs/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram.md,core/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilePrometheusHistogram,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram,matched,29ce947c5bccd54e,true,29ce947c5bccd54e,2026-05-08T21:00:06+00:00,false
+/sql-reference/aggregate-functions/reference/quantilebfloat16,docs/sql-reference/aggregate-functions/reference/quantileBFloat16.md,core/reference/functions/aggregate-functions/reference/quantileBFloat16.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilebfloat16,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileBFloat16,matched,e02f8398a1e6c992,true,e02f8398a1e6c992,2026-05-08T21:00:04+00:00,false
+/sql-reference/aggregate-functions/reference/quantileddsketch,docs/sql-reference/aggregate-functions/reference/quantileDD.md,core/reference/functions/aggregate-functions/reference/quantileddsketch.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileddsketch,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileddsketch,matched,b70b5911fe4dcdcd,true,b70b5911fe4dcdcd,2026-05-08T21:00:07+00:00,false
+/sql-reference/aggregate-functions/reference/quantiledeterministic,docs/sql-reference/aggregate-functions/reference/quantileDeterministic.md,core/reference/functions/aggregate-functions/reference/quantileDeterministic.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiledeterministic,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileDeterministic,matched,6b577bef9f8aabe5,true,6b577bef9f8aabe5,2026-05-08T21:00:04+00:00,false
+/sql-reference/aggregate-functions/reference/quantileexact,docs/sql-reference/aggregate-functions/reference/quantileExact.md,core/reference/functions/aggregate-functions/reference/quantileExact.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexact,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileExact,matched,c06d0383b8fa44d6,true,c06d0383b8fa44d6,2026-05-08T21:00:04+00:00,false
+/sql-reference/aggregate-functions/reference/quantileexactweighted,docs/sql-reference/aggregate-functions/reference/quantileExactWeighted.md,core/reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantileexactweighted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileExactWeighted,matched,55fe1cc2813d807d,true,55fe1cc2813d807d,2026-05-08T21:00:05+00:00,false
+/sql-reference/aggregate-functions/reference/quantiles,docs/sql-reference/aggregate-functions/reference/quantiles.md,core/reference/functions/aggregate-functions/reference/quantiles.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiles,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantiles,matched,10a8a9fb55d3667e,true,10a8a9fb55d3667e,2026-05-08T21:00:07+00:00,false
+/sql-reference/aggregate-functions/reference/quantilesExactExclusive,docs/sql-reference/aggregate-functions/reference/quantilesExactExclusive.md,core/reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactExclusive,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantilesExactExclusive,matched,d34559dee60fa650,true,d34559dee60fa650,2026-05-08T21:00:07+00:00,false
+/sql-reference/aggregate-functions/reference/quantilesExactInclusive,docs/sql-reference/aggregate-functions/reference/quantilesExactInclusive.md,core/reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesExactInclusive,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantilesExactInclusive,matched,585098e46f9ed905,true,585098e46f9ed905,2026-05-08T21:00:07+00:00,false
+/sql-reference/aggregate-functions/reference/quantilesGK,docs/sql-reference/aggregate-functions/reference/quantilesGK.md,core/reference/functions/aggregate-functions/reference/quantilesGK.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilesGK,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantilesGK,matched,94e0f130f7219917,true,94e0f130f7219917,2026-05-08T21:00:08+00:00,false
+/sql-reference/aggregate-functions/reference/quantilestimingweighted,docs/sql-reference/aggregate-functions/reference/quantilesTimingWeighted.md,core/reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantilestimingweighted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantilesTimingWeighted,matched,62b3f7a28b018c37,true,62b3f7a28b018c37,2026-05-08T21:00:08+00:00,false
+/sql-reference/aggregate-functions/reference/quantiletdigest,docs/sql-reference/aggregate-functions/reference/quantileTDigest.md,core/reference/functions/aggregate-functions/reference/quantileTDigest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigest,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileTDigest,matched,1d7cc3bd0a254723,true,1d7cc3bd0a254723,2026-05-08T21:00:06+00:00,false
+/sql-reference/aggregate-functions/reference/quantiletdigestweighted,docs/sql-reference/aggregate-functions/reference/quantileTDigestWeighted.md,core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletdigestweighted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted,matched,75265d258c6d0d1c,true,75265d258c6d0d1c,2026-05-08T21:00:06+00:00,false
+/sql-reference/aggregate-functions/reference/quantiletiming,docs/sql-reference/aggregate-functions/reference/quantileTiming.md,core/reference/functions/aggregate-functions/reference/quantileTiming.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletiming,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileTiming,matched,01a30e87131303d3,true,01a30e87131303d3,2026-05-08T21:00:07+00:00,false
+/sql-reference/aggregate-functions/reference/quantiletimingweighted,docs/sql-reference/aggregate-functions/reference/quantileTimingWeighted.md,core/reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/quantiletimingweighted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/quantileTimingWeighted,matched,6d110c327a873af2,true,6d110c327a873af2,2026-05-08T21:00:07+00:00,false
+/sql-reference/aggregate-functions/reference/rankCorr,docs/sql-reference/aggregate-functions/reference/rankCorr.md,core/reference/functions/aggregate-functions/reference/rankCorr.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/rankCorr,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/rankCorr,matched,5eb236ef7745a0b9,true,5eb236ef7745a0b9,2026-05-08T21:00:08+00:00,false
+/sql-reference/aggregate-functions/reference/simplelinearregression,docs/sql-reference/aggregate-functions/reference/simpleLinearRegression.md,core/reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/simplelinearregression,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/simpleLinearRegression,matched,d7486769247276c2,true,d7486769247276c2,2026-05-08T21:00:08+00:00,false
+/sql-reference/aggregate-functions/reference/singlevalueornull,docs/sql-reference/aggregate-functions/reference/singleValueOrNull.md,core/reference/functions/aggregate-functions/reference/singleValueOrNull.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/singlevalueornull,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/singleValueOrNull,matched,067ce8f52cc34020,true,067ce8f52cc34020,2026-05-08T21:00:08+00:00,false
+/sql-reference/aggregate-functions/reference/skewpop,docs/sql-reference/aggregate-functions/reference/skewPop.md,core/reference/functions/aggregate-functions/reference/skewPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewpop,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/skewPop,matched,e2af24567eed8273,true,e2af24567eed8273,2026-05-08T21:00:08+00:00,false
+/sql-reference/aggregate-functions/reference/skewsamp,docs/sql-reference/aggregate-functions/reference/skewSamp.md,core/reference/functions/aggregate-functions/reference/skewSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/skewsamp,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/skewSamp,matched,4016cf36e3a3e5ec,true,4016cf36e3a3e5ec,2026-05-08T21:00:09+00:00,false
+/sql-reference/aggregate-functions/reference/sparkbar,docs/sql-reference/aggregate-functions/reference/sparkbar.md,core/reference/functions/aggregate-functions/reference/sparkbar.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sparkbar,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/sparkbar,matched,7bd5a27027209cee,true,7bd5a27027209cee,2026-05-08T21:00:09+00:00,false
+/sql-reference/aggregate-functions/reference/stddevpop,docs/sql-reference/aggregate-functions/reference/stddevPop.md,core/reference/functions/aggregate-functions/reference/stddevPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpop,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/stddevPop,matched,c5ce3f3d8df7d8d6,true,c5ce3f3d8df7d8d6,2026-05-08T21:00:09+00:00,false
+/sql-reference/aggregate-functions/reference/stddevpopstable,docs/sql-reference/aggregate-functions/reference/stddevPopStable.md,core/reference/functions/aggregate-functions/reference/stddevPopStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevpopstable,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/stddevPopStable,matched,16baf1cfe989fd73,true,16baf1cfe989fd73,2026-05-08T21:00:09+00:00,false
+/sql-reference/aggregate-functions/reference/stddevsamp,docs/sql-reference/aggregate-functions/reference/stddevSamp.md,core/reference/functions/aggregate-functions/reference/stddevSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsamp,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/stddevSamp,matched,379c0a8ad495e0b1,true,379c0a8ad495e0b1,2026-05-19T11:08:53+00:00,false
+/sql-reference/aggregate-functions/reference/stddevsampstable,docs/sql-reference/aggregate-functions/reference/stddevSampStable.md,core/reference/functions/aggregate-functions/reference/stddevSampStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stddevsampstable,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/stddevSampStable,matched,1fadf143f4ef0cf4,true,1fadf143f4ef0cf4,2026-05-08T21:00:09+00:00,false
+/sql-reference/aggregate-functions/reference/stochasticlinearregression,docs/sql-reference/aggregate-functions/reference/stochasticLinearRegression.md,core/reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlinearregression,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/stochasticLinearRegression,matched,c4d9e3bbe8e1bc68,true,c4d9e3bbe8e1bc68,2026-05-08T21:00:10+00:00,false
+/sql-reference/aggregate-functions/reference/stochasticlogisticregression,docs/sql-reference/aggregate-functions/reference/stochasticLogisticRegression.md,core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/stochasticlogisticregression,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression,matched,8b69bdb0a3aa259f,true,8b69bdb0a3aa259f,2026-05-08T21:00:10+00:00,false
+/sql-reference/aggregate-functions/reference/studentttest,docs/sql-reference/aggregate-functions/reference/studentTTest.md,core/reference/functions/aggregate-functions/reference/studentTTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttest,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/studentTTest,matched,cfe4523cefd58cc8,true,cfe4523cefd58cc8,2026-05-08T21:00:10+00:00,false
+/sql-reference/aggregate-functions/reference/studentttestonesample,docs/sql-reference/aggregate-functions/reference/studentTTestOneSample.md,core/reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/studentttestonesample,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/studentTTestOneSample,matched,502a06938cf42f44,true,502a06938cf42f44,2026-05-08T21:00:10+00:00,false
+/sql-reference/aggregate-functions/reference/sum,docs/sql-reference/aggregate-functions/reference/sum.md,core/reference/functions/aggregate-functions/reference/sum.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sum,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/sum,matched,0549c49a93aa84fe,true,0549c49a93aa84fe,2026-05-08T21:00:10+00:00,false
+/sql-reference/aggregate-functions/reference/sumcount,docs/sql-reference/aggregate-functions/reference/sumCount.md,core/reference/functions/aggregate-functions/reference/sumCount.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumcount,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/sumCount,matched,706546f7617d6591,true,706546f7617d6591,2026-05-08T21:00:10+00:00,false
+/sql-reference/aggregate-functions/reference/sumkahan,docs/sql-reference/aggregate-functions/reference/sumKahan.md,core/reference/functions/aggregate-functions/reference/sumKahan.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumkahan,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/sumKahan,matched,c77086880163f32d,true,c77086880163f32d,2026-05-08T21:00:11+00:00,false
+/sql-reference/aggregate-functions/reference/summap,docs/sql-reference/aggregate-functions/reference/sumMappedArrays.md,core/reference/functions/aggregate-functions/reference/sumMap.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summap,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/sumMap,matched,07b0d144a6cab0bd,true,07b0d144a6cab0bd,2026-05-08T21:00:11+00:00,false
+/sql-reference/aggregate-functions/reference/summapwithoverflow,docs/sql-reference/aggregate-functions/reference/sumMapWithOverflow.md,core/reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/summapwithoverflow,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/sumMapWithOverflow,matched,ae19536ac544cab1,true,ae19536ac544cab1,2026-05-08T21:00:11+00:00,false
+/sql-reference/aggregate-functions/reference/sumwithoverflow,docs/sql-reference/aggregate-functions/reference/sumWithOverflow.md,core/reference/functions/aggregate-functions/reference/sumWithOverflow.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/sumwithoverflow,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/sumWithOverflow,matched,a575e1e9e1aa17c6,true,a575e1e9e1aa17c6,2026-05-08T21:00:11+00:00,false
+/sql-reference/aggregate-functions/reference/theilsu,docs/sql-reference/aggregate-functions/reference/theilsU.md,core/reference/functions/aggregate-functions/reference/theilsU.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/theilsu,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/theilsU,matched,f9641d2fa8c06b43,true,f9641d2fa8c06b43,2026-05-08T21:00:11+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesChangesToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid,matched,465c63acace057e4,true,465c63acace057e4,2026-05-08T21:00:12+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDeltaToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid,matched,a7575992cec3b9c1,true,a7575992cec3b9c1,2026-05-08T21:00:12+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesDerivToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid,matched,020c5de99f82c4de,true,020c5de99f82c4de,2026-05-08T21:00:12+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesGroupArray,docs/sql-reference/aggregate-functions/reference/timeSeriesGroupArray.md,core/reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesGroupArray,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesGroupArray,matched,2a88a94362703b47,true,2a88a94362703b47,2026-05-08T21:00:12+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantDeltaToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid,matched,867429d1a5c91300,true,867429d1a5c91300,2026-05-08T21:00:12+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesInstantRateToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid,matched,6d6f94fdd0571b8c,true,6d6f94fdd0571b8c,2026-05-08T21:00:12+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples,docs/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples.md,core/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesLastTwoSamples,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples,matched,011ddcf3bc0d196f,true,011ddcf3bc0d196f,2026-05-08T21:00:13+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesPredictLinearToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid,matched,402cbd0464433072,true,402cbd0464433072,2026-05-08T21:00:13+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesRateToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid,matched,b5bd48b48922623f,true,b5bd48b48922623f,2026-05-08T21:00:13+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness,docs/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.md,core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness,matched,d370d2e8ea9928d6,true,d370d2e8ea9928d6,2026-05-08T21:00:13+00:00,false
+/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid,docs/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid.md,core/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/timeSeriesResetsToGrid,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid,matched,b44ffe5bd8ce26a9,true,b44ffe5bd8ce26a9,2026-05-08T21:00:13+00:00,false
+/sql-reference/aggregate-functions/reference/topk,docs/sql-reference/aggregate-functions/reference/topK.md,core/reference/functions/aggregate-functions/reference/topK.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topk,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/topK,matched,273a5a9e0902dab6,true,273a5a9e0902dab6,2026-05-08T21:00:13+00:00,false
+/sql-reference/aggregate-functions/reference/topkweighted,docs/sql-reference/aggregate-functions/reference/topKWeighted.md,core/reference/functions/aggregate-functions/reference/topKWeighted.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/topkweighted,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/topKWeighted,matched,4b44410a1a7a8c5e,true,4b44410a1a7a8c5e,2026-05-08T21:00:14+00:00,false
+/sql-reference/aggregate-functions/reference/uniq,docs/sql-reference/aggregate-functions/reference/uniq.md,core/reference/functions/aggregate-functions/reference/uniq.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniq,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/uniq,matched,57a4ad14f7750346,true,57a4ad14f7750346,2026-05-08T21:00:14+00:00,false
+/sql-reference/aggregate-functions/reference/uniqcombined,docs/sql-reference/aggregate-functions/reference/uniqCombined.md,core/reference/functions/aggregate-functions/reference/uniqCombined.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/uniqCombined,matched,47d53db402a92a77,true,47d53db402a92a77,2026-05-08T21:00:14+00:00,false
+/sql-reference/aggregate-functions/reference/uniqcombined64,docs/sql-reference/aggregate-functions/reference/uniqCombined64.md,core/reference/functions/aggregate-functions/reference/uniqCombined64.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqcombined64,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/uniqCombined64,matched,ed89f2bb16c50034,true,ed89f2bb16c50034,2026-05-08T21:00:14+00:00,false
+/sql-reference/aggregate-functions/reference/uniqexact,docs/sql-reference/aggregate-functions/reference/uniqExact.md,core/reference/functions/aggregate-functions/reference/uniqExact.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqexact,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/uniqExact,matched,29f6f4cd3446c2f6,true,29f6f4cd3446c2f6,2026-05-08T21:00:14+00:00,false
+/sql-reference/aggregate-functions/reference/uniqhll12,docs/sql-reference/aggregate-functions/reference/uniqHLL12.md,core/reference/functions/aggregate-functions/reference/uniqHLL12.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqhll12,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/uniqHLL12,matched,510a2dd8db5c0a6e,true,510a2dd8db5c0a6e,2026-05-08T21:00:14+00:00,false
+/sql-reference/aggregate-functions/reference/uniqthetasketch,docs/sql-reference/aggregate-functions/reference/uniqTheta.md,core/reference/functions/aggregate-functions/reference/uniqthetasketch.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/uniqthetasketch,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/uniqthetasketch,matched,0f2139338a6b37aa,true,0f2139338a6b37aa,2026-05-08T21:00:15+00:00,false
+/sql-reference/aggregate-functions/reference/varPop,docs/sql-reference/aggregate-functions/reference/varPop.md,core/reference/functions/aggregate-functions/reference/varPop.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varPop,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/varPop,matched,1579e9b9fca97bf8,true,1579e9b9fca97bf8,2026-05-08T21:00:15+00:00,false
+/sql-reference/aggregate-functions/reference/varSamp,docs/sql-reference/aggregate-functions/reference/varSamp.md,core/reference/functions/aggregate-functions/reference/varSamp.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varSamp,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/varSamp,matched,e6f744197741c8c8,true,e6f744197741c8c8,2026-05-08T21:00:15+00:00,false
+/sql-reference/aggregate-functions/reference/varpopstable,docs/sql-reference/aggregate-functions/reference/varPopStable.md,core/reference/functions/aggregate-functions/reference/varPopStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varpopstable,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/varPopStable,matched,4fd75682cc5a8796,true,4fd75682cc5a8796,2026-05-08T21:00:15+00:00,false
+/sql-reference/aggregate-functions/reference/varsampstable,docs/sql-reference/aggregate-functions/reference/varSampStable.md,core/reference/functions/aggregate-functions/reference/varSampStable.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/varsampstable,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/varSampStable,matched,571f165781684dfd,true,571f165781684dfd,2026-05-08T21:00:15+00:00,false
+/sql-reference/aggregate-functions/reference/welchttest,docs/sql-reference/aggregate-functions/reference/welchTTest.md,core/reference/functions/aggregate-functions/reference/welchTTest.mdx,https://clickhouse.com/docs/sql-reference/aggregate-functions/reference/welchttest,https://private-7c7dfe99.mintlify.app/core/reference/functions/aggregate-functions/reference/welchTTest,matched,093589621f5bd26b,true,093589621f5bd26b,2026-05-08T21:00:15+00:00,false
+/sql-reference/data-types/,docs/sql-reference/data-types/index.md,core/reference/data-types/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/,https://private-7c7dfe99.mintlify.app/core/reference/data-types/index,matched,9132f1b9b2ddc8df,true,4108560a1744ad07,2026-05-09T09:39:38+00:00,false
+/sql-reference/data-types/aggregatefunction,docs/sql-reference/data-types/aggregatefunction.md,core/reference/data-types/aggregatefunction.mdx,https://clickhouse.com/docs/sql-reference/data-types/aggregatefunction,https://private-7c7dfe99.mintlify.app/core/reference/data-types/aggregatefunction,matched,72700501d63e067f,true,52272796a3ff10b3,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/array,docs/sql-reference/data-types/array.md,core/reference/data-types/array.mdx,https://clickhouse.com/docs/sql-reference/data-types/array,https://private-7c7dfe99.mintlify.app/core/reference/data-types/array,matched,1e77a6674f8339d9,true,1e77a6674f8339d9,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/boolean,docs/sql-reference/data-types/boolean.md,core/reference/data-types/boolean.mdx,https://clickhouse.com/docs/sql-reference/data-types/boolean,https://private-7c7dfe99.mintlify.app/core/reference/data-types/boolean,matched,1030c84f2f356452,true,184622e2d0685a28,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/data-types-binary-encoding,docs/sql-reference/data-types/data-types-binary-encoding.md,core/reference/data-types/data-types-binary-encoding.mdx,https://clickhouse.com/docs/sql-reference/data-types/data-types-binary-encoding,https://private-7c7dfe99.mintlify.app/core/reference/data-types/data-types-binary-encoding,matched,4f9c147ef25a77fd,true,86296003488064b4,2026-05-09T09:39:38+00:00,false
+/sql-reference/data-types/date,docs/sql-reference/data-types/date.md,core/reference/data-types/date.mdx,https://clickhouse.com/docs/sql-reference/data-types/date,https://private-7c7dfe99.mintlify.app/core/reference/data-types/date,matched,a4e08d45fe47f80e,true,c5d8b4488de9c51f,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/date32,docs/sql-reference/data-types/date32.md,core/reference/data-types/date32.mdx,https://clickhouse.com/docs/sql-reference/data-types/date32,https://private-7c7dfe99.mintlify.app/core/reference/data-types/date32,matched,bdf2f799fb7d1f31,true,aed29aa437dec69f,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/datetime,docs/sql-reference/data-types/datetime.md,core/reference/data-types/datetime.mdx,https://clickhouse.com/docs/sql-reference/data-types/datetime,https://private-7c7dfe99.mintlify.app/core/reference/data-types/datetime,matched,707225593664b6b5,true,0e7133cab0e8062e,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/datetime64,docs/sql-reference/data-types/datetime64.md,core/reference/data-types/datetime64.mdx,https://clickhouse.com/docs/sql-reference/data-types/datetime64,https://private-7c7dfe99.mintlify.app/core/reference/data-types/datetime64,matched,be0c73ee4d2ab665,true,b4bdfab5749d54b1,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/decimal,docs/sql-reference/data-types/decimal.md,core/reference/data-types/decimal.mdx,https://clickhouse.com/docs/sql-reference/data-types/decimal,https://private-7c7dfe99.mintlify.app/core/reference/data-types/decimal,matched,653899069662089c,true,653899069662089c,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/domains/,docs/sql-reference/data-types/domains/index.md,core/reference/data-types/domains/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/domains/,https://private-7c7dfe99.mintlify.app/core/reference/data-types/domains/index,matched,0d25ebf14e813c04,true,35e6467692a1dada,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/dynamic,docs/sql-reference/data-types/dynamic.md,core/reference/data-types/dynamic.mdx,https://clickhouse.com/docs/sql-reference/data-types/dynamic,https://private-7c7dfe99.mintlify.app/core/reference/data-types/dynamic,matched,85e7013c7806b92c,true,e0aa544319320b10,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/enum,docs/sql-reference/data-types/enum.md,core/reference/data-types/enum.mdx,https://clickhouse.com/docs/sql-reference/data-types/enum,https://private-7c7dfe99.mintlify.app/core/reference/data-types/enum,matched,31c2da25a9947c25,true,641d2a22f3cbbdbb,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/fixedstring,docs/sql-reference/data-types/fixedstring.md,core/reference/data-types/fixedstring.mdx,https://clickhouse.com/docs/sql-reference/data-types/fixedstring,https://private-7c7dfe99.mintlify.app/core/reference/data-types/fixedstring,matched,9434b8c9845ff691,true,0151197975962877,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/float,docs/sql-reference/data-types/float.md,core/reference/data-types/float.mdx,https://clickhouse.com/docs/sql-reference/data-types/float,https://private-7c7dfe99.mintlify.app/core/reference/data-types/float,matched,2d7561d0476ccb3e,true,2d7561d0476ccb3e,2026-05-08T21:09:58+00:00,false
+/sql-reference/data-types/geo,docs/sql-reference/data-types/geo.md,core/reference/data-types/geo.mdx,https://clickhouse.com/docs/sql-reference/data-types/geo,https://private-7c7dfe99.mintlify.app/core/reference/data-types/geo,matched,6b11f46eea07e5df,true,6b11f46eea07e5df,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/int-uint,docs/sql-reference/data-types/int-uint.md,core/reference/data-types/int-uint.mdx,https://clickhouse.com/docs/sql-reference/data-types/int-uint,https://private-7c7dfe99.mintlify.app/core/reference/data-types/int-uint,matched,5cb5606bdf1fcec7,true,5cb5606bdf1fcec7,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/ipv4,docs/sql-reference/data-types/ipv4.md,core/reference/data-types/ipv4.mdx,https://clickhouse.com/docs/sql-reference/data-types/ipv4,https://private-7c7dfe99.mintlify.app/core/reference/data-types/ipv4,matched,5c8a7b7c41cedb9f,true,5c8a7b7c41cedb9f,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/ipv6,docs/sql-reference/data-types/ipv6.md,core/reference/data-types/ipv6.mdx,https://clickhouse.com/docs/sql-reference/data-types/ipv6,https://private-7c7dfe99.mintlify.app/core/reference/data-types/ipv6,matched,37840663d4e6d0f5,true,37840663d4e6d0f5,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/lowcardinality,docs/sql-reference/data-types/lowcardinality.md,core/reference/data-types/lowcardinality.mdx,https://clickhouse.com/docs/sql-reference/data-types/lowcardinality,https://private-7c7dfe99.mintlify.app/core/reference/data-types/lowcardinality,matched,201a6b0e68f5b0b2,true,8f86b16b90906a6a,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/map,docs/sql-reference/data-types/map.md,core/reference/data-types/map.mdx,https://clickhouse.com/docs/sql-reference/data-types/map,https://private-7c7dfe99.mintlify.app/core/reference/data-types/map,matched,6ae06faace8b64f4,true,6ae06faace8b64f4,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/nested-data-structures/nested,docs/sql-reference/data-types/nested-data-structures/index.md,core/reference/data-types/nested-data-structures/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/nested-data-structures/nested,https://private-7c7dfe99.mintlify.app/core/reference/data-types/nested-data-structures/index,matched,c11aa1da8c94f713,true,4749e80d37f15822,2026-05-08T09:09:20+00:00,false
+/sql-reference/data-types/newjson,docs/sql-reference/data-types/newjson.md,core/reference/data-types/newjson.mdx,https://clickhouse.com/docs/sql-reference/data-types/newjson,https://private-7c7dfe99.mintlify.app/core/reference/data-types/newjson,matched,753d1eabe311c68b,true,753d1eabe311c68b,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/nullable,docs/sql-reference/data-types/nullable.md,core/reference/data-types/nullable.mdx,https://clickhouse.com/docs/sql-reference/data-types/nullable,https://private-7c7dfe99.mintlify.app/core/reference/data-types/nullable,matched,e3e7ea75631dfd16,true,e3e7ea75631dfd16,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/qbit,docs/sql-reference/data-types/qbit.md,core/reference/data-types/qbit.mdx,https://clickhouse.com/docs/sql-reference/data-types/qbit,https://private-7c7dfe99.mintlify.app/core/reference/data-types/qbit,matched,3fc9aea952342cbf,true,3fc9aea952342cbf,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/simpleaggregatefunction,docs/sql-reference/data-types/simpleaggregatefunction.md,core/reference/data-types/simpleaggregatefunction.mdx,https://clickhouse.com/docs/sql-reference/data-types/simpleaggregatefunction,https://private-7c7dfe99.mintlify.app/core/reference/data-types/simpleaggregatefunction,matched,421e3771a4d1e80d,true,c976c4c588a9ad9f,2026-05-09T10:03:34+00:00,false
+/sql-reference/data-types/special-data-types/,docs/sql-reference/data-types/special-data-types/index.md,core/reference/data-types/special-data-types/index.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/,https://private-7c7dfe99.mintlify.app/core/reference/data-types/special-data-types/index,matched,ef0b6f747acfa0ec,true,ef0b6f747acfa0ec,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/special-data-types/expression,docs/sql-reference/data-types/special-data-types/expression.md,core/reference/data-types/special-data-types/expression.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/expression,https://private-7c7dfe99.mintlify.app/core/reference/data-types/special-data-types/expression,matched,88a8bd0cf24ef01e,true,383175d865a3e8e5,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/special-data-types/interval,docs/sql-reference/data-types/special-data-types/interval.md,core/reference/data-types/special-data-types/interval.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/interval,https://private-7c7dfe99.mintlify.app/core/reference/data-types/special-data-types/interval,matched,5837b36610c2b5b2,true,d9e724b9d8f9fbae,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/special-data-types/nothing,docs/sql-reference/data-types/special-data-types/nothing.md,core/reference/data-types/special-data-types/nothing.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/nothing,https://private-7c7dfe99.mintlify.app/core/reference/data-types/special-data-types/nothing,matched,1c1875de77fd50b2,true,54d4adf41787f75b,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/special-data-types/set,docs/sql-reference/data-types/special-data-types/set.md,core/reference/data-types/special-data-types/set.mdx,https://clickhouse.com/docs/sql-reference/data-types/special-data-types/set,https://private-7c7dfe99.mintlify.app/core/reference/data-types/special-data-types/set,matched,aca07b0f37813976,true,b3961ee327c6fafc,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/string,docs/sql-reference/data-types/string.md,core/reference/data-types/string.mdx,https://clickhouse.com/docs/sql-reference/data-types/string,https://private-7c7dfe99.mintlify.app/core/reference/data-types/string,matched,0bf0ed2ba989b68d,true,664e682e3d269a46,2026-05-07T14:49:41+00:00,false
+/sql-reference/data-types/time,docs/sql-reference/data-types/time.md,core/reference/data-types/time.mdx,https://clickhouse.com/docs/sql-reference/data-types/time,https://private-7c7dfe99.mintlify.app/core/reference/data-types/time,matched,13ac35c7dfecd788,true,6fba9e18761cacdc,2026-05-09T09:39:38+00:00,false
+/sql-reference/data-types/time64,docs/sql-reference/data-types/time64.md,core/reference/data-types/time64.mdx,https://clickhouse.com/docs/sql-reference/data-types/time64,https://private-7c7dfe99.mintlify.app/core/reference/data-types/time64,matched,b76965019f794890,true,36de758d3be79f5c,2026-05-09T09:39:38+00:00,false
+/sql-reference/data-types/tuple,docs/sql-reference/data-types/tuple.md,core/reference/data-types/tuple.mdx,https://clickhouse.com/docs/sql-reference/data-types/tuple,https://private-7c7dfe99.mintlify.app/core/reference/data-types/tuple,matched,2a7e6ccb9df89177,true,2a7e6ccb9df89177,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/uuid,docs/sql-reference/data-types/uuid.md,core/reference/data-types/uuid.mdx,https://clickhouse.com/docs/sql-reference/data-types/uuid,https://private-7c7dfe99.mintlify.app/core/reference/data-types/uuid,matched,0f5f115af04037cc,true,0f5f115af04037cc,2026-05-19T11:08:53+00:00,false
+/sql-reference/data-types/variant,docs/sql-reference/data-types/variant.md,core/reference/data-types/variant.mdx,https://clickhouse.com/docs/sql-reference/data-types/variant,https://private-7c7dfe99.mintlify.app/core/reference/data-types/variant,matched,907bde6f04e567df,true,2cf40b2865b06390,2026-05-08T09:09:20+00:00,false
+/sql-reference/datalakes,docs/sql-reference/datalakes.md,core/reference/datalakes.mdx,https://clickhouse.com/docs/sql-reference/datalakes,https://private-7c7dfe99.mintlify.app/core/reference/datalakes,matched,576c6b22e45a20fa,true,576c6b22e45a20fa,2026-05-07T14:49:41+00:00,false
+/sql-reference/distributed-ddl,docs/sql-reference/distributed-ddl.md,core/reference/statements/distributed-ddl.mdx,https://clickhouse.com/docs/sql-reference/distributed-ddl,https://private-7c7dfe99.mintlify.app/core/reference/statements/distributed-ddl,matched,112d13bcf3046cf7,true,112d13bcf3046cf7,2026-05-09T17:02:01+00:00,false
/sql-reference/formats,docs/sql-reference/formats.mdx,,https://clickhouse.com/docs/sql-reference/formats,,unmatched,f15d74887e89dbc7,true,f15d74887e89dbc7,2026-05-08T09:09:20+00:00,false
-/sql-reference/functions,docs/sql-reference/functions/index.md,reference/functions/index.mdx,https://clickhouse.com/docs/sql-reference/functions,https://private-7c7dfe99.mintlify.app/reference/functions,matched,f8bdbd53bca6538f,true,f8bdbd53bca6538f,2026-05-09T14:57:56+00:00,false
-/sql-reference/functions/ai-functions,docs/sql-reference/functions/ai-functions.md,reference/functions/regular-functions/ai-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ai-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/ai-functions,matched,f4c7162165bc448f,true,f4c7162165bc448f,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/arithmetic-functions,docs/sql-reference/functions/arithmetic-functions.md,reference/functions/regular-functions/arithmetic-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/arithmetic-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/arithmetic-functions,matched,02b001fbc5c71e7a,true,02b001fbc5c71e7a,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/array-functions,docs/sql-reference/functions/array-functions.md,reference/functions/regular-functions/array-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/array-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/array-functions,matched,2af9113b37ef938b,true,2af9113b37ef938b,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/array-join,docs/sql-reference/functions/array-join.md,reference/functions/regular-functions/array-join.mdx,https://clickhouse.com/docs/sql-reference/functions/array-join,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/array-join,matched,f957edbf7546dd57,true,f957edbf7546dd57,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/bit-functions,docs/sql-reference/functions/bit-functions.md,reference/functions/regular-functions/bit-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/bit-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/bit-functions,matched,5eba45d5047e61ed,true,5eba45d5047e61ed,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/bitmap-functions,docs/sql-reference/functions/bitmap-functions.md,reference/functions/regular-functions/bitmap-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/bitmap-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/bitmap-functions,matched,beb814995a4d3828,true,beb814995a4d3828,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/comparison-functions,docs/sql-reference/functions/comparison-functions.md,reference/functions/regular-functions/comparison-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/comparison-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/comparison-functions,matched,a367f52dd26b9689,true,a367f52dd26b9689,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/conditional-functions,docs/sql-reference/functions/conditional-functions.md,reference/functions/regular-functions/conditional-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/conditional-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/conditional-functions,matched,572d7f58d1fadc2b,true,572d7f58d1fadc2b,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/date-time-functions,docs/sql-reference/functions/date-time-functions.md,reference/functions/regular-functions/date-time-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/date-time-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/date-time-functions,matched,c1ae3146d9e1277c,true,c1ae3146d9e1277c,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/distance-functions,docs/sql-reference/functions/distance-functions.md,reference/functions/regular-functions/distance-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/distance-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/distance-functions,matched,f38245971fff95d0,true,d640404b6455109c,2026-05-08T21:00:17+00:00,false
-/sql-reference/functions/encoding-functions,docs/sql-reference/functions/encoding-functions.md,reference/functions/regular-functions/encoding-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/encoding-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/encoding-functions,matched,ef94c3584fe6e806,true,1eb826597211a7ff,2026-05-08T21:00:17+00:00,false
-/sql-reference/functions/encryption-functions,docs/sql-reference/functions/encryption-functions.md,reference/functions/regular-functions/encryption-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/encryption-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/encryption-functions,matched,2f986310e85f4a78,true,2fd413bc4634b77e,2026-05-08T21:00:18+00:00,false
-/sql-reference/functions/ext-dict-functions,docs/sql-reference/functions/ext-dict-functions.md,reference/functions/regular-functions/ext-dict-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ext-dict-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/ext-dict-functions,matched,298d92d6d2051a70,true,c7909951aa9b73e5,2026-05-08T21:00:18+00:00,false
-/sql-reference/functions/files,docs/sql-reference/functions/files.md,reference/functions/regular-functions/files.mdx,https://clickhouse.com/docs/sql-reference/functions/files,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/files,matched,17de42c037b1a363,true,17de42c037b1a363,2026-05-07T14:49:41+00:00,false
-/sql-reference/functions/financial-functions,docs/sql-reference/functions/financial-functions.md,reference/functions/regular-functions/financial-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/financial-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/financial-functions,matched,579a04fed7b56ba9,true,ab5b820100b0d5ef,2026-05-08T21:00:18+00:00,false
-/sql-reference/functions/functions-for-nulls,docs/sql-reference/functions/functions-for-nulls.md,reference/functions/regular-functions/functions-for-nulls.mdx,https://clickhouse.com/docs/sql-reference/functions/functions-for-nulls,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/functions-for-nulls,matched,b24195f9fa72734c,true,8a5916d24974dec6,2026-05-08T21:00:18+00:00,false
-/sql-reference/functions/geo/,docs/sql-reference/functions/geo/index.md,reference/functions/regular-functions/geo/index.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo,matched,229b20a3b9f2e01d,true,229b20a3b9f2e01d,2026-05-09T09:39:38+00:00,false
-/sql-reference/functions/geo/coordinates,docs/sql-reference/functions/geo/coordinates.md,reference/functions/regular-functions/geo/coordinates.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/coordinates,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/coordinates,matched,df1646edca9715cc,true,df1646edca9715cc,2026-05-07T14:49:41+00:00,false
-/sql-reference/functions/geo/flipCoordinates,docs/sql-reference/functions/geo/flipCoordinates.md,reference/functions/regular-functions/geo/flipCoordinates.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/flipCoordinates,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/flipCoordinates,matched,ecfdec0409be257b,true,ecfdec0409be257b,2026-05-07T14:49:41+00:00,false
-/sql-reference/functions/geo/geohash,docs/sql-reference/functions/geo/geohash.md,reference/functions/regular-functions/geo/geohash.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/geohash,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/geohash,matched,5b02c1d23fb7c027,true,5b02c1d23fb7c027,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/geo/geometry,docs/sql-reference/functions/geo/geometry.md,reference/functions/regular-functions/geo/geometry.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/geometry,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/geometry,matched,4a937e11a15d6308,true,4a937e11a15d6308,2026-05-07T14:49:41+00:00,false
-/sql-reference/functions/geo/h3,docs/sql-reference/functions/geo/h3.md,reference/functions/regular-functions/geo/h3.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/h3,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/h3,matched,664fe90e97793346,true,664fe90e97793346,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/geo/polygons,docs/sql-reference/functions/geo/polygon.md,reference/functions/regular-functions/geo/polygon.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/polygons,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/polygon,matched,783554b75229a238,true,783554b75229a238,2026-05-07T14:49:41+00:00,false
-/sql-reference/functions/geo/s2,docs/sql-reference/functions/geo/s2.md,reference/functions/regular-functions/geo/s2.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/s2,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/s2,matched,25a140f37d151801,true,25a140f37d151801,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/geo/svg,docs/sql-reference/functions/geo/svg.md,reference/functions/regular-functions/geo/svg.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/svg,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/geo/svg,matched,10638f31971872f4,true,10638f31971872f4,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/hash-functions,docs/sql-reference/functions/hash-functions.md,reference/functions/regular-functions/hash-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/hash-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/hash-functions,matched,7f12c0de7a23ba0d,true,7f12c0de7a23ba0d,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/in-functions,docs/sql-reference/functions/in-functions.md,reference/functions/regular-functions/in-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/in-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/in-functions,matched,c085580b4d0cc549,true,a3692c0caea63dcc,2026-05-07T14:49:41+00:00,false
-/sql-reference/functions/introspection,docs/sql-reference/functions/introspection.md,reference/functions/regular-functions/introspection.mdx,https://clickhouse.com/docs/sql-reference/functions/introspection,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/introspection,matched,8c3a5b4e6bbc35a0,true,8c3a5b4e6bbc35a0,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/ip-address-functions,docs/sql-reference/functions/ip-address-functions.md,reference/functions/regular-functions/ip-address-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ip-address-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/ip-address-functions,matched,07b39d5a48cb9cad,true,2cd6cb2965c1a236,2026-05-08T21:00:19+00:00,false
-/sql-reference/functions/json-functions,docs/sql-reference/functions/json-functions.md,reference/functions/regular-functions/json-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/json-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/json-functions,matched,9165d90e06f1bc6a,true,9165d90e06f1bc6a,2026-05-08T21:00:19+00:00,false
-/sql-reference/functions/logical-functions,docs/sql-reference/functions/logical-functions.md,reference/functions/regular-functions/logical-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/logical-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/logical-functions,matched,bb98f186198d2ed0,true,361d5b69622cc74b,2026-05-08T21:00:19+00:00,false
-/sql-reference/functions/machine-learning-functions,docs/sql-reference/functions/machine-learning-functions.md,reference/functions/regular-functions/machine-learning-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/machine-learning-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/machine-learning-functions,matched,10776ce269a165a1,true,10776ce269a165a1,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/math-functions,docs/sql-reference/functions/math-functions.md,reference/functions/regular-functions/math-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/math-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/math-functions,matched,92fa54c38be1b0fc,true,92fa54c38be1b0fc,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/nlp-functions,docs/sql-reference/functions/nlp-functions.md,reference/functions/regular-functions/nlp-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/nlp-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/nlp-functions,matched,00c21ab328d01f85,true,00c21ab328d01f85,2026-05-08T21:00:20+00:00,false
-/sql-reference/functions/numeric-indexed-vector-functions,docs/sql-reference/functions/numeric-indexed-vector-functions.md,reference/functions/regular-functions/numeric-indexed-vector-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/numeric-indexed-vector-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/numeric-indexed-vector-functions,matched,119e6aa5f59fcf54,true,119e6aa5f59fcf54,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/other-functions,docs/sql-reference/functions/other-functions.md,reference/functions/regular-functions/other-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/other-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/other-functions,matched,7074e5e40464af1f,true,7074e5e40464af1f,2026-05-09T11:14:51+00:00,false
-/sql-reference/functions/overview,docs/sql-reference/functions/overview.md,reference/functions/regular-functions/overview.mdx,https://clickhouse.com/docs/sql-reference/functions/overview,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/overview,matched,1c87cec5b19f085f,true,1c87cec5b19f085f,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/random-functions,docs/sql-reference/functions/random-functions.md,reference/functions/regular-functions/random-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/random-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/random-functions,matched,100ed7d23b2b6a33,true,358fb4cd1d025b1e,2026-05-09T11:14:51+00:00,false
-/sql-reference/functions/regular-functions,docs/sql-reference/functions/regular-functions-index.md,reference/functions/regular-functions/regular-functions-index.mdx,https://clickhouse.com/docs/sql-reference/functions/regular-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/regular-functions-index,matched,6c152f17b58caad6,true,6c152f17b58caad6,2026-05-07T14:49:41+00:00,false
-/sql-reference/functions/rounding-functions,docs/sql-reference/functions/rounding-functions.md,reference/functions/regular-functions/rounding-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/rounding-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/rounding-functions,matched,6d242e455062433b,true,6d242e455062433b,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/splitting-merging-functions,docs/sql-reference/functions/splitting-merging-functions.md,reference/functions/regular-functions/splitting-merging-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/splitting-merging-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/splitting-merging-functions,matched,a9096bda5a1d4bed,true,a9096bda5a1d4bed,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/string-functions,docs/sql-reference/functions/string-functions.md,reference/functions/regular-functions/string-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/string-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/string-functions,matched,33fc09ec788a00bc,true,33fc09ec788a00bc,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/string-replace-functions,docs/sql-reference/functions/string-replace-functions.md,reference/functions/regular-functions/string-replace-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/string-replace-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/string-replace-functions,matched,aa22cbfaf59e7cd2,true,4e9f35ffe6ecaca5,2026-05-08T21:00:21+00:00,false
-/sql-reference/functions/string-search-functions,docs/sql-reference/functions/string-search-functions.md,reference/functions/regular-functions/string-search-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/string-search-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/string-search-functions,matched,62d1d7f4caef7947,true,c0e976dd1c956867,2026-05-13T13:16:51+00:00,false
-/sql-reference/functions/time-series-functions,docs/sql-reference/functions/time-series-functions.md,reference/functions/regular-functions/time-series-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/time-series-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/time-series-functions,matched,8c7c9620fbcc2649,true,8c7c9620fbcc2649,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/time-window-functions,docs/sql-reference/functions/time-window-functions.md,reference/functions/regular-functions/time-window-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/time-window-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/time-window-functions,matched,6b2576c3b03c809a,true,6b2576c3b03c809a,2026-05-08T21:00:22+00:00,false
-/sql-reference/functions/tuple-functions,docs/sql-reference/functions/tuple-functions.md,reference/functions/regular-functions/tuple-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/tuple-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/tuple-functions,matched,edda876cb4a500ad,true,edda876cb4a500ad,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/tuple-map-functions,docs/sql-reference/functions/tuple-map-functions.md,reference/functions/regular-functions/tuple-map-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/tuple-map-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/tuple-map-functions,matched,6b14acbe7eb707cd,true,6b14acbe7eb707cd,2026-05-08T21:00:22+00:00,false
-/sql-reference/functions/type-conversion-functions,docs/sql-reference/functions/type-conversion-functions.md,reference/functions/regular-functions/type-conversion-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/type-conversion-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/type-conversion-functions,matched,95fedfe6cbfe1988,true,95fedfe6cbfe1988,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/udf,docs/sql-reference/functions/udf.md,reference/functions/regular-functions/udf.mdx,https://clickhouse.com/docs/sql-reference/functions/udf,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/udf,matched,8112ec90462892fe,true,8112ec90462892fe,2026-05-08T13:01:57+00:00,false
-/sql-reference/functions/ulid-functions,docs/sql-reference/functions/ulid-functions.md,reference/functions/regular-functions/ulid-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ulid-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/ulid-functions,matched,90c8d51f3c8beae5,true,193ab0f49915d34d,2026-05-08T21:00:22+00:00,false
-/sql-reference/functions/uniqtheta-functions,docs/sql-reference/functions/uniqtheta-functions.md,reference/functions/regular-functions/uniqtheta-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/uniqtheta-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/uniqtheta-functions,matched,f6c57709732c2698,true,f6c57709732c2698,2026-05-19T11:08:53+00:00,false
-/sql-reference/functions/url-functions,docs/sql-reference/functions/url-functions.md,reference/functions/regular-functions/url-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/url-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/url-functions,matched,2500ec02c6e32dae,true,25bb5ed2c3fd62e0,2026-05-08T21:10:29+00:00,false
-/sql-reference/functions/uuid-functions,docs/sql-reference/functions/uuid-functions.md,reference/functions/regular-functions/uuid-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/uuid-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/uuid-functions,matched,4d3c22972e76f466,true,4d3c22972e76f466,2026-05-08T21:00:23+00:00,false
-/sql-reference/functions/wasm_udf,docs/sql-reference/functions/wasm_udf.md,reference/functions/regular-functions/wasm_udf.mdx,https://clickhouse.com/docs/sql-reference/functions/wasm_udf,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/wasm_udf,matched,e1c6c946b3ac7668,true,e1c6c946b3ac7668,2026-05-13T13:16:51+00:00,false
-/sql-reference/functions/ym-dict-functions,docs/sql-reference/functions/embedded-dict-functions.md,reference/functions/regular-functions/embedded-dict-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ym-dict-functions,https://private-7c7dfe99.mintlify.app/reference/functions/regular-functions/embedded-dict-functions,matched,efac682e61bf516e,true,efac682e61bf516e,2026-05-19T11:08:53+00:00,false
-/sql-reference/operators/,docs/sql-reference/operators/index.md,reference/operators/index.mdx,https://clickhouse.com/docs/sql-reference/operators/,https://private-7c7dfe99.mintlify.app/reference/operators,matched,3d3c9f430d3e635f,true,3d3c9f430d3e635f,2026-05-19T11:08:53+00:00,false
-/sql-reference/operators/exists,docs/sql-reference/operators/exists.md,reference/operators/exists.mdx,https://clickhouse.com/docs/sql-reference/operators/exists,https://private-7c7dfe99.mintlify.app/reference/operators/exists,matched,12948636f740400a,true,12948636f740400a,2026-05-19T11:08:53+00:00,false
-/sql-reference/operators/in,docs/sql-reference/operators/in.md,reference/statements/in.mdx,https://clickhouse.com/docs/sql-reference/operators/in,https://private-7c7dfe99.mintlify.app/reference/statements/in,matched,11db78d13ea77687,true,11db78d13ea77687,2026-05-19T11:08:53+00:00,false
-/sql-reference/other/distributed-ddl,docs/sql-reference/operators/distributed-ddl.md,reference/operators/distributed-ddl.mdx,https://clickhouse.com/docs/sql-reference/other/distributed-ddl,https://private-7c7dfe99.mintlify.app/reference/operators/distributed-ddl,matched,f2e0676875f34dd5,true,f2e0676875f34dd5,2026-05-08T11:33:34+00:00,false
-/sql-reference/statements/,docs/sql-reference/statements/index.md,reference/statements/index.mdx,https://clickhouse.com/docs/sql-reference/statements/,https://private-7c7dfe99.mintlify.app/reference/statements,matched,981af6c22c02e012,true,84bf17e2315c270d,2026-05-09T09:39:38+00:00,false
-/sql-reference/statements/alter/,docs/sql-reference/statements/alter/index.md,reference/statements/alter/index.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/,https://private-7c7dfe99.mintlify.app/reference/statements/alter,matched,2f0f542d60abb09a,true,3cae588d4c419194,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/apply-deleted-mask,docs/sql-reference/statements/alter/apply-deleted-mask.md,reference/statements/alter/apply-deleted-mask.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/apply-deleted-mask,https://private-7c7dfe99.mintlify.app/reference/statements/alter/apply-deleted-mask,matched,aed29a266c464c67,true,aed29a266c464c67,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/alter/apply-patches,docs/sql-reference/statements/alter/apply-patches.md,reference/statements/alter/apply-patches.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/apply-patches,https://private-7c7dfe99.mintlify.app/reference/statements/alter/apply-patches,matched,2bba7ff9f47b7239,true,2bba7ff9f47b7239,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/column,docs/sql-reference/statements/alter/column.md,reference/statements/alter/column.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/column,https://private-7c7dfe99.mintlify.app/reference/statements/alter/column,matched,30130c9b0fe3bf74,true,30130c9b0fe3bf74,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/comment,docs/sql-reference/statements/alter/comment.md,reference/statements/alter/comment.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/comment,https://private-7c7dfe99.mintlify.app/reference/statements/alter/comment,matched,dcbbc74fb0568312,true,dcbbc74fb0568312,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/alter/constraint,docs/sql-reference/statements/alter/constraint.md,reference/statements/alter/constraint.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/constraint,https://private-7c7dfe99.mintlify.app/reference/statements/alter/constraint,matched,c29e0fea27b243f4,true,8ed2a0a54a6b4cc5,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/database-comment,docs/sql-reference/statements/alter/database-comment.md,reference/statements/alter/database-comment.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/database-comment,https://private-7c7dfe99.mintlify.app/reference/statements/alter/database-comment,matched,794f8576733173a6,true,794f8576733173a6,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/alter/delete,docs/sql-reference/statements/alter/delete.md,reference/statements/alter/delete.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/delete,https://private-7c7dfe99.mintlify.app/reference/statements/alter/delete,matched,79df6fbd25ea241d,true,79df6fbd25ea241d,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/alter/masking-policy,docs/sql-reference/statements/alter/masking-policy.md,reference/statements/alter/masking-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/masking-policy,https://private-7c7dfe99.mintlify.app/reference/statements/alter/masking-policy,matched,db4497ceb4087eda,true,db4497ceb4087eda,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/named-collection,docs/sql-reference/statements/alter/named-collection.md,reference/statements/alter/named-collection.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/named-collection,https://private-7c7dfe99.mintlify.app/reference/statements/alter/named-collection,matched,1ba41582c1e8ebc8,true,1ba41582c1e8ebc8,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/order-by,docs/sql-reference/statements/alter/order-by.md,reference/statements/alter/order-by.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/order-by,https://private-7c7dfe99.mintlify.app/reference/statements/alter/order-by,matched,e4d1e2d42d9244d8,true,da55650acb4be1e8,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/alter/partition,docs/sql-reference/statements/alter/partition.md,reference/statements/alter/partition.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/partition,https://private-7c7dfe99.mintlify.app/reference/statements/alter/partition,matched,32785de3bff088ba,true,32785de3bff088ba,2026-05-08T21:00:25+00:00,false
-/sql-reference/statements/alter/projection,docs/sql-reference/statements/alter/projection.md,reference/statements/alter/projection.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/projection,https://private-7c7dfe99.mintlify.app/reference/statements/alter/projection,matched,4f226b1552bbed54,true,4f226b1552bbed54,2026-05-13T15:43:31+00:00,false
-/sql-reference/statements/alter/quota,docs/sql-reference/statements/alter/quota.md,reference/statements/alter/quota.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/quota,https://private-7c7dfe99.mintlify.app/reference/statements/alter/quota,matched,7f4ff197ce476062,true,7f4ff197ce476062,2026-05-19T11:48:22+00:00,false
-/sql-reference/statements/alter/role,docs/sql-reference/statements/alter/role.md,reference/statements/alter/role.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/role,https://private-7c7dfe99.mintlify.app/reference/statements/alter/role,matched,303a2bb1adcbfc7e,true,303a2bb1adcbfc7e,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/alter/row-policy,docs/sql-reference/statements/alter/row-policy.md,reference/statements/alter/row-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/row-policy,https://private-7c7dfe99.mintlify.app/reference/statements/alter/row-policy,matched,660c01b012c65f4b,true,e9242354e112109a,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/alter/sample-by,docs/sql-reference/statements/alter/sample-by.md,reference/statements/alter/sample-by.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/sample-by,https://private-7c7dfe99.mintlify.app/reference/statements/alter/sample-by,matched,7154b5b2b24b75bc,true,7154b5b2b24b75bc,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/alter/setting,docs/sql-reference/statements/alter/setting.md,reference/statements/alter/setting.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/setting,https://private-7c7dfe99.mintlify.app/reference/statements/alter/setting,matched,333f7287eb8ca013,true,8396ae84019ca444,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/settings-profile,docs/sql-reference/statements/alter/settings-profile.md,reference/statements/alter/settings-profile.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/settings-profile,https://private-7c7dfe99.mintlify.app/reference/statements/alter/settings-profile,matched,974e376db0d1f6bc,true,974e376db0d1f6bc,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/alter/skipping-index,docs/sql-reference/statements/alter/skipping-index.md,reference/statements/alter/skipping-index.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/skipping-index,https://private-7c7dfe99.mintlify.app/reference/statements/alter/skipping-index,matched,639cf49f6b576656,true,a6ee74f4a5fa3c47,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/statistics,docs/sql-reference/statements/alter/statistics.md,reference/statements/alter/statistics.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/statistics,https://private-7c7dfe99.mintlify.app/reference/statements/alter/statistics,matched,dc6bed38f255f290,true,dc6bed38f255f290,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/ttl,docs/sql-reference/statements/alter/ttl.md,reference/statements/alter/ttl.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/ttl,https://private-7c7dfe99.mintlify.app/reference/statements/alter/ttl,matched,fb1e74b3574ce837,true,092cf9506a86a064,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/update,docs/sql-reference/statements/alter/update.md,reference/statements/alter/update.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/update,https://private-7c7dfe99.mintlify.app/reference/statements/alter/update,matched,f24e62109df1df61,true,a545210822fcd08c,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/alter/user,docs/sql-reference/statements/alter/user.md,reference/statements/alter/user.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/user,https://private-7c7dfe99.mintlify.app/reference/statements/alter/user,matched,bad6198b79924e96,true,bad6198b79924e96,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/alter/view,docs/sql-reference/statements/alter/view.md,reference/statements/alter/view.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/view,https://private-7c7dfe99.mintlify.app/reference/statements/alter/view,matched,849db286b271b6aa,true,3496fbf668769ff7,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/attach,docs/sql-reference/statements/attach.md,reference/statements/attach.mdx,https://clickhouse.com/docs/sql-reference/statements/attach,https://private-7c7dfe99.mintlify.app/reference/statements/attach,matched,0780d8eecea4ce0b,true,0780d8eecea4ce0b,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/check-grant,docs/sql-reference/statements/check-grant.md,reference/statements/check-grant.mdx,https://clickhouse.com/docs/sql-reference/statements/check-grant,https://private-7c7dfe99.mintlify.app/reference/statements/check-grant,matched,2d31634c588cb280,true,2d31634c588cb280,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/check-table,docs/sql-reference/statements/check-table.md,reference/statements/check-table.mdx,https://clickhouse.com/docs/sql-reference/statements/check-table,https://private-7c7dfe99.mintlify.app/reference/statements/check-table,matched,781b1716f6a68933,true,781b1716f6a68933,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/create/,docs/sql-reference/statements/create/index.md,reference/statements/create/index.mdx,https://clickhouse.com/docs/sql-reference/statements/create/,https://private-7c7dfe99.mintlify.app/reference/statements/create,matched,b45c5e1d1fb0fe6e,true,f53eec1c24f726e2,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/database,docs/sql-reference/statements/create/database.md,reference/statements/create/database.mdx,https://clickhouse.com/docs/sql-reference/statements/create/database,https://private-7c7dfe99.mintlify.app/reference/statements/create/database,matched,23534a319008733b,true,23534a319008733b,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/create/dictionary,docs/sql-reference/statements/create/dictionary/overview.md,reference/statements/create/dictionary.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary,matched,991e50e50ab9d097,true,991e50e50ab9d097,2026-05-19T11:48:22+00:00,false
-/sql-reference/statements/create/dictionary/attributes,docs/sql-reference/statements/create/dictionary/attributes.md,reference/statements/create/dictionary/attributes.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/attributes,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/attributes,matched,df228adf9244be27,true,df228adf9244be27,2026-05-09T09:39:38+00:00,false
-/sql-reference/statements/create/dictionary/embedded,docs/sql-reference/statements/create/dictionary/embedded.md,reference/statements/create/dictionary/embedded.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/embedded,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/embedded,matched,a5134319e705b1c2,true,a5134319e705b1c2,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/layouts,docs/sql-reference/statements/create/dictionary/layouts/overview.md,reference/statements/create/dictionary/layouts/overview.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/overview,matched,8a936c931e3b749d,true,8a936c931e3b749d,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/layouts/cache,docs/sql-reference/statements/create/dictionary/layouts/cache.md,reference/statements/create/dictionary/layouts/cache.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/cache,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/cache,matched,1dbce5622d55c826,true,1dbce5622d55c826,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/layouts/direct,docs/sql-reference/statements/create/dictionary/layouts/direct.md,reference/statements/create/dictionary/layouts/direct.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/direct,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/direct,matched,ba9d1650e5d9d3d1,true,ba9d1650e5d9d3d1,2026-05-08T11:53:27+00:00,false
-/sql-reference/statements/create/dictionary/layouts/flat,docs/sql-reference/statements/create/dictionary/layouts/flat.md,reference/statements/create/dictionary/layouts/flat.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/flat,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/flat,matched,4cd2982872ada37d,true,4cd2982872ada37d,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/layouts/hashed,docs/sql-reference/statements/create/dictionary/layouts/hashed.md,reference/statements/create/dictionary/layouts/hashed.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/hashed,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/hashed,matched,765b099e5923d360,true,765b099e5923d360,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/dictionary/layouts/hashed-array,docs/sql-reference/statements/create/dictionary/layouts/hashed-array.md,reference/statements/create/dictionary/layouts/hashed-array.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/hashed-array,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/hashed-array,matched,08b0f7772e500940,true,08b0f7772e500940,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/dictionary/layouts/hierarchical,docs/sql-reference/statements/create/dictionary/layouts/hierarchical.md,reference/statements/create/dictionary/layouts/hierarchical.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/hierarchical,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/hierarchical,matched,d0f45477e4502d5e,true,d0f45477e4502d5e,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/dictionary/layouts/ip-trie,docs/sql-reference/statements/create/dictionary/layouts/ip-trie.md,reference/statements/create/dictionary/layouts/ip-trie.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/ip-trie,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/ip-trie,matched,4663d6bdd0aad269,true,4663d6bdd0aad269,2026-05-08T12:19:52+00:00,false
-/sql-reference/statements/create/dictionary/layouts/polygon,docs/sql-reference/statements/create/dictionary/layouts/polygon.md,reference/statements/create/dictionary/layouts/polygon.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/polygon,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/polygon,matched,ac87c199241e9bf9,true,ac87c199241e9bf9,2026-05-08T12:19:52+00:00,false
-/sql-reference/statements/create/dictionary/layouts/range-hashed,docs/sql-reference/statements/create/dictionary/layouts/range-hashed.md,reference/statements/create/dictionary/layouts/range-hashed.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/range-hashed,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/range-hashed,matched,8ccca11e1180ae05,true,8ccca11e1180ae05,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/layouts/regexp-tree,docs/sql-reference/statements/create/dictionary/layouts/regexp-tree.md,reference/statements/create/dictionary/layouts/regexp-tree.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/regexp-tree,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/regexp-tree,matched,5e7a7769b6056521,true,5e7a7769b6056521,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/create/dictionary/layouts/ssd-cache,docs/sql-reference/statements/create/dictionary/layouts/ssd-cache.md,reference/statements/create/dictionary/layouts/ssd-cache.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/ssd-cache,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/layouts/ssd-cache,matched,fb386a8d8121b54d,true,fb386a8d8121b54d,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/dictionary/lifetime,docs/sql-reference/statements/create/dictionary/lifetime.md,reference/statements/create/dictionary/lifetime.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/lifetime,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/lifetime,matched,4ef385db95bf4e51,true,4ef385db95bf4e51,2026-05-08T11:53:27+00:00,false
-/sql-reference/statements/create/dictionary/sources,docs/sql-reference/statements/create/dictionary/sources/overview.md,reference/statements/create/dictionary/sources/overview.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/overview,matched,8d300d0cef0bff68,true,8d300d0cef0bff68,2026-05-13T15:43:32+00:00,false
-/sql-reference/statements/create/dictionary/sources/cassandra,docs/sql-reference/statements/create/dictionary/sources/cassandra.md,reference/statements/create/dictionary/sources/cassandra.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/cassandra,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/cassandra,matched,3366fbba1d891441,true,3366fbba1d891441,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/sources/clickhouse,docs/sql-reference/statements/create/dictionary/sources/clickhouse.md,reference/statements/create/dictionary/sources/clickhouse.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/clickhouse,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/clickhouse,matched,93b842786d511f36,true,93b842786d511f36,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/sources/executable-file,docs/sql-reference/statements/create/dictionary/sources/executable-file.md,reference/statements/create/dictionary/sources/executable-file.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/executable-file,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/executable-file,matched,220264aaefc1334a,true,220264aaefc1334a,2026-05-08T15:04:34+00:00,false
-/sql-reference/statements/create/dictionary/sources/executable-pool,docs/sql-reference/statements/create/dictionary/sources/executable-pool.md,reference/statements/create/dictionary/sources/executable-pool.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/executable-pool,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/executable-pool,matched,d1ff1acf8257ac87,true,d1ff1acf8257ac87,2026-05-08T15:04:34+00:00,false
-/sql-reference/statements/create/dictionary/sources/http,docs/sql-reference/statements/create/dictionary/sources/http.md,reference/statements/create/dictionary/sources/http.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/http,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/http,matched,e72f060583314b47,true,e72f060583314b47,2026-05-08T15:04:34+00:00,false
-/sql-reference/statements/create/dictionary/sources/local-file,docs/sql-reference/statements/create/dictionary/sources/local-file.md,reference/statements/create/dictionary/sources/local-file.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/local-file,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/local-file,matched,a1a7676e8f61e757,true,a1a7676e8f61e757,2026-05-08T15:04:34+00:00,false
-/sql-reference/statements/create/dictionary/sources/mongodb,docs/sql-reference/statements/create/dictionary/sources/mongodb.md,reference/statements/create/dictionary/sources/mongodb.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/mongodb,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/mongodb,matched,1e59afc5c1cb7417,true,1e59afc5c1cb7417,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/dictionary/sources/mysql,docs/sql-reference/statements/create/dictionary/sources/mysql.md,reference/statements/create/dictionary/sources/mysql.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/mysql,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/mysql,matched,44331440c9cf0cf2,true,44331440c9cf0cf2,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/sources/null,docs/sql-reference/statements/create/dictionary/sources/null.md,reference/statements/create/dictionary/sources/null.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/null,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/null,matched,e33e071b01088cb8,true,e33e071b01088cb8,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/dictionary/sources/odbc,docs/sql-reference/statements/create/dictionary/sources/odbc.md,reference/statements/create/dictionary/sources/odbc.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/odbc,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/odbc,matched,c6f1346b0c918e21,true,c6f1346b0c918e21,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/sources/postgresql,docs/sql-reference/statements/create/dictionary/sources/postgresql.md,reference/statements/create/dictionary/sources/postgresql.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/postgresql,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/postgresql,matched,f94ebe7f7e07a840,true,f94ebe7f7e07a840,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/sources/redis,docs/sql-reference/statements/create/dictionary/sources/redis.md,reference/statements/create/dictionary/sources/redis.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/redis,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/redis,matched,44c3ced931104ce8,true,44c3ced931104ce8,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/dictionary/sources/yamlregexptree,docs/sql-reference/statements/create/dictionary/sources/yamlregexptree.md,reference/statements/create/dictionary/sources/yamlregexptree.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/yamlregexptree,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/yamlregexptree,matched,fa8e3f45deab02e7,true,fa8e3f45deab02e7,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/dictionary/sources/ytsaurus,docs/sql-reference/statements/create/dictionary/sources/ytsaurus.md,reference/statements/create/dictionary/sources/ytsaurus.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/ytsaurus,https://private-7c7dfe99.mintlify.app/reference/statements/create/dictionary/sources/ytsaurus,matched,d17074ea4ae2f160,true,d17074ea4ae2f160,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/function,docs/sql-reference/statements/create/function.md,reference/statements/create/function.mdx,https://clickhouse.com/docs/sql-reference/statements/create/function,https://private-7c7dfe99.mintlify.app/reference/statements/create/function,matched,b10c2bd1add9f390,true,b10c2bd1add9f390,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/create/masking-policy,docs/sql-reference/statements/create/masking-policy.md,reference/statements/create/masking-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/create/masking-policy,https://private-7c7dfe99.mintlify.app/reference/statements/create/masking-policy,matched,fd8e3cc73dae2f42,true,fd8e3cc73dae2f42,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/named-collection,docs/sql-reference/statements/create/named-collection.md,reference/statements/create/named-collection.mdx,https://clickhouse.com/docs/sql-reference/statements/create/named-collection,https://private-7c7dfe99.mintlify.app/reference/statements/create/named-collection,matched,7d224b4658e83885,true,7d224b4658e83885,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/create/quota,docs/sql-reference/statements/create/quota.md,reference/statements/create/quota.mdx,https://clickhouse.com/docs/sql-reference/statements/create/quota,https://private-7c7dfe99.mintlify.app/reference/statements/create/quota,matched,a0e499214c967512,true,a0e499214c967512,2026-05-19T11:48:22+00:00,false
-/sql-reference/statements/create/role,docs/sql-reference/statements/create/role.md,reference/statements/create/role.mdx,https://clickhouse.com/docs/sql-reference/statements/create/role,https://private-7c7dfe99.mintlify.app/reference/statements/create/role,matched,437e57c81c3f0872,true,437e57c81c3f0872,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/create/row-policy,docs/sql-reference/statements/create/row-policy.md,reference/statements/create/row-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/create/row-policy,https://private-7c7dfe99.mintlify.app/reference/statements/create/row-policy,matched,7af119041838a001,true,7af119041838a001,2026-05-19T11:48:22+00:00,false
-/sql-reference/statements/create/settings-profile,docs/sql-reference/statements/create/settings-profile.md,reference/statements/create/settings-profile.mdx,https://clickhouse.com/docs/sql-reference/statements/create/settings-profile,https://private-7c7dfe99.mintlify.app/reference/statements/create/settings-profile,matched,5840e875e6ec0ff5,true,5840e875e6ec0ff5,2026-05-19T11:48:22+00:00,false
-/sql-reference/statements/create/table,docs/sql-reference/statements/create/table.md,reference/statements/create/table.mdx,https://clickhouse.com/docs/sql-reference/statements/create/table,https://private-7c7dfe99.mintlify.app/reference/statements/create/table,matched,fef6440f2af25f60,true,fef6440f2af25f60,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/create/user,docs/sql-reference/statements/create/user.md,reference/statements/create/user.mdx,https://clickhouse.com/docs/sql-reference/statements/create/user,https://private-7c7dfe99.mintlify.app/reference/statements/create/user,matched,ea6560f73f342624,true,ea6560f73f342624,2026-05-19T11:48:22+00:00,false
-/sql-reference/statements/create/view,docs/sql-reference/statements/create/view.md,reference/statements/create/view.mdx,https://clickhouse.com/docs/sql-reference/statements/create/view,https://private-7c7dfe99.mintlify.app/reference/statements/create/view,matched,4da94523000fe99c,true,4da94523000fe99c,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/delete,docs/sql-reference/statements/delete.md,reference/statements/delete.mdx,https://clickhouse.com/docs/sql-reference/statements/delete,https://private-7c7dfe99.mintlify.app/reference/statements/delete,matched,635055619056b153,true,635055619056b153,2026-05-09T17:02:01+00:00,false
-/sql-reference/statements/describe-table,docs/sql-reference/statements/describe-table.md,reference/statements/describe-table.mdx,https://clickhouse.com/docs/sql-reference/statements/describe-table,https://private-7c7dfe99.mintlify.app/reference/statements/describe-table,matched,72405ef6fff16fe6,true,72405ef6fff16fe6,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/detach,docs/sql-reference/statements/detach.md,reference/statements/detach.mdx,https://clickhouse.com/docs/sql-reference/statements/detach,https://private-7c7dfe99.mintlify.app/reference/statements/detach,matched,12d19ffd2bc92b1d,true,12d19ffd2bc92b1d,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/drop,docs/sql-reference/statements/drop.md,reference/statements/drop.mdx,https://clickhouse.com/docs/sql-reference/statements/drop,https://private-7c7dfe99.mintlify.app/reference/statements/drop,matched,8b56b1ae9a5b9042,true,8af9b9ae9836e7c1,2026-05-09T09:39:38+00:00,false
-/sql-reference/statements/exchange,docs/sql-reference/statements/exchange.md,reference/statements/exchange.mdx,https://clickhouse.com/docs/sql-reference/statements/exchange,https://private-7c7dfe99.mintlify.app/reference/statements/exchange,matched,bd589160963e7bea,true,48cc905738da417c,2026-05-09T09:39:38+00:00,false
-/sql-reference/statements/execute_as,docs/sql-reference/statements/execute_as.md,reference/statements/execute_as.mdx,https://clickhouse.com/docs/sql-reference/statements/execute_as,https://private-7c7dfe99.mintlify.app/reference/statements/execute_as,matched,7b03039504ddd659,true,7b03039504ddd659,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/exists,docs/sql-reference/statements/exists.md,reference/statements/exists.mdx,https://clickhouse.com/docs/sql-reference/statements/exists,https://private-7c7dfe99.mintlify.app/reference/statements/exists,matched,f787978eb7ad2aef,true,f8983bc303673b5b,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/explain,docs/sql-reference/statements/explain.md,reference/statements/explain.mdx,https://clickhouse.com/docs/sql-reference/statements/explain,https://private-7c7dfe99.mintlify.app/reference/statements/explain,matched,3daef0a18f4540b0,true,3daef0a18f4540b0,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/grant,docs/sql-reference/statements/grant.md,reference/statements/grant.mdx,https://clickhouse.com/docs/sql-reference/statements/grant,https://private-7c7dfe99.mintlify.app/reference/statements/grant,matched,bb9e0ae273b53779,true,bb9e0ae273b53779,2026-05-08T11:53:27+00:00,false
-/sql-reference/statements/insert-into,docs/sql-reference/statements/insert-into.md,reference/statements/insert-into.mdx,https://clickhouse.com/docs/sql-reference/statements/insert-into,https://private-7c7dfe99.mintlify.app/reference/statements/insert-into,matched,b04169961ed35a16,true,b04169961ed35a16,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/kill,docs/sql-reference/statements/kill.md,reference/statements/kill.mdx,https://clickhouse.com/docs/sql-reference/statements/kill,https://private-7c7dfe99.mintlify.app/reference/statements/kill,matched,af21361ca18f3026,true,af21361ca18f3026,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/move,docs/sql-reference/statements/move.md,reference/statements/move.mdx,https://clickhouse.com/docs/sql-reference/statements/move,https://private-7c7dfe99.mintlify.app/reference/statements/move,matched,3f0321df0eda3733,true,8103e61160aa5299,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/optimize,docs/sql-reference/statements/optimize.md,reference/statements/optimize.mdx,https://clickhouse.com/docs/sql-reference/statements/optimize,https://private-7c7dfe99.mintlify.app/reference/statements/optimize,matched,d577af60f580c0b1,true,d577af60f580c0b1,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/parallel_with,docs/sql-reference/statements/parallel_with.md,reference/statements/parallel_with.mdx,https://clickhouse.com/docs/sql-reference/statements/parallel_with,https://private-7c7dfe99.mintlify.app/reference/statements/parallel_with,matched,1f165d76471c3a5b,true,483cc85982240fd1,2026-05-09T09:39:38+00:00,false
-/sql-reference/statements/rename,docs/sql-reference/statements/rename.md,reference/statements/rename.mdx,https://clickhouse.com/docs/sql-reference/statements/rename,https://private-7c7dfe99.mintlify.app/reference/statements/rename,matched,37bc53ffaae36d00,true,7a7e56c7d4e06aa4,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/revoke,docs/sql-reference/statements/revoke.md,reference/statements/revoke.mdx,https://clickhouse.com/docs/sql-reference/statements/revoke,https://private-7c7dfe99.mintlify.app/reference/statements/revoke,matched,421e31eca5449bc3,true,623f2f8c2f600659,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/select/,docs/sql-reference/statements/select/index.md,reference/statements/select/index.mdx,https://clickhouse.com/docs/sql-reference/statements/select/,https://private-7c7dfe99.mintlify.app/reference/statements/select,matched,85222c4f3d27324a,true,000b1489bccc8788,2026-05-09T09:39:38+00:00,false
-/sql-reference/statements/select/all,docs/sql-reference/statements/select/all.md,reference/statements/select/all.mdx,https://clickhouse.com/docs/sql-reference/statements/select/all,https://private-7c7dfe99.mintlify.app/reference/statements/select/all,matched,bb422f0edd427946,true,a7e402c757884105,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/select/apply-modifier,docs/sql-reference/statements/select/apply_modifier.md,reference/statements/select/apply_modifier.mdx,https://clickhouse.com/docs/sql-reference/statements/select/apply-modifier,https://private-7c7dfe99.mintlify.app/reference/statements/select/apply_modifier,matched,b14c9032f2ded030,true,b14c9032f2ded030,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/array-join,docs/sql-reference/statements/select/array-join.md,reference/statements/select/array-join.mdx,https://clickhouse.com/docs/sql-reference/statements/select/array-join,https://private-7c7dfe99.mintlify.app/reference/statements/select/array-join,matched,a40e92dc94f24e98,true,b1e073c8374abc5e,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/select/distinct,docs/sql-reference/statements/select/distinct.md,reference/statements/select/distinct.mdx,https://clickhouse.com/docs/sql-reference/statements/select/distinct,https://private-7c7dfe99.mintlify.app/reference/statements/select/distinct,matched,0ab1da121ff29a6f,true,8b19006f70430697,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/select/except,docs/sql-reference/statements/select/except.md,reference/statements/select/except.mdx,https://clickhouse.com/docs/sql-reference/statements/select/except,https://private-7c7dfe99.mintlify.app/reference/statements/select/except,matched,39d64699466c359f,true,39d64699466c359f,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/except-modifier,docs/sql-reference/statements/select/except_modifier.md,reference/statements/select/except_modifier.mdx,https://clickhouse.com/docs/sql-reference/statements/select/except-modifier,https://private-7c7dfe99.mintlify.app/reference/statements/select/except_modifier,matched,35e4d9fcfe542b93,true,35e4d9fcfe542b93,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/format,docs/sql-reference/statements/select/format.md,reference/statements/select/format.mdx,https://clickhouse.com/docs/sql-reference/statements/select/format,https://private-7c7dfe99.mintlify.app/reference/statements/select/format,matched,8977e80ee0785bd3,true,c4c2f0d3c5707c2d,2026-05-08T13:01:57+00:00,false
-/sql-reference/statements/select/from,docs/sql-reference/statements/select/from.md,reference/statements/select/from.mdx,https://clickhouse.com/docs/sql-reference/statements/select/from,https://private-7c7dfe99.mintlify.app/reference/statements/select/from,matched,31323a0e56256596,true,71e350eef6826c63,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/select/group-by,docs/sql-reference/statements/select/group-by.md,reference/statements/select/group-by.mdx,https://clickhouse.com/docs/sql-reference/statements/select/group-by,https://private-7c7dfe99.mintlify.app/reference/statements/select/group-by,matched,2401cd614ce10370,true,2401cd614ce10370,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/having,docs/sql-reference/statements/select/having.md,reference/statements/select/having.mdx,https://clickhouse.com/docs/sql-reference/statements/select/having,https://private-7c7dfe99.mintlify.app/reference/statements/select/having,matched,2cc0edfc46c6075a,true,153f09d0dc6e1710,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/select/intersect,docs/sql-reference/statements/select/intersect.md,reference/statements/select/intersect.mdx,https://clickhouse.com/docs/sql-reference/statements/select/intersect,https://private-7c7dfe99.mintlify.app/reference/statements/select/intersect,matched,2d206c976cd88c30,true,2d206c976cd88c30,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/into-outfile,docs/sql-reference/statements/select/into-outfile.md,reference/statements/select/into-outfile.mdx,https://clickhouse.com/docs/sql-reference/statements/select/into-outfile,https://private-7c7dfe99.mintlify.app/reference/statements/select/into-outfile,matched,4655e3a018c5dc42,true,4655e3a018c5dc42,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/join,docs/sql-reference/statements/select/join.md,reference/statements/select/join.mdx,https://clickhouse.com/docs/sql-reference/statements/select/join,https://private-7c7dfe99.mintlify.app/reference/statements/select/join,matched,85d0761a113d83bd,true,85d0761a113d83bd,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/limit,docs/sql-reference/statements/select/limit.md,reference/statements/select/limit.mdx,https://clickhouse.com/docs/sql-reference/statements/select/limit,https://private-7c7dfe99.mintlify.app/reference/statements/select/limit,matched,7a4d74ba92379a5f,true,7a4d74ba92379a5f,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/limit-by,docs/sql-reference/statements/select/limit-by.md,reference/statements/select/limit-by.mdx,https://clickhouse.com/docs/sql-reference/statements/select/limit-by,https://private-7c7dfe99.mintlify.app/reference/statements/select/limit-by,matched,e36cb7202c0ca28f,true,e7c877624140213a,2026-05-13T13:25:34+00:00,false
-/sql-reference/statements/select/offset,docs/sql-reference/statements/select/offset.md,reference/statements/select/offset.mdx,https://clickhouse.com/docs/sql-reference/statements/select/offset,https://private-7c7dfe99.mintlify.app/reference/statements/select/offset,matched,5ebfe47b67f74463,true,5ebfe47b67f74463,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/order-by,docs/sql-reference/statements/select/order-by.md,reference/statements/select/order-by.mdx,https://clickhouse.com/docs/sql-reference/statements/select/order-by,https://private-7c7dfe99.mintlify.app/reference/statements/select/order-by,matched,d7ad45fdacd639e4,true,d7ad45fdacd639e4,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/prewhere,docs/sql-reference/statements/select/prewhere.md,reference/statements/select/prewhere.mdx,https://clickhouse.com/docs/sql-reference/statements/select/prewhere,https://private-7c7dfe99.mintlify.app/reference/statements/select/prewhere,matched,3238b6a9d1079097,true,cdca3b6d03d5aff1,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/select/qualify,docs/sql-reference/statements/select/qualify.md,reference/statements/select/qualify.mdx,https://clickhouse.com/docs/sql-reference/statements/select/qualify,https://private-7c7dfe99.mintlify.app/reference/statements/select/qualify,matched,bf033ebdee748507,true,d12d9428ec537b38,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/select/replace-modifier,docs/sql-reference/statements/select/replace_modifier.md,reference/statements/select/replace_modifier.mdx,https://clickhouse.com/docs/sql-reference/statements/select/replace-modifier,https://private-7c7dfe99.mintlify.app/reference/statements/select/replace_modifier,matched,5afb8cd56b457884,true,5afb8cd56b457884,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/sample,docs/sql-reference/statements/select/sample.md,reference/statements/select/sample.mdx,https://clickhouse.com/docs/sql-reference/statements/select/sample,https://private-7c7dfe99.mintlify.app/reference/statements/select/sample,matched,3f0005567413b875,true,aa16d1a33d331289,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/select/union,docs/sql-reference/statements/select/union.md,reference/statements/select/union.mdx,https://clickhouse.com/docs/sql-reference/statements/select/union,https://private-7c7dfe99.mintlify.app/reference/statements/select/union,matched,be8712788ece5c74,true,be8712788ece5c74,2026-05-19T11:08:53+00:00,false
-/sql-reference/statements/select/where,docs/sql-reference/statements/select/where.md,reference/statements/select/where.mdx,https://clickhouse.com/docs/sql-reference/statements/select/where,https://private-7c7dfe99.mintlify.app/reference/statements/select/where,matched,488dbcbfc1c6e4b7,true,e592ec6dc8b77028,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/select/with,docs/sql-reference/statements/select/with.md,reference/statements/select/with.mdx,https://clickhouse.com/docs/sql-reference/statements/select/with,https://private-7c7dfe99.mintlify.app/reference/statements/select/with,matched,70294d187c3333a4,true,ca02fa35413107a3,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/set,docs/sql-reference/statements/set.md,reference/statements/set.mdx,https://clickhouse.com/docs/sql-reference/statements/set,https://private-7c7dfe99.mintlify.app/reference/statements/set,matched,04fdbe960f351e17,true,fea6991e0302092b,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/set-role,docs/sql-reference/statements/set-role.md,reference/statements/set-role.mdx,https://clickhouse.com/docs/sql-reference/statements/set-role,https://private-7c7dfe99.mintlify.app/reference/statements/set-role,matched,af1d949b76a7c871,true,af1d949b76a7c871,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/show,docs/sql-reference/statements/show.md,reference/statements/show.mdx,https://clickhouse.com/docs/sql-reference/statements/show,https://private-7c7dfe99.mintlify.app/reference/statements/show,matched,49ceafd57e4d4c95,true,49ceafd57e4d4c95,2026-05-09T10:26:02+00:00,false
-/sql-reference/statements/system,docs/sql-reference/statements/system.md,reference/statements/system.mdx,https://clickhouse.com/docs/sql-reference/statements/system,https://private-7c7dfe99.mintlify.app/reference/statements/system,matched,ad6b118a399960b4,true,ad6b118a399960b4,2026-05-13T13:16:51+00:00,false
-/sql-reference/statements/truncate,docs/sql-reference/statements/truncate.md,reference/statements/truncate.mdx,https://clickhouse.com/docs/sql-reference/statements/truncate,https://private-7c7dfe99.mintlify.app/reference/statements/truncate,matched,89b0b953f7e7370e,true,d710ab3ea8569000,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/undrop,docs/sql-reference/statements/undrop.md,reference/statements/undrop.mdx,https://clickhouse.com/docs/sql-reference/statements/undrop,https://private-7c7dfe99.mintlify.app/reference/statements/undrop,matched,7bd54b91e1b6d80b,true,764c0b5706ee7c85,2026-05-08T09:09:20+00:00,false
-/sql-reference/statements/update,docs/sql-reference/statements/update.md,reference/statements/update.mdx,https://clickhouse.com/docs/sql-reference/statements/update,https://private-7c7dfe99.mintlify.app/reference/statements/update,matched,17436a6c6f051eb7,true,17436a6c6f051eb7,2026-05-19T11:48:22+00:00,false
-/sql-reference/statements/use,docs/sql-reference/statements/use.md,reference/statements/use.mdx,https://clickhouse.com/docs/sql-reference/statements/use,https://private-7c7dfe99.mintlify.app/reference/statements/use,matched,e2404745046de3ea,true,4120b13b5f03f7c2,2026-05-07T14:49:41+00:00,false
-/sql-reference/statements/watch,docs/sql-reference/statements/watch.md,reference/statements/watch.mdx,https://clickhouse.com/docs/sql-reference/statements/watch,https://private-7c7dfe99.mintlify.app/reference/statements/watch,matched,55069f671a99d799,true,55069f671a99d799,2026-05-08T09:09:20+00:00,false
-/sql-reference/syntax,docs/sql-reference/syntax.md,reference/syntax.mdx,https://clickhouse.com/docs/sql-reference/syntax,https://private-7c7dfe99.mintlify.app/reference/syntax,matched,a9135da960dcaf5e,true,a9135da960dcaf5e,2026-05-08T13:01:57+00:00,false
-/sql-reference/table-functions/,docs/sql-reference/table-functions/index.md,reference/functions/table-functions/index.mdx,https://clickhouse.com/docs/sql-reference/table-functions/,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions,matched,1752f7d23d0c71cf,true,1752f7d23d0c71cf,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/arrowflight,docs/sql-reference/table-functions/arrowflight.md,reference/functions/table-functions/arrowflight.mdx,https://clickhouse.com/docs/sql-reference/table-functions/arrowflight,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/arrowflight,matched,7d58f93d9c0e0f98,true,7d58f93d9c0e0f98,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/azureBlobStorage,docs/sql-reference/table-functions/azureBlobStorage.md,reference/functions/table-functions/azureBlobStorage.mdx,https://clickhouse.com/docs/sql-reference/table-functions/azureBlobStorage,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/azureBlobStorage,matched,85ea52388b3f2d06,true,85ea52388b3f2d06,2026-05-08T15:04:34+00:00,false
-/sql-reference/table-functions/azureBlobStorageCluster,docs/sql-reference/table-functions/azureBlobStorageCluster.md,reference/functions/table-functions/azureBlobStorageCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/azureBlobStorageCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/azureBlobStorageCluster,matched,dc75f0e73803354d,true,dc75f0e73803354d,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/cluster,docs/sql-reference/table-functions/cluster.md,reference/functions/table-functions/cluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/cluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/cluster,matched,51cf2023223e48e7,true,51cf2023223e48e7,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/deltalake,docs/sql-reference/table-functions/deltalake.md,reference/functions/table-functions/deltalake.mdx,https://clickhouse.com/docs/sql-reference/table-functions/deltalake,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/deltalake,matched,8d88c4159bcd5510,true,8d88c4159bcd5510,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/deltalakeCluster,docs/sql-reference/table-functions/deltalakeCluster.md,reference/functions/table-functions/deltalakeCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/deltalakeCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/deltalakeCluster,matched,3dfcdcdd28339a6e,true,3dfcdcdd28339a6e,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/dictionary,docs/sql-reference/table-functions/dictionary.md,reference/functions/table-functions/dictionary.mdx,https://clickhouse.com/docs/sql-reference/table-functions/dictionary,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/dictionary,matched,ee69af751e7bcdab,true,ee69af751e7bcdab,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/file,docs/sql-reference/table-functions/file.md,reference/functions/table-functions/file.mdx,https://clickhouse.com/docs/sql-reference/table-functions/file,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/file,matched,0e0f27c7cf6a4b67,true,0e0f27c7cf6a4b67,2026-05-13T13:16:51+00:00,false
-/sql-reference/table-functions/fileCluster,docs/sql-reference/table-functions/fileCluster.md,reference/functions/table-functions/fileCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/fileCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/fileCluster,matched,0b518b34b857ea61,true,0b518b34b857ea61,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/filesystem,docs/sql-reference/table-functions/filesystem.md,reference/functions/table-functions/filesystem.mdx,https://clickhouse.com/docs/sql-reference/table-functions/filesystem,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/filesystem,matched,882421bad03a1a1a,true,882421bad03a1a1a,2026-05-08T15:04:25+00:00,false
-/sql-reference/table-functions/format,docs/sql-reference/table-functions/format.md,reference/functions/table-functions/format.mdx,https://clickhouse.com/docs/sql-reference/table-functions/format,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/format,matched,4af4c925a55f25a6,true,4af4c925a55f25a6,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/fuzzJSON,docs/sql-reference/table-functions/fuzzJSON.md,reference/functions/table-functions/fuzzJSON.mdx,https://clickhouse.com/docs/sql-reference/table-functions/fuzzJSON,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/fuzzJSON,matched,a423ba9209dce342,true,a423ba9209dce342,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/fuzzQuery,docs/sql-reference/table-functions/fuzzQuery.md,reference/functions/table-functions/fuzzQuery.mdx,https://clickhouse.com/docs/sql-reference/table-functions/fuzzQuery,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/fuzzQuery,matched,30d7f5082387ef53,true,30d7f5082387ef53,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/gcs,docs/sql-reference/table-functions/gcs.md,reference/functions/table-functions/gcs.mdx,https://clickhouse.com/docs/sql-reference/table-functions/gcs,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/gcs,matched,3db1d64aed4fda6d,true,3db1d64aed4fda6d,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/generate,docs/sql-reference/table-functions/generate.md,reference/functions/table-functions/generate.mdx,https://clickhouse.com/docs/sql-reference/table-functions/generate,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/generate,matched,6c2593dca504546a,true,6c2593dca504546a,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/generate_series,docs/sql-reference/table-functions/generate_series.md,reference/functions/table-functions/generate_series.mdx,https://clickhouse.com/docs/sql-reference/table-functions/generate_series,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/generate_series,matched,2cd50c48a3e8ea2b,true,2cd50c48a3e8ea2b,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/hdfs,docs/sql-reference/table-functions/hdfs.md,reference/functions/table-functions/hdfs.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hdfs,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/hdfs,matched,f8e80c5b854727f0,true,f8e80c5b854727f0,2026-05-09T09:39:38+00:00,false
-/sql-reference/table-functions/hdfsCluster,docs/sql-reference/table-functions/hdfsCluster.md,reference/functions/table-functions/hdfsCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hdfsCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/hdfsCluster,matched,a1590af208a32d6a,true,a1590af208a32d6a,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/hudi,docs/sql-reference/table-functions/hudi.md,reference/functions/table-functions/hudi.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hudi,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/hudi,matched,ec7ca6bb139399c2,true,ec7ca6bb139399c2,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/hudiCluster,docs/sql-reference/table-functions/hudiCluster.md,reference/functions/table-functions/hudiCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hudiCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/hudiCluster,matched,7535cf734ec520d3,true,cfb2dfa16b24b4d7,2026-05-08T13:01:57+00:00,false
-/sql-reference/table-functions/iceberg,docs/sql-reference/table-functions/iceberg.md,reference/functions/table-functions/iceberg.mdx,https://clickhouse.com/docs/sql-reference/table-functions/iceberg,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/iceberg,matched,a92b3b7bf7653638,true,a92b3b7bf7653638,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/icebergCluster,docs/sql-reference/table-functions/icebergCluster.md,reference/functions/table-functions/icebergCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/icebergCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/icebergCluster,matched,1136750e5a714749,true,1136750e5a714749,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/input,docs/sql-reference/table-functions/input.md,reference/functions/table-functions/input.mdx,https://clickhouse.com/docs/sql-reference/table-functions/input,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/input,matched,d6ef966d733a8006,true,d6ef966d733a8006,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/jdbc,docs/sql-reference/table-functions/jdbc.md,reference/functions/table-functions/jdbc.mdx,https://clickhouse.com/docs/sql-reference/table-functions/jdbc,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/jdbc,matched,ea91e6a9ef884757,true,ea91e6a9ef884757,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/loop,docs/sql-reference/table-functions/loop.md,reference/functions/table-functions/loop.mdx,https://clickhouse.com/docs/sql-reference/table-functions/loop,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/loop,matched,27799a38256c3283,true,27799a38256c3283,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/merge,docs/sql-reference/table-functions/merge.md,reference/functions/table-functions/merge.mdx,https://clickhouse.com/docs/sql-reference/table-functions/merge,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/merge,matched,7c9f227d0f54ac31,true,7c9f227d0f54ac31,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/mergeTreeIndex,docs/sql-reference/table-functions/mergeTreeIndex.md,reference/functions/table-functions/mergeTreeIndex.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mergeTreeIndex,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/mergeTreeIndex,matched,f0cfbaa96ea9b96d,true,f0cfbaa96ea9b96d,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/mergeTreeProjection,docs/sql-reference/table-functions/mergeTreeProjection.md,reference/functions/table-functions/mergeTreeProjection.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mergeTreeProjection,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/mergeTreeProjection,matched,66e0e0e58a15f13b,true,66e0e0e58a15f13b,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/mergeTreeTextIndex,docs/sql-reference/table-functions/mergeTreeTextIndex.md,reference/functions/table-functions/mergeTreeTextIndex.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mergeTreeTextIndex,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/mergeTreeTextIndex,matched,674be778b3ca892c,true,674be778b3ca892c,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/mongodb,docs/sql-reference/table-functions/mongodb.md,reference/functions/table-functions/mongodb.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mongodb,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/mongodb,matched,69c90ba8bcbce740,true,69c90ba8bcbce740,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/mysql,docs/sql-reference/table-functions/mysql.md,reference/functions/table-functions/mysql.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mysql,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/mysql,matched,d8e2e840f42a2098,true,d8e2e840f42a2098,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/null,docs/sql-reference/table-functions/null.md,reference/functions/table-functions/null.mdx,https://clickhouse.com/docs/sql-reference/table-functions/null,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/null,matched,1e3e6c4337634880,true,1e3e6c4337634880,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/numbers,docs/sql-reference/table-functions/numbers.md,reference/functions/table-functions/numbers.mdx,https://clickhouse.com/docs/sql-reference/table-functions/numbers,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/numbers,matched,3627bf6180612a42,true,3627bf6180612a42,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/odbc,docs/sql-reference/table-functions/odbc.md,reference/functions/table-functions/odbc.mdx,https://clickhouse.com/docs/sql-reference/table-functions/odbc,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/odbc,matched,727fc4c5f407c071,true,727fc4c5f407c071,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/paimon,docs/sql-reference/table-functions/paimon.md,reference/functions/table-functions/paimon.mdx,https://clickhouse.com/docs/sql-reference/table-functions/paimon,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/paimon,matched,ff6b4066c22e03bc,true,ff6b4066c22e03bc,2026-05-08T14:01:22+00:00,false
-/sql-reference/table-functions/paimonCluster,docs/sql-reference/table-functions/paimonCluster.md,reference/functions/table-functions/paimonCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/paimonCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/paimonCluster,matched,6a7a31ed6e3d760b,true,6a7a31ed6e3d760b,2026-05-08T09:51:10+00:00,false
-/sql-reference/table-functions/postgresql,docs/sql-reference/table-functions/postgresql.md,reference/functions/table-functions/postgresql.mdx,https://clickhouse.com/docs/sql-reference/table-functions/postgresql,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/postgresql,matched,b560eed6678fd487,true,b560eed6678fd487,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/primes,docs/sql-reference/table-functions/primes.md,reference/functions/table-functions/primes.mdx,https://clickhouse.com/docs/sql-reference/table-functions/primes,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/primes,matched,4f2d1473a674bb1e,true,4f2d1473a674bb1e,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/prometheusQuery,docs/sql-reference/table-functions/prometheusQuery.md,reference/functions/table-functions/prometheusQuery.mdx,https://clickhouse.com/docs/sql-reference/table-functions/prometheusQuery,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/prometheusQuery,matched,1e86a4d4c3d28658,true,1e86a4d4c3d28658,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/prometheusQueryRange,docs/sql-reference/table-functions/prometheusQueryRange.md,reference/functions/table-functions/prometheusQueryRange.mdx,https://clickhouse.com/docs/sql-reference/table-functions/prometheusQueryRange,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/prometheusQueryRange,matched,f153f45ed52a4bc4,true,f153f45ed52a4bc4,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/redis,docs/sql-reference/table-functions/redis.md,reference/functions/table-functions/redis.mdx,https://clickhouse.com/docs/sql-reference/table-functions/redis,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/redis,matched,184e1d9e9cbbd26f,true,184e1d9e9cbbd26f,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/remote,docs/sql-reference/table-functions/remote.md,reference/functions/table-functions/remote.mdx,https://clickhouse.com/docs/sql-reference/table-functions/remote,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/remote,matched,25bcdaab0a89be0c,true,25bcdaab0a89be0c,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/s3,docs/sql-reference/table-functions/s3.md,reference/functions/table-functions/s3.mdx,https://clickhouse.com/docs/sql-reference/table-functions/s3,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/s3,matched,890b3ede24b4d144,true,890b3ede24b4d144,2026-05-08T15:04:34+00:00,false
-/sql-reference/table-functions/s3Cluster,docs/sql-reference/table-functions/s3Cluster.md,reference/functions/table-functions/s3Cluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/s3Cluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/s3Cluster,matched,cdef10dfae17e7a4,true,cdef10dfae17e7a4,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/sqlite,docs/sql-reference/table-functions/sqlite.md,reference/functions/table-functions/sqlite.mdx,https://clickhouse.com/docs/sql-reference/table-functions/sqlite,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/sqlite,matched,e3a58d5f3297ba15,true,e3a58d5f3297ba15,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/timeSeriesData,docs/sql-reference/table-functions/timeSeriesData.md,reference/functions/table-functions/timeSeriesData.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesData,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/timeSeriesData,matched,b4b2095ec970bd69,true,b4b2095ec970bd69,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/timeSeriesMetrics,docs/sql-reference/table-functions/timeSeriesMetrics.md,reference/functions/table-functions/timeSeriesMetrics.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesMetrics,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/timeSeriesMetrics,matched,f7fa77ef91333364,true,f7fa77ef91333364,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/timeSeriesSelector,docs/sql-reference/table-functions/timeSeriesSelector.md,reference/functions/table-functions/timeSeriesSelector.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesSelector,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/timeSeriesSelector,matched,2efab495d0d434c3,true,2efab495d0d434c3,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/timeSeriesTags,docs/sql-reference/table-functions/timeSeriesTags.md,reference/functions/table-functions/timeSeriesTags.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesTags,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/timeSeriesTags,matched,6c5fde1e295f0580,true,6c5fde1e295f0580,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/url,docs/sql-reference/table-functions/url.md,reference/functions/table-functions/url.mdx,https://clickhouse.com/docs/sql-reference/table-functions/url,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/url,matched,2b36549d2d8d832e,true,2b36549d2d8d832e,2026-05-09T09:39:38+00:00,false
-/sql-reference/table-functions/urlCluster,docs/sql-reference/table-functions/urlCluster.md,reference/functions/table-functions/urlCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/urlCluster,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/urlCluster,matched,7ab2dcf6aa50fc83,true,7ab2dcf6aa50fc83,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/values,docs/sql-reference/table-functions/values.md,reference/functions/table-functions/values.mdx,https://clickhouse.com/docs/sql-reference/table-functions/values,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/values,matched,8716709876043316,true,8716709876043316,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/view,docs/sql-reference/table-functions/view.md,reference/functions/table-functions/view.mdx,https://clickhouse.com/docs/sql-reference/table-functions/view,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/view,matched,aa22515e018d41f6,true,aa22515e018d41f6,2026-05-19T11:08:53+00:00,false
-/sql-reference/table-functions/ytsaurus,docs/sql-reference/table-functions/ytsaurus.md,reference/functions/table-functions/ytsaurus.mdx,https://clickhouse.com/docs/sql-reference/table-functions/ytsaurus,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/ytsaurus,matched,b931df20b4f6c77e,true,b931df20b4f6c77e,2026-05-08T13:01:57+00:00,false
-/sql-reference/table-functions/zeros,docs/sql-reference/table-functions/zeros.md,reference/functions/table-functions/zeros.mdx,https://clickhouse.com/docs/sql-reference/table-functions/zeros,https://private-7c7dfe99.mintlify.app/reference/functions/table-functions/zeros,matched,795be83399042602,true,795be83399042602,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/,docs/sql-reference/window-functions/index.md,reference/functions/window-functions/index.mdx,https://clickhouse.com/docs/sql-reference/window-functions/,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions,matched,29b129959d2df6a5,true,29b129959d2df6a5,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/cume_dist,docs/sql-reference/window-functions/cume_dist.md,reference/functions/window-functions/cume_dist.mdx,https://clickhouse.com/docs/sql-reference/window-functions/cume_dist,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/cume_dist,matched,ad213d159101deee,true,ad213d159101deee,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/dense_rank,docs/sql-reference/window-functions/dense_rank.md,reference/functions/window-functions/dense_rank.mdx,https://clickhouse.com/docs/sql-reference/window-functions/dense_rank,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/dense_rank,matched,0c2b2339983aea4c,true,0c2b2339983aea4c,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/first_value,docs/sql-reference/window-functions/first_value.md,reference/functions/window-functions/first_value.mdx,https://clickhouse.com/docs/sql-reference/window-functions/first_value,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/first_value,matched,76e04f71ae6a40b6,true,76e04f71ae6a40b6,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/lag,docs/sql-reference/window-functions/lag.md,reference/functions/window-functions/lag.mdx,https://clickhouse.com/docs/sql-reference/window-functions/lag,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/lag,matched,f25bd9104d3a38e3,true,0613ad7af0509f61,2026-05-09T09:39:38+00:00,false
-/sql-reference/window-functions/lagInFrame,docs/sql-reference/window-functions/lagInFrame.md,reference/functions/window-functions/lagInFrame.mdx,https://clickhouse.com/docs/sql-reference/window-functions/lagInFrame,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/lagInFrame,matched,cc6fee46ae9d3eb4,true,cc6fee46ae9d3eb4,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/last_value,docs/sql-reference/window-functions/last_value.md,reference/functions/window-functions/last_value.mdx,https://clickhouse.com/docs/sql-reference/window-functions/last_value,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/last_value,matched,a0590ca6d8781a22,true,a0590ca6d8781a22,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/lead,docs/sql-reference/window-functions/lead.md,reference/functions/window-functions/lead.mdx,https://clickhouse.com/docs/sql-reference/window-functions/lead,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/lead,matched,9c6c51f6b9bd98fc,true,40a994cb17281180,2026-05-09T09:39:38+00:00,false
-/sql-reference/window-functions/leadInFrame,docs/sql-reference/window-functions/leadInFrame.md,reference/functions/window-functions/leadInFrame.mdx,https://clickhouse.com/docs/sql-reference/window-functions/leadInFrame,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/leadInFrame,matched,81c1274fdcd7418a,true,81c1274fdcd7418a,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/nth_value,docs/sql-reference/window-functions/nth_value.md,reference/functions/window-functions/nth_value.mdx,https://clickhouse.com/docs/sql-reference/window-functions/nth_value,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/nth_value,matched,42b27acbf24b93d3,true,42b27acbf24b93d3,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/percent_rank,docs/sql-reference/window-functions/percent_rank.md,reference/functions/window-functions/percent_rank.mdx,https://clickhouse.com/docs/sql-reference/window-functions/percent_rank,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/percent_rank,matched,aeb00b6ade296f85,true,aeb00b6ade296f85,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/rank,docs/sql-reference/window-functions/rank.md,reference/functions/window-functions/rank.mdx,https://clickhouse.com/docs/sql-reference/window-functions/rank,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/rank,matched,8bb74a5fb304b4bf,true,8bb74a5fb304b4bf,2026-05-19T11:08:53+00:00,false
-/sql-reference/window-functions/row_number,docs/sql-reference/window-functions/row_number.md,reference/functions/window-functions/row_number.mdx,https://clickhouse.com/docs/sql-reference/window-functions/row_number,https://private-7c7dfe99.mintlify.app/reference/functions/window-functions/row_number,matched,c7b667d2713e85b5,true,c7b667d2713e85b5,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions,docs/sql-reference/functions/index.md,core/reference/functions/index.mdx,https://clickhouse.com/docs/sql-reference/functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/index,matched,f8bdbd53bca6538f,true,f8bdbd53bca6538f,2026-05-09T14:57:56+00:00,false
+/sql-reference/functions/ai-functions,docs/sql-reference/functions/ai-functions.md,core/reference/functions/regular-functions/ai-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ai-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/ai-functions,matched,f4c7162165bc448f,true,f4c7162165bc448f,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/arithmetic-functions,docs/sql-reference/functions/arithmetic-functions.md,core/reference/functions/regular-functions/arithmetic-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/arithmetic-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/arithmetic-functions,matched,02b001fbc5c71e7a,true,02b001fbc5c71e7a,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/array-functions,docs/sql-reference/functions/array-functions.md,core/reference/functions/regular-functions/array-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/array-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/array-functions,matched,2af9113b37ef938b,true,2af9113b37ef938b,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/array-join,docs/sql-reference/functions/array-join.md,core/reference/functions/regular-functions/array-join.mdx,https://clickhouse.com/docs/sql-reference/functions/array-join,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/array-join,matched,f957edbf7546dd57,true,f957edbf7546dd57,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/bit-functions,docs/sql-reference/functions/bit-functions.md,core/reference/functions/regular-functions/bit-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/bit-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/bit-functions,matched,5eba45d5047e61ed,true,5eba45d5047e61ed,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/bitmap-functions,docs/sql-reference/functions/bitmap-functions.md,core/reference/functions/regular-functions/bitmap-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/bitmap-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/bitmap-functions,matched,beb814995a4d3828,true,beb814995a4d3828,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/comparison-functions,docs/sql-reference/functions/comparison-functions.md,core/reference/functions/regular-functions/comparison-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/comparison-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/comparison-functions,matched,a367f52dd26b9689,true,a367f52dd26b9689,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/conditional-functions,docs/sql-reference/functions/conditional-functions.md,core/reference/functions/regular-functions/conditional-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/conditional-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/conditional-functions,matched,572d7f58d1fadc2b,true,572d7f58d1fadc2b,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/date-time-functions,docs/sql-reference/functions/date-time-functions.md,core/reference/functions/regular-functions/date-time-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/date-time-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/date-time-functions,matched,c1ae3146d9e1277c,true,c1ae3146d9e1277c,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/distance-functions,docs/sql-reference/functions/distance-functions.md,core/reference/functions/regular-functions/distance-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/distance-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/distance-functions,matched,f38245971fff95d0,true,d640404b6455109c,2026-05-08T21:00:17+00:00,false
+/sql-reference/functions/encoding-functions,docs/sql-reference/functions/encoding-functions.md,core/reference/functions/regular-functions/encoding-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/encoding-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/encoding-functions,matched,ef94c3584fe6e806,true,1eb826597211a7ff,2026-05-08T21:00:17+00:00,false
+/sql-reference/functions/encryption-functions,docs/sql-reference/functions/encryption-functions.md,core/reference/functions/regular-functions/encryption-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/encryption-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/encryption-functions,matched,2f986310e85f4a78,true,2fd413bc4634b77e,2026-05-08T21:00:18+00:00,false
+/sql-reference/functions/ext-dict-functions,docs/sql-reference/functions/ext-dict-functions.md,core/reference/functions/regular-functions/ext-dict-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ext-dict-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/ext-dict-functions,matched,298d92d6d2051a70,true,c7909951aa9b73e5,2026-05-08T21:00:18+00:00,false
+/sql-reference/functions/files,docs/sql-reference/functions/files.md,core/reference/functions/regular-functions/files.mdx,https://clickhouse.com/docs/sql-reference/functions/files,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/files,matched,17de42c037b1a363,true,17de42c037b1a363,2026-05-07T14:49:41+00:00,false
+/sql-reference/functions/financial-functions,docs/sql-reference/functions/financial-functions.md,core/reference/functions/regular-functions/financial-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/financial-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/financial-functions,matched,579a04fed7b56ba9,true,ab5b820100b0d5ef,2026-05-08T21:00:18+00:00,false
+/sql-reference/functions/functions-for-nulls,docs/sql-reference/functions/functions-for-nulls.md,core/reference/functions/regular-functions/functions-for-nulls.mdx,https://clickhouse.com/docs/sql-reference/functions/functions-for-nulls,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/functions-for-nulls,matched,b24195f9fa72734c,true,8a5916d24974dec6,2026-05-08T21:00:18+00:00,false
+/sql-reference/functions/geo/,docs/sql-reference/functions/geo/index.md,core/reference/functions/regular-functions/geo/index.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/index,matched,229b20a3b9f2e01d,true,229b20a3b9f2e01d,2026-05-09T09:39:38+00:00,false
+/sql-reference/functions/geo/coordinates,docs/sql-reference/functions/geo/coordinates.md,core/reference/functions/regular-functions/geo/coordinates.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/coordinates,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/coordinates,matched,df1646edca9715cc,true,df1646edca9715cc,2026-05-07T14:49:41+00:00,false
+/sql-reference/functions/geo/flipCoordinates,docs/sql-reference/functions/geo/flipCoordinates.md,core/reference/functions/regular-functions/geo/flipCoordinates.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/flipCoordinates,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/flipCoordinates,matched,ecfdec0409be257b,true,ecfdec0409be257b,2026-05-07T14:49:41+00:00,false
+/sql-reference/functions/geo/geohash,docs/sql-reference/functions/geo/geohash.md,core/reference/functions/regular-functions/geo/geohash.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/geohash,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/geohash,matched,5b02c1d23fb7c027,true,5b02c1d23fb7c027,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/geo/geometry,docs/sql-reference/functions/geo/geometry.md,core/reference/functions/regular-functions/geo/geometry.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/geometry,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/geometry,matched,4a937e11a15d6308,true,4a937e11a15d6308,2026-05-07T14:49:41+00:00,false
+/sql-reference/functions/geo/h3,docs/sql-reference/functions/geo/h3.md,core/reference/functions/regular-functions/geo/h3.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/h3,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/h3,matched,664fe90e97793346,true,664fe90e97793346,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/geo/polygons,docs/sql-reference/functions/geo/polygon.md,core/reference/functions/regular-functions/geo/polygon.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/polygons,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/polygon,matched,783554b75229a238,true,783554b75229a238,2026-05-07T14:49:41+00:00,false
+/sql-reference/functions/geo/s2,docs/sql-reference/functions/geo/s2.md,core/reference/functions/regular-functions/geo/s2.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/s2,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/s2,matched,25a140f37d151801,true,25a140f37d151801,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/geo/svg,docs/sql-reference/functions/geo/svg.md,core/reference/functions/regular-functions/geo/svg.mdx,https://clickhouse.com/docs/sql-reference/functions/geo/svg,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/geo/svg,matched,10638f31971872f4,true,10638f31971872f4,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/hash-functions,docs/sql-reference/functions/hash-functions.md,core/reference/functions/regular-functions/hash-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/hash-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/hash-functions,matched,7f12c0de7a23ba0d,true,7f12c0de7a23ba0d,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/in-functions,docs/sql-reference/functions/in-functions.md,core/reference/functions/regular-functions/in-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/in-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/in-functions,matched,c085580b4d0cc549,true,a3692c0caea63dcc,2026-05-07T14:49:41+00:00,false
+/sql-reference/functions/introspection,docs/sql-reference/functions/introspection.md,core/reference/functions/regular-functions/introspection.mdx,https://clickhouse.com/docs/sql-reference/functions/introspection,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/introspection,matched,8c3a5b4e6bbc35a0,true,8c3a5b4e6bbc35a0,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/ip-address-functions,docs/sql-reference/functions/ip-address-functions.md,core/reference/functions/regular-functions/ip-address-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ip-address-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/ip-address-functions,matched,07b39d5a48cb9cad,true,2cd6cb2965c1a236,2026-05-08T21:00:19+00:00,false
+/sql-reference/functions/json-functions,docs/sql-reference/functions/json-functions.md,core/reference/functions/regular-functions/json-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/json-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/json-functions,matched,9165d90e06f1bc6a,true,9165d90e06f1bc6a,2026-05-08T21:00:19+00:00,false
+/sql-reference/functions/logical-functions,docs/sql-reference/functions/logical-functions.md,core/reference/functions/regular-functions/logical-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/logical-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/logical-functions,matched,bb98f186198d2ed0,true,361d5b69622cc74b,2026-05-08T21:00:19+00:00,false
+/sql-reference/functions/machine-learning-functions,docs/sql-reference/functions/machine-learning-functions.md,core/reference/functions/regular-functions/machine-learning-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/machine-learning-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/machine-learning-functions,matched,10776ce269a165a1,true,10776ce269a165a1,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/math-functions,docs/sql-reference/functions/math-functions.md,core/reference/functions/regular-functions/math-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/math-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/math-functions,matched,92fa54c38be1b0fc,true,92fa54c38be1b0fc,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/nlp-functions,docs/sql-reference/functions/nlp-functions.md,core/reference/functions/regular-functions/nlp-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/nlp-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/nlp-functions,matched,00c21ab328d01f85,true,00c21ab328d01f85,2026-05-08T21:00:20+00:00,false
+/sql-reference/functions/numeric-indexed-vector-functions,docs/sql-reference/functions/numeric-indexed-vector-functions.md,core/reference/functions/regular-functions/numeric-indexed-vector-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/numeric-indexed-vector-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/numeric-indexed-vector-functions,matched,119e6aa5f59fcf54,true,119e6aa5f59fcf54,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/other-functions,docs/sql-reference/functions/other-functions.md,core/reference/functions/regular-functions/other-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/other-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/other-functions,matched,7074e5e40464af1f,true,7074e5e40464af1f,2026-05-09T11:14:51+00:00,false
+/sql-reference/functions/overview,docs/sql-reference/functions/overview.md,core/reference/functions/regular-functions/overview.mdx,https://clickhouse.com/docs/sql-reference/functions/overview,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/overview,matched,1c87cec5b19f085f,true,1c87cec5b19f085f,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/random-functions,docs/sql-reference/functions/random-functions.md,core/reference/functions/regular-functions/random-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/random-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/random-functions,matched,100ed7d23b2b6a33,true,358fb4cd1d025b1e,2026-05-09T11:14:51+00:00,false
+/sql-reference/functions/regular-functions,docs/sql-reference/functions/regular-functions-index.md,core/reference/functions/regular-functions/regular-functions-index.mdx,https://clickhouse.com/docs/sql-reference/functions/regular-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/regular-functions-index,matched,6c152f17b58caad6,true,6c152f17b58caad6,2026-05-07T14:49:41+00:00,false
+/sql-reference/functions/rounding-functions,docs/sql-reference/functions/rounding-functions.md,core/reference/functions/regular-functions/rounding-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/rounding-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/rounding-functions,matched,6d242e455062433b,true,6d242e455062433b,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/splitting-merging-functions,docs/sql-reference/functions/splitting-merging-functions.md,core/reference/functions/regular-functions/splitting-merging-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/splitting-merging-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/splitting-merging-functions,matched,a9096bda5a1d4bed,true,a9096bda5a1d4bed,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/string-functions,docs/sql-reference/functions/string-functions.md,core/reference/functions/regular-functions/string-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/string-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/string-functions,matched,33fc09ec788a00bc,true,33fc09ec788a00bc,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/string-replace-functions,docs/sql-reference/functions/string-replace-functions.md,core/reference/functions/regular-functions/string-replace-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/string-replace-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/string-replace-functions,matched,aa22cbfaf59e7cd2,true,4e9f35ffe6ecaca5,2026-05-08T21:00:21+00:00,false
+/sql-reference/functions/string-search-functions,docs/sql-reference/functions/string-search-functions.md,core/reference/functions/regular-functions/string-search-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/string-search-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/string-search-functions,matched,62d1d7f4caef7947,true,c0e976dd1c956867,2026-05-13T13:16:51+00:00,false
+/sql-reference/functions/time-series-functions,docs/sql-reference/functions/time-series-functions.md,core/reference/functions/regular-functions/time-series-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/time-series-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/time-series-functions,matched,8c7c9620fbcc2649,true,8c7c9620fbcc2649,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/time-window-functions,docs/sql-reference/functions/time-window-functions.md,core/reference/functions/regular-functions/time-window-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/time-window-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/time-window-functions,matched,6b2576c3b03c809a,true,6b2576c3b03c809a,2026-05-08T21:00:22+00:00,false
+/sql-reference/functions/tuple-functions,docs/sql-reference/functions/tuple-functions.md,core/reference/functions/regular-functions/tuple-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/tuple-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/tuple-functions,matched,edda876cb4a500ad,true,edda876cb4a500ad,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/tuple-map-functions,docs/sql-reference/functions/tuple-map-functions.md,core/reference/functions/regular-functions/tuple-map-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/tuple-map-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/tuple-map-functions,matched,6b14acbe7eb707cd,true,6b14acbe7eb707cd,2026-05-08T21:00:22+00:00,false
+/sql-reference/functions/type-conversion-functions,docs/sql-reference/functions/type-conversion-functions.md,core/reference/functions/regular-functions/type-conversion-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/type-conversion-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/type-conversion-functions,matched,95fedfe6cbfe1988,true,95fedfe6cbfe1988,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/udf,docs/sql-reference/functions/udf.md,core/reference/functions/regular-functions/udf.mdx,https://clickhouse.com/docs/sql-reference/functions/udf,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/udf,matched,8112ec90462892fe,true,8112ec90462892fe,2026-05-08T13:01:57+00:00,false
+/sql-reference/functions/ulid-functions,docs/sql-reference/functions/ulid-functions.md,core/reference/functions/regular-functions/ulid-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ulid-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/ulid-functions,matched,90c8d51f3c8beae5,true,193ab0f49915d34d,2026-05-08T21:00:22+00:00,false
+/sql-reference/functions/uniqtheta-functions,docs/sql-reference/functions/uniqtheta-functions.md,core/reference/functions/regular-functions/uniqtheta-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/uniqtheta-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/uniqtheta-functions,matched,f6c57709732c2698,true,f6c57709732c2698,2026-05-19T11:08:53+00:00,false
+/sql-reference/functions/url-functions,docs/sql-reference/functions/url-functions.md,core/reference/functions/regular-functions/url-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/url-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/url-functions,matched,2500ec02c6e32dae,true,25bb5ed2c3fd62e0,2026-05-08T21:10:29+00:00,false
+/sql-reference/functions/uuid-functions,docs/sql-reference/functions/uuid-functions.md,core/reference/functions/regular-functions/uuid-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/uuid-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/uuid-functions,matched,4d3c22972e76f466,true,4d3c22972e76f466,2026-05-08T21:00:23+00:00,false
+/sql-reference/functions/wasm_udf,docs/sql-reference/functions/wasm_udf.md,core/reference/functions/regular-functions/wasm_udf.mdx,https://clickhouse.com/docs/sql-reference/functions/wasm_udf,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/wasm_udf,matched,e1c6c946b3ac7668,true,e1c6c946b3ac7668,2026-05-13T13:16:51+00:00,false
+/sql-reference/functions/ym-dict-functions,docs/sql-reference/functions/embedded-dict-functions.md,core/reference/functions/regular-functions/embedded-dict-functions.mdx,https://clickhouse.com/docs/sql-reference/functions/ym-dict-functions,https://private-7c7dfe99.mintlify.app/core/reference/functions/regular-functions/embedded-dict-functions,matched,efac682e61bf516e,true,efac682e61bf516e,2026-05-19T11:08:53+00:00,false
+/sql-reference/operators/,docs/sql-reference/operators/index.md,core/reference/operators/index.mdx,https://clickhouse.com/docs/sql-reference/operators/,https://private-7c7dfe99.mintlify.app/core/reference/operators/index,matched,3d3c9f430d3e635f,true,3d3c9f430d3e635f,2026-05-19T11:08:53+00:00,false
+/sql-reference/operators/exists,docs/sql-reference/operators/exists.md,core/reference/operators/exists.mdx,https://clickhouse.com/docs/sql-reference/operators/exists,https://private-7c7dfe99.mintlify.app/core/reference/operators/exists,matched,12948636f740400a,true,12948636f740400a,2026-05-19T11:08:53+00:00,false
+/sql-reference/operators/in,docs/sql-reference/operators/in.md,core/reference/statements/in.mdx,https://clickhouse.com/docs/sql-reference/operators/in,https://private-7c7dfe99.mintlify.app/core/reference/statements/in,matched,11db78d13ea77687,true,11db78d13ea77687,2026-05-19T11:08:53+00:00,false
+/sql-reference/other/distributed-ddl,docs/sql-reference/operators/distributed-ddl.md,core/reference/operators/distributed-ddl.mdx,https://clickhouse.com/docs/sql-reference/other/distributed-ddl,https://private-7c7dfe99.mintlify.app/core/reference/operators/distributed-ddl,matched,f2e0676875f34dd5,true,f2e0676875f34dd5,2026-05-08T11:33:34+00:00,false
+/sql-reference/statements/,docs/sql-reference/statements/index.md,core/reference/statements/index.mdx,https://clickhouse.com/docs/sql-reference/statements/,https://private-7c7dfe99.mintlify.app/core/reference/statements/index,matched,981af6c22c02e012,true,84bf17e2315c270d,2026-05-09T09:39:38+00:00,false
+/sql-reference/statements/alter/,docs/sql-reference/statements/alter/index.md,core/reference/statements/alter/index.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/index,matched,2f0f542d60abb09a,true,3cae588d4c419194,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/apply-deleted-mask,docs/sql-reference/statements/alter/apply-deleted-mask.md,core/reference/statements/alter/apply-deleted-mask.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/apply-deleted-mask,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/apply-deleted-mask,matched,aed29a266c464c67,true,aed29a266c464c67,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/alter/apply-patches,docs/sql-reference/statements/alter/apply-patches.md,core/reference/statements/alter/apply-patches.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/apply-patches,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/apply-patches,matched,2bba7ff9f47b7239,true,2bba7ff9f47b7239,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/column,docs/sql-reference/statements/alter/column.md,core/reference/statements/alter/column.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/column,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/column,matched,30130c9b0fe3bf74,true,30130c9b0fe3bf74,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/comment,docs/sql-reference/statements/alter/comment.md,core/reference/statements/alter/comment.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/comment,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/comment,matched,dcbbc74fb0568312,true,dcbbc74fb0568312,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/alter/constraint,docs/sql-reference/statements/alter/constraint.md,core/reference/statements/alter/constraint.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/constraint,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/constraint,matched,c29e0fea27b243f4,true,8ed2a0a54a6b4cc5,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/database-comment,docs/sql-reference/statements/alter/database-comment.md,core/reference/statements/alter/database-comment.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/database-comment,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/database-comment,matched,794f8576733173a6,true,794f8576733173a6,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/alter/delete,docs/sql-reference/statements/alter/delete.md,core/reference/statements/alter/delete.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/delete,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/delete,matched,79df6fbd25ea241d,true,79df6fbd25ea241d,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/alter/masking-policy,docs/sql-reference/statements/alter/masking-policy.md,core/reference/statements/alter/masking-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/masking-policy,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/masking-policy,matched,db4497ceb4087eda,true,db4497ceb4087eda,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/named-collection,docs/sql-reference/statements/alter/named-collection.md,core/reference/statements/alter/named-collection.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/named-collection,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/named-collection,matched,1ba41582c1e8ebc8,true,1ba41582c1e8ebc8,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/order-by,docs/sql-reference/statements/alter/order-by.md,core/reference/statements/alter/order-by.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/order-by,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/order-by,matched,e4d1e2d42d9244d8,true,da55650acb4be1e8,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/alter/partition,docs/sql-reference/statements/alter/partition.md,core/reference/statements/alter/partition.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/partition,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/partition,matched,32785de3bff088ba,true,32785de3bff088ba,2026-05-08T21:00:25+00:00,false
+/sql-reference/statements/alter/projection,docs/sql-reference/statements/alter/projection.md,core/reference/statements/alter/projection.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/projection,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/projection,matched,4f226b1552bbed54,true,4f226b1552bbed54,2026-05-13T15:43:31+00:00,false
+/sql-reference/statements/alter/quota,docs/sql-reference/statements/alter/quota.md,core/reference/statements/alter/quota.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/quota,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/quota,matched,7f4ff197ce476062,true,7f4ff197ce476062,2026-05-19T11:48:22+00:00,false
+/sql-reference/statements/alter/role,docs/sql-reference/statements/alter/role.md,core/reference/statements/alter/role.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/role,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/role,matched,303a2bb1adcbfc7e,true,303a2bb1adcbfc7e,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/alter/row-policy,docs/sql-reference/statements/alter/row-policy.md,core/reference/statements/alter/row-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/row-policy,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/row-policy,matched,660c01b012c65f4b,true,e9242354e112109a,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/alter/sample-by,docs/sql-reference/statements/alter/sample-by.md,core/reference/statements/alter/sample-by.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/sample-by,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/sample-by,matched,7154b5b2b24b75bc,true,7154b5b2b24b75bc,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/alter/setting,docs/sql-reference/statements/alter/setting.md,core/reference/statements/alter/setting.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/setting,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/setting,matched,333f7287eb8ca013,true,8396ae84019ca444,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/settings-profile,docs/sql-reference/statements/alter/settings-profile.md,core/reference/statements/alter/settings-profile.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/settings-profile,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/settings-profile,matched,974e376db0d1f6bc,true,974e376db0d1f6bc,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/alter/skipping-index,docs/sql-reference/statements/alter/skipping-index.md,core/reference/statements/alter/skipping-index.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/skipping-index,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/skipping-index,matched,639cf49f6b576656,true,a6ee74f4a5fa3c47,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/statistics,docs/sql-reference/statements/alter/statistics.md,core/reference/statements/alter/statistics.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/statistics,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/statistics,matched,dc6bed38f255f290,true,dc6bed38f255f290,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/ttl,docs/sql-reference/statements/alter/ttl.md,core/reference/statements/alter/ttl.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/ttl,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/ttl,matched,fb1e74b3574ce837,true,092cf9506a86a064,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/update,docs/sql-reference/statements/alter/update.md,core/reference/statements/alter/update.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/update,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/update,matched,f24e62109df1df61,true,a545210822fcd08c,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/alter/user,docs/sql-reference/statements/alter/user.md,core/reference/statements/alter/user.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/user,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/user,matched,bad6198b79924e96,true,bad6198b79924e96,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/alter/view,docs/sql-reference/statements/alter/view.md,core/reference/statements/alter/view.mdx,https://clickhouse.com/docs/sql-reference/statements/alter/view,https://private-7c7dfe99.mintlify.app/core/reference/statements/alter/view,matched,849db286b271b6aa,true,3496fbf668769ff7,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/attach,docs/sql-reference/statements/attach.md,core/reference/statements/attach.mdx,https://clickhouse.com/docs/sql-reference/statements/attach,https://private-7c7dfe99.mintlify.app/core/reference/statements/attach,matched,0780d8eecea4ce0b,true,0780d8eecea4ce0b,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/check-grant,docs/sql-reference/statements/check-grant.md,core/reference/statements/check-grant.mdx,https://clickhouse.com/docs/sql-reference/statements/check-grant,https://private-7c7dfe99.mintlify.app/core/reference/statements/check-grant,matched,2d31634c588cb280,true,2d31634c588cb280,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/check-table,docs/sql-reference/statements/check-table.md,core/reference/statements/check-table.mdx,https://clickhouse.com/docs/sql-reference/statements/check-table,https://private-7c7dfe99.mintlify.app/core/reference/statements/check-table,matched,781b1716f6a68933,true,781b1716f6a68933,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/create/,docs/sql-reference/statements/create/index.md,core/reference/statements/create/index.mdx,https://clickhouse.com/docs/sql-reference/statements/create/,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/index,matched,b45c5e1d1fb0fe6e,true,f53eec1c24f726e2,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/database,docs/sql-reference/statements/create/database.md,core/reference/statements/create/database.mdx,https://clickhouse.com/docs/sql-reference/statements/create/database,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/database,matched,23534a319008733b,true,23534a319008733b,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/create/dictionary,docs/sql-reference/statements/create/dictionary/overview.md,core/reference/statements/create/dictionary.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary,matched,991e50e50ab9d097,true,991e50e50ab9d097,2026-05-19T11:48:22+00:00,false
+/sql-reference/statements/create/dictionary/attributes,docs/sql-reference/statements/create/dictionary/attributes.md,core/reference/statements/create/dictionary/attributes.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/attributes,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/attributes,matched,df228adf9244be27,true,df228adf9244be27,2026-05-09T09:39:38+00:00,false
+/sql-reference/statements/create/dictionary/embedded,docs/sql-reference/statements/create/dictionary/embedded.md,core/reference/statements/create/dictionary/embedded.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/embedded,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/embedded,matched,a5134319e705b1c2,true,a5134319e705b1c2,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/layouts,docs/sql-reference/statements/create/dictionary/layouts/overview.md,core/reference/statements/create/dictionary/layouts/overview.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/overview,matched,8a936c931e3b749d,true,8a936c931e3b749d,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/layouts/cache,docs/sql-reference/statements/create/dictionary/layouts/cache.md,core/reference/statements/create/dictionary/layouts/cache.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/cache,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/cache,matched,1dbce5622d55c826,true,1dbce5622d55c826,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/layouts/direct,docs/sql-reference/statements/create/dictionary/layouts/direct.md,core/reference/statements/create/dictionary/layouts/direct.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/direct,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/direct,matched,ba9d1650e5d9d3d1,true,ba9d1650e5d9d3d1,2026-05-08T11:53:27+00:00,false
+/sql-reference/statements/create/dictionary/layouts/flat,docs/sql-reference/statements/create/dictionary/layouts/flat.md,core/reference/statements/create/dictionary/layouts/flat.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/flat,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/flat,matched,4cd2982872ada37d,true,4cd2982872ada37d,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/layouts/hashed,docs/sql-reference/statements/create/dictionary/layouts/hashed.md,core/reference/statements/create/dictionary/layouts/hashed.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/hashed,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/hashed,matched,765b099e5923d360,true,765b099e5923d360,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/dictionary/layouts/hashed-array,docs/sql-reference/statements/create/dictionary/layouts/hashed-array.md,core/reference/statements/create/dictionary/layouts/hashed-array.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/hashed-array,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/hashed-array,matched,08b0f7772e500940,true,08b0f7772e500940,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/dictionary/layouts/hierarchical,docs/sql-reference/statements/create/dictionary/layouts/hierarchical.md,core/reference/statements/create/dictionary/layouts/hierarchical.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/hierarchical,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/hierarchical,matched,d0f45477e4502d5e,true,d0f45477e4502d5e,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/dictionary/layouts/ip-trie,docs/sql-reference/statements/create/dictionary/layouts/ip-trie.md,core/reference/statements/create/dictionary/layouts/ip-trie.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/ip-trie,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/ip-trie,matched,4663d6bdd0aad269,true,4663d6bdd0aad269,2026-05-08T12:19:52+00:00,false
+/sql-reference/statements/create/dictionary/layouts/polygon,docs/sql-reference/statements/create/dictionary/layouts/polygon.md,core/reference/statements/create/dictionary/layouts/polygon.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/polygon,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/polygon,matched,ac87c199241e9bf9,true,ac87c199241e9bf9,2026-05-08T12:19:52+00:00,false
+/sql-reference/statements/create/dictionary/layouts/range-hashed,docs/sql-reference/statements/create/dictionary/layouts/range-hashed.md,core/reference/statements/create/dictionary/layouts/range-hashed.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/range-hashed,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/range-hashed,matched,8ccca11e1180ae05,true,8ccca11e1180ae05,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/layouts/regexp-tree,docs/sql-reference/statements/create/dictionary/layouts/regexp-tree.md,core/reference/statements/create/dictionary/layouts/regexp-tree.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/regexp-tree,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/regexp-tree,matched,5e7a7769b6056521,true,5e7a7769b6056521,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/create/dictionary/layouts/ssd-cache,docs/sql-reference/statements/create/dictionary/layouts/ssd-cache.md,core/reference/statements/create/dictionary/layouts/ssd-cache.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/layouts/ssd-cache,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/layouts/ssd-cache,matched,fb386a8d8121b54d,true,fb386a8d8121b54d,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/dictionary/lifetime,docs/sql-reference/statements/create/dictionary/lifetime.md,core/reference/statements/create/dictionary/lifetime.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/lifetime,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/lifetime,matched,4ef385db95bf4e51,true,4ef385db95bf4e51,2026-05-08T11:53:27+00:00,false
+/sql-reference/statements/create/dictionary/sources,docs/sql-reference/statements/create/dictionary/sources/overview.md,core/reference/statements/create/dictionary/sources/overview.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/overview,matched,8d300d0cef0bff68,true,8d300d0cef0bff68,2026-05-13T15:43:32+00:00,false
+/sql-reference/statements/create/dictionary/sources/cassandra,docs/sql-reference/statements/create/dictionary/sources/cassandra.md,core/reference/statements/create/dictionary/sources/cassandra.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/cassandra,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/cassandra,matched,3366fbba1d891441,true,3366fbba1d891441,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/sources/clickhouse,docs/sql-reference/statements/create/dictionary/sources/clickhouse.md,core/reference/statements/create/dictionary/sources/clickhouse.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/clickhouse,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/clickhouse,matched,93b842786d511f36,true,93b842786d511f36,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/sources/executable-file,docs/sql-reference/statements/create/dictionary/sources/executable-file.md,core/reference/statements/create/dictionary/sources/executable-file.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/executable-file,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/executable-file,matched,220264aaefc1334a,true,220264aaefc1334a,2026-05-08T15:04:34+00:00,false
+/sql-reference/statements/create/dictionary/sources/executable-pool,docs/sql-reference/statements/create/dictionary/sources/executable-pool.md,core/reference/statements/create/dictionary/sources/executable-pool.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/executable-pool,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/executable-pool,matched,d1ff1acf8257ac87,true,d1ff1acf8257ac87,2026-05-08T15:04:34+00:00,false
+/sql-reference/statements/create/dictionary/sources/http,docs/sql-reference/statements/create/dictionary/sources/http.md,core/reference/statements/create/dictionary/sources/http.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/http,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/http,matched,e72f060583314b47,true,e72f060583314b47,2026-05-08T15:04:34+00:00,false
+/sql-reference/statements/create/dictionary/sources/local-file,docs/sql-reference/statements/create/dictionary/sources/local-file.md,core/reference/statements/create/dictionary/sources/local-file.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/local-file,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/local-file,matched,a1a7676e8f61e757,true,a1a7676e8f61e757,2026-05-08T15:04:34+00:00,false
+/sql-reference/statements/create/dictionary/sources/mongodb,docs/sql-reference/statements/create/dictionary/sources/mongodb.md,core/reference/statements/create/dictionary/sources/mongodb.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/mongodb,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/mongodb,matched,1e59afc5c1cb7417,true,1e59afc5c1cb7417,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/dictionary/sources/mysql,docs/sql-reference/statements/create/dictionary/sources/mysql.md,core/reference/statements/create/dictionary/sources/mysql.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/mysql,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/mysql,matched,44331440c9cf0cf2,true,44331440c9cf0cf2,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/sources/null,docs/sql-reference/statements/create/dictionary/sources/null.md,core/reference/statements/create/dictionary/sources/null.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/null,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/null,matched,e33e071b01088cb8,true,e33e071b01088cb8,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/dictionary/sources/odbc,docs/sql-reference/statements/create/dictionary/sources/odbc.md,core/reference/statements/create/dictionary/sources/odbc.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/odbc,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/odbc,matched,c6f1346b0c918e21,true,c6f1346b0c918e21,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/sources/postgresql,docs/sql-reference/statements/create/dictionary/sources/postgresql.md,core/reference/statements/create/dictionary/sources/postgresql.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/postgresql,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/postgresql,matched,f94ebe7f7e07a840,true,f94ebe7f7e07a840,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/sources/redis,docs/sql-reference/statements/create/dictionary/sources/redis.md,core/reference/statements/create/dictionary/sources/redis.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/redis,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/redis,matched,44c3ced931104ce8,true,44c3ced931104ce8,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/dictionary/sources/yamlregexptree,docs/sql-reference/statements/create/dictionary/sources/yamlregexptree.md,core/reference/statements/create/dictionary/sources/yamlregexptree.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/yamlregexptree,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/yamlregexptree,matched,fa8e3f45deab02e7,true,fa8e3f45deab02e7,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/dictionary/sources/ytsaurus,docs/sql-reference/statements/create/dictionary/sources/ytsaurus.md,core/reference/statements/create/dictionary/sources/ytsaurus.mdx,https://clickhouse.com/docs/sql-reference/statements/create/dictionary/sources/ytsaurus,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/dictionary/sources/ytsaurus,matched,d17074ea4ae2f160,true,d17074ea4ae2f160,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/function,docs/sql-reference/statements/create/function.md,core/reference/statements/create/function.mdx,https://clickhouse.com/docs/sql-reference/statements/create/function,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/function,matched,b10c2bd1add9f390,true,b10c2bd1add9f390,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/create/masking-policy,docs/sql-reference/statements/create/masking-policy.md,core/reference/statements/create/masking-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/create/masking-policy,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/masking-policy,matched,fd8e3cc73dae2f42,true,fd8e3cc73dae2f42,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/named-collection,docs/sql-reference/statements/create/named-collection.md,core/reference/statements/create/named-collection.mdx,https://clickhouse.com/docs/sql-reference/statements/create/named-collection,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/named-collection,matched,7d224b4658e83885,true,7d224b4658e83885,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/create/quota,docs/sql-reference/statements/create/quota.md,core/reference/statements/create/quota.mdx,https://clickhouse.com/docs/sql-reference/statements/create/quota,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/quota,matched,a0e499214c967512,true,a0e499214c967512,2026-05-19T11:48:22+00:00,false
+/sql-reference/statements/create/role,docs/sql-reference/statements/create/role.md,core/reference/statements/create/role.mdx,https://clickhouse.com/docs/sql-reference/statements/create/role,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/role,matched,437e57c81c3f0872,true,437e57c81c3f0872,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/create/row-policy,docs/sql-reference/statements/create/row-policy.md,core/reference/statements/create/row-policy.mdx,https://clickhouse.com/docs/sql-reference/statements/create/row-policy,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/row-policy,matched,7af119041838a001,true,7af119041838a001,2026-05-19T11:48:22+00:00,false
+/sql-reference/statements/create/settings-profile,docs/sql-reference/statements/create/settings-profile.md,core/reference/statements/create/settings-profile.mdx,https://clickhouse.com/docs/sql-reference/statements/create/settings-profile,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/settings-profile,matched,5840e875e6ec0ff5,true,5840e875e6ec0ff5,2026-05-19T11:48:22+00:00,false
+/sql-reference/statements/create/table,docs/sql-reference/statements/create/table.md,core/reference/statements/create/table.mdx,https://clickhouse.com/docs/sql-reference/statements/create/table,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/table,matched,fef6440f2af25f60,true,fef6440f2af25f60,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/create/user,docs/sql-reference/statements/create/user.md,core/reference/statements/create/user.mdx,https://clickhouse.com/docs/sql-reference/statements/create/user,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/user,matched,ea6560f73f342624,true,ea6560f73f342624,2026-05-19T11:48:22+00:00,false
+/sql-reference/statements/create/view,docs/sql-reference/statements/create/view.md,core/reference/statements/create/view.mdx,https://clickhouse.com/docs/sql-reference/statements/create/view,https://private-7c7dfe99.mintlify.app/core/reference/statements/create/view,matched,4da94523000fe99c,true,4da94523000fe99c,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/delete,docs/sql-reference/statements/delete.md,core/reference/statements/delete.mdx,https://clickhouse.com/docs/sql-reference/statements/delete,https://private-7c7dfe99.mintlify.app/core/reference/statements/delete,matched,635055619056b153,true,635055619056b153,2026-05-09T17:02:01+00:00,false
+/sql-reference/statements/describe-table,docs/sql-reference/statements/describe-table.md,core/reference/statements/describe-table.mdx,https://clickhouse.com/docs/sql-reference/statements/describe-table,https://private-7c7dfe99.mintlify.app/core/reference/statements/describe-table,matched,72405ef6fff16fe6,true,72405ef6fff16fe6,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/detach,docs/sql-reference/statements/detach.md,core/reference/statements/detach.mdx,https://clickhouse.com/docs/sql-reference/statements/detach,https://private-7c7dfe99.mintlify.app/core/reference/statements/detach,matched,12d19ffd2bc92b1d,true,12d19ffd2bc92b1d,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/drop,docs/sql-reference/statements/drop.md,core/reference/statements/drop.mdx,https://clickhouse.com/docs/sql-reference/statements/drop,https://private-7c7dfe99.mintlify.app/core/reference/statements/drop,matched,8b56b1ae9a5b9042,true,8af9b9ae9836e7c1,2026-05-09T09:39:38+00:00,false
+/sql-reference/statements/exchange,docs/sql-reference/statements/exchange.md,core/reference/statements/exchange.mdx,https://clickhouse.com/docs/sql-reference/statements/exchange,https://private-7c7dfe99.mintlify.app/core/reference/statements/exchange,matched,bd589160963e7bea,true,48cc905738da417c,2026-05-09T09:39:38+00:00,false
+/sql-reference/statements/execute_as,docs/sql-reference/statements/execute_as.md,core/reference/statements/execute_as.mdx,https://clickhouse.com/docs/sql-reference/statements/execute_as,https://private-7c7dfe99.mintlify.app/core/reference/statements/execute_as,matched,7b03039504ddd659,true,7b03039504ddd659,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/exists,docs/sql-reference/statements/exists.md,core/reference/statements/exists.mdx,https://clickhouse.com/docs/sql-reference/statements/exists,https://private-7c7dfe99.mintlify.app/core/reference/statements/exists,matched,f787978eb7ad2aef,true,f8983bc303673b5b,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/explain,docs/sql-reference/statements/explain.md,core/reference/statements/explain.mdx,https://clickhouse.com/docs/sql-reference/statements/explain,https://private-7c7dfe99.mintlify.app/core/reference/statements/explain,matched,3daef0a18f4540b0,true,3daef0a18f4540b0,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/grant,docs/sql-reference/statements/grant.md,core/reference/statements/grant.mdx,https://clickhouse.com/docs/sql-reference/statements/grant,https://private-7c7dfe99.mintlify.app/core/reference/statements/grant,matched,bb9e0ae273b53779,true,bb9e0ae273b53779,2026-05-08T11:53:27+00:00,false
+/sql-reference/statements/insert-into,docs/sql-reference/statements/insert-into.md,core/reference/statements/insert-into.mdx,https://clickhouse.com/docs/sql-reference/statements/insert-into,https://private-7c7dfe99.mintlify.app/core/reference/statements/insert-into,matched,b04169961ed35a16,true,b04169961ed35a16,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/kill,docs/sql-reference/statements/kill.md,core/reference/statements/kill.mdx,https://clickhouse.com/docs/sql-reference/statements/kill,https://private-7c7dfe99.mintlify.app/core/reference/statements/kill,matched,af21361ca18f3026,true,af21361ca18f3026,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/move,docs/sql-reference/statements/move.md,core/reference/statements/move.mdx,https://clickhouse.com/docs/sql-reference/statements/move,https://private-7c7dfe99.mintlify.app/core/reference/statements/move,matched,3f0321df0eda3733,true,8103e61160aa5299,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/optimize,docs/sql-reference/statements/optimize.md,core/reference/statements/optimize.mdx,https://clickhouse.com/docs/sql-reference/statements/optimize,https://private-7c7dfe99.mintlify.app/core/reference/statements/optimize,matched,d577af60f580c0b1,true,d577af60f580c0b1,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/parallel_with,docs/sql-reference/statements/parallel_with.md,core/reference/statements/parallel_with.mdx,https://clickhouse.com/docs/sql-reference/statements/parallel_with,https://private-7c7dfe99.mintlify.app/core/reference/statements/parallel_with,matched,1f165d76471c3a5b,true,483cc85982240fd1,2026-05-09T09:39:38+00:00,false
+/sql-reference/statements/rename,docs/sql-reference/statements/rename.md,core/reference/statements/rename.mdx,https://clickhouse.com/docs/sql-reference/statements/rename,https://private-7c7dfe99.mintlify.app/core/reference/statements/rename,matched,37bc53ffaae36d00,true,7a7e56c7d4e06aa4,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/revoke,docs/sql-reference/statements/revoke.md,core/reference/statements/revoke.mdx,https://clickhouse.com/docs/sql-reference/statements/revoke,https://private-7c7dfe99.mintlify.app/core/reference/statements/revoke,matched,421e31eca5449bc3,true,623f2f8c2f600659,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/select/,docs/sql-reference/statements/select/index.md,core/reference/statements/select/index.mdx,https://clickhouse.com/docs/sql-reference/statements/select/,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/index,matched,85222c4f3d27324a,true,000b1489bccc8788,2026-05-09T09:39:38+00:00,false
+/sql-reference/statements/select/all,docs/sql-reference/statements/select/all.md,core/reference/statements/select/all.mdx,https://clickhouse.com/docs/sql-reference/statements/select/all,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/all,matched,bb422f0edd427946,true,a7e402c757884105,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/select/apply-modifier,docs/sql-reference/statements/select/apply_modifier.md,core/reference/statements/select/apply_modifier.mdx,https://clickhouse.com/docs/sql-reference/statements/select/apply-modifier,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/apply_modifier,matched,b14c9032f2ded030,true,b14c9032f2ded030,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/array-join,docs/sql-reference/statements/select/array-join.md,core/reference/statements/select/array-join.mdx,https://clickhouse.com/docs/sql-reference/statements/select/array-join,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/array-join,matched,a40e92dc94f24e98,true,b1e073c8374abc5e,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/select/distinct,docs/sql-reference/statements/select/distinct.md,core/reference/statements/select/distinct.mdx,https://clickhouse.com/docs/sql-reference/statements/select/distinct,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/distinct,matched,0ab1da121ff29a6f,true,8b19006f70430697,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/select/except,docs/sql-reference/statements/select/except.md,core/reference/statements/select/except.mdx,https://clickhouse.com/docs/sql-reference/statements/select/except,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/except,matched,39d64699466c359f,true,39d64699466c359f,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/except-modifier,docs/sql-reference/statements/select/except_modifier.md,core/reference/statements/select/except_modifier.mdx,https://clickhouse.com/docs/sql-reference/statements/select/except-modifier,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/except_modifier,matched,35e4d9fcfe542b93,true,35e4d9fcfe542b93,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/format,docs/sql-reference/statements/select/format.md,core/reference/statements/select/format.mdx,https://clickhouse.com/docs/sql-reference/statements/select/format,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/format,matched,8977e80ee0785bd3,true,c4c2f0d3c5707c2d,2026-05-08T13:01:57+00:00,false
+/sql-reference/statements/select/from,docs/sql-reference/statements/select/from.md,core/reference/statements/select/from.mdx,https://clickhouse.com/docs/sql-reference/statements/select/from,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/from,matched,31323a0e56256596,true,71e350eef6826c63,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/select/group-by,docs/sql-reference/statements/select/group-by.md,core/reference/statements/select/group-by.mdx,https://clickhouse.com/docs/sql-reference/statements/select/group-by,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/group-by,matched,2401cd614ce10370,true,2401cd614ce10370,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/having,docs/sql-reference/statements/select/having.md,core/reference/statements/select/having.mdx,https://clickhouse.com/docs/sql-reference/statements/select/having,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/having,matched,2cc0edfc46c6075a,true,153f09d0dc6e1710,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/select/intersect,docs/sql-reference/statements/select/intersect.md,core/reference/statements/select/intersect.mdx,https://clickhouse.com/docs/sql-reference/statements/select/intersect,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/intersect,matched,2d206c976cd88c30,true,2d206c976cd88c30,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/into-outfile,docs/sql-reference/statements/select/into-outfile.md,core/reference/statements/select/into-outfile.mdx,https://clickhouse.com/docs/sql-reference/statements/select/into-outfile,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/into-outfile,matched,4655e3a018c5dc42,true,4655e3a018c5dc42,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/join,docs/sql-reference/statements/select/join.md,core/reference/statements/select/join.mdx,https://clickhouse.com/docs/sql-reference/statements/select/join,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/join,matched,85d0761a113d83bd,true,85d0761a113d83bd,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/limit,docs/sql-reference/statements/select/limit.md,core/reference/statements/select/limit.mdx,https://clickhouse.com/docs/sql-reference/statements/select/limit,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/limit,matched,7a4d74ba92379a5f,true,7a4d74ba92379a5f,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/limit-by,docs/sql-reference/statements/select/limit-by.md,core/reference/statements/select/limit-by.mdx,https://clickhouse.com/docs/sql-reference/statements/select/limit-by,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/limit-by,matched,e36cb7202c0ca28f,true,e7c877624140213a,2026-05-13T13:25:34+00:00,false
+/sql-reference/statements/select/offset,docs/sql-reference/statements/select/offset.md,core/reference/statements/select/offset.mdx,https://clickhouse.com/docs/sql-reference/statements/select/offset,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/offset,matched,5ebfe47b67f74463,true,5ebfe47b67f74463,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/order-by,docs/sql-reference/statements/select/order-by.md,core/reference/statements/select/order-by.mdx,https://clickhouse.com/docs/sql-reference/statements/select/order-by,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/order-by,matched,d7ad45fdacd639e4,true,d7ad45fdacd639e4,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/prewhere,docs/sql-reference/statements/select/prewhere.md,core/reference/statements/select/prewhere.mdx,https://clickhouse.com/docs/sql-reference/statements/select/prewhere,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/prewhere,matched,3238b6a9d1079097,true,cdca3b6d03d5aff1,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/select/qualify,docs/sql-reference/statements/select/qualify.md,core/reference/statements/select/qualify.mdx,https://clickhouse.com/docs/sql-reference/statements/select/qualify,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/qualify,matched,bf033ebdee748507,true,d12d9428ec537b38,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/select/replace-modifier,docs/sql-reference/statements/select/replace_modifier.md,core/reference/statements/select/replace_modifier.mdx,https://clickhouse.com/docs/sql-reference/statements/select/replace-modifier,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/replace_modifier,matched,5afb8cd56b457884,true,5afb8cd56b457884,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/sample,docs/sql-reference/statements/select/sample.md,core/reference/statements/select/sample.mdx,https://clickhouse.com/docs/sql-reference/statements/select/sample,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/sample,matched,3f0005567413b875,true,aa16d1a33d331289,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/select/union,docs/sql-reference/statements/select/union.md,core/reference/statements/select/union.mdx,https://clickhouse.com/docs/sql-reference/statements/select/union,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/union,matched,be8712788ece5c74,true,be8712788ece5c74,2026-05-19T11:08:53+00:00,false
+/sql-reference/statements/select/where,docs/sql-reference/statements/select/where.md,core/reference/statements/select/where.mdx,https://clickhouse.com/docs/sql-reference/statements/select/where,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/where,matched,488dbcbfc1c6e4b7,true,e592ec6dc8b77028,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/select/with,docs/sql-reference/statements/select/with.md,core/reference/statements/select/with.mdx,https://clickhouse.com/docs/sql-reference/statements/select/with,https://private-7c7dfe99.mintlify.app/core/reference/statements/select/with,matched,70294d187c3333a4,true,ca02fa35413107a3,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/set,docs/sql-reference/statements/set.md,core/reference/statements/set.mdx,https://clickhouse.com/docs/sql-reference/statements/set,https://private-7c7dfe99.mintlify.app/core/reference/statements/set,matched,04fdbe960f351e17,true,fea6991e0302092b,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/set-role,docs/sql-reference/statements/set-role.md,core/reference/statements/set-role.mdx,https://clickhouse.com/docs/sql-reference/statements/set-role,https://private-7c7dfe99.mintlify.app/core/reference/statements/set-role,matched,af1d949b76a7c871,true,af1d949b76a7c871,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/show,docs/sql-reference/statements/show.md,core/reference/statements/show.mdx,https://clickhouse.com/docs/sql-reference/statements/show,https://private-7c7dfe99.mintlify.app/core/reference/statements/show,matched,49ceafd57e4d4c95,true,49ceafd57e4d4c95,2026-05-09T10:26:02+00:00,false
+/sql-reference/statements/system,docs/sql-reference/statements/system.md,core/reference/statements/system.mdx,https://clickhouse.com/docs/sql-reference/statements/system,https://private-7c7dfe99.mintlify.app/core/reference/statements/system,matched,ad6b118a399960b4,true,ad6b118a399960b4,2026-05-13T13:16:51+00:00,false
+/sql-reference/statements/truncate,docs/sql-reference/statements/truncate.md,core/reference/statements/truncate.mdx,https://clickhouse.com/docs/sql-reference/statements/truncate,https://private-7c7dfe99.mintlify.app/core/reference/statements/truncate,matched,89b0b953f7e7370e,true,d710ab3ea8569000,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/undrop,docs/sql-reference/statements/undrop.md,core/reference/statements/undrop.mdx,https://clickhouse.com/docs/sql-reference/statements/undrop,https://private-7c7dfe99.mintlify.app/core/reference/statements/undrop,matched,7bd54b91e1b6d80b,true,764c0b5706ee7c85,2026-05-08T09:09:20+00:00,false
+/sql-reference/statements/update,docs/sql-reference/statements/update.md,core/reference/statements/update.mdx,https://clickhouse.com/docs/sql-reference/statements/update,https://private-7c7dfe99.mintlify.app/core/reference/statements/update,matched,17436a6c6f051eb7,true,17436a6c6f051eb7,2026-05-19T11:48:22+00:00,false
+/sql-reference/statements/use,docs/sql-reference/statements/use.md,core/reference/statements/use.mdx,https://clickhouse.com/docs/sql-reference/statements/use,https://private-7c7dfe99.mintlify.app/core/reference/statements/use,matched,e2404745046de3ea,true,4120b13b5f03f7c2,2026-05-07T14:49:41+00:00,false
+/sql-reference/statements/watch,docs/sql-reference/statements/watch.md,core/reference/statements/watch.mdx,https://clickhouse.com/docs/sql-reference/statements/watch,https://private-7c7dfe99.mintlify.app/core/reference/statements/watch,matched,55069f671a99d799,true,55069f671a99d799,2026-05-08T09:09:20+00:00,false
+/sql-reference/syntax,docs/sql-reference/syntax.md,core/reference/syntax.mdx,https://clickhouse.com/docs/sql-reference/syntax,https://private-7c7dfe99.mintlify.app/core/reference/syntax,matched,a9135da960dcaf5e,true,a9135da960dcaf5e,2026-05-08T13:01:57+00:00,false
+/sql-reference/table-functions/,docs/sql-reference/table-functions/index.md,core/reference/functions/table-functions/index.mdx,https://clickhouse.com/docs/sql-reference/table-functions/,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/index,matched,1752f7d23d0c71cf,true,1752f7d23d0c71cf,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/arrowflight,docs/sql-reference/table-functions/arrowflight.md,core/reference/functions/table-functions/arrowflight.mdx,https://clickhouse.com/docs/sql-reference/table-functions/arrowflight,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/arrowflight,matched,7d58f93d9c0e0f98,true,7d58f93d9c0e0f98,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/azureBlobStorage,docs/sql-reference/table-functions/azureBlobStorage.md,core/reference/functions/table-functions/azureBlobStorage.mdx,https://clickhouse.com/docs/sql-reference/table-functions/azureBlobStorage,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/azureBlobStorage,matched,85ea52388b3f2d06,true,85ea52388b3f2d06,2026-05-08T15:04:34+00:00,false
+/sql-reference/table-functions/azureBlobStorageCluster,docs/sql-reference/table-functions/azureBlobStorageCluster.md,core/reference/functions/table-functions/azureBlobStorageCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/azureBlobStorageCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/azureBlobStorageCluster,matched,dc75f0e73803354d,true,dc75f0e73803354d,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/cluster,docs/sql-reference/table-functions/cluster.md,core/reference/functions/table-functions/cluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/cluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/cluster,matched,51cf2023223e48e7,true,51cf2023223e48e7,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/deltalake,docs/sql-reference/table-functions/deltalake.md,core/reference/functions/table-functions/deltalake.mdx,https://clickhouse.com/docs/sql-reference/table-functions/deltalake,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/deltalake,matched,8d88c4159bcd5510,true,8d88c4159bcd5510,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/deltalakeCluster,docs/sql-reference/table-functions/deltalakeCluster.md,core/reference/functions/table-functions/deltalakeCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/deltalakeCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/deltalakeCluster,matched,3dfcdcdd28339a6e,true,3dfcdcdd28339a6e,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/dictionary,docs/sql-reference/table-functions/dictionary.md,core/reference/functions/table-functions/dictionary.mdx,https://clickhouse.com/docs/sql-reference/table-functions/dictionary,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/dictionary,matched,ee69af751e7bcdab,true,ee69af751e7bcdab,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/file,docs/sql-reference/table-functions/file.md,core/reference/functions/table-functions/file.mdx,https://clickhouse.com/docs/sql-reference/table-functions/file,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/file,matched,0e0f27c7cf6a4b67,true,0e0f27c7cf6a4b67,2026-05-13T13:16:51+00:00,false
+/sql-reference/table-functions/fileCluster,docs/sql-reference/table-functions/fileCluster.md,core/reference/functions/table-functions/fileCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/fileCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/fileCluster,matched,0b518b34b857ea61,true,0b518b34b857ea61,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/filesystem,docs/sql-reference/table-functions/filesystem.md,core/reference/functions/table-functions/filesystem.mdx,https://clickhouse.com/docs/sql-reference/table-functions/filesystem,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/filesystem,matched,882421bad03a1a1a,true,882421bad03a1a1a,2026-05-08T15:04:25+00:00,false
+/sql-reference/table-functions/format,docs/sql-reference/table-functions/format.md,core/reference/functions/table-functions/format.mdx,https://clickhouse.com/docs/sql-reference/table-functions/format,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/format,matched,4af4c925a55f25a6,true,4af4c925a55f25a6,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/fuzzJSON,docs/sql-reference/table-functions/fuzzJSON.md,core/reference/functions/table-functions/fuzzJSON.mdx,https://clickhouse.com/docs/sql-reference/table-functions/fuzzJSON,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/fuzzJSON,matched,a423ba9209dce342,true,a423ba9209dce342,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/fuzzQuery,docs/sql-reference/table-functions/fuzzQuery.md,core/reference/functions/table-functions/fuzzQuery.mdx,https://clickhouse.com/docs/sql-reference/table-functions/fuzzQuery,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/fuzzQuery,matched,30d7f5082387ef53,true,30d7f5082387ef53,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/gcs,docs/sql-reference/table-functions/gcs.md,core/reference/functions/table-functions/gcs.mdx,https://clickhouse.com/docs/sql-reference/table-functions/gcs,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/gcs,matched,3db1d64aed4fda6d,true,3db1d64aed4fda6d,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/generate,docs/sql-reference/table-functions/generate.md,core/reference/functions/table-functions/generate.mdx,https://clickhouse.com/docs/sql-reference/table-functions/generate,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/generate,matched,6c2593dca504546a,true,6c2593dca504546a,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/generate_series,docs/sql-reference/table-functions/generate_series.md,core/reference/functions/table-functions/generate_series.mdx,https://clickhouse.com/docs/sql-reference/table-functions/generate_series,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/generate_series,matched,2cd50c48a3e8ea2b,true,2cd50c48a3e8ea2b,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/hdfs,docs/sql-reference/table-functions/hdfs.md,core/reference/functions/table-functions/hdfs.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hdfs,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/hdfs,matched,f8e80c5b854727f0,true,f8e80c5b854727f0,2026-05-09T09:39:38+00:00,false
+/sql-reference/table-functions/hdfsCluster,docs/sql-reference/table-functions/hdfsCluster.md,core/reference/functions/table-functions/hdfsCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hdfsCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/hdfsCluster,matched,a1590af208a32d6a,true,a1590af208a32d6a,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/hudi,docs/sql-reference/table-functions/hudi.md,core/reference/functions/table-functions/hudi.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hudi,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/hudi,matched,ec7ca6bb139399c2,true,ec7ca6bb139399c2,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/hudiCluster,docs/sql-reference/table-functions/hudiCluster.md,core/reference/functions/table-functions/hudiCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/hudiCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/hudiCluster,matched,7535cf734ec520d3,true,cfb2dfa16b24b4d7,2026-05-08T13:01:57+00:00,false
+/sql-reference/table-functions/iceberg,docs/sql-reference/table-functions/iceberg.md,core/reference/functions/table-functions/iceberg.mdx,https://clickhouse.com/docs/sql-reference/table-functions/iceberg,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/iceberg,matched,a92b3b7bf7653638,true,a92b3b7bf7653638,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/icebergCluster,docs/sql-reference/table-functions/icebergCluster.md,core/reference/functions/table-functions/icebergCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/icebergCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/icebergCluster,matched,1136750e5a714749,true,1136750e5a714749,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/input,docs/sql-reference/table-functions/input.md,core/reference/functions/table-functions/input.mdx,https://clickhouse.com/docs/sql-reference/table-functions/input,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/input,matched,d6ef966d733a8006,true,d6ef966d733a8006,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/jdbc,docs/sql-reference/table-functions/jdbc.md,core/reference/functions/table-functions/jdbc.mdx,https://clickhouse.com/docs/sql-reference/table-functions/jdbc,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/jdbc,matched,ea91e6a9ef884757,true,ea91e6a9ef884757,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/loop,docs/sql-reference/table-functions/loop.md,core/reference/functions/table-functions/loop.mdx,https://clickhouse.com/docs/sql-reference/table-functions/loop,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/loop,matched,27799a38256c3283,true,27799a38256c3283,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/merge,docs/sql-reference/table-functions/merge.md,core/reference/functions/table-functions/merge.mdx,https://clickhouse.com/docs/sql-reference/table-functions/merge,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/merge,matched,7c9f227d0f54ac31,true,7c9f227d0f54ac31,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/mergeTreeIndex,docs/sql-reference/table-functions/mergeTreeIndex.md,core/reference/functions/table-functions/mergeTreeIndex.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mergeTreeIndex,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/mergeTreeIndex,matched,f0cfbaa96ea9b96d,true,f0cfbaa96ea9b96d,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/mergeTreeProjection,docs/sql-reference/table-functions/mergeTreeProjection.md,core/reference/functions/table-functions/mergeTreeProjection.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mergeTreeProjection,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/mergeTreeProjection,matched,66e0e0e58a15f13b,true,66e0e0e58a15f13b,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/mergeTreeTextIndex,docs/sql-reference/table-functions/mergeTreeTextIndex.md,core/reference/functions/table-functions/mergeTreeTextIndex.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mergeTreeTextIndex,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/mergeTreeTextIndex,matched,674be778b3ca892c,true,674be778b3ca892c,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/mongodb,docs/sql-reference/table-functions/mongodb.md,core/reference/functions/table-functions/mongodb.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mongodb,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/mongodb,matched,69c90ba8bcbce740,true,69c90ba8bcbce740,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/mysql,docs/sql-reference/table-functions/mysql.md,core/reference/functions/table-functions/mysql.mdx,https://clickhouse.com/docs/sql-reference/table-functions/mysql,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/mysql,matched,d8e2e840f42a2098,true,d8e2e840f42a2098,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/null,docs/sql-reference/table-functions/null.md,core/reference/functions/table-functions/null.mdx,https://clickhouse.com/docs/sql-reference/table-functions/null,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/null,matched,1e3e6c4337634880,true,1e3e6c4337634880,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/numbers,docs/sql-reference/table-functions/numbers.md,core/reference/functions/table-functions/numbers.mdx,https://clickhouse.com/docs/sql-reference/table-functions/numbers,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/numbers,matched,3627bf6180612a42,true,3627bf6180612a42,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/odbc,docs/sql-reference/table-functions/odbc.md,core/reference/functions/table-functions/odbc.mdx,https://clickhouse.com/docs/sql-reference/table-functions/odbc,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/odbc,matched,727fc4c5f407c071,true,727fc4c5f407c071,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/paimon,docs/sql-reference/table-functions/paimon.md,core/reference/functions/table-functions/paimon.mdx,https://clickhouse.com/docs/sql-reference/table-functions/paimon,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/paimon,matched,ff6b4066c22e03bc,true,ff6b4066c22e03bc,2026-05-08T14:01:22+00:00,false
+/sql-reference/table-functions/paimonCluster,docs/sql-reference/table-functions/paimonCluster.md,core/reference/functions/table-functions/paimonCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/paimonCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/paimonCluster,matched,6a7a31ed6e3d760b,true,6a7a31ed6e3d760b,2026-05-08T09:51:10+00:00,false
+/sql-reference/table-functions/postgresql,docs/sql-reference/table-functions/postgresql.md,core/reference/functions/table-functions/postgresql.mdx,https://clickhouse.com/docs/sql-reference/table-functions/postgresql,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/postgresql,matched,b560eed6678fd487,true,b560eed6678fd487,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/primes,docs/sql-reference/table-functions/primes.md,core/reference/functions/table-functions/primes.mdx,https://clickhouse.com/docs/sql-reference/table-functions/primes,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/primes,matched,4f2d1473a674bb1e,true,4f2d1473a674bb1e,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/prometheusQuery,docs/sql-reference/table-functions/prometheusQuery.md,core/reference/functions/table-functions/prometheusQuery.mdx,https://clickhouse.com/docs/sql-reference/table-functions/prometheusQuery,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/prometheusQuery,matched,1e86a4d4c3d28658,true,1e86a4d4c3d28658,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/prometheusQueryRange,docs/sql-reference/table-functions/prometheusQueryRange.md,core/reference/functions/table-functions/prometheusQueryRange.mdx,https://clickhouse.com/docs/sql-reference/table-functions/prometheusQueryRange,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/prometheusQueryRange,matched,f153f45ed52a4bc4,true,f153f45ed52a4bc4,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/redis,docs/sql-reference/table-functions/redis.md,core/reference/functions/table-functions/redis.mdx,https://clickhouse.com/docs/sql-reference/table-functions/redis,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/redis,matched,184e1d9e9cbbd26f,true,184e1d9e9cbbd26f,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/remote,docs/sql-reference/table-functions/remote.md,core/reference/functions/table-functions/remote.mdx,https://clickhouse.com/docs/sql-reference/table-functions/remote,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/remote,matched,25bcdaab0a89be0c,true,25bcdaab0a89be0c,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/s3,docs/sql-reference/table-functions/s3.md,core/reference/functions/table-functions/s3.mdx,https://clickhouse.com/docs/sql-reference/table-functions/s3,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/s3,matched,890b3ede24b4d144,true,890b3ede24b4d144,2026-05-08T15:04:34+00:00,false
+/sql-reference/table-functions/s3Cluster,docs/sql-reference/table-functions/s3Cluster.md,core/reference/functions/table-functions/s3Cluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/s3Cluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/s3Cluster,matched,cdef10dfae17e7a4,true,cdef10dfae17e7a4,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/sqlite,docs/sql-reference/table-functions/sqlite.md,core/reference/functions/table-functions/sqlite.mdx,https://clickhouse.com/docs/sql-reference/table-functions/sqlite,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/sqlite,matched,e3a58d5f3297ba15,true,e3a58d5f3297ba15,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/timeSeriesData,docs/sql-reference/table-functions/timeSeriesData.md,core/reference/functions/table-functions/timeSeriesData.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesData,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/timeSeriesData,matched,b4b2095ec970bd69,true,b4b2095ec970bd69,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/timeSeriesMetrics,docs/sql-reference/table-functions/timeSeriesMetrics.md,core/reference/functions/table-functions/timeSeriesMetrics.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesMetrics,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/timeSeriesMetrics,matched,f7fa77ef91333364,true,f7fa77ef91333364,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/timeSeriesSelector,docs/sql-reference/table-functions/timeSeriesSelector.md,core/reference/functions/table-functions/timeSeriesSelector.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesSelector,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/timeSeriesSelector,matched,2efab495d0d434c3,true,2efab495d0d434c3,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/timeSeriesTags,docs/sql-reference/table-functions/timeSeriesTags.md,core/reference/functions/table-functions/timeSeriesTags.mdx,https://clickhouse.com/docs/sql-reference/table-functions/timeSeriesTags,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/timeSeriesTags,matched,6c5fde1e295f0580,true,6c5fde1e295f0580,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/url,docs/sql-reference/table-functions/url.md,core/reference/functions/table-functions/url.mdx,https://clickhouse.com/docs/sql-reference/table-functions/url,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/url,matched,2b36549d2d8d832e,true,2b36549d2d8d832e,2026-05-09T09:39:38+00:00,false
+/sql-reference/table-functions/urlCluster,docs/sql-reference/table-functions/urlCluster.md,core/reference/functions/table-functions/urlCluster.mdx,https://clickhouse.com/docs/sql-reference/table-functions/urlCluster,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/urlCluster,matched,7ab2dcf6aa50fc83,true,7ab2dcf6aa50fc83,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/values,docs/sql-reference/table-functions/values.md,core/reference/functions/table-functions/values.mdx,https://clickhouse.com/docs/sql-reference/table-functions/values,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/values,matched,8716709876043316,true,8716709876043316,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/view,docs/sql-reference/table-functions/view.md,core/reference/functions/table-functions/view.mdx,https://clickhouse.com/docs/sql-reference/table-functions/view,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/view,matched,aa22515e018d41f6,true,aa22515e018d41f6,2026-05-19T11:08:53+00:00,false
+/sql-reference/table-functions/ytsaurus,docs/sql-reference/table-functions/ytsaurus.md,core/reference/functions/table-functions/ytsaurus.mdx,https://clickhouse.com/docs/sql-reference/table-functions/ytsaurus,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/ytsaurus,matched,b931df20b4f6c77e,true,b931df20b4f6c77e,2026-05-08T13:01:57+00:00,false
+/sql-reference/table-functions/zeros,docs/sql-reference/table-functions/zeros.md,core/reference/functions/table-functions/zeros.mdx,https://clickhouse.com/docs/sql-reference/table-functions/zeros,https://private-7c7dfe99.mintlify.app/core/reference/functions/table-functions/zeros,matched,795be83399042602,true,795be83399042602,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/,docs/sql-reference/window-functions/index.md,core/reference/functions/window-functions/index.mdx,https://clickhouse.com/docs/sql-reference/window-functions/,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/index,matched,29b129959d2df6a5,true,29b129959d2df6a5,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/cume_dist,docs/sql-reference/window-functions/cume_dist.md,core/reference/functions/window-functions/cume_dist.mdx,https://clickhouse.com/docs/sql-reference/window-functions/cume_dist,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/cume_dist,matched,ad213d159101deee,true,ad213d159101deee,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/dense_rank,docs/sql-reference/window-functions/dense_rank.md,core/reference/functions/window-functions/dense_rank.mdx,https://clickhouse.com/docs/sql-reference/window-functions/dense_rank,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/dense_rank,matched,0c2b2339983aea4c,true,0c2b2339983aea4c,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/first_value,docs/sql-reference/window-functions/first_value.md,core/reference/functions/window-functions/first_value.mdx,https://clickhouse.com/docs/sql-reference/window-functions/first_value,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/first_value,matched,76e04f71ae6a40b6,true,76e04f71ae6a40b6,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/lag,docs/sql-reference/window-functions/lag.md,core/reference/functions/window-functions/lag.mdx,https://clickhouse.com/docs/sql-reference/window-functions/lag,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/lag,matched,f25bd9104d3a38e3,true,0613ad7af0509f61,2026-05-09T09:39:38+00:00,false
+/sql-reference/window-functions/lagInFrame,docs/sql-reference/window-functions/lagInFrame.md,core/reference/functions/window-functions/lagInFrame.mdx,https://clickhouse.com/docs/sql-reference/window-functions/lagInFrame,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/lagInFrame,matched,cc6fee46ae9d3eb4,true,cc6fee46ae9d3eb4,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/last_value,docs/sql-reference/window-functions/last_value.md,core/reference/functions/window-functions/last_value.mdx,https://clickhouse.com/docs/sql-reference/window-functions/last_value,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/last_value,matched,a0590ca6d8781a22,true,a0590ca6d8781a22,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/lead,docs/sql-reference/window-functions/lead.md,core/reference/functions/window-functions/lead.mdx,https://clickhouse.com/docs/sql-reference/window-functions/lead,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/lead,matched,9c6c51f6b9bd98fc,true,40a994cb17281180,2026-05-09T09:39:38+00:00,false
+/sql-reference/window-functions/leadInFrame,docs/sql-reference/window-functions/leadInFrame.md,core/reference/functions/window-functions/leadInFrame.mdx,https://clickhouse.com/docs/sql-reference/window-functions/leadInFrame,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/leadInFrame,matched,81c1274fdcd7418a,true,81c1274fdcd7418a,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/nth_value,docs/sql-reference/window-functions/nth_value.md,core/reference/functions/window-functions/nth_value.mdx,https://clickhouse.com/docs/sql-reference/window-functions/nth_value,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/nth_value,matched,42b27acbf24b93d3,true,42b27acbf24b93d3,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/percent_rank,docs/sql-reference/window-functions/percent_rank.md,core/reference/functions/window-functions/percent_rank.mdx,https://clickhouse.com/docs/sql-reference/window-functions/percent_rank,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/percent_rank,matched,aeb00b6ade296f85,true,aeb00b6ade296f85,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/rank,docs/sql-reference/window-functions/rank.md,core/reference/functions/window-functions/rank.mdx,https://clickhouse.com/docs/sql-reference/window-functions/rank,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/rank,matched,8bb74a5fb304b4bf,true,8bb74a5fb304b4bf,2026-05-19T11:08:53+00:00,false
+/sql-reference/window-functions/row_number,docs/sql-reference/window-functions/row_number.md,core/reference/functions/window-functions/row_number.mdx,https://clickhouse.com/docs/sql-reference/window-functions/row_number,https://private-7c7dfe99.mintlify.app/core/reference/functions/window-functions/row_number,matched,c7b667d2713e85b5,true,c7b667d2713e85b5,2026-05-19T11:08:53+00:00,false
/starter-guides,docs/guides/starter_guides/index.md,,https://clickhouse.com/docs/starter-guides,,unmatched,2ad71c824416a5b2,false,,,false
/tips-and-tricks/community-wisdom,docs/tips-and-tricks/community-wisdom.md,resources/support-center/tips-and-tricks/community-wisdom.mdx,https://clickhouse.com/docs/tips-and-tricks/community-wisdom,https://private-7c7dfe99.mintlify.app/resources/support-center/tips-and-tricks/community-wisdom,matched,aeff1932c5e55e99,true,aeff1932c5e55e99,2026-05-13T13:16:51+00:00,false
/tips-and-tricks/materialized-views,docs/tips-and-tricks/materialized-views.md,resources/support-center/tips-and-tricks/materialized-views.mdx,https://clickhouse.com/docs/tips-and-tricks/materialized-views,https://private-7c7dfe99.mintlify.app/resources/support-center/tips-and-tricks/materialized-views,matched,bbc3fc8ddd8c400c,true,bbc3fc8ddd8c400c,2026-05-13T13:16:51+00:00,false
/tips-and-tricks/too-many-parts,docs/tips-and-tricks/too-many-parts.md,resources/support-center/tips-and-tricks/too-many-parts.mdx,https://clickhouse.com/docs/tips-and-tricks/too-many-parts,https://private-7c7dfe99.mintlify.app/resources/support-center/tips-and-tricks/too-many-parts,matched,0c54fd3f89fd4d10,true,0c54fd3f89fd4d10,2026-05-13T13:16:51+00:00,false
-/troubleshooting,docs/troubleshooting/index.md,resources/support-center/troubleshooting/index.mdx,https://clickhouse.com/docs/troubleshooting,https://private-7c7dfe99.mintlify.app/resources/support-center/troubleshooting,matched,a4f59c45db4acd40,true,a4f59c45db4acd40,2026-05-13T13:16:51+00:00,false
-/tutorial,docs/tutorial.md,get-started/quickstarts/tutorial.mdx,https://clickhouse.com/docs/tutorial,https://private-7c7dfe99.mintlify.app/get-started/quickstarts/tutorial,matched,8477623569f47013,true,8477623569f47013,2026-05-13T13:16:51+00:00,false
-/updating-data,docs/managing-data/updating-data/index.md,concepts/operations/update/index.mdx,https://clickhouse.com/docs/updating-data,https://private-7c7dfe99.mintlify.app/concepts/operations/update,matched,b8b45bc64184323f,true,b8b45bc64184323f,2026-05-08T09:09:20+00:00,false
-/updating-data/overview,docs/managing-data/updating-data/overview.mdx,concepts/operations/update/overview.mdx,https://clickhouse.com/docs/updating-data/overview,https://private-7c7dfe99.mintlify.app/concepts/operations/update/overview,matched,29faa17e7e87aabc,true,29faa17e7e87aabc,2026-05-08T09:09:20+00:00,false
-/use-cases,docs/use-cases/index.md,use-cases/index.mdx,https://clickhouse.com/docs/use-cases,https://private-7c7dfe99.mintlify.app/use-cases,matched,668e2795fb384f5c,true,668e2795fb384f5c,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP,docs/use-cases/AI_ML/MCP/index.md,guides/ai-ml/MCP/index.mdx,https://clickhouse.com/docs/use-cases/AI/MCP,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP,matched,8bafe80320770ac1,true,8bafe80320770ac1,2026-05-08T20:59:48+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries,docs/use-cases/AI_ML/MCP/ai_agent_libraries/index.md,guides/ai-ml/MCP/ai-agent-libraries/index.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries,matched,c33eb46b5e7612c3,true,c33eb46b5e7612c3,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/DSPy,docs/use-cases/AI_ML/MCP/ai_agent_libraries/dspy.md,guides/ai-ml/MCP/ai-agent-libraries/dspy.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/DSPy,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/dspy,matched,32ec2e85642780dd,true,1f2518a1634c9f10,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/agno,docs/use-cases/AI_ML/MCP/ai_agent_libraries/agno.md,guides/ai-ml/MCP/ai-agent-libraries/agno.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/agno,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/agno,matched,41f22f83ccd869e9,true,a3bc4a1960dabe90,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/chainlit,docs/use-cases/AI_ML/MCP/ai_agent_libraries/chainlit.md,guides/ai-ml/MCP/ai-agent-libraries/chainlit.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/chainlit,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/chainlit,matched,f426b1b0ee8e34cf,true,f426b1b0ee8e34cf,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/claude-agent-sdk,docs/use-cases/AI_ML/MCP/ai_agent_libraries/claude-agent-sdk.md,guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/claude-agent-sdk,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk,matched,d190774d5f2103cd,true,736ac055730323c8,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/copilotkit,docs/use-cases/AI_ML/MCP/ai_agent_libraries/copilotkit.md,guides/ai-ml/MCP/ai-agent-libraries/copilotkit.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/copilotkit,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/copilotkit,matched,5d1bf5b77d18ba5d,true,5d1bf5b77d18ba5d,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/crewai,docs/use-cases/AI_ML/MCP/ai_agent_libraries/crewai.md,guides/ai-ml/MCP/ai-agent-libraries/crewai.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/crewai,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/crewai,matched,d41d583ca857275e,true,9132c4cbfba020ee,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/langchain,docs/use-cases/AI_ML/MCP/ai_agent_libraries/langchain.md,guides/ai-ml/MCP/ai-agent-libraries/langchain.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/langchain,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/langchain,matched,ca4ae21651adabbc,true,ca4ae21651adabbc,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/llamaindex,docs/use-cases/AI_ML/MCP/ai_agent_libraries/llamaindex.md,guides/ai-ml/MCP/ai-agent-libraries/llamaindex.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/llamaindex,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/llamaindex,matched,53f08ec4e8244083,true,53f08ec4e8244083,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/mcp-agent,docs/use-cases/AI_ML/MCP/ai_agent_libraries/mcp-agent.md,guides/ai-ml/MCP/ai-agent-libraries/mcp-agent.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/mcp-agent,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/mcp-agent,matched,1080f0511027eb06,true,1080f0511027eb06,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/microsoft-agent-framework,docs/use-cases/AI_ML/MCP/ai_agent_libraries/microsoft-agent-framework.md,guides/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/microsoft-agent-framework,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework,matched,adb10a55c3b0cef1,true,d9b85bccc1120f8f,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/openai-agents,docs/use-cases/AI_ML/MCP/ai_agent_libraries/openai-agents.md,guides/ai-ml/MCP/ai-agent-libraries/openai-agents.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/openai-agents,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/openai-agents,matched,c6a346d15dbfc875,true,c6a346d15dbfc875,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/pydantic-ai,docs/use-cases/AI_ML/MCP/ai_agent_libraries/pydantic-ai.md,guides/ai-ml/MCP/ai-agent-libraries/pydantic-ai.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/pydantic-ai,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/pydantic-ai,matched,362672d4f94e61b8,true,362672d4f94e61b8,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/slackbot,docs/use-cases/AI_ML/MCP/ai_agent_libraries/slackbot.md,guides/ai-ml/MCP/ai-agent-libraries/slackbot.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/slackbot,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/slackbot,matched,384b5ca4a59ddb5a,true,384b5ca4a59ddb5a,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/streamlit-agent,docs/use-cases/AI_ML/MCP/ai_agent_libraries/streamlit.md,guides/ai-ml/MCP/ai-agent-libraries/streamlit.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/streamlit-agent,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/streamlit,matched,55483bd48383a93c,true,6407de9d7364b79b,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP/ai-agent-libraries/upsonic,docs/use-cases/AI_ML/MCP/ai_agent_libraries/upsonic.md,guides/ai-ml/MCP/ai-agent-libraries/upsonic.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/upsonic,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ai-agent-libraries/upsonic,matched,a2efe3a29a063052,true,570f4005b835c09d,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/MCP/anythingllm,docs/use-cases/AI_ML/MCP/04_anythingllm.md,guides/ai-ml/MCP/anythingllm.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/anythingllm,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/anythingllm,matched,d4f80fdfb21dd3cf,true,0acbf9454617f037,2026-05-08T09:52:53+00:00,false
-/use-cases/AI/MCP/claude-desktop,docs/use-cases/AI_ML/MCP/02_claude-desktop.md,guides/ai-ml/MCP/claude-desktop.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/claude-desktop,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/claude-desktop,matched,a93753bfbfe6cf44,true,a93753bfbfe6cf44,2026-05-08T12:19:52+00:00,false
-/use-cases/AI/MCP/janai,docs/use-cases/AI_ML/MCP/07_janai.md,guides/ai-ml/MCP/janai.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/janai,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/janai,matched,655b4d65de4a49fb,true,ed463b30b45790aa,2026-05-08T09:52:53+00:00,false
-/use-cases/AI/MCP/librechat,docs/use-cases/AI_ML/MCP/03_librechat.md,guides/ai-ml/MCP/librechat.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/librechat,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/librechat,matched,f24ded5843762ca7,true,f24ded5843762ca7,2026-05-13T15:43:26+00:00,false
-/use-cases/AI/MCP/ollama,docs/use-cases/AI_ML/MCP/06_ollama.md,guides/ai-ml/MCP/ollama.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ollama,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/ollama,matched,86125a1925931c70,true,86125a1925931c70,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/MCP/open-webui,docs/use-cases/AI_ML/MCP/05_open-webui.md,guides/ai-ml/MCP/open-webui.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/open-webui,https://private-7c7dfe99.mintlify.app/guides/ai-ml/MCP/open-webui,matched,da525b117f747884,true,80e10d23538a4ec1,2026-05-08T09:52:53+00:00,false
-/use-cases/AI/MCP/remote_mcp,docs/cloud/guides/AI_ML/remote_mcp.md,use-cases/ai/mcp/remote-mcp.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/remote_mcp,https://private-7c7dfe99.mintlify.app/use-cases/ai/mcp/remote-mcp,matched,d5ce89292276ae48,true,68214d9df66b82a9,2026-05-08T09:52:53+00:00,false
-/use-cases/AI/ai-powered-sql-generation,docs/use-cases/AI_ML/ai-powered-sql-generation.md,guides/ai-ml/ai-powered-sql-generation.mdx,https://clickhouse.com/docs/use-cases/AI/ai-powered-sql-generation,https://private-7c7dfe99.mintlify.app/guides/ai-ml/ai-powered-sql-generation,matched,647fa80275f2f87a,true,647fa80275f2f87a,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/ask-ai,docs/use-cases/AI_ML/index.md,guides/ai-ml/index.mdx,https://clickhouse.com/docs/use-cases/AI/ask-ai,https://private-7c7dfe99.mintlify.app/guides/ai-ml,matched,40d91404da65ed1a,true,40d91404da65ed1a,2026-05-13T13:16:51+00:00,false
-/use-cases/AI/jupyter-notebook,docs/use-cases/AI_ML/data-exploration/jupyter-notebook.md,guides/ai-ml/data-exploration/jupyter-notebook.mdx,https://clickhouse.com/docs/use-cases/AI/jupyter-notebook,https://private-7c7dfe99.mintlify.app/guides/ai-ml/data-exploration/jupyter-notebook,matched,32c078a0d7dbd924,true,32c078a0d7dbd924,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/marimo-notebook,docs/use-cases/AI_ML/data-exploration/marimo-notebook.md,guides/ai-ml/data-exploration/marimo-notebook.mdx,https://clickhouse.com/docs/use-cases/AI/marimo-notebook,https://private-7c7dfe99.mintlify.app/guides/ai-ml/data-exploration/marimo-notebook,matched,d2eca22763326cb8,true,d2eca22763326cb8,2026-05-08T09:09:20+00:00,false
-/use-cases/AI/qbit-vector-search,docs/use-cases/AI_ML/vector-search.md,guides/ai-ml/vector-search.mdx,https://clickhouse.com/docs/use-cases/AI/qbit-vector-search,https://private-7c7dfe99.mintlify.app/guides/ai-ml/vector-search,matched,0f7c2082f60f6506,true,0f7c2082f60f6506,2026-05-08T09:09:20+00:00,false
-/use-cases/AI_ML/AIChat,docs/cloud/guides/AI_ML/AIChat/using_AI_chat.md,use-cases/ai-ml/aichat/using-ai-chat.mdx,https://clickhouse.com/docs/use-cases/AI_ML/AIChat,https://private-7c7dfe99.mintlify.app/use-cases/ai-ml/aichat/using-ai-chat,matched,a8404dbcb1bf8ad0,true,271de667bc71cd6f,2026-05-08T09:51:10+00:00,false
-/use-cases/AI_ML/AIChat/semantic-layer,docs/cloud/guides/AI_ML/AIChat/customizing-semantic-layer.md,use-cases/ai-ml/aichat/customizing-semantic-layer.mdx,https://clickhouse.com/docs/use-cases/AI_ML/AIChat/semantic-layer,https://private-7c7dfe99.mintlify.app/use-cases/ai-ml/aichat/customizing-semantic-layer,matched,0d6ef14d40f6a3f2,true,0d6ef14d40f6a3f2,2026-05-13T13:16:51+00:00,false
-/use-cases/data-lake,docs/use-cases/data_lake/index.md,guides/data-warehousing/index.mdx,https://clickhouse.com/docs/use-cases/data-lake,https://private-7c7dfe99.mintlify.app/guides/data-warehousing,matched,493ecc5d77e20ee0,true,493ecc5d77e20ee0,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/biglake-catalog,docs/use-cases/data_lake/reference/biglake_catalog.md,guides/data-warehousing/biglake-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/biglake-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/biglake-catalog,matched,70f021a9dbc465cd,true,70f021a9dbc465cd,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/getting-started,docs/use-cases/data_lake/getting-started.md,guides/data-warehousing/getting-started/overview.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/getting-started/overview,matched,77fc081ca180d968,true,77fc081ca180d968,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/getting-started/accelerating-analytics,docs/use-cases/data_lake/guides/accelerating-analytics.md,guides/data-warehousing/getting-started/accelerating-analytics.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/accelerating-analytics,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/getting-started/accelerating-analytics,matched,e692c1357a9e407a,true,e692c1357a9e407a,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/getting-started/connecting-catalogs,docs/use-cases/data_lake/guides/connecting-catalogs.md,guides/data-warehousing/getting-started/connecting-catalogs.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/connecting-catalogs,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/getting-started/connecting-catalogs,matched,288ae53d5e119da3,true,288ae53d5e119da3,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/getting-started/querying-directly,docs/use-cases/data_lake/guides/querying-directly.md,guides/data-warehousing/getting-started/querying-directly.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/querying-directly,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/getting-started/querying-directly,matched,1e8bc1608a95e0a2,true,1e8bc1608a95e0a2,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/getting-started/writing-data,docs/use-cases/data_lake/guides/writing-data.md,guides/data-warehousing/getting-started/writing-data.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/writing-data,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/getting-started/writing-data,matched,b9403b572f988afa,true,b9403b572f988afa,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/glue-catalog,docs/use-cases/data_lake/reference/aws_glue_catalog.md,guides/data-warehousing/glue-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/glue-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/glue-catalog,matched,393b2df782acc1d2,true,393b2df782acc1d2,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/lakekeeper-catalog,docs/use-cases/data_lake/reference/lakekeeper_catalog.md,guides/data-warehousing/lakekeeper-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/lakekeeper-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/lakekeeper-catalog,matched,0a6c118b9f6b65b5,true,0a6c118b9f6b65b5,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/nessie-catalog,docs/use-cases/data_lake/reference/nessie_catalog.md,guides/data-warehousing/nessie-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/nessie-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/nessie-catalog,matched,d03f731b06fef8fc,true,d03f731b06fef8fc,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/onelake-catalog,docs/use-cases/data_lake/reference/onelake_catalog.md,guides/data-warehousing/onelake-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/onelake-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/onelake-catalog,matched,0ba3b4b27363a811,true,0ba3b4b27363a811,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/polaris-catalog,docs/use-cases/data_lake/reference/polaris.md,guides/data-warehousing/polaris-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/polaris-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/polaris-catalog,matched,8c64384f773ad96e,true,8c64384f773ad96e,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/reference,docs/use-cases/data_lake/reference/index.md,guides/data-warehousing/reference/index.mdx,https://clickhouse.com/docs/use-cases/data-lake/reference,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/reference,matched,5b22625d9fdffa22,true,5b22625d9fdffa22,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/rest-catalog,docs/use-cases/data_lake/reference/rest_catalog.md,guides/data-warehousing/rest-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/rest-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/rest-catalog,matched,4e62bebf43d4839d,true,4e62bebf43d4839d,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/support-matrix,docs/use-cases/data_lake/support-matrix.md,guides/data-warehousing/support-matrix.mdx,https://clickhouse.com/docs/use-cases/data-lake/support-matrix,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/support-matrix,matched,3f318fa13bc6f30a,true,3f318fa13bc6f30a,2026-05-08T09:09:20+00:00,false
-/use-cases/data-lake/unity-catalog,docs/use-cases/data_lake/reference/unity_catalog.md,guides/data-warehousing/unity-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/unity-catalog,https://private-7c7dfe99.mintlify.app/guides/data-warehousing/unity-catalog,matched,ac415fdc32b6aa25,true,ac415fdc32b6aa25,2026-05-08T09:09:20+00:00,false
-/use-cases/observability,docs/use-cases/observability/index.md,guides/observability/index.mdx,https://clickhouse.com/docs/use-cases/observability,https://private-7c7dfe99.mintlify.app/guides/observability,matched,2edbeb25eb89b5cc,true,2edbeb25eb89b5cc,2026-05-19T11:48:22+00:00,false
-/use-cases/observability/build-your-own,docs/use-cases/observability/build-your-own/index.md,guides/observability/build-your-own/index.mdx,https://clickhouse.com/docs/use-cases/observability/build-your-own,https://private-7c7dfe99.mintlify.app/guides/observability/build-your-own,matched,88485dd45dbd3dde,true,88485dd45dbd3dde,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/clickstack,docs/use-cases/observability/clickstack/index.md,products/clickstack/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack,https://private-7c7dfe99.mintlify.app/products/clickstack,matched,b13ba38c29be4678,true,b13ba38c29be4678,2026-05-19T11:48:22+00:00,false
+/troubleshooting,docs/troubleshooting/index.md,resources/support-center/troubleshooting/index.mdx,https://clickhouse.com/docs/troubleshooting,https://private-7c7dfe99.mintlify.app/resources/support-center/troubleshooting/index,matched,a4f59c45db4acd40,true,a4f59c45db4acd40,2026-05-13T13:16:51+00:00,false
+/tutorial,docs/tutorial.md,core/get-started/quickstarts/tutorial.mdx,https://clickhouse.com/docs/tutorial,https://private-7c7dfe99.mintlify.app/core/get-started/quickstarts/tutorial,matched,8477623569f47013,true,8477623569f47013,2026-05-13T13:16:51+00:00,false
+/updating-data,docs/managing-data/updating-data/index.md,core/concepts/features/operations/update/index.mdx,https://clickhouse.com/docs/updating-data,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/update/index,matched,b8b45bc64184323f,true,b8b45bc64184323f,2026-05-08T09:09:20+00:00,false
+/updating-data/overview,docs/managing-data/updating-data/overview.mdx,core/concepts/features/operations/update/overview.mdx,https://clickhouse.com/docs/updating-data/overview,https://private-7c7dfe99.mintlify.app/core/concepts/features/operations/update/overview,matched,29faa17e7e87aabc,true,29faa17e7e87aabc,2026-05-08T09:09:20+00:00,false
+/use-cases,docs/use-cases/index.md,core/guides/use-cases/index.mdx,https://clickhouse.com/docs/use-cases,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/index,matched,668e2795fb384f5c,true,668e2795fb384f5c,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP,docs/use-cases/AI_ML/MCP/index.md,core/guides/use-cases/ai-ml/MCP/index.mdx,https://clickhouse.com/docs/use-cases/AI/MCP,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/index,matched,8bafe80320770ac1,true,8bafe80320770ac1,2026-05-08T20:59:48+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries,docs/use-cases/AI_ML/MCP/ai_agent_libraries/index.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/index.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/index,matched,c33eb46b5e7612c3,true,c33eb46b5e7612c3,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/DSPy,docs/use-cases/AI_ML/MCP/ai_agent_libraries/dspy.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/dspy.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/DSPy,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/dspy,matched,32ec2e85642780dd,true,1f2518a1634c9f10,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/agno,docs/use-cases/AI_ML/MCP/ai_agent_libraries/agno.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/agno,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno,matched,41f22f83ccd869e9,true,a3bc4a1960dabe90,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/chainlit,docs/use-cases/AI_ML/MCP/ai_agent_libraries/chainlit.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/chainlit,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit,matched,f426b1b0ee8e34cf,true,f426b1b0ee8e34cf,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/claude-agent-sdk,docs/use-cases/AI_ML/MCP/ai_agent_libraries/claude-agent-sdk.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/claude-agent-sdk,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk,matched,d190774d5f2103cd,true,736ac055730323c8,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/copilotkit,docs/use-cases/AI_ML/MCP/ai_agent_libraries/copilotkit.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/copilotkit.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/copilotkit,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/copilotkit,matched,5d1bf5b77d18ba5d,true,5d1bf5b77d18ba5d,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/crewai,docs/use-cases/AI_ML/MCP/ai_agent_libraries/crewai.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/crewai.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/crewai,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/crewai,matched,d41d583ca857275e,true,9132c4cbfba020ee,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/langchain,docs/use-cases/AI_ML/MCP/ai_agent_libraries/langchain.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/langchain.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/langchain,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/langchain,matched,ca4ae21651adabbc,true,ca4ae21651adabbc,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/llamaindex,docs/use-cases/AI_ML/MCP/ai_agent_libraries/llamaindex.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/llamaindex.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/llamaindex,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/llamaindex,matched,53f08ec4e8244083,true,53f08ec4e8244083,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/mcp-agent,docs/use-cases/AI_ML/MCP/ai_agent_libraries/mcp-agent.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/mcp-agent.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/mcp-agent,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/mcp-agent,matched,1080f0511027eb06,true,1080f0511027eb06,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/microsoft-agent-framework,docs/use-cases/AI_ML/MCP/ai_agent_libraries/microsoft-agent-framework.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/microsoft-agent-framework,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework,matched,adb10a55c3b0cef1,true,d9b85bccc1120f8f,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/openai-agents,docs/use-cases/AI_ML/MCP/ai_agent_libraries/openai-agents.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/openai-agents.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/openai-agents,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/openai-agents,matched,c6a346d15dbfc875,true,c6a346d15dbfc875,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/pydantic-ai,docs/use-cases/AI_ML/MCP/ai_agent_libraries/pydantic-ai.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/pydantic-ai.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/pydantic-ai,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/pydantic-ai,matched,362672d4f94e61b8,true,362672d4f94e61b8,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/slackbot,docs/use-cases/AI_ML/MCP/ai_agent_libraries/slackbot.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/slackbot.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/slackbot,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/slackbot,matched,384b5ca4a59ddb5a,true,384b5ca4a59ddb5a,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/streamlit-agent,docs/use-cases/AI_ML/MCP/ai_agent_libraries/streamlit.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/streamlit.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/streamlit-agent,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/streamlit,matched,55483bd48383a93c,true,6407de9d7364b79b,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP/ai-agent-libraries/upsonic,docs/use-cases/AI_ML/MCP/ai_agent_libraries/upsonic.md,core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/upsonic.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ai-agent-libraries/upsonic,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/upsonic,matched,a2efe3a29a063052,true,570f4005b835c09d,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/MCP/anythingllm,docs/use-cases/AI_ML/MCP/04_anythingllm.md,core/guides/use-cases/ai-ml/MCP/anythingllm.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/anythingllm,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/anythingllm,matched,d4f80fdfb21dd3cf,true,0acbf9454617f037,2026-05-08T09:52:53+00:00,false
+/use-cases/AI/MCP/claude-desktop,docs/use-cases/AI_ML/MCP/02_claude-desktop.md,core/guides/use-cases/ai-ml/MCP/claude-desktop.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/claude-desktop,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/claude-desktop,matched,a93753bfbfe6cf44,true,a93753bfbfe6cf44,2026-05-08T12:19:52+00:00,false
+/use-cases/AI/MCP/janai,docs/use-cases/AI_ML/MCP/07_janai.md,core/guides/use-cases/ai-ml/MCP/janai.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/janai,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/janai,matched,655b4d65de4a49fb,true,ed463b30b45790aa,2026-05-08T09:52:53+00:00,false
+/use-cases/AI/MCP/librechat,docs/use-cases/AI_ML/MCP/03_librechat.md,core/guides/use-cases/ai-ml/MCP/librechat.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/librechat,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/librechat,matched,f24ded5843762ca7,true,f24ded5843762ca7,2026-05-13T15:43:26+00:00,false
+/use-cases/AI/MCP/ollama,docs/use-cases/AI_ML/MCP/06_ollama.md,core/guides/use-cases/ai-ml/MCP/ollama.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/ollama,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/ollama,matched,86125a1925931c70,true,86125a1925931c70,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/MCP/open-webui,docs/use-cases/AI_ML/MCP/05_open-webui.md,core/guides/use-cases/ai-ml/MCP/open-webui.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/open-webui,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/MCP/open-webui,matched,da525b117f747884,true,80e10d23538a4ec1,2026-05-08T09:52:53+00:00,false
+/use-cases/AI/MCP/remote_mcp,docs/cloud/guides/AI_ML/remote_mcp.md,products/cloud/features/ai-ml/mcp/remote-mcp.mdx,https://clickhouse.com/docs/use-cases/AI/MCP/remote_mcp,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml/mcp/remote-mcp,matched,d5ce89292276ae48,true,68214d9df66b82a9,2026-05-08T09:52:53+00:00,false
+/use-cases/AI/ai-powered-sql-generation,docs/use-cases/AI_ML/ai-powered-sql-generation.md,core/guides/use-cases/ai-ml/ai-powered-sql-generation.mdx,https://clickhouse.com/docs/use-cases/AI/ai-powered-sql-generation,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/ai-powered-sql-generation,matched,647fa80275f2f87a,true,647fa80275f2f87a,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/ask-ai,docs/use-cases/AI_ML/index.md,core/guides/use-cases/ai-ml/index.mdx,https://clickhouse.com/docs/use-cases/AI/ask-ai,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/index,matched,40d91404da65ed1a,true,40d91404da65ed1a,2026-05-13T13:16:51+00:00,false
+/use-cases/AI/jupyter-notebook,docs/use-cases/AI_ML/data-exploration/jupyter-notebook.md,core/guides/use-cases/ai-ml/data-exploration/jupyter-notebook.mdx,https://clickhouse.com/docs/use-cases/AI/jupyter-notebook,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/data-exploration/jupyter-notebook,matched,32c078a0d7dbd924,true,32c078a0d7dbd924,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/marimo-notebook,docs/use-cases/AI_ML/data-exploration/marimo-notebook.md,core/guides/use-cases/ai-ml/data-exploration/marimo-notebook.mdx,https://clickhouse.com/docs/use-cases/AI/marimo-notebook,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/data-exploration/marimo-notebook,matched,d2eca22763326cb8,true,d2eca22763326cb8,2026-05-08T09:09:20+00:00,false
+/use-cases/AI/qbit-vector-search,docs/use-cases/AI_ML/vector-search.md,core/guides/use-cases/ai-ml/vector-search.mdx,https://clickhouse.com/docs/use-cases/AI/qbit-vector-search,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/ai-ml/vector-search,matched,0f7c2082f60f6506,true,0f7c2082f60f6506,2026-05-08T09:09:20+00:00,false
+/use-cases/AI_ML/AIChat,docs/cloud/guides/AI_ML/AIChat/using_AI_chat.md,products/cloud/features/ai-ml/aichat/using-ai-chat.mdx,https://clickhouse.com/docs/use-cases/AI_ML/AIChat,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml/aichat/using-ai-chat,matched,a8404dbcb1bf8ad0,true,271de667bc71cd6f,2026-05-08T09:51:10+00:00,false
+/use-cases/AI_ML/AIChat/semantic-layer,docs/cloud/guides/AI_ML/AIChat/customizing-semantic-layer.md,products/cloud/features/ai-ml/aichat/customizing-semantic-layer.mdx,https://clickhouse.com/docs/use-cases/AI_ML/AIChat/semantic-layer,https://private-7c7dfe99.mintlify.app/products/cloud/features/ai-ml/aichat/customizing-semantic-layer,matched,0d6ef14d40f6a3f2,true,0d6ef14d40f6a3f2,2026-05-13T13:16:51+00:00,false
+/use-cases/data-lake,docs/use-cases/data_lake/index.md,core/guides/use-cases/data-warehousing/index.mdx,https://clickhouse.com/docs/use-cases/data-lake,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/index,matched,493ecc5d77e20ee0,true,493ecc5d77e20ee0,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/biglake-catalog,docs/use-cases/data_lake/reference/biglake_catalog.md,core/guides/use-cases/data-warehousing/biglake-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/biglake-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/biglake-catalog,matched,70f021a9dbc465cd,true,70f021a9dbc465cd,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/getting-started,docs/use-cases/data_lake/getting-started.md,core/guides/use-cases/data-warehousing/getting-started/overview.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/getting-started/overview,matched,77fc081ca180d968,true,77fc081ca180d968,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/getting-started/accelerating-analytics,docs/use-cases/data_lake/guides/accelerating-analytics.md,core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/accelerating-analytics,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics,matched,e692c1357a9e407a,true,e692c1357a9e407a,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/getting-started/connecting-catalogs,docs/use-cases/data_lake/guides/connecting-catalogs.md,core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/connecting-catalogs,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs,matched,288ae53d5e119da3,true,288ae53d5e119da3,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/getting-started/querying-directly,docs/use-cases/data_lake/guides/querying-directly.md,core/guides/use-cases/data-warehousing/getting-started/querying-directly.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/querying-directly,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/getting-started/querying-directly,matched,1e8bc1608a95e0a2,true,1e8bc1608a95e0a2,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/getting-started/writing-data,docs/use-cases/data_lake/guides/writing-data.md,core/guides/use-cases/data-warehousing/getting-started/writing-data.mdx,https://clickhouse.com/docs/use-cases/data-lake/getting-started/writing-data,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/getting-started/writing-data,matched,b9403b572f988afa,true,b9403b572f988afa,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/glue-catalog,docs/use-cases/data_lake/reference/aws_glue_catalog.md,core/guides/use-cases/data-warehousing/glue-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/glue-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/glue-catalog,matched,393b2df782acc1d2,true,393b2df782acc1d2,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/lakekeeper-catalog,docs/use-cases/data_lake/reference/lakekeeper_catalog.md,core/guides/use-cases/data-warehousing/lakekeeper-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/lakekeeper-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/lakekeeper-catalog,matched,0a6c118b9f6b65b5,true,0a6c118b9f6b65b5,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/nessie-catalog,docs/use-cases/data_lake/reference/nessie_catalog.md,core/guides/use-cases/data-warehousing/nessie-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/nessie-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/nessie-catalog,matched,d03f731b06fef8fc,true,d03f731b06fef8fc,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/onelake-catalog,docs/use-cases/data_lake/reference/onelake_catalog.md,core/guides/use-cases/data-warehousing/onelake-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/onelake-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/onelake-catalog,matched,0ba3b4b27363a811,true,0ba3b4b27363a811,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/polaris-catalog,docs/use-cases/data_lake/reference/polaris.md,core/guides/use-cases/data-warehousing/polaris-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/polaris-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/polaris-catalog,matched,8c64384f773ad96e,true,8c64384f773ad96e,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/reference,docs/use-cases/data_lake/reference/index.md,core/guides/use-cases/data-warehousing/reference/index.mdx,https://clickhouse.com/docs/use-cases/data-lake/reference,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/reference/index,matched,5b22625d9fdffa22,true,5b22625d9fdffa22,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/rest-catalog,docs/use-cases/data_lake/reference/rest_catalog.md,core/guides/use-cases/data-warehousing/rest-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/rest-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/rest-catalog,matched,4e62bebf43d4839d,true,4e62bebf43d4839d,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/support-matrix,docs/use-cases/data_lake/support-matrix.md,core/guides/use-cases/data-warehousing/support-matrix.mdx,https://clickhouse.com/docs/use-cases/data-lake/support-matrix,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/support-matrix,matched,3f318fa13bc6f30a,true,3f318fa13bc6f30a,2026-05-08T09:09:20+00:00,false
+/use-cases/data-lake/unity-catalog,docs/use-cases/data_lake/reference/unity_catalog.md,core/guides/use-cases/data-warehousing/unity-catalog.mdx,https://clickhouse.com/docs/use-cases/data-lake/unity-catalog,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/data-warehousing/unity-catalog,matched,ac415fdc32b6aa25,true,ac415fdc32b6aa25,2026-05-08T09:09:20+00:00,false
+/use-cases/observability,docs/use-cases/observability/index.md,core/guides/use-cases/observability/index.mdx,https://clickhouse.com/docs/use-cases/observability,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/index,matched,2edbeb25eb89b5cc,true,2edbeb25eb89b5cc,2026-05-19T11:48:22+00:00,false
+/use-cases/observability/build-your-own,docs/use-cases/observability/build-your-own/index.md,core/guides/use-cases/observability/build-your-own/index.mdx,https://clickhouse.com/docs/use-cases/observability/build-your-own,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/build-your-own/index,matched,88485dd45dbd3dde,true,88485dd45dbd3dde,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack,docs/use-cases/observability/clickstack/index.md,products/clickstack/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack,https://private-7c7dfe99.mintlify.app/products/clickstack/index,matched,b13ba38c29be4678,true,b13ba38c29be4678,2026-05-19T11:48:22+00:00,false
/use-cases/observability/clickstack/admin,docs/use-cases/observability/clickstack/managing/admin.md,products/clickstack/managing/admin.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/admin,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/admin,matched,1c5d464843ac41e1,true,1c5d464843ac41e1,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/alerts,docs/use-cases/observability/clickstack/alerts.md,products/clickstack/features/alerts.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/alerts,https://private-7c7dfe99.mintlify.app/products/clickstack/features/alerts,matched,e1688fefac447cdb,true,e1688fefac447cdb,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/api-reference,docs/use-cases/observability/clickstack/api-reference.md,products/clickstack/api-reference.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/api-reference,https://private-7c7dfe99.mintlify.app/products/clickstack/api-reference,matched,2f92c9403ff87f7b,true,2f92c9403ff87f7b,2026-05-09T10:10:14+00:00,false
/use-cases/observability/clickstack/architecture,docs/use-cases/observability/clickstack/architecture.md,products/clickstack/architecture.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/architecture,https://private-7c7dfe99.mintlify.app/products/clickstack/architecture,matched,a7f4e7d7e6fea0e4,true,a7f4e7d7e6fea0e4,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/clickstack/config,docs/use-cases/observability/clickstack/config.md,products/clickstack/config.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/config,https://private-7c7dfe99.mintlify.app/products/clickstack/config,matched,69b70fd6aacd3dff,true,69b70fd6aacd3dff,2026-05-08T18:41:21+00:00,false
+/use-cases/observability/clickstack/config,docs/use-cases/observability/clickstack/config.md,products/clickstack/managing/config.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/config,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/config,matched,69b70fd6aacd3dff,true,69b70fd6aacd3dff,2026-05-08T18:41:21+00:00,false
/use-cases/observability/clickstack/dashboards,docs/use-cases/observability/clickstack/dashboards/index.md,products/clickstack/features/dashboards/overview.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/dashboards,https://private-7c7dfe99.mintlify.app/products/clickstack/features/dashboards/overview,matched,9854021eaaa1497a,true,9854021eaaa1497a,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/dashboards/dashboard-templates,docs/use-cases/observability/clickstack/dashboards/dashboard-templates.md,products/clickstack/features/dashboards/dashboard-templates.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/dashboards/dashboard-templates,https://private-7c7dfe99.mintlify.app/products/clickstack/features/dashboards/dashboard-templates,matched,717757dab8e0c07e,true,717757dab8e0c07e,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/dashboards/sql-visualizations,docs/use-cases/observability/clickstack/dashboards/sql-visualizations.md,products/clickstack/features/dashboards/sql-visualizations.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/dashboards/sql-visualizations,https://private-7c7dfe99.mintlify.app/products/clickstack/features/dashboards/sql-visualizations,matched,6bdbe9c528ddc94d,true,6bdbe9c528ddc94d,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/clickstack/demo-days,docs/use-cases/observability/clickstack/demo-days/index.md,products/clickstack/demo-days/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/demo-days,https://private-7c7dfe99.mintlify.app/products/clickstack/demo-days,matched,f8eb664a17bdfbe8,true,f8eb664a17bdfbe8,2026-05-07T14:49:41+00:00,false
+/use-cases/observability/clickstack/demo-days,docs/use-cases/observability/clickstack/demo-days/index.md,products/clickstack/demo-days/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/demo-days,https://private-7c7dfe99.mintlify.app/products/clickstack/demo-days/index,matched,f8eb664a17bdfbe8,true,f8eb664a17bdfbe8,2026-05-07T14:49:41+00:00,false
/use-cases/observability/clickstack/demo-days/2026/04/2026-04-17,docs/use-cases/observability/clickstack/demo-days/2026/clickstack-new-features-17-04-2026.md,products/clickstack/demo-days/2026/2026-04-17.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/demo-days/2026/04/2026-04-17,https://private-7c7dfe99.mintlify.app/products/clickstack/demo-days/2026/2026-04-17,matched,76b00f390b4cab60,true,aa1fd71734421de2,2026-05-08T12:19:52+00:00,false
/use-cases/observability/clickstack/demo-days/2026/05/2026-05-08,docs/use-cases/observability/clickstack/demo-days/2026/clickstack-new-features-08-05-2026.md,products/clickstack/demo-days/2026/2026-05-08.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/demo-days/2026/05/2026-05-08,https://private-7c7dfe99.mintlify.app/products/clickstack/demo-days/2026/2026-05-08,matched,315ad99bfd8a43b3,true,315ad99bfd8a43b3,2026-05-19T11:48:22+00:00,false
/use-cases/observability/clickstack/demo-days/2026/2026-04-03,docs/use-cases/observability/clickstack/demo-days/2026/clickstack-new-features-03-04-2026.md,products/clickstack/demo-days/2026/2026-04-03.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/demo-days/2026/2026-04-03,https://private-7c7dfe99.mintlify.app/products/clickstack/demo-days/2026/2026-04-03,matched,77b5a05c5c666cc5,true,f2b25a143449f483,2026-05-08T12:19:52+00:00,false
/use-cases/observability/clickstack/demo-days/2026/2026-04-10,docs/use-cases/observability/clickstack/demo-days/2026/clickstack-new-features-10-04-2026.md,products/clickstack/demo-days/2026/2026-04-10.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/demo-days/2026/2026-04-10,https://private-7c7dfe99.mintlify.app/products/clickstack/demo-days/2026/2026-04-10,matched,1f1327015f47150f,true,b4ae5617c310f1db,2026-05-08T12:19:52+00:00,false
-/use-cases/observability/clickstack/deployment,docs/use-cases/observability/clickstack/deployment/index.md,products/clickstack/deployment/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/deployment,https://private-7c7dfe99.mintlify.app/products/clickstack/deployment,matched,624c3869f78a6bb1,true,624c3869f78a6bb1,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/deployment,docs/use-cases/observability/clickstack/deployment/index.md,,https://clickhouse.com/docs/use-cases/observability/clickstack/deployment,,unmatched,624c3869f78a6bb1,false,,,false
/use-cases/observability/clickstack/deployment/all-in-one,docs/use-cases/observability/clickstack/deployment/oss/all-in-one.md,products/clickstack/deployment/all-in-one.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/deployment/all-in-one,https://private-7c7dfe99.mintlify.app/products/clickstack/deployment/all-in-one,matched,4853cc5d46543aa7,true,4853cc5d46543aa7,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/deployment/clickhouse-embedded,docs/use-cases/observability/clickstack/deployment/oss/clickhouse-embedded.md,products/clickstack/deployment/clickhouse-embedded.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/deployment/clickhouse-embedded,https://private-7c7dfe99.mintlify.app/products/clickstack/deployment/clickhouse-embedded,matched,96dd67ee9ce0986f,true,96dd67ee9ce0986f,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/deployment/clickstack-clickhouse-cloud,docs/use-cases/observability/clickstack/deployment/managed.md,products/clickstack/deployment/managed.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/deployment/clickstack-clickhouse-cloud,https://private-7c7dfe99.mintlify.app/products/clickstack/deployment/managed,matched,a3b0879773ec59db,true,a3b0879773ec59db,2026-05-13T14:36:45+00:00,false
@@ -1805,14 +1805,14 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/use-cases/observability/clickstack/event_patterns,docs/use-cases/observability/clickstack/event_patterns.md,products/clickstack/features/event-patterns.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/event_patterns,https://private-7c7dfe99.mintlify.app/products/clickstack/features/event-patterns,matched,74e24951b554820a,true,74e24951b554820a,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/example-datasets/session-replay-demo,docs/use-cases/observability/clickstack/example-datasets/session-replay.md,products/clickstack/example-datasets/session-replay.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/example-datasets/session-replay-demo,https://private-7c7dfe99.mintlify.app/products/clickstack/example-datasets/session-replay,matched,b07332555010ab6c,true,b07332555010ab6c,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/faq,docs/use-cases/observability/clickstack/faq.md,products/clickstack/faq.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/faq,https://private-7c7dfe99.mintlify.app/products/clickstack/faq,matched,6f4b14d3b6709639,true,6f4b14d3b6709639,2026-05-09T17:42:04+00:00,false
-/use-cases/observability/clickstack/getting-started,docs/use-cases/observability/clickstack/getting-started/index.md,products/clickstack/getting-started/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started,https://private-7c7dfe99.mintlify.app/products/clickstack/getting-started,matched,fba3ecd6ec4bfb61,true,fba3ecd6ec4bfb61,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/getting-started,docs/use-cases/observability/clickstack/getting-started/index.md,products/clickstack/getting-started/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started,https://private-7c7dfe99.mintlify.app/products/clickstack/getting-started/index,matched,fba3ecd6ec4bfb61,true,fba3ecd6ec4bfb61,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/getting-started/kubernetes,docs/use-cases/observability/clickstack/example-datasets/kubernetes.md,products/clickstack/example-datasets/kubernetes.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started/kubernetes,https://private-7c7dfe99.mintlify.app/products/clickstack/example-datasets/kubernetes,matched,4812c605282293ce,true,4812c605282293ce,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/getting-started/local-data,docs/use-cases/observability/clickstack/example-datasets/local-data.md,products/clickstack/example-datasets/local-data.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started/local-data,https://private-7c7dfe99.mintlify.app/products/clickstack/example-datasets/local-data,matched,f3cfe97d61055255,true,f3cfe97d61055255,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/getting-started/managed,docs/use-cases/observability/clickstack/getting-started/managed.md,products/clickstack/getting-started/managed.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started/managed,https://private-7c7dfe99.mintlify.app/products/clickstack/getting-started/managed,matched,5e93428e0c73d1fb,true,5e93428e0c73d1fb,2026-05-13T14:36:45+00:00,false
/use-cases/observability/clickstack/getting-started/oss,docs/use-cases/observability/clickstack/getting-started/oss.md,products/clickstack/getting-started/oss.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started/oss,https://private-7c7dfe99.mintlify.app/products/clickstack/getting-started/oss,matched,848dad5d53302060,true,848dad5d53302060,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/getting-started/remote-demo-data,docs/use-cases/observability/clickstack/example-datasets/remote-demo-data.md,products/clickstack/example-datasets/remote-demo-data.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started/remote-demo-data,https://private-7c7dfe99.mintlify.app/products/clickstack/example-datasets/remote-demo-data,matched,21473252e4862bcb,true,21473252e4862bcb,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/getting-started/sample-data,docs/use-cases/observability/clickstack/example-datasets/sample-data.md,products/clickstack/example-datasets/sample-data.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/getting-started/sample-data,https://private-7c7dfe99.mintlify.app/products/clickstack/example-datasets/sample-data,matched,f85b353d0f722d3e,true,f85b353d0f722d3e,2026-05-09T17:02:01+00:00,false
-/use-cases/observability/clickstack/ingesting-data,docs/use-cases/observability/clickstack/ingesting-data/index.md,products/clickstack/ingesting-data/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data,matched,215622fcc8806414,true,215622fcc8806414,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/ingesting-data,docs/use-cases/observability/clickstack/ingesting-data/index.md,products/clickstack/ingesting-data/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/index,matched,215622fcc8806414,true,215622fcc8806414,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/ingesting-data/opentelemetry,docs/use-cases/observability/clickstack/ingesting-data/opentelemetry.md,products/clickstack/ingesting-data/opentelemetry.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data/opentelemetry,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/opentelemetry,matched,faf4701288439e27,true,faf4701288439e27,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/ingesting-data/otel-collector,docs/use-cases/observability/clickstack/ingesting-data/collector.md,products/clickstack/ingesting-data/collector.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data/otel-collector,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/collector,matched,116387bf4e928224,true,116387bf4e928224,2026-05-08T18:41:21+00:00,false
/use-cases/observability/clickstack/ingesting-data/overview,docs/use-cases/observability/clickstack/ingesting-data/overview.md,products/clickstack/ingesting-data/overview.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data/overview,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/overview,matched,0335ec40088d821d,true,0335ec40088d821d,2026-05-08T09:09:20+00:00,false
@@ -1820,8 +1820,8 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/use-cases/observability/clickstack/ingesting-data/schemas,docs/use-cases/observability/clickstack/ingesting-data/schemas.md,products/clickstack/ingesting-data/schemas.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data/schemas,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/schemas,matched,73c71c545f1732a7,true,73c71c545f1732a7,2026-05-08T20:59:49+00:00,false
/use-cases/observability/clickstack/ingesting-data/trace-sampling,docs/use-cases/observability/clickstack/ingesting-data/trace-sampling.md,products/clickstack/ingesting-data/trace-sampling.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data/trace-sampling,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/trace-sampling,matched,356d553e1d1725c4,true,356d553e1d1725c4,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/ingesting-data/vector,docs/use-cases/observability/clickstack/ingesting-data/vector.md,products/clickstack/ingesting-data/vector.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ingesting-data/vector,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/vector,matched,931b3cab6b17362e,true,931b3cab6b17362e,2026-05-09T17:02:01+00:00,false
-/use-cases/observability/clickstack/integration-guides,docs/use-cases/observability/clickstack/ingesting-data/integration-examples/index.md,products/clickstack/integration-examples/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integration-guides,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-examples,matched,e1fa2935f644f4ec,true,e1fa2935f644f4ec,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/clickstack/integration-partners,docs/use-cases/observability/clickstack/integration-partners/index.md,products/clickstack/integration-partners/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integration-partners,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-partners,matched,5e9d3e1136b70c06,true,5e9d3e1136b70c06,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/integration-guides,docs/use-cases/observability/clickstack/ingesting-data/integration-examples/index.md,products/clickstack/integration-examples/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integration-guides,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-examples/index,matched,e1fa2935f644f4ec,true,e1fa2935f644f4ec,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/integration-partners,docs/use-cases/observability/clickstack/integration-partners/index.md,products/clickstack/integration-partners/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integration-partners,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-partners/index,matched,5e9d3e1136b70c06,true,5e9d3e1136b70c06,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/integration-partners/bindplane,docs/use-cases/observability/clickstack/integration-partners/bindplane.md,products/clickstack/integration-partners/bindplane.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integration-partners/bindplane,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-partners/bindplane,matched,54f1a9f837227da2,true,54f1a9f837227da2,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/integrations/aws-cloudwatch-logs,docs/use-cases/observability/clickstack/ingesting-data/integration-examples/cloudwatch.md,products/clickstack/integration-examples/cloudwatch.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integrations/aws-cloudwatch-logs,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-examples/cloudwatch,matched,5804c21a7fc69fd5,true,5804c21a7fc69fd5,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/integrations/aws-lambda,docs/use-cases/observability/clickstack/ingesting-data/integration-examples/aws-lambda.md,products/clickstack/integration-examples/aws-lambda.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integrations/aws-lambda,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-examples/aws-lambda,matched,44bc191ecbc021f1,true,44bc191ecbc021f1,2026-05-09T17:02:01+00:00,false
@@ -1843,10 +1843,10 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/use-cases/observability/clickstack/integrations/redis-metrics,docs/use-cases/observability/clickstack/ingesting-data/integration-examples/redis-metrics.md,products/clickstack/integration-examples/redis-metrics.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integrations/redis-metrics,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-examples/redis-metrics,matched,fa147392852946ab,true,fa147392852946ab,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/integrations/systemd-logs,docs/use-cases/observability/clickstack/ingesting-data/integration-examples/systemd.md,products/clickstack/integration-examples/systemd.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integrations/systemd-logs,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-examples/systemd,matched,a276255a1b2434fa,true,a276255a1b2434fa,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/integrations/temporal-metrics,docs/use-cases/observability/clickstack/ingesting-data/integration-examples/temporal.md,products/clickstack/integration-examples/temporal.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/integrations/temporal-metrics,https://private-7c7dfe99.mintlify.app/products/clickstack/integration-examples/temporal,matched,b47f526b1c6badda,true,b47f526b1c6badda,2026-05-09T17:02:01+00:00,false
-/use-cases/observability/clickstack/managing,docs/use-cases/observability/clickstack/managing/index.md,products/clickstack/managing.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/managing,https://private-7c7dfe99.mintlify.app/products/clickstack/managing,matched,b69e82469c4079d0,true,b69e82469c4079d0,2026-05-19T11:48:22+00:00,false
+/use-cases/observability/clickstack/managing,docs/use-cases/observability/clickstack/managing/index.md,products/clickstack/managing/overview.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/managing,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/overview,matched,b69e82469c4079d0,true,b69e82469c4079d0,2026-05-19T11:48:22+00:00,false
/use-cases/observability/clickstack/materialized_views,docs/use-cases/observability/clickstack/managing/materialized_views.md,products/clickstack/managing/materialized-views.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/materialized_views,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/materialized-views,matched,ef9c82eec4644dbb,true,ef9c82eec4644dbb,2026-05-09T17:02:01+00:00,false
-/use-cases/observability/clickstack/migration,docs/use-cases/observability/clickstack/migration/index.md,products/clickstack/migration/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/migration,https://private-7c7dfe99.mintlify.app/products/clickstack/migration,matched,dc99b6f9b381dcd0,true,dc99b6f9b381dcd0,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/clickstack/migration/elastic,docs/use-cases/observability/clickstack/migration/elastic/index.md,products/clickstack/migration/elastic/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/migration/elastic,https://private-7c7dfe99.mintlify.app/products/clickstack/migration/elastic,matched,30da2cbfe92790be,true,30da2cbfe92790be,2026-05-07T14:49:41+00:00,false
+/use-cases/observability/clickstack/migration,docs/use-cases/observability/clickstack/migration/index.md,products/clickstack/migration/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/migration,https://private-7c7dfe99.mintlify.app/products/clickstack/migration/index,matched,dc99b6f9b381dcd0,true,dc99b6f9b381dcd0,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/migration/elastic,docs/use-cases/observability/clickstack/migration/elastic/index.md,products/clickstack/migration/elastic/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/migration/elastic,https://private-7c7dfe99.mintlify.app/products/clickstack/migration/elastic/index,matched,30da2cbfe92790be,true,30da2cbfe92790be,2026-05-07T14:49:41+00:00,false
/use-cases/observability/clickstack/migration/elastic/concepts,docs/use-cases/observability/clickstack/migration/elastic/concepts.md,products/clickstack/migration/elastic/concepts.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/migration/elastic/concepts,https://private-7c7dfe99.mintlify.app/products/clickstack/migration/elastic/concepts,matched,8b21300ac1a0ec45,true,8b21300ac1a0ec45,2026-05-13T13:25:33+00:00,false
/use-cases/observability/clickstack/migration/elastic/intro,docs/use-cases/observability/clickstack/migration/elastic/intro.md,products/clickstack/migration/elastic/intro.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/migration/elastic/intro,https://private-7c7dfe99.mintlify.app/products/clickstack/migration/elastic/intro,matched,9d0b512a93d3b067,true,9d0b512a93d3b067,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/migration/elastic/migrating-agents,docs/use-cases/observability/clickstack/migration/elastic/migrating-agents.md,products/clickstack/migration/elastic/migrating-agents.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/migration/elastic/migrating-agents,https://private-7c7dfe99.mintlify.app/products/clickstack/migration/elastic/migrating-agents,matched,a00b90a1ed6dbff0,true,a00b90a1ed6dbff0,2026-05-09T17:02:01+00:00,false
@@ -1859,8 +1859,8 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/use-cases/observability/clickstack/performance_tuning,docs/use-cases/observability/clickstack/managing/performance_tuning.md,products/clickstack/managing/performance-tuning.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/performance_tuning,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/performance-tuning,matched,4412add76f6ae9ae,true,4412add76f6ae9ae,2026-05-09T17:02:01+00:00,false
/use-cases/observability/clickstack/production,docs/use-cases/observability/clickstack/managing/production.md,products/clickstack/managing/production.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/production,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/production,matched,e78632dc44639205,true,e78632dc44639205,2026-05-13T13:11:55+00:00,false
/use-cases/observability/clickstack/rbac,docs/use-cases/observability/clickstack/managing/rbac.md,products/clickstack/managing/rbac.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/rbac,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/rbac,matched,ab2e9865ccc5592f,true,ab2e9865ccc5592f,2026-05-09T17:02:01+00:00,false
-/use-cases/observability/clickstack/sample-datasets,docs/use-cases/observability/clickstack/example-datasets/index.md,products/clickstack/example-datasets/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/sample-datasets,https://private-7c7dfe99.mintlify.app/products/clickstack/example-datasets,matched,b3fa19f44c75c4e8,true,b3fa19f44c75c4e8,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/clickstack/sdks,docs/use-cases/observability/clickstack/ingesting-data/sdks/index.md,products/clickstack/ingesting-data/sdks/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/sdks,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/sdks,matched,2f107024e9dc1a15,true,2f107024e9dc1a15,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/sample-datasets,docs/use-cases/observability/clickstack/example-datasets/index.md,products/clickstack/example-datasets/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/sample-datasets,https://private-7c7dfe99.mintlify.app/products/clickstack/example-datasets/index,matched,b3fa19f44c75c4e8,true,b3fa19f44c75c4e8,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/clickstack/sdks,docs/use-cases/observability/clickstack/ingesting-data/sdks/index.md,products/clickstack/ingesting-data/sdks/index.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/sdks,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/sdks/index,matched,2f107024e9dc1a15,true,2f107024e9dc1a15,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/sdks/aws_lambda,docs/use-cases/observability/clickstack/ingesting-data/sdks/aws-lambda.md,products/clickstack/ingesting-data/sdks/aws-lambda.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/sdks/aws_lambda,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/sdks/aws-lambda,matched,dd236404a5a1a528,true,dd236404a5a1a528,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/sdks/browser,docs/use-cases/observability/clickstack/ingesting-data/sdks/browser.md,products/clickstack/ingesting-data/sdks/browser.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/sdks/browser,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/sdks/browser,matched,1b23182019224019,true,1b23182019224019,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/sdks/deno,docs/use-cases/observability/clickstack/ingesting-data/sdks/deno.md,products/clickstack/ingesting-data/sdks/deno.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/sdks/deno,https://private-7c7dfe99.mintlify.app/products/clickstack/ingesting-data/sdks/deno,matched,ddde90e3ccb5f34d,true,ddde90e3ccb5f34d,2026-05-08T09:09:20+00:00,false
@@ -1877,17 +1877,17 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/use-cases/observability/clickstack/service-maps,docs/use-cases/observability/clickstack/service-maps.md,products/clickstack/service-maps.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/service-maps,https://private-7c7dfe99.mintlify.app/products/clickstack/service-maps,matched,346a14c70da0ddb1,true,346a14c70da0ddb1,2026-05-07T14:49:41+00:00,false
/use-cases/observability/clickstack/session-replay,docs/use-cases/observability/clickstack/session-replay.md,products/clickstack/features/session-replay.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/session-replay,https://private-7c7dfe99.mintlify.app/products/clickstack/features/session-replay,matched,230e92b27f20974d,true,230e92b27f20974d,2026-05-08T09:09:20+00:00,false
/use-cases/observability/clickstack/text-to-chart,docs/use-cases/observability/clickstack/text-to-chart.md,products/clickstack/text-to-chart.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/text-to-chart,https://private-7c7dfe99.mintlify.app/products/clickstack/text-to-chart,matched,028429ec606eb0cd,true,028429ec606eb0cd,2026-05-09T17:02:01+00:00,false
-/use-cases/observability/clickstack/ttl,docs/use-cases/observability/clickstack/ttl.md,products/clickstack/ttl.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ttl,https://private-7c7dfe99.mintlify.app/products/clickstack/ttl,matched,c60512dfb71a6a2a,true,c60512dfb71a6a2a,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/cloud-monitoring,docs/use-cases/observability/cloud-monitoring.md,guides/observability/cloud-monitoring.mdx,https://clickhouse.com/docs/use-cases/observability/cloud-monitoring,https://private-7c7dfe99.mintlify.app/guides/observability/cloud-monitoring,matched,41c2db4e0eb9d92d,true,41c2db4e0eb9d92d,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/introduction,docs/use-cases/observability/build-your-own/introduction.md,guides/observability/build-your-own/introduction.mdx,https://clickhouse.com/docs/use-cases/observability/introduction,https://private-7c7dfe99.mintlify.app/guides/observability/build-your-own/introduction,matched,49b6bef5443ce806,true,49b6bef5443ce806,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/oss-monitoring,docs/use-cases/observability/self-managed-monitoring.md,guides/observability/self-managed-monitoring.mdx,https://clickhouse.com/docs/use-cases/observability/oss-monitoring,https://private-7c7dfe99.mintlify.app/guides/observability/self-managed-monitoring,matched,b0d2e021f7c1f839,true,b0d2e021f7c1f839,2026-05-08T09:09:20+00:00,false
-/use-cases/observability/schema-design,docs/use-cases/observability/build-your-own/schema-design.md,guides/observability/build-your-own/schema-design.mdx,https://clickhouse.com/docs/use-cases/observability/schema-design,https://private-7c7dfe99.mintlify.app/guides/observability/build-your-own/schema-design,matched,33303f67924447f5,true,33303f67924447f5,2026-05-08T09:09:20+00:00,false
-/use-cases/time-series,docs/use-cases/time-series/index.md,guides/real-time-analytics/time-series/index.mdx,https://clickhouse.com/docs/use-cases/time-series,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series,matched,ad253066ead1dba2,true,ad253066ead1dba2,2026-05-07T14:49:41+00:00,false
-/use-cases/time-series/analysis-functions,docs/use-cases/time-series/03_analysis-functions.md,guides/real-time-analytics/time-series/analysis-functions.mdx,https://clickhouse.com/docs/use-cases/time-series/analysis-functions,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series/analysis-functions,matched,3d710f7ec6e30189,true,3d710f7ec6e30189,2026-05-13T13:16:51+00:00,false
-/use-cases/time-series/basic-operations,docs/use-cases/time-series/02_basic-operations.md,guides/real-time-analytics/time-series/basic-operations.mdx,https://clickhouse.com/docs/use-cases/time-series/basic-operations,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series/basic-operations,matched,13c880f5ab1e0250,true,13c880f5ab1e0250,2026-05-13T13:16:51+00:00,false
-/use-cases/time-series/date-time-data-types,docs/use-cases/time-series/01_date-time-data-types.md,guides/real-time-analytics/time-series/date-time-data-types.mdx,https://clickhouse.com/docs/use-cases/time-series/date-time-data-types,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series/date-time-data-types,matched,b120cbed87fc6621,true,b120cbed87fc6621,2026-05-13T13:16:51+00:00,false
-/use-cases/time-series/query-performance,docs/use-cases/time-series/05_query-performance.md,guides/real-time-analytics/time-series/query-performance.mdx,https://clickhouse.com/docs/use-cases/time-series/query-performance,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series/query-performance,matched,e5686a5f24a7d911,true,e5686a5f24a7d911,2026-05-13T13:16:51+00:00,false
-/use-cases/time-series/storage-efficiency,docs/use-cases/time-series/04_storage-efficiency.md,guides/real-time-analytics/time-series/storage-efficiency.mdx,https://clickhouse.com/docs/use-cases/time-series/storage-efficiency,https://private-7c7dfe99.mintlify.app/guides/real-time-analytics/time-series/storage-efficiency,matched,a594e45dbb21ec97,true,a594e45dbb21ec97,2026-05-13T13:16:51+00:00,false
+/use-cases/observability/clickstack/ttl,docs/use-cases/observability/clickstack/ttl.md,products/clickstack/managing/ttl.mdx,https://clickhouse.com/docs/use-cases/observability/clickstack/ttl,https://private-7c7dfe99.mintlify.app/products/clickstack/managing/ttl,matched,c60512dfb71a6a2a,true,c60512dfb71a6a2a,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/cloud-monitoring,docs/use-cases/observability/cloud-monitoring.md,core/guides/use-cases/observability/cloud-monitoring.mdx,https://clickhouse.com/docs/use-cases/observability/cloud-monitoring,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/cloud-monitoring,matched,41c2db4e0eb9d92d,true,41c2db4e0eb9d92d,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/introduction,docs/use-cases/observability/build-your-own/introduction.md,core/guides/use-cases/observability/build-your-own/introduction.mdx,https://clickhouse.com/docs/use-cases/observability/introduction,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/build-your-own/introduction,matched,49b6bef5443ce806,true,49b6bef5443ce806,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/oss-monitoring,docs/use-cases/observability/self-managed-monitoring.md,core/guides/use-cases/observability/self-managed-monitoring.mdx,https://clickhouse.com/docs/use-cases/observability/oss-monitoring,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/self-managed-monitoring,matched,b0d2e021f7c1f839,true,b0d2e021f7c1f839,2026-05-08T09:09:20+00:00,false
+/use-cases/observability/schema-design,docs/use-cases/observability/build-your-own/schema-design.md,core/guides/use-cases/observability/build-your-own/schema-design.mdx,https://clickhouse.com/docs/use-cases/observability/schema-design,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/observability/build-your-own/schema-design,matched,33303f67924447f5,true,33303f67924447f5,2026-05-08T09:09:20+00:00,false
+/use-cases/time-series,docs/use-cases/time-series/index.md,core/guides/use-cases/real-time-analytics/time-series/index.mdx,https://clickhouse.com/docs/use-cases/time-series,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/index,matched,ad253066ead1dba2,true,ad253066ead1dba2,2026-05-07T14:49:41+00:00,false
+/use-cases/time-series/analysis-functions,docs/use-cases/time-series/03_analysis-functions.md,core/guides/use-cases/real-time-analytics/time-series/analysis-functions.mdx,https://clickhouse.com/docs/use-cases/time-series/analysis-functions,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/analysis-functions,matched,3d710f7ec6e30189,true,3d710f7ec6e30189,2026-05-13T13:16:51+00:00,false
+/use-cases/time-series/basic-operations,docs/use-cases/time-series/02_basic-operations.md,core/guides/use-cases/real-time-analytics/time-series/basic-operations.mdx,https://clickhouse.com/docs/use-cases/time-series/basic-operations,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/basic-operations,matched,13c880f5ab1e0250,true,13c880f5ab1e0250,2026-05-13T13:16:51+00:00,false
+/use-cases/time-series/date-time-data-types,docs/use-cases/time-series/01_date-time-data-types.md,core/guides/use-cases/real-time-analytics/time-series/date-time-data-types.mdx,https://clickhouse.com/docs/use-cases/time-series/date-time-data-types,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/date-time-data-types,matched,b120cbed87fc6621,true,b120cbed87fc6621,2026-05-13T13:16:51+00:00,false
+/use-cases/time-series/query-performance,docs/use-cases/time-series/05_query-performance.md,core/guides/use-cases/real-time-analytics/time-series/query-performance.mdx,https://clickhouse.com/docs/use-cases/time-series/query-performance,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/query-performance,matched,e5686a5f24a7d911,true,e5686a5f24a7d911,2026-05-13T13:16:51+00:00,false
+/use-cases/time-series/storage-efficiency,docs/use-cases/time-series/04_storage-efficiency.md,core/guides/use-cases/real-time-analytics/time-series/storage-efficiency.mdx,https://clickhouse.com/docs/use-cases/time-series/storage-efficiency,https://private-7c7dfe99.mintlify.app/core/guides/use-cases/real-time-analytics/time-series/storage-efficiency,matched,a594e45dbb21ec97,true,a594e45dbb21ec97,2026-05-13T13:16:51+00:00,false
/whats-new/changelog/,docs/whats-new/changelog/index.md,resources/changelogs/oss/2026.mdx,https://clickhouse.com/docs/whats-new/changelog/,https://private-7c7dfe99.mintlify.app/resources/changelogs/oss/2026,matched,f0e73ad88f365931,true,f0e73ad88f365931,2026-05-07T14:49:41+00:00,false
/whats-new/changelog/2017,docs/whats-new/changelog/2017.md,resources/changelogs/oss/2017.mdx,https://clickhouse.com/docs/whats-new/changelog/2017,https://private-7c7dfe99.mintlify.app/resources/changelogs/oss/2017,matched,d5bc29c48611da11,true,d5bc29c48611da11,2026-05-08T09:09:20+00:00,false
/whats-new/changelog/2018,docs/whats-new/changelog/2018.md,resources/changelogs/oss/2018.mdx,https://clickhouse.com/docs/whats-new/changelog/2018,https://private-7c7dfe99.mintlify.app/resources/changelogs/oss/2018,matched,d10011e2d9345d7d,true,d10011e2d9345d7d,2026-05-09T09:39:38+00:00,false
@@ -1899,11 +1899,11 @@ docusaurus_slug,docusaurus_file,mintlify_file,old_url,new_url,status,source_hash
/whats-new/changelog/2024,docs/whats-new/changelog/2024.md,resources/changelogs/oss/2024.mdx,https://clickhouse.com/docs/whats-new/changelog/2024,https://private-7c7dfe99.mintlify.app/resources/changelogs/oss/2024,matched,bbfd805effcf17ac,true,bbfd805effcf17ac,2026-05-08T12:19:52+00:00,false
/whats-new/changelog/2025,docs/whats-new/changelog/2025.md,resources/changelogs/oss/2025.mdx,https://clickhouse.com/docs/whats-new/changelog/2025,https://private-7c7dfe99.mintlify.app/resources/changelogs/oss/2025,matched,d10aef255ee59dd3,true,d10aef255ee59dd3,2026-05-08T09:09:20+00:00,false
/whats-new/changelog/24.2-fast-release,docs/cloud/reference/01_changelog/02_release_notes/24_02.md,resources/changelogs/cloud/release-notes/24_02.mdx,https://clickhouse.com/docs/whats-new/changelog/24.2-fast-release,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/release-notes/24_02,matched,f65058fc3c2b4b53,true,f65058fc3c2b4b53,2026-05-08T09:09:20+00:00,false
-/whats-new/changelog/cloud,docs/cloud/reference/01_changelog/01_cloud_changelog/2026.md,resources/changelogs/cloud.mdx,https://clickhouse.com/docs/whats-new/changelog/cloud,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud,matched,24767fc565b42fff,true,24767fc565b42fff,2026-05-13T13:16:51+00:00,false
+/whats-new/changelog/cloud,docs/cloud/reference/01_changelog/01_cloud_changelog/2026.md,resources/changelogs/cloud/2026.mdx,https://clickhouse.com/docs/whats-new/changelog/cloud,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/2026,matched,24767fc565b42fff,true,24767fc565b42fff,2026-05-13T13:16:51+00:00,false
/whats-new/cloud-compatibility,docs/cloud/guides/cloud-compatibility.md,products/cloud/guides/cloud-compatibility.mdx,https://clickhouse.com/docs/whats-new/cloud-compatibility,https://private-7c7dfe99.mintlify.app/products/cloud/guides/cloud-compatibility,matched,0905e8eeb3e4c566,true,0905e8eeb3e4c566,2026-05-13T13:16:51+00:00,false
/whats-new/cloud/2022,docs/cloud/reference/01_changelog/01_cloud_changelog/archive/2022.md,resources/changelogs/cloud/archive/2022.mdx,https://clickhouse.com/docs/whats-new/cloud/2022,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/archive/2022,matched,1b2a90ad66042a13,true,1b2a90ad66042a13,2026-05-08T09:09:20+00:00,false
/whats-new/cloud/2023,docs/cloud/reference/01_changelog/01_cloud_changelog/archive/2023.md,resources/changelogs/cloud/archive/2023.mdx,https://clickhouse.com/docs/whats-new/cloud/2023,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/archive/2023,matched,47bf28a464015cb0,true,8bbfe2ddf6a88283,2026-05-08T13:38:45+00:00,false
/whats-new/cloud/2024,docs/cloud/reference/01_changelog/01_cloud_changelog/archive/2024.md,resources/changelogs/cloud/archive/2024.mdx,https://clickhouse.com/docs/whats-new/cloud/2024,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/archive/2024,matched,6b7edbae407aa580,true,6b7edbae407aa580,2026-05-08T09:09:20+00:00,false
/whats-new/cloud/2025,docs/cloud/reference/01_changelog/01_cloud_changelog/archive/2025.md,resources/changelogs/cloud/archive/2025.mdx,https://clickhouse.com/docs/whats-new/cloud/2025,https://private-7c7dfe99.mintlify.app/resources/changelogs/cloud/archive/2025,matched,eaaf3e155767bd52,true,eaaf3e155767bd52,2026-05-09T10:10:14+00:00,false
-/whats-new/roadmap,docs/whats-new/roadmap.md,resources/contribute/roadmap.mdx,https://clickhouse.com/docs/whats-new/roadmap,https://private-7c7dfe99.mintlify.app/resources/contribute/roadmap,matched,a69f4f27c5b1cae7,true,a69f4f27c5b1cae7,2026-05-08T09:09:20+00:00,false
+/whats-new/roadmap,docs/whats-new/roadmap.md,resources/develop-contribute/roadmap.mdx,https://clickhouse.com/docs/whats-new/roadmap,https://private-7c7dfe99.mintlify.app/resources/develop-contribute/roadmap,matched,a69f4f27c5b1cae7,true,a69f4f27c5b1cae7,2026-05-08T09:09:20+00:00,false
/whats-new/security-changelog,docs/whats-new/security-changelog.md,resources/changelogs/security-changelog.mdx,https://clickhouse.com/docs/whats-new/security-changelog,https://private-7c7dfe99.mintlify.app/resources/changelogs/security-changelog,matched,ce01e06ea86b41dd,true,e67a2d890c9d442e,2026-05-08T09:09:20+00:00,false
diff --git a/scripts/suggest-slug-aliases.py b/_migration/suggest-slug-aliases.py
similarity index 93%
rename from scripts/suggest-slug-aliases.py
rename to _migration/suggest-slug-aliases.py
index 7cb3ac50..10089dff 100644
--- a/scripts/suggest-slug-aliases.py
+++ b/_migration/suggest-slug-aliases.py
@@ -9,15 +9,15 @@
2. Basename + parent-dir match against this repo's actual file tree.
3. Basename-only match against Mintlify URLs derived from slug-map.csv.
-Output: scripts/slug-aliases.csv with columns
+Output: _migration/slug-aliases.csv with columns
old_slug, count, suggested_target, confidence, alternates
-Review/edit that file, then run scripts/apply-slug-aliases.py to rewrite the
+Review/edit that file, then run _migration/apply-slug-aliases.py to rewrite the
markers.
Usage:
- python scripts/suggest-slug-aliases.py
- python scripts/suggest-slug-aliases.py --reference ~/Desktop/clickhouse-main
+ python _migration/suggest-slug-aliases.py
+ python _migration/suggest-slug-aliases.py --reference ~/Desktop/clickhouse-main
"""
from __future__ import annotations
@@ -84,7 +84,7 @@ def load_slug_map() -> tuple[dict[str, str], list[str]]:
"""Return (slug -> mintlify_url, [all mintlify URLs])."""
slug_to_url: dict[str, str] = {}
urls: list[str] = []
- for r in csv.DictReader((THIS_REPO / "slug-map.csv").open(encoding="utf-8")):
+ for r in csv.DictReader((THIS_REPO / "_migration" / "slug-map.csv").open(encoding="utf-8")):
mfile = r["mintlify_file"].split(" | ")[0]
if r["status"] == "matched" and mfile:
url = file_to_url(mfile)
@@ -159,7 +159,7 @@ def main():
ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter)
ap.add_argument("--reference", type=Path, default=DEFAULT_REFERENCE,
help="path to clickhouse-main reference repo")
- ap.add_argument("--out", type=Path, default=THIS_REPO / "scripts" / "slug-aliases.csv")
+ ap.add_argument("--out", type=Path, default=THIS_REPO / "_migration" / "slug-aliases.csv")
args = ap.parse_args()
counts = collect_unknown_slugs()
diff --git a/scripts/verify_mapping.py b/_migration/verify_mapping.py
similarity index 100%
rename from scripts/verify_mapping.py
rename to _migration/verify_mapping.py
diff --git a/_site/customizations/README.md b/_site/customizations/README.md
new file mode 100644
index 00000000..2fc754cd
--- /dev/null
+++ b/_site/customizations/README.md
@@ -0,0 +1,17 @@
+# Customizations
+
+Custom scripts that customize the look and behavior of the Mintlify site.
+These are loaded via the `scripts` array in `docs.json` and run on every page.
+
+See Mintlify's docs on [custom scripts](https://www.mintlify.com/docs/customize/custom-scripts) for more information.
+
+## Scripts
+
+- `ask-ai-button.js` — tweaks the Ask-AI button styling/behavior.
+- `cookie-banner.js` — injects and manages the cookie consent banner.
+- `custom-footer.js` — renders the custom site footer (`#ch-custom-footer`).
+- `kapa-init.js` — bootstraps the Kapa.ai RAG widget.
+- `navbar-cta.js` — adds the "Get started" CTA to the navbar.
+
+To wire a new script up, add a `{ "src": "/_site/customizations/.js" }`
+entry to the top-level `scripts` array in `docs.json`.
\ No newline at end of file
diff --git a/ask-ai-button.js b/_site/customizations/ask-ai-button.js
similarity index 100%
rename from ask-ai-button.js
rename to _site/customizations/ask-ai-button.js
diff --git a/cookie-banner.js b/_site/customizations/cookie-banner.js
similarity index 100%
rename from cookie-banner.js
rename to _site/customizations/cookie-banner.js
diff --git a/custom-footer.js b/_site/customizations/custom-footer.js
similarity index 100%
rename from custom-footer.js
rename to _site/customizations/custom-footer.js
diff --git a/kapa-init.js b/_site/customizations/kapa-init.js
similarity index 100%
rename from kapa-init.js
rename to _site/customizations/kapa-init.js
diff --git a/navbar-cta.js b/_site/customizations/navbar-cta.js
similarity index 100%
rename from navbar-cta.js
rename to _site/customizations/navbar-cta.js
diff --git a/favicon.svg b/_site/favicon.svg
similarity index 100%
rename from favicon.svg
rename to _site/favicon.svg
diff --git a/logo/dark.svg b/_site/logo/dark.svg
similarity index 100%
rename from logo/dark.svg
rename to _site/logo/dark.svg
diff --git a/logo/light.svg b/_site/logo/light.svg
similarity index 100%
rename from logo/light.svg
rename to _site/logo/light.svg
diff --git a/_site/redirects.json b/_site/redirects.json
new file mode 100644
index 00000000..2621b882
--- /dev/null
+++ b/_site/redirects.json
@@ -0,0 +1,2682 @@
+[
+ {
+ "source": "/optimize/avoid-mutations",
+ "destination": "/core/concepts/best-practices/avoid-mutations"
+ },
+ {
+ "source": "/optimize/avoidoptimizefinal",
+ "destination": "/core/concepts/best-practices/avoid-optimize-final"
+ },
+ {
+ "source": "/optimize/partitioning-key",
+ "destination": "/core/concepts/best-practices/partitioning-keys"
+ },
+ {
+ "source": "/starter-guides",
+ "destination": "/core/get-started/quickstarts/home"
+ },
+ {
+ "source": "/introduction-clickhouse",
+ "destination": "/core/get-started/about/intro"
+ },
+ {
+ "source": "/install/quick-install-curl",
+ "destination": "/core/get-started/setup/self-managed/quick-install"
+ },
+ {
+ "source": "/integrations/clickpipes/secure-kinesis",
+ "destination": "/integrations/clickpipes/kinesis/auth"
+ },
+ {
+ "source": "/integrations/clickpipes/secure-rds",
+ "destination": "/integrations/clickpipes/postgres/auth"
+ },
+ {
+ "source": "/docs/en/cloud/manage/service-types",
+ "destination": "/products/cloud/features/cloud-tiers"
+ },
+ {
+ "source": "/cloud/reference/byoc/onboarding/customization",
+ "destination": "/products/bring-your-own-cloud/onboarding/customization-aws"
+ },
+ {
+ "source": "/knowledgebase/why-clickhouse-is-so-fast",
+ "destination": "/core/get-started/about/why-clickhouse-is-so-fast"
+ },
+ {
+ "source": "/faq/general/why-clickhouse-is-so-fast",
+ "destination": "/core/get-started/about/why-clickhouse-is-so-fast"
+ },
+ {
+ "source": "/integrations/data-formats/json",
+ "destination": "/core/guides/clickhouse/data-formats/json/intro"
+ },
+ {
+ "source": "/faq/marketplace",
+ "destination": "/products/cloud/reference/billing/marketplace/overview"
+ },
+ {
+ "source": "/native-protocol/compression",
+ "destination": "/core/guides/clickhouse/data-modelling/compression/compression-modes"
+ },
+ {
+ "source": "/manage/backups",
+ "destination": "/products/cloud/guides/backups"
+ },
+ {
+ "source": "/manage/security/organization-activity",
+ "destination": "/products/cloud/reference/security/audit-logging"
+ },
+ {
+ "source": "/cloud/manage/cmek",
+ "destination": "/products/cloud/guides/security/cmek"
+ },
+ {
+ "source": "/manage/security/ip-access-list",
+ "destination": "/products/cloud/guides/security/connectivity/setting-ip-filters"
+ },
+ {
+ "source": "/faq/billing#faq",
+ "destination": "/products/cloud/reference/billing/billing-overview#faqs"
+ },
+ {
+ "source": "/core/guides/developer/lightweght-delete",
+ "destination": "/core/concepts/features/operations/delete/lightweight-delete"
+ },
+ {
+ "source": "/core/guides/developer/shared-merge-tree",
+ "destination": "/products/cloud/features/infrastructure/shared-merge-tree"
+ },
+ {
+ "source": "/integrations/data-ingestion",
+ "destination": "/core/reference/statements/insert-into"
+ },
+ {
+ "source": "/integrations/data-ingestion/kafka",
+ "destination": "/integrations/connectors/data-ingestion/kafka"
+ },
+ {
+ "source": "/integrations/data-ingestion/kafka/code",
+ "destination": "/integrations/connectors/data-ingestion/kafka"
+ },
+ {
+ "source": "/integrations/data-ingestion/kafka/code/connectors",
+ "destination": "/integrations/connectors/data-ingestion/kafka"
+ },
+ {
+ "source": "/integrations/deltalake",
+ "destination": "/core/reference/functions/table-functions/deltalake"
+ },
+ {
+ "source": "/integrations/hive",
+ "destination": "/core/reference/engines/table-engines/integrations/hive"
+ },
+ {
+ "source": "/integrations/hudi",
+ "destination": "/core/reference/engines/table-engines/integrations/hudi"
+ },
+ {
+ "source": "/integrations/iceberg",
+ "destination": "/core/reference/functions/table-functions/iceberg"
+ },
+ {
+ "source": "/integrations/mongodb",
+ "destination": "/core/reference/engines/table-engines/integrations/mongodb"
+ },
+ {
+ "source": "/integrations/nats",
+ "destination": "/core/reference/engines/table-engines/integrations/nats"
+ },
+ {
+ "source": "/integrations/rabbitmq",
+ "destination": "/core/reference/engines/table-engines/integrations/rabbitmq"
+ },
+ {
+ "source": "/integrations/redis",
+ "destination": "/core/reference/functions/table-functions/redis"
+ },
+ {
+ "source": "/integrations/rocksdb",
+ "destination": "/core/reference/engines/table-engines/integrations/embedded-rocksdb"
+ },
+ {
+ "source": "/integrations/sqlite",
+ "destination": "/core/reference/engines/table-engines/integrations/sqlite"
+ },
+ {
+ "source": "/integrations/connect-a-client",
+ "destination": "/core/concepts/features/interfaces/cli"
+ },
+ {
+ "source": "/cloud/sql-console",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/category/cloud-reference",
+ "destination": "/products/cloud/getting-started/intro"
+ },
+ {
+ "source": "/about-us/performance",
+ "destination": "/core/get-started/about/why-clickhouse-is-so-fast"
+ },
+ {
+ "source": "/operations/optimizing-performance",
+ "destination": "/core/concepts/features/performance/troubleshoot/sampling-query-profiler"
+ },
+ {
+ "source": "/core/guides/improving-query-performance/skipping-indexes",
+ "destination": "/core/concepts/features/performance/skip-indexes/skipping-indexes"
+ },
+ {
+ "source": "/guides",
+ "destination": "/core/get-started/quickstarts/creating-tables"
+ },
+ {
+ "source": "/optimize/sparse-primary-indexes",
+ "destination": "/core/guides/clickhouse/data-modelling/sparse-primary-indexes"
+ },
+ {
+ "source": "/core/guides/improving-query-performance/sparse-primary-indexes",
+ "destination": "/core/guides/clickhouse/data-modelling/sparse-primary-indexes"
+ },
+ {
+ "source": "/core/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-cardinality",
+ "destination": "/core/guides/clickhouse/data-modelling/sparse-primary-indexes"
+ },
+ {
+ "source": "/core/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-design",
+ "destination": "/core/guides/clickhouse/data-modelling/sparse-primary-indexes"
+ },
+ {
+ "source": "/core/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-intro",
+ "destination": "/core/guides/clickhouse/data-modelling/sparse-primary-indexes"
+ },
+ {
+ "source": "/core/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-multiple",
+ "destination": "/core/guides/clickhouse/data-modelling/sparse-primary-indexes"
+ },
+ {
+ "source": "/core/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-uuids",
+ "destination": "/core/guides/clickhouse/data-modelling/sparse-primary-indexes"
+ },
+ {
+ "source": "/integrations/data-ingestion/dbms/",
+ "destination": "/integrations/connectors/home"
+ },
+ {
+ "source": "/integrations/data-ingestion/etl-tools",
+ "destination": "/integrations/connectors/home"
+ },
+ {
+ "source": "/integrations/intro",
+ "destination": "/integrations/connectors/home"
+ },
+ {
+ "source": "/integrations/migration/clickhouse-local",
+ "destination": "/core/get-started/setup/migration-guides/other-methods/clickhouse-local-etl"
+ },
+ {
+ "source": "/integrations/migration/clickhouse-to-cloud",
+ "destination": "/core/get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud"
+ },
+ {
+ "source": "/integrations/migration/etl-tool-to-clickhouse",
+ "destination": "/core/get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse"
+ },
+ {
+ "source": "/integrations/sql-clients/index",
+ "destination": "/integrations/connectors/home"
+ },
+ {
+ "source": "/interfaces",
+ "destination": "/core/concepts/features/interfaces/overview"
+ },
+ {
+ "source": "/native-protocol",
+ "destination": "/resources/develop-contribute/native-protocol/basics"
+ },
+ {
+ "source": "/manage/users",
+ "destination": "/core/concepts/features/security/access-rights"
+ },
+ {
+ "source": "/manage",
+ "destination": "/core/concepts/features/security/access-rights"
+ },
+ {
+ "source": "/manage/configuration",
+ "destination": "/core/concepts/features/configuration/server-config/configuration-files"
+ },
+ {
+ "source": "/manage/replication-and-sharding",
+ "destination": "/core/guides/oss/deployment-and-scaling/keeper"
+ },
+ {
+ "source": "/integrations/sql-clients/datagrip",
+ "destination": "/integrations/connectors/data-integrations/sql-clients/datagrip"
+ },
+ {
+ "source": "/integrations/sql-clients/dbeaver",
+ "destination": "/integrations/connectors/data-integrations/sql-clients/dbeaver"
+ },
+ {
+ "source": "/integrations/sql-clients/qstudio",
+ "destination": "/integrations/connectors/data-integrations/sql-clients/qstudio"
+ },
+ {
+ "source": "/integrations/sql-clients/jupysql",
+ "destination": "/integrations/connectors/data-integrations/sql-clients/jupysql"
+ },
+ {
+ "source": "/integrations/sql-clients/tablum.io",
+ "destination": "/integrations/connectors/data-integrations/sql-clients/tablum"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-layout",
+ "destination": "/core/reference/statements/create/dictionary/layouts/overview"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-lifetime",
+ "destination": "/core/reference/statements/create/dictionary/lifetime"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-sources",
+ "destination": "/core/reference/statements/create/dictionary/sources/overview"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-structure",
+ "destination": "/core/reference/statements/create/dictionary/attributes"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-hierarchical",
+ "destination": "/core/reference/statements/create/dictionary/layouts/hierarchical"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-polygon",
+ "destination": "/core/reference/statements/create/dictionary/layouts/polygon"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/regexp-tree",
+ "destination": "/core/reference/statements/create/dictionary/layouts/regexp-tree"
+ },
+ {
+ "source": "/sql-reference/dictionaries/internal-dicts",
+ "destination": "/core/reference/statements/create/dictionary/embedded"
+ },
+ {
+ "source": "/sql-reference/dictionaries",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/operations/clickhouse-keeper/",
+ "destination": "/core/guides/oss/deployment-and-scaling/keeper"
+ },
+ {
+ "source": "/connect-a-ui/grafana-and-clickhouse",
+ "destination": "/integrations/connectors/data-visualization/grafana"
+ },
+ {
+ "source": "/connect-a-ui/metabase-and-clickhouse",
+ "destination": "/integrations/connectors/data-visualization/metabase-and-clickhouse"
+ },
+ {
+ "source": "/connect-a-ui/mitzu-and-clickhouse",
+ "destination": "/integrations/connectors/data-visualization/community-integrations/mitzu-and-clickhouse"
+ },
+ {
+ "source": "/connect-a-ui/rocketbi-and-clickhouse",
+ "destination": "/integrations/connectors/data-visualization/community-integrations/rocketbi-and-clickhouse"
+ },
+ {
+ "source": "/connect-a-ui/superset-and-clickhouse",
+ "destination": "/integrations/connectors/data-visualization/superset-and-clickhouse"
+ },
+ {
+ "source": "/connect-a-ui/tableau-and-clickhouse",
+ "destination": "/integrations/connectors/data-visualization/tableau/tableau-and-clickhouse"
+ },
+ {
+ "source": "/integrations/language-clients/javascript",
+ "destination": "/integrations/language-clients/js"
+ },
+ {
+ "source": "/integrations/language-clients/python/intro",
+ "destination": "/integrations/language-clients/python"
+ },
+ {
+ "source": "/integrations/language-clients/python/driver-api",
+ "destination": "/integrations/language-clients/python"
+ },
+ {
+ "source": "/integrations/language-clients/python/queries",
+ "destination": "/integrations/language-clients/python"
+ },
+ {
+ "source": "/integrations/language-clients/python/inserts",
+ "destination": "/integrations/language-clients/python"
+ },
+ {
+ "source": "/integrations/language-clients/python/options",
+ "destination": "/integrations/language-clients/python"
+ },
+ {
+ "source": "/integrations/go/intro",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/go/choosing-a-client",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/go/clickhouse-go",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/go/clickhouse-go/introduction",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/go/clickhouse-go/installation",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/go/clickhouse-go/clickhouse-api",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/go/clickhouse-go/database-sql-api",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/go/clickhouse-go/performance-tips",
+ "destination": "/integrations/language-clients/go"
+ },
+ {
+ "source": "/integrations/language-clients/java/r2dbc",
+ "destination": "/integrations/language-clients/java"
+ },
+ {
+ "source": "/integrations/language-clients/java/client/v7",
+ "destination": "/integrations/language-clients/java/client"
+ },
+ {
+ "source": "/integrations/language-clients/java/client/v8",
+ "destination": "/integrations/language-clients/java/client"
+ },
+ {
+ "source": "/integrations/language-clients/java/jdbc/v7",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/integrations/language-clients/java/jdbc/v8",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/integrations/nifi-and-clickhouse",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/nifi-and-clickhouse"
+ },
+ {
+ "source": "/integrations/kafka/intro",
+ "destination": "/integrations/connectors/data-ingestion/kafka"
+ },
+ {
+ "source": "/integrations/kafka/self-managed/connect-sink",
+ "destination": "/integrations/connectors/data-ingestion/kafka/kafka-clickhouse-connect-sink"
+ },
+ {
+ "source": "/integrations/kafka/self-managed/jdbc",
+ "destination": "/integrations/connectors/data-ingestion/kafka/kafka-connect-jdbc"
+ },
+ {
+ "source": "/integrations/kafka/self-managed/vector",
+ "destination": "/integrations/connectors/data-ingestion/kafka/kafka-vector"
+ },
+ {
+ "source": "/integrations/data-ingestion/kafka/cloud/msk/connect-sink",
+ "destination": "/integrations/connectors/data-ingestion/kafka/msk"
+ },
+ {
+ "source": "/integrations/s3/s3-intro",
+ "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
+ },
+ {
+ "source": "/integrations/s3/s3-table-functions",
+ "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
+ },
+ {
+ "source": "/integrations/s3/s3-table-engine",
+ "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
+ },
+ {
+ "source": "/integrations/s3/s3-merge-tree",
+ "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
+ },
+ {
+ "source": "/integrations/s3/s3-optimizing-performance",
+ "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
+ },
+ {
+ "source": "/core/guides/sre/configuring-s3-for-clickhouse-use",
+ "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
+ },
+ {
+ "source": "/core/guides/sre/s3-multi-region",
+ "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
+ },
+ {
+ "source": "/integrations/s3/s3-minio",
+ "destination": "/integrations/connectors/data-ingestion/s3-minio"
+ },
+ {
+ "source": "/integrations/vector-to-clickhouse",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/vector-to-clickhouse"
+ },
+ {
+ "source": "/integrations/airbyte-and-clickhouse",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/airbyte-and-clickhouse"
+ },
+ {
+ "source": "/integrations/postgresql/postgres-with-clickhouse",
+ "destination": "/integrations/connectors/data-sources/postgres"
+ },
+ {
+ "source": "/integrations/postgresql/postgres-with-clickhouse-database-engine",
+ "destination": "/integrations/connectors/data-sources/postgres"
+ },
+ {
+ "source": "/integrations/mqtt",
+ "destination": "/integrations/connectors/data-ingestion/emqx"
+ },
+ {
+ "source": "/integrations/emqx/emqx-intro",
+ "destination": "/integrations/connectors/data-ingestion/emqx"
+ },
+ {
+ "source": "/integrations/emqx/clickhouse-service-set-up",
+ "destination": "/integrations/connectors/data-ingestion/emqx"
+ },
+ {
+ "source": "/integrations/emqx/create-emqx-cloud-deployment",
+ "destination": "/integrations/connectors/data-ingestion/emqx"
+ },
+ {
+ "source": "/integrations/emqx/emqx-cloud-data-integration",
+ "destination": "/integrations/connectors/data-ingestion/emqx"
+ },
+ {
+ "source": "/integrations/emqx/workflow-samples",
+ "destination": "/integrations/connectors/data-ingestion/emqx"
+ },
+ {
+ "source": "/integrations/dbt/dbt-intro",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-setup",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-connecting",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-view-model",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-table-model",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-incremental-model",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-snapshot",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-seeds",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/integrations/dbt/dbt-limitations",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
+ },
+ {
+ "source": "/development",
+ "destination": "/resources/develop-contribute/introduction/developer-instruction"
+ },
+ {
+ "source": "/core/guides/sre/keeper/clickhouse-keeper-uuid",
+ "destination": "/core/guides/oss/deployment-and-scaling/keeper"
+ },
+ {
+ "source": "/core/guides/sre/user-management/alter-permissions",
+ "destination": "/core/concepts/features/security/access-rights"
+ },
+ {
+ "source": "/core/guides/sre/users-and-roles",
+ "destination": "/core/concepts/features/security/access-rights"
+ },
+ {
+ "source": "/integrations/data-formats/parquet-arrow-avro-orc",
+ "destination": "/core/guides/clickhouse/data-formats/parquet"
+ },
+ {
+ "source": "/core/guides/developer/working-with-json",
+ "destination": "/core/guides/clickhouse/data-formats/json/intro"
+ },
+ {
+ "source": "/core/guides/developer/working-with-json/json-intro",
+ "destination": "/core/guides/clickhouse/data-formats/json/intro"
+ },
+ {
+ "source": "/core/guides/developer/working-with-json/json-load-data",
+ "destination": "/core/guides/clickhouse/data-formats/json/intro"
+ },
+ {
+ "source": "/core/guides/developer/working-with-json/json-other-approaches",
+ "destination": "/core/guides/clickhouse/data-formats/json/intro"
+ },
+ {
+ "source": "/core/guides/developer/working-with-json/json-semi-structured",
+ "destination": "/core/guides/clickhouse/data-formats/json/intro"
+ },
+ {
+ "source": "/core/guides/developer/working-with-json/json-structured",
+ "destination": "/core/guides/clickhouse/data-formats/json/intro"
+ },
+ {
+ "source": "/core/get-started/sql-console/opening",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/core/get-started/sql-console/exploring-tables",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/core/get-started/sql-console/filtering",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/core/get-started/sql-console/creating",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/core/get-started/sql-console/advanced",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/core/get-started/sql-console/visualizing",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/connect-a-ui",
+ "destination": "/integrations/connectors/data-visualization"
+ },
+ {
+ "source": "/development/browse_code",
+ "destination": "/resources/develop-contribute/introduction/developer-instruction"
+ },
+ {
+ "source": "/development/browse-code",
+ "destination": "/resources/develop-contribute/introduction/developer-instruction"
+ },
+ {
+ "source": "/development/build_cross_arm",
+ "destination": "/resources/develop-contribute/build/build-cross-arm"
+ },
+ {
+ "source": "/development/build_cross_osx",
+ "destination": "/resources/develop-contribute/build/build-cross-osx"
+ },
+ {
+ "source": "/development/build_osx",
+ "destination": "/resources/develop-contribute/build/build-osx"
+ },
+ {
+ "source": "/development/developer_instruction",
+ "destination": "/resources/develop-contribute/introduction/developer-instruction"
+ },
+ {
+ "source": "/database_engines/",
+ "destination": "/core/reference/engines/database-engines"
+ },
+ {
+ "source": "/engines/database_engines/",
+ "destination": "/core/reference/engines/database-engines"
+ },
+ {
+ "source": "/database_engines/mysql",
+ "destination": "/core/reference/engines/database-engines/mysql"
+ },
+ {
+ "source": "/engines/database_engines/mysql",
+ "destination": "/core/reference/engines/database-engines/mysql"
+ },
+ {
+ "source": "/engines/table_engines",
+ "destination": "/core/reference/engines/table-engines"
+ },
+ {
+ "source": "/operations/table_engines",
+ "destination": "/core/reference/engines/table-engines"
+ },
+ {
+ "source": "/engines/table_engines/integrations",
+ "destination": "/core/reference/engines/table-engines/integrations"
+ },
+ {
+ "source": "/engines/table_engines/integrations/hdfs",
+ "destination": "/core/reference/engines/table-engines/integrations/hdfs"
+ },
+ {
+ "source": "/operations/table_engines/hdfs",
+ "destination": "/core/reference/engines/table-engines/integrations/hdfs"
+ },
+ {
+ "source": "/engines/table_engines/integrations/jdbc",
+ "destination": "/core/reference/engines/table-engines/integrations/jdbc"
+ },
+ {
+ "source": "/operations/table_engines/jdbc",
+ "destination": "/core/reference/engines/table-engines/integrations/jdbc"
+ },
+ {
+ "source": "/engines/table_engines/integrations/kafka",
+ "destination": "/core/reference/engines/table-engines/integrations/kafka"
+ },
+ {
+ "source": "/table_engines/replication",
+ "destination": "/core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas"
+ },
+ {
+ "source": "/integrations/kafka/kafka-connect-http",
+ "destination": "/integrations/connectors/data-ingestion/kafka/confluent/kafka-connect-http"
+ },
+ {
+ "source": "/integrations/kafka/kafka-connect-options",
+ "destination": "/integrations/connectors/data-ingestion/kafka"
+ },
+ {
+ "source": "/operations/table_engines/kafka",
+ "destination": "/core/reference/engines/table-engines/integrations/kafka"
+ },
+ {
+ "source": "/integrations/kafka/kafka-intro",
+ "destination": "/integrations/connectors/data-ingestion/kafka"
+ },
+ {
+ "source": "/integrations/kafka/kafka-connect-intro",
+ "destination": "/integrations/connectors/data-ingestion/kafka/kafka-clickhouse-connect-sink"
+ },
+ {
+ "source": "/engines/table_engines/integrations/mysql",
+ "destination": "/core/reference/engines/table-engines/integrations/mysql"
+ },
+ {
+ "source": "/operations/table_engines/mysql",
+ "destination": "/core/reference/engines/table-engines/integrations/mysql"
+ },
+ {
+ "source": "/engines/table_engines/integrations/odbc",
+ "destination": "/core/reference/engines/table-engines/integrations/odbc"
+ },
+ {
+ "source": "/operations/table_engines/odbc",
+ "destination": "/core/reference/engines/table-engines/integrations/odbc"
+ },
+ {
+ "source": "/engines/table-engines/log-family/log-family",
+ "destination": "/core/reference/engines/table-engines/log-family"
+ },
+ {
+ "source": "/engines/table_engines/log_family",
+ "destination": "/core/reference/engines/table-engines/log-family"
+ },
+ {
+ "source": "/engines/table_engines/log_family/log",
+ "destination": "/core/reference/engines/table-engines/log-family/log"
+ },
+ {
+ "source": "/operations/table_engines/log",
+ "destination": "/core/reference/engines/table-engines/log-family/log"
+ },
+ {
+ "source": "/engines/table_engines/log_family/stripelog",
+ "destination": "/core/reference/engines/table-engines/log-family/stripelog"
+ },
+ {
+ "source": "/operations/table_engines/stripelog",
+ "destination": "/core/reference/engines/table-engines/log-family/stripelog"
+ },
+ {
+ "source": "/engines/table_engines/log_family/tinylog",
+ "destination": "/core/reference/engines/table-engines/log-family/tinylog"
+ },
+ {
+ "source": "/operations/table_engines/tinylog",
+ "destination": "/core/reference/engines/table-engines/log-family/tinylog"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family",
+ "destination": "/core/reference/engines/table-engines/mergetree-family"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/aggregatingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree"
+ },
+ {
+ "source": "/operations/table_engines/aggregatingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/collapsingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/collapsingmergetree"
+ },
+ {
+ "source": "/operations/table_engines/collapsingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/collapsingmergetree"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/custom_partitioning_key",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key"
+ },
+ {
+ "source": "/operations/table_engines/custom_partitioning_key",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/graphitemergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/graphitemergetree"
+ },
+ {
+ "source": "/operations/table_engines/graphitemergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/graphitemergetree"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/replacingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/replacingmergetree"
+ },
+ {
+ "source": "/operations/table_engines/replacingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/replacingmergetree"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/replication",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/replication"
+ },
+ {
+ "source": "/operations/table_engines/replication",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/replication"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/summingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/summingmergetree"
+ },
+ {
+ "source": "/operations/table_engines/summingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/summingmergetree"
+ },
+ {
+ "source": "/engines/table_engines/mergetree_family/versionedcollapsingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree"
+ },
+ {
+ "source": "/operations/table_engines/versionedcollapsingmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree"
+ },
+ {
+ "source": "/engines/table_engines/special",
+ "destination": "/core/reference/engines/table-engines/special"
+ },
+ {
+ "source": "/engines/table_engines/special/buffer",
+ "destination": "/core/reference/engines/table-engines/special/buffer"
+ },
+ {
+ "source": "/operations/table_engines/buffer",
+ "destination": "/core/reference/engines/table-engines/special/buffer"
+ },
+ {
+ "source": "/engines/table_engines/special/dictionary",
+ "destination": "/core/reference/engines/table-engines/special/dictionary"
+ },
+ {
+ "source": "/operations/table_engines/dictionary",
+ "destination": "/core/reference/engines/table-engines/special/dictionary"
+ },
+ {
+ "source": "/engines/table_engines/special/distributed",
+ "destination": "/core/reference/engines/table-engines/special/distributed"
+ },
+ {
+ "source": "/operations/table_engines/distributed",
+ "destination": "/core/reference/engines/table-engines/special/distributed"
+ },
+ {
+ "source": "/engines/table_engines/special/external_data",
+ "destination": "/core/reference/engines/table-engines/special/external-data"
+ },
+ {
+ "source": "/operations/table_engines/external_data",
+ "destination": "/core/reference/engines/table-engines/special/external-data"
+ },
+ {
+ "source": "/engines/table_engines/special/file",
+ "destination": "/core/reference/engines/table-engines/special/file"
+ },
+ {
+ "source": "/operations/table_engines/file",
+ "destination": "/core/reference/engines/table-engines/special/file"
+ },
+ {
+ "source": "/engines/table_engines/special/generate",
+ "destination": "/core/reference/engines/table-engines/special/generate"
+ },
+ {
+ "source": "/operations/table_engines/generate",
+ "destination": "/core/reference/engines/table-engines/special/generate"
+ },
+ {
+ "source": "/engines/table_engines/special/join",
+ "destination": "/core/reference/engines/table-engines/special/join"
+ },
+ {
+ "source": "/operations/table_engines/join",
+ "destination": "/core/reference/engines/table-engines/special/join"
+ },
+ {
+ "source": "/engines/table_engines/special/memory",
+ "destination": "/core/reference/engines/table-engines/special/memory"
+ },
+ {
+ "source": "/operations/table_engines/memory",
+ "destination": "/core/reference/engines/table-engines/special/memory"
+ },
+ {
+ "source": "/engines/table_engines/special/merge",
+ "destination": "/core/reference/engines/table-engines/special/merge"
+ },
+ {
+ "source": "/operations/table_engines/merge",
+ "destination": "/core/reference/engines/table-engines/special/merge"
+ },
+ {
+ "source": "/engines/table_engines/special/null",
+ "destination": "/core/reference/engines/table-engines/special/null"
+ },
+ {
+ "source": "/operations/table_engines/null",
+ "destination": "/core/reference/engines/table-engines/special/null"
+ },
+ {
+ "source": "/engines/table_engines/special/set",
+ "destination": "/core/reference/engines/table-engines/special/set"
+ },
+ {
+ "source": "/operations/table_engines/set",
+ "destination": "/core/reference/engines/table-engines/special/set"
+ },
+ {
+ "source": "/engines/table_engines/special/url",
+ "destination": "/core/reference/engines/table-engines/special/url"
+ },
+ {
+ "source": "/operations/table_engines/url",
+ "destination": "/core/reference/engines/table-engines/special/url"
+ },
+ {
+ "source": "/engines/table_engines/special/view",
+ "destination": "/core/reference/engines/table-engines/special/view"
+ },
+ {
+ "source": "/operations/table_engines/view",
+ "destination": "/core/reference/engines/table-engines/special/view"
+ },
+ {
+ "source": "/core/guides/ingest/tab_separated_values",
+ "destination": "/core/get-started/sample-datasets/nypd-complaint-data"
+ },
+ {
+ "source": "/getting_started/example_datasets",
+ "destination": "/core/get-started/sample-datasets"
+ },
+ {
+ "source": "/getting_started/example_datasets/amplab_benchmark",
+ "destination": "/core/get-started/sample-datasets/amplab-benchmark"
+ },
+ {
+ "source": "/getting_started/example_datasets/criteo",
+ "destination": "/core/get-started/sample-datasets/criteo"
+ },
+ {
+ "source": "/getting_started/example_datasets/metrica",
+ "destination": "/core/get-started/sample-datasets/anon-web-analytics-metrica"
+ },
+ {
+ "source": "/getting_started/example_datasets/nyc_taxi",
+ "destination": "/core/get-started/sample-datasets/nyc-taxi"
+ },
+ {
+ "source": "/getting_started/example_datasets/ontime",
+ "destination": "/core/get-started/sample-datasets/ontime"
+ },
+ {
+ "source": "/getting_started/example_datasets/star_schema",
+ "destination": "/core/get-started/sample-datasets/star-schema"
+ },
+ {
+ "source": "/getting_started/example_datasets/wikistat",
+ "destination": "/core/get-started/sample-datasets/wikistat"
+ },
+ {
+ "source": "/getting_started/install",
+ "destination": "/core/get-started/setup/install"
+ },
+ {
+ "source": "/operations/requirements",
+ "destination": "/core/get-started/setup/install"
+ },
+ {
+ "source": "/getting_started/playground",
+ "destination": "/core/get-started/sample-datasets/playground"
+ },
+ {
+ "source": "/getting_started/tutorial",
+ "destination": "/core/get-started/quickstarts/tutorial"
+ },
+ {
+ "source": "/guide",
+ "destination": "/products/cloud/guides/cloud-compatibility"
+ },
+ {
+ "source": "/core/guides/apply_catboost_model",
+ "destination": "/core/reference/functions/regular-functions/other-functions"
+ },
+ {
+ "source": "/core/guides/developer/apply-catboost-model",
+ "destination": "/core/reference/functions/regular-functions/other-functions"
+ },
+ {
+ "source": "/commercial/cloud",
+ "destination": "/products/cloud/getting-started/intro"
+ },
+ {
+ "source": "/formats",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/capnproto",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/csv",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/csvwithnames",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/json",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/jsoncompact",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/jsoneachrow",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/native",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/null",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/pretty",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/prettycompact",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/prettycompactmonoblock",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/prettynoescapes",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/prettyspace",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/rowbinary",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/tabseparated",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/tabseparatedraw",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/tabseparatedwithnames",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/tabseparatedwithnamesandtypes",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/tskv",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/values",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/vertical",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/verticalraw",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/formats/xml",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/interfaces/http_interface",
+ "destination": "/core/concepts/features/interfaces/http"
+ },
+ {
+ "source": "/interfaces/third_party",
+ "destination": "/core/concepts/features/interfaces/third-party"
+ },
+ {
+ "source": "/interfaces/third-party/client_libraries",
+ "destination": "/integrations/language-clients/third-party/client-libraries"
+ },
+ {
+ "source": "/interfaces/third-party_client_libraries",
+ "destination": "/integrations/language-clients/third-party/client-libraries"
+ },
+ {
+ "source": "/interfaces/third-party_gui",
+ "destination": "/integrations/connectors/tools/gui"
+ },
+ {
+ "source": "/introduction/distinctive_features",
+ "destination": "/core/get-started/about/distinctive-features"
+ },
+ {
+ "source": "/introduction/features_considered_disadvantages",
+ "destination": "/core/get-started/about/distinctive-features"
+ },
+ {
+ "source": "/introduction/ya_metrika_task",
+ "destination": "/resources/about/history"
+ },
+ {
+ "source": "/operations/access_rights",
+ "destination": "/core/concepts/features/security/access-rights"
+ },
+ {
+ "source": "/core/guides/sre/user-management/access-rights",
+ "destination": "/core/concepts/features/security/access-rights"
+ },
+ {
+ "source": "/operations/configuration_files",
+ "destination": "/core/concepts/features/configuration/server-config/configuration-files"
+ },
+ {
+ "source": "/operations/optimizing_performance",
+ "destination": "/core/concepts/features/performance/troubleshoot/sampling-query-profiler"
+ },
+ {
+ "source": "/operations/optimizing_performance/sampling_query_profiler",
+ "destination": "/core/concepts/features/performance/troubleshoot/sampling-query-profiler"
+ },
+ {
+ "source": "/operations/performance/sampling_query_profiler",
+ "destination": "/core/concepts/features/performance/troubleshoot/sampling-query-profiler"
+ },
+ {
+ "source": "/operations/performance_test",
+ "destination": "/core/concepts/features/performance/troubleshoot/performance-test"
+ },
+ {
+ "source": "/operations/server_configuration_parameters",
+ "destination": "/core/reference/settings/server-settings/settings"
+ },
+ {
+ "source": "/operations/server_settings",
+ "destination": "/core/reference/settings/server-settings/settings"
+ },
+ {
+ "source": "/operations/server_configuration_parameters/settings",
+ "destination": "/core/reference/settings/server-settings/settings"
+ },
+ {
+ "source": "/operations/server_settings/settings",
+ "destination": "/core/reference/settings/server-settings/settings"
+ },
+ {
+ "source": "/operations/settings/constraints_on_settings",
+ "destination": "/core/concepts/features/configuration/settings/constraints-on-settings"
+ },
+ {
+ "source": "/operations/settings/permissions_for_queries",
+ "destination": "/core/concepts/features/configuration/settings/permissions-for-queries"
+ },
+ {
+ "source": "/operations/settings/query_complexity",
+ "destination": "/core/concepts/features/configuration/settings/query-complexity"
+ },
+ {
+ "source": "/operations/settings/settings_profiles",
+ "destination": "/core/concepts/features/configuration/settings/settings-profiles"
+ },
+ {
+ "source": "/operations/settings/settings_users",
+ "destination": "/core/concepts/features/configuration/settings/settings-users"
+ },
+ {
+ "source": "/operations/system_tables",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.asynchronous_metrics",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.clusters",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.columns",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.databases",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.dictionaries",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.events",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.functions",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.merges",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.metrics",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.numbers",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.numbers_mt",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.one",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.parts",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.processes",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.replicas",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.settings",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.tables",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/system_tables/system.zookeeper",
+ "destination": "/core/reference/system-tables"
+ },
+ {
+ "source": "/operations/utils",
+ "destination": "/core/concepts/features/tools-and-utilities"
+ },
+ {
+ "source": "/operations/utils/clickhouse-benchmark",
+ "destination": "/core/concepts/features/tools-and-utilities/clickhouse-benchmark"
+ },
+ {
+ "source": "/operations/utils/clickhouse-local",
+ "destination": "/core/concepts/features/tools-and-utilities/clickhouse-local"
+ },
+ {
+ "source": "/utils",
+ "destination": "/core/concepts/features/tools-and-utilities"
+ },
+ {
+ "source": "/utils/clickhouse-local",
+ "destination": "/core/concepts/features/tools-and-utilities/clickhouse-local"
+ },
+ {
+ "source": "/query_language/agg_functions",
+ "destination": "/core/reference/functions/aggregate-functions"
+ },
+ {
+ "source": "/sql_reference/aggregate_functions",
+ "destination": "/core/reference/functions/aggregate-functions"
+ },
+ {
+ "source": "/query_language/agg_functions/combinators",
+ "destination": "/core/reference/functions/aggregate-functions/combinators"
+ },
+ {
+ "source": "/sql_reference/aggregate_functions/combinators",
+ "destination": "/core/reference/functions/aggregate-functions/combinators"
+ },
+ {
+ "source": "/query_language/agg_functions/parametric_functions",
+ "destination": "/core/reference/functions/aggregate-functions/parametric-functions"
+ },
+ {
+ "source": "/sql_reference/aggregate_functions/parametric_functions",
+ "destination": "/core/reference/functions/aggregate-functions/parametric-functions"
+ },
+ {
+ "source": "/query_language/agg_functions/reference",
+ "destination": "/core/reference/functions/aggregate-functions/reference"
+ },
+ {
+ "source": "/sql_reference/aggregate_functions/reference",
+ "destination": "/core/reference/functions/aggregate-functions/reference"
+ },
+ {
+ "source": "/data_types",
+ "destination": "/core/reference/data-types"
+ },
+ {
+ "source": "/sql_reference/data_types",
+ "destination": "/core/reference/data-types"
+ },
+ {
+ "source": "/data_types/nested_data_structures/aggregatefunction",
+ "destination": "/core/reference/data-types/aggregatefunction"
+ },
+ {
+ "source": "/sql_reference/data_types/aggregatefunction",
+ "destination": "/core/reference/data-types/aggregatefunction"
+ },
+ {
+ "source": "/data_types/array",
+ "destination": "/core/reference/data-types/array"
+ },
+ {
+ "source": "/sql_reference/data_types/array",
+ "destination": "/core/reference/data-types/array"
+ },
+ {
+ "source": "/data_types/boolean",
+ "destination": "/core/reference/data-types/boolean"
+ },
+ {
+ "source": "/sql_reference/data_types/boolean",
+ "destination": "/core/reference/data-types/boolean"
+ },
+ {
+ "source": "/data_types/date",
+ "destination": "/core/reference/data-types/date"
+ },
+ {
+ "source": "/sql_reference/data_types/date",
+ "destination": "/core/reference/data-types/date"
+ },
+ {
+ "source": "/data_types/datetime",
+ "destination": "/core/reference/data-types/datetime"
+ },
+ {
+ "source": "/sql_reference/data_types/datetime",
+ "destination": "/core/reference/data-types/datetime"
+ },
+ {
+ "source": "/data_types/datetime64",
+ "destination": "/core/reference/data-types/datetime64"
+ },
+ {
+ "source": "/sql_reference/data_types/datetime64",
+ "destination": "/core/reference/data-types/datetime64"
+ },
+ {
+ "source": "/data_types/decimal",
+ "destination": "/core/reference/data-types/decimal"
+ },
+ {
+ "source": "/sql_reference/data_types/decimal",
+ "destination": "/core/reference/data-types/decimal"
+ },
+ {
+ "source": "/sql-reference/data-types/domains/overview",
+ "destination": "/core/reference/data-types/domains"
+ },
+ {
+ "source": "/sql_reference/data_types/domains",
+ "destination": "/core/reference/data-types/domains"
+ },
+ {
+ "source": "/sql-reference/data_types/domains/ipv4",
+ "destination": "/core/reference/data-types/ipv4"
+ },
+ {
+ "source": "/data_types/domains/ipv4",
+ "destination": "/core/reference/data-types/ipv4"
+ },
+ {
+ "source": "/sql_reference/data_types/domains/ipv4",
+ "destination": "/core/reference/data-types/ipv4"
+ },
+ {
+ "source": "/sql-reference/data-types/domains/ipv6",
+ "destination": "/core/reference/data-types/ipv6"
+ },
+ {
+ "source": "/data_types/domains/ipv6",
+ "destination": "/core/reference/data-types/ipv6"
+ },
+ {
+ "source": "/sql_reference/data_types/domains/ipv6",
+ "destination": "/core/reference/data-types/ipv6"
+ },
+ {
+ "source": "/data_types/domains/overview",
+ "destination": "/core/reference/data-types/domains"
+ },
+ {
+ "source": "/sql_reference/data_types/domains/overview",
+ "destination": "/core/reference/data-types/domains"
+ },
+ {
+ "source": "/data_types/enum",
+ "destination": "/core/reference/data-types/enum"
+ },
+ {
+ "source": "/sql_reference/data_types/enum",
+ "destination": "/core/reference/data-types/enum"
+ },
+ {
+ "source": "/data_types/fixedstring",
+ "destination": "/core/reference/data-types/fixedstring"
+ },
+ {
+ "source": "/sql_reference/data_types/fixedstring",
+ "destination": "/core/reference/data-types/fixedstring"
+ },
+ {
+ "source": "/data_types/float",
+ "destination": "/core/reference/data-types/float"
+ },
+ {
+ "source": "/sql_reference/data_types/float",
+ "destination": "/core/reference/data-types/float"
+ },
+ {
+ "source": "/data_types/int_uint",
+ "destination": "/core/reference/data-types/int-uint"
+ },
+ {
+ "source": "/sql_reference/data_types/int_uint",
+ "destination": "/core/reference/data-types/int-uint"
+ },
+ {
+ "source": "/data_types/nested_data_structures",
+ "destination": "/core/reference/data-types/nested-data-structures"
+ },
+ {
+ "source": "/sql_reference/data_types/nested_data_structures",
+ "destination": "/core/reference/data-types/nested-data-structures"
+ },
+ {
+ "source": "/data_types/nested_data_structures/nested",
+ "destination": "/core/reference/data-types/nested-data-structures"
+ },
+ {
+ "source": "/sql_reference/data_types/nested_data_structures/nested",
+ "destination": "/core/reference/data-types/nested-data-structures"
+ },
+ {
+ "source": "/data_types/nullable",
+ "destination": "/core/reference/data-types/nullable"
+ },
+ {
+ "source": "/sql_reference/data_types/nullable",
+ "destination": "/core/reference/data-types/nullable"
+ },
+ {
+ "source": "/sql_reference/data_types/simpleaggregatefunction",
+ "destination": "/core/reference/data-types/simpleaggregatefunction"
+ },
+ {
+ "source": "/data_types/special_data_types",
+ "destination": "/core/reference/data-types/special-data-types"
+ },
+ {
+ "source": "/sql_reference/data_types/special_data_types",
+ "destination": "/core/reference/data-types/special-data-types"
+ },
+ {
+ "source": "/data_types/special_data_types/expression",
+ "destination": "/core/reference/data-types/special-data-types/expression"
+ },
+ {
+ "source": "/sql_reference/data_types/special_data_types/expression",
+ "destination": "/core/reference/data-types/special-data-types/expression"
+ },
+ {
+ "source": "/data_types/special_data_types/interval",
+ "destination": "/core/reference/data-types/special-data-types/interval"
+ },
+ {
+ "source": "/sql_reference/data_types/special_data_types/interval",
+ "destination": "/core/reference/data-types/special-data-types/interval"
+ },
+ {
+ "source": "/data_types/special_data_types/nothing",
+ "destination": "/core/reference/data-types/special-data-types/nothing"
+ },
+ {
+ "source": "/sql_reference/data_types/special_data_types/nothing",
+ "destination": "/core/reference/data-types/special-data-types/nothing"
+ },
+ {
+ "source": "/data_types/special_data_types/set",
+ "destination": "/core/reference/data-types/special-data-types/set"
+ },
+ {
+ "source": "/sql_reference/data_types/special_data_types/set",
+ "destination": "/core/reference/data-types/special-data-types/set"
+ },
+ {
+ "source": "/data_types/string",
+ "destination": "/core/reference/data-types/string"
+ },
+ {
+ "source": "/sql_reference/data_types/string",
+ "destination": "/core/reference/data-types/string"
+ },
+ {
+ "source": "/data_types/tuple",
+ "destination": "/core/reference/data-types/tuple"
+ },
+ {
+ "source": "/sql_reference/data_types/tuple",
+ "destination": "/core/reference/data-types/tuple"
+ },
+ {
+ "source": "/data_types/uuid",
+ "destination": "/core/reference/data-types/uuid"
+ },
+ {
+ "source": "/sql_reference/data_types/uuid",
+ "destination": "/core/reference/data-types/uuid"
+ },
+ {
+ "source": "/query_language/dicts",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/sql_reference/dictionaries",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/query_language/dicts/external_dicts",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/query_language/dicts/external_dicts_dict",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict",
+ "destination": "/core/reference/statements/create/dictionary"
+ },
+ {
+ "source": "/query_language/dicts/external_dicts_dict_hierarchical",
+ "destination": "/core/reference/statements/create/dictionary/layouts/hierarchical"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_hierarchical",
+ "destination": "/core/reference/statements/create/dictionary/layouts/hierarchical"
+ },
+ {
+ "source": "/query_language/dicts/external_dicts_dict_layout",
+ "destination": "/core/reference/statements/create/dictionary/layouts/overview"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_layout",
+ "destination": "/core/reference/statements/create/dictionary/layouts/overview"
+ },
+ {
+ "source": "/query_language/dicts/external_dicts_dict_lifetime",
+ "destination": "/core/reference/statements/create/dictionary/lifetime"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_lifetime",
+ "destination": "/core/reference/statements/create/dictionary/lifetime"
+ },
+ {
+ "source": "/query_language/dicts/external_dicts_dict_sources",
+ "destination": "/core/reference/statements/create/dictionary/sources/overview"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_sources",
+ "destination": "/core/reference/statements/create/dictionary/sources/overview"
+ },
+ {
+ "source": "/query_language/dicts/external_dicts_dict_structure",
+ "destination": "/core/reference/statements/create/dictionary/attributes"
+ },
+ {
+ "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_structure",
+ "destination": "/core/reference/statements/create/dictionary/attributes"
+ },
+ {
+ "source": "/query_language/dicts/internal_dicts",
+ "destination": "/core/reference/statements/create/dictionary/embedded"
+ },
+ {
+ "source": "/sql_reference/dictionaries/internal_dicts",
+ "destination": "/core/reference/statements/create/dictionary/embedded"
+ },
+ {
+ "source": "/query_language/functions",
+ "destination": "/core/reference/functions/regular-functions"
+ },
+ {
+ "source": "/sql_reference/functions",
+ "destination": "/core/reference/functions/regular-functions"
+ },
+ {
+ "source": "/query_language/functions/arithmetic_functions",
+ "destination": "/core/reference/functions/regular-functions/arithmetic-functions"
+ },
+ {
+ "source": "/sql_reference/functions/arithmetic_functions",
+ "destination": "/core/reference/functions/regular-functions/arithmetic-functions"
+ },
+ {
+ "source": "/query_language/functions/array_functions",
+ "destination": "/core/reference/functions/regular-functions/array-functions"
+ },
+ {
+ "source": "/sql_reference/functions/array_functions",
+ "destination": "/core/reference/functions/regular-functions/array-functions"
+ },
+ {
+ "source": "/query_language/functions/array_join",
+ "destination": "/core/reference/functions/regular-functions/array-join"
+ },
+ {
+ "source": "/sql_reference/functions/array_join",
+ "destination": "/core/reference/functions/regular-functions/array-join"
+ },
+ {
+ "source": "/query_language/functions/bit_functions",
+ "destination": "/core/reference/functions/regular-functions/bit-functions"
+ },
+ {
+ "source": "/sql_reference/functions/bit_functions",
+ "destination": "/core/reference/functions/regular-functions/bit-functions"
+ },
+ {
+ "source": "/query_language/functions/bitmap_functions",
+ "destination": "/core/reference/functions/regular-functions/bitmap-functions"
+ },
+ {
+ "source": "/sql_reference/functions/bitmap_functions",
+ "destination": "/core/reference/functions/regular-functions/bitmap-functions"
+ },
+ {
+ "source": "/query_language/functions/comparison_functions",
+ "destination": "/core/reference/functions/regular-functions/comparison-functions"
+ },
+ {
+ "source": "/sql_reference/functions/comparison_functions",
+ "destination": "/core/reference/functions/regular-functions/comparison-functions"
+ },
+ {
+ "source": "/query_language/functions/conditional_functions",
+ "destination": "/core/reference/functions/regular-functions/conditional-functions"
+ },
+ {
+ "source": "/sql_reference/functions/conditional_functions",
+ "destination": "/core/reference/functions/regular-functions/conditional-functions"
+ },
+ {
+ "source": "/query_language/functions/date_time_functions",
+ "destination": "/core/reference/functions/regular-functions/date-time-functions"
+ },
+ {
+ "source": "/sql_reference/functions/date_time_functions",
+ "destination": "/core/reference/functions/regular-functions/date-time-functions"
+ },
+ {
+ "source": "/query_language/functions/encoding_functions",
+ "destination": "/core/reference/functions/regular-functions/encoding-functions"
+ },
+ {
+ "source": "/sql_reference/functions/encoding_functions",
+ "destination": "/core/reference/functions/regular-functions/encoding-functions"
+ },
+ {
+ "source": "/query_language/functions/ext_dict_functions",
+ "destination": "/core/reference/functions/regular-functions/ext-dict-functions"
+ },
+ {
+ "source": "/sql_reference/functions/ext_dict_functions",
+ "destination": "/core/reference/functions/regular-functions/ext-dict-functions"
+ },
+ {
+ "source": "/query_language/functions/functions_for_nulls",
+ "destination": "/core/reference/functions/regular-functions/functions-for-nulls"
+ },
+ {
+ "source": "/sql_reference/functions/functions_for_nulls",
+ "destination": "/core/reference/functions/regular-functions/functions-for-nulls"
+ },
+ {
+ "source": "/query_language/functions/geo",
+ "destination": "/core/reference/functions/regular-functions/geo"
+ },
+ {
+ "source": "/sql_reference/functions/geo",
+ "destination": "/core/reference/functions/regular-functions/geo"
+ },
+ {
+ "source": "/query_language/functions/hash_functions",
+ "destination": "/core/reference/functions/regular-functions/hash-functions"
+ },
+ {
+ "source": "/sql_reference/functions/hash_functions",
+ "destination": "/core/reference/functions/regular-functions/hash-functions"
+ },
+ {
+ "source": "/query_language/functions/in_functions",
+ "destination": "/core/reference/functions/regular-functions/in-functions"
+ },
+ {
+ "source": "/sql_reference/functions/in_functions",
+ "destination": "/core/reference/functions/regular-functions/in-functions"
+ },
+ {
+ "source": "/query_language/functions/introspection",
+ "destination": "/core/reference/functions/regular-functions/introspection"
+ },
+ {
+ "source": "/sql_reference/functions/introspection",
+ "destination": "/core/reference/functions/regular-functions/introspection"
+ },
+ {
+ "source": "/query_language/functions/ip_address_functions",
+ "destination": "/core/reference/functions/regular-functions/ip-address-functions"
+ },
+ {
+ "source": "/sql_reference/functions/ip_address_functions",
+ "destination": "/core/reference/functions/regular-functions/ip-address-functions"
+ },
+ {
+ "source": "/query_language/functions/json_functions",
+ "destination": "/core/reference/functions/regular-functions/json-functions"
+ },
+ {
+ "source": "/sql_reference/functions/json_functions",
+ "destination": "/core/reference/functions/regular-functions/json-functions"
+ },
+ {
+ "source": "/query_language/functions/logical_functions",
+ "destination": "/core/reference/functions/regular-functions/logical-functions"
+ },
+ {
+ "source": "/sql_reference/functions/logical_functions",
+ "destination": "/core/reference/functions/regular-functions/logical-functions"
+ },
+ {
+ "source": "/query_language/functions/machine_learning_functions",
+ "destination": "/core/reference/functions/regular-functions/machine-learning-functions"
+ },
+ {
+ "source": "/sql_reference/functions/machine_learning_functions",
+ "destination": "/core/reference/functions/regular-functions/machine-learning-functions"
+ },
+ {
+ "source": "/query_language/functions/math_functions",
+ "destination": "/core/reference/functions/regular-functions/math-functions"
+ },
+ {
+ "source": "/sql_reference/functions/math_functions",
+ "destination": "/core/reference/functions/regular-functions/math-functions"
+ },
+ {
+ "source": "/query_language/functions/other_functions",
+ "destination": "/core/reference/functions/regular-functions/other-functions"
+ },
+ {
+ "source": "/sql_reference/functions/other_functions",
+ "destination": "/core/reference/functions/regular-functions/other-functions"
+ },
+ {
+ "source": "/query_language/functions/random_functions",
+ "destination": "/core/reference/functions/regular-functions/random-functions"
+ },
+ {
+ "source": "/sql_reference/functions/random_functions",
+ "destination": "/core/reference/functions/regular-functions/random-functions"
+ },
+ {
+ "source": "/query_language/functions/rounding_functions",
+ "destination": "/core/reference/functions/regular-functions/rounding-functions"
+ },
+ {
+ "source": "/sql_reference/functions/rounding_functions",
+ "destination": "/core/reference/functions/regular-functions/rounding-functions"
+ },
+ {
+ "source": "/query_language/functions/splitting_merging_functions",
+ "destination": "/core/reference/functions/regular-functions/splitting-merging-functions"
+ },
+ {
+ "source": "/sql_reference/functions/splitting_merging_functions",
+ "destination": "/core/reference/functions/regular-functions/splitting-merging-functions"
+ },
+ {
+ "source": "/query_language/functions/string_functions",
+ "destination": "/core/reference/functions/regular-functions/string-functions"
+ },
+ {
+ "source": "/sql_reference/functions/string_functions",
+ "destination": "/core/reference/functions/regular-functions/string-functions"
+ },
+ {
+ "source": "/query_language/functions/string_replace_functions",
+ "destination": "/core/reference/functions/regular-functions/string-replace-functions"
+ },
+ {
+ "source": "/sql_reference/functions/string_replace_functions",
+ "destination": "/core/reference/functions/regular-functions/string-replace-functions"
+ },
+ {
+ "source": "/query_language/functions/string_search_functions",
+ "destination": "/core/reference/functions/regular-functions/string-search-functions"
+ },
+ {
+ "source": "/sql_reference/functions/string_search_functions",
+ "destination": "/core/reference/functions/regular-functions/string-search-functions"
+ },
+ {
+ "source": "/query_language/functions/type_conversion_functions",
+ "destination": "/core/reference/functions/regular-functions/type-conversion-functions"
+ },
+ {
+ "source": "/sql_reference/functions/type_conversion_functions",
+ "destination": "/core/reference/functions/regular-functions/type-conversion-functions"
+ },
+ {
+ "source": "/query_language/functions/url_functions",
+ "destination": "/core/reference/functions/regular-functions/url-functions"
+ },
+ {
+ "source": "/sql_reference/functions/url_functions",
+ "destination": "/core/reference/functions/regular-functions/url-functions"
+ },
+ {
+ "source": "/query_language/functions/uuid_functions",
+ "destination": "/core/reference/functions/regular-functions/uuid-functions"
+ },
+ {
+ "source": "/sql_reference/functions/uuid_functions",
+ "destination": "/core/reference/functions/regular-functions/uuid-functions"
+ },
+ {
+ "source": "/query_language/functions/ym_dict_functions",
+ "destination": "/core/reference/functions/regular-functions/embedded-dict-functions"
+ },
+ {
+ "source": "/sql_reference/functions/ym_dict_functions",
+ "destination": "/core/reference/functions/regular-functions/embedded-dict-functions"
+ },
+ {
+ "source": "/query_language/operators",
+ "destination": "/core/reference/operators"
+ },
+ {
+ "source": "/sql_reference/operators",
+ "destination": "/core/reference/operators"
+ },
+ {
+ "source": "/sql_reference/statements",
+ "destination": "/core/reference/statements"
+ },
+ {
+ "source": "/query_language/alter",
+ "destination": "/core/reference/statements/alter"
+ },
+ {
+ "source": "/sql_reference/statements/alter",
+ "destination": "/core/reference/statements/alter"
+ },
+ {
+ "source": "/sql-reference/statements/alter/index",
+ "destination": "/core/reference/statements/alter/skipping-index"
+ },
+ {
+ "source": "/query_language/create",
+ "destination": "/core/reference/statements/create"
+ },
+ {
+ "source": "/sql_reference/statements/create",
+ "destination": "/core/reference/statements/create"
+ },
+ {
+ "source": "/query_language/insert_into",
+ "destination": "/core/reference/statements/insert-into"
+ },
+ {
+ "source": "/sql_reference/statements/insert_into",
+ "destination": "/core/reference/statements/insert-into"
+ },
+ {
+ "source": "/query_language/misc",
+ "destination": "/core/reference/statements"
+ },
+ {
+ "source": "/sql-reference/statements/misc",
+ "destination": "/core/reference/statements"
+ },
+ {
+ "source": "/sql_reference/statements/misc",
+ "destination": "/core/reference/statements"
+ },
+ {
+ "source": "/query_language/select",
+ "destination": "/core/reference/statements/select"
+ },
+ {
+ "source": "/sql_reference/statements/select",
+ "destination": "/core/reference/statements/select"
+ },
+ {
+ "source": "/query_language/show",
+ "destination": "/core/reference/statements/show"
+ },
+ {
+ "source": "/sql_reference/statements/show",
+ "destination": "/core/reference/statements/show"
+ },
+ {
+ "source": "/query_language/system",
+ "destination": "/core/reference/statements/system"
+ },
+ {
+ "source": "/sql_reference/statements/system",
+ "destination": "/core/reference/statements/system"
+ },
+ {
+ "source": "/query_language/syntax",
+ "destination": "/core/reference/syntax"
+ },
+ {
+ "source": "/sql_reference/syntax",
+ "destination": "/core/reference/syntax"
+ },
+ {
+ "source": "/query_language/table_functions",
+ "destination": "/core/reference/functions/table-functions"
+ },
+ {
+ "source": "/sql_reference/table_functions",
+ "destination": "/core/reference/functions/table-functions"
+ },
+ {
+ "source": "/query_language/table_functions/file",
+ "destination": "/core/reference/functions/table-functions/file"
+ },
+ {
+ "source": "/sql_reference/table_functions/file",
+ "destination": "/core/reference/functions/table-functions/file"
+ },
+ {
+ "source": "/query_language/table_functions/generate",
+ "destination": "/core/reference/functions/table-functions/generate"
+ },
+ {
+ "source": "/sql_reference/table_functions/generate",
+ "destination": "/core/reference/functions/table-functions/generate"
+ },
+ {
+ "source": "/query_language/table_functions/hdfs",
+ "destination": "/core/reference/functions/table-functions/hdfs"
+ },
+ {
+ "source": "/sql_reference/table_functions/hdfs",
+ "destination": "/core/reference/functions/table-functions/hdfs"
+ },
+ {
+ "source": "/query_language/table_functions/input",
+ "destination": "/core/reference/functions/table-functions/input"
+ },
+ {
+ "source": "/sql_reference/table_functions/input",
+ "destination": "/core/reference/functions/table-functions/input"
+ },
+ {
+ "source": "/query_language/table_functions/jdbc",
+ "destination": "/core/reference/functions/table-functions/jdbc"
+ },
+ {
+ "source": "/sql_reference/table_functions/jdbc",
+ "destination": "/core/reference/functions/table-functions/jdbc"
+ },
+ {
+ "source": "/query_language/table_functions/merge",
+ "destination": "/core/reference/functions/table-functions/merge"
+ },
+ {
+ "source": "/sql_reference/table_functions/merge",
+ "destination": "/core/reference/functions/table-functions/merge"
+ },
+ {
+ "source": "/query_language/table_functions/mysql",
+ "destination": "/core/reference/functions/table-functions/mysql"
+ },
+ {
+ "source": "/sql_reference/table_functions/mysql",
+ "destination": "/core/reference/functions/table-functions/mysql"
+ },
+ {
+ "source": "/query_language/table_functions/numbers",
+ "destination": "/core/reference/functions/table-functions/numbers"
+ },
+ {
+ "source": "/sql_reference/table_functions/numbers",
+ "destination": "/core/reference/functions/table-functions/numbers"
+ },
+ {
+ "source": "/query_language/table_functions/odbc",
+ "destination": "/core/reference/functions/table-functions/odbc"
+ },
+ {
+ "source": "/sql_reference/table_functions/odbc",
+ "destination": "/core/reference/functions/table-functions/odbc"
+ },
+ {
+ "source": "/query_language/table_functions/remote",
+ "destination": "/core/reference/functions/table-functions/remote"
+ },
+ {
+ "source": "/sql_reference/table_functions/remote",
+ "destination": "/core/reference/functions/table-functions/remote"
+ },
+ {
+ "source": "/query_language/table_functions/url",
+ "destination": "/core/reference/functions/table-functions/url"
+ },
+ {
+ "source": "/sql_reference/table_functions/url",
+ "destination": "/core/reference/functions/table-functions/url"
+ },
+ {
+ "source": "/whats_new",
+ "destination": "/resources/changelogs/oss/2026"
+ },
+ {
+ "source": "/changelog",
+ "destination": "/resources/changelogs/oss/2026"
+ },
+ {
+ "source": "/whats_new/changelog",
+ "destination": "/resources/changelogs/oss/2026"
+ },
+ {
+ "source": "/changelog/2017",
+ "destination": "/resources/changelogs/oss/2017"
+ },
+ {
+ "source": "/whats_new/changelog/2017",
+ "destination": "/resources/changelogs/oss/2017"
+ },
+ {
+ "source": "/changelog/2018",
+ "destination": "/resources/changelogs/oss/2018"
+ },
+ {
+ "source": "/whats_new/changelog/2018",
+ "destination": "/resources/changelogs/oss/2018"
+ },
+ {
+ "source": "/changelog/2019",
+ "destination": "/resources/changelogs/oss/2019"
+ },
+ {
+ "source": "/whats_new/changelog/2019",
+ "destination": "/resources/changelogs/oss/2019"
+ },
+ {
+ "source": "/extended_roadmap",
+ "destination": "/resources/develop-contribute/roadmap"
+ },
+ {
+ "source": "/roadmap",
+ "destination": "/resources/develop-contribute/roadmap"
+ },
+ {
+ "source": "/whats_new/roadmap",
+ "destination": "/resources/develop-contribute/roadmap"
+ },
+ {
+ "source": "/security_changelog",
+ "destination": "/resources/changelogs/security-changelog"
+ },
+ {
+ "source": "/whats_new/security_changelog",
+ "destination": "/resources/changelogs/security-changelog"
+ },
+ {
+ "source": "/introduction",
+ "destination": "/core/get-started/about/intro"
+ },
+ {
+ "source": "/introduction/adopters",
+ "destination": "/resources/about/adopters"
+ },
+ {
+ "source": "/introduction/distinctive-features",
+ "destination": "/core/get-started/about/distinctive-features"
+ },
+ {
+ "source": "/introduction/history",
+ "destination": "/resources/about/history"
+ },
+ {
+ "source": "/introduction/performance",
+ "destination": "/core/get-started/about/why-clickhouse-is-so-fast"
+ },
+ {
+ "source": "/getting-started/tutorial",
+ "destination": "/core/get-started/quickstarts/tutorial"
+ },
+ {
+ "source": "/getting-started/install",
+ "destination": "/core/get-started/setup/install"
+ },
+ {
+ "source": "/faq/general/how-do-i-contribute-code-to-clickhouse",
+ "destination": "/resources/support-center/knowledge-base/general-faqs/how-do-i-contribute-code-to-clickhouse"
+ },
+ {
+ "source": "/manage/security",
+ "destination": "/core/concepts/features/security/configuring-ldap"
+ },
+ {
+ "source": "/single",
+ "destination": "/core/reference/statements/create/view"
+ },
+ {
+ "source": "/architecture/single-node-deployment",
+ "destination": "/core/get-started/setup/install"
+ },
+ {
+ "source": "/home",
+ "destination": "/"
+ },
+ {
+ "source": "/chdb/data-formats",
+ "destination": "/products/chdb/reference/data-formats"
+ },
+ {
+ "source": "/chdb/sql-reference",
+ "destination": "/products/chdb/reference/sql-reference"
+ },
+ {
+ "source": "/core/get-started/query-endpoints",
+ "destination": "/products/cloud/guides/sql-console/query-endpoints"
+ },
+ {
+ "source": "/core/get-started/query-insights",
+ "destination": "/products/cloud/features/sql-console-features/query-insights"
+ },
+ {
+ "source": "/core/get-started/sql-console",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/manage/billing",
+ "destination": "/products/cloud/reference/billing/billing-overview"
+ },
+ {
+ "source": "/cloud/manage/billing/overview#clickpipes-for-streaming-object-storage",
+ "destination": "/products/cloud/reference/billing/clickpipes/clickpipes-for-streaming-and-object-storage"
+ },
+ {
+ "source": "/integrations/clickpipes/object-storage",
+ "destination": "/integrations/clickpipes/object-storage/amazon-s3/get-started"
+ },
+ {
+ "source": "/integrations/clickpipes/object-storage/reference",
+ "destination": "/integrations/clickpipes/object-storage/amazon-s3/overview"
+ },
+ {
+ "source": "/cloud/marketplace",
+ "destination": "/products/cloud/reference/billing/marketplace"
+ },
+ {
+ "source": "/deletes",
+ "destination": "/core/concepts/features/operations/delete/overview"
+ },
+ {
+ "source": "/optimize",
+ "destination": "/core/guides/performance-and-monitoring"
+ },
+ {
+ "source": "/observability",
+ "destination": "/core/guides/use-cases/observability"
+ },
+ {
+ "source": "/integrations/sql-clients/clickhouse-client-local",
+ "destination": "/core/concepts/features/interfaces/cli"
+ },
+ {
+ "source": "/sql-reference/dictionaries/external-dictionaries/external-dict",
+ "destination": "/core/reference/statements/create/dictionary/embedded"
+ },
+ {
+ "source": "/integrations/java/jdbc-driver",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/integrations/sql-clients/cli",
+ "destination": "/core/concepts/features/interfaces/cli"
+ },
+ {
+ "source": "/operations/clickhouse-keeper",
+ "destination": "/core/concepts/features/tools-and-utilities/clickhouse-keeper-client"
+ },
+ {
+ "source": "/core/guides/sre/clickhouse-keeper",
+ "destination": "/core/guides/oss/deployment-and-scaling/keeper"
+ },
+ {
+ "source": "/operations/settings/merge-tree",
+ "destination": "/core/reference/settings/merge-tree-settings"
+ },
+ {
+ "source": "/operations/settings/merge-tree-setting",
+ "destination": "/core/reference/settings/merge-tree-settings"
+ },
+ {
+ "source": "/materialized-view",
+ "destination": "/core/concepts/features/materialized-views"
+ },
+ {
+ "source": "/cloud/manage/service-types",
+ "destination": "/products/cloud/features/cloud-tiers"
+ },
+ {
+ "source": "/integrations/dlt",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dlt-and-clickhouse"
+ },
+ {
+ "source": "/cloud/security/cloud-endpoints-api",
+ "destination": "/products/cloud/guides/sql-console/query-endpoints"
+ },
+ {
+ "source": "/operations/server-configuration-parameters",
+ "destination": "/core/reference/settings/server-settings/settings"
+ },
+ {
+ "source": "/intron",
+ "destination": "/core/get-started/about/intro"
+ },
+ {
+ "source": "/query_language/functions/string_functions/",
+ "destination": "/core/reference/functions/regular-functions/string-functions"
+ },
+ {
+ "source": "/integrations/language-clients/java/client-v2",
+ "destination": "/integrations/language-clients/java/client"
+ },
+ {
+ "source": "/integrations/language-clients/java/jdbc-v2",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/pricing",
+ "destination": "/products/cloud/reference/billing/billing-overview"
+ },
+ {
+ "source": "/operations/input-output-formats",
+ "destination": "/core/reference/formats"
+ },
+ {
+ "source": "/cloud/connect",
+ "destination": "/products/cloud/features/sql-console-features/sql-console"
+ },
+ {
+ "source": "/engines/database-engines/materialized-mysql",
+ "destination": "/core/reference/engines/database-engines"
+ },
+ {
+ "source": "/sql-reference/aggregate-functions/reference/array_concat_agg",
+ "destination": "/core/reference/functions/aggregate-functions/reference/groupArrayArray"
+ },
+ {
+ "source": "/integrations/java/jdbc-v2",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/integrations/java/client-v2",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/interfaces/formats/Protobuf/Protobuf",
+ "destination": "/core/reference/formats/Protobuf/Protobuf"
+ },
+ {
+ "source": "/integrations/jdbc",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/sql-reference/table-functions/generateSeries",
+ "destination": "/core/reference/functions/table-functions/generate_series"
+ },
+ {
+ "source": "/cloud/data-ingestion",
+ "destination": "/integrations/connectors/data-ingestion"
+ },
+ {
+ "source": "/migrations/postgres/en/migrations/postgresql",
+ "destination": "/core/get-started/setup/migration-guides/postgres/overview"
+ },
+ {
+ "source": "/sql-reference/data-types/bfloat16",
+ "destination": "/core/reference/data-types/float#bfloat16"
+ },
+ {
+ "source": "/cloud/reference/compute-compute-separation",
+ "destination": "/products/cloud/features/infrastructure/warehouses#what-is-compute-compute-separation"
+ },
+ {
+ "source": "/cloud/bestpractices/bulk-inserts",
+ "destination": "/core/concepts/best-practices/selecting-an-insert-strategy"
+ },
+ {
+ "source": "/cloud/bestpractices/asynchronous-inserts",
+ "destination": "/core/concepts/best-practices/use-materialized-views"
+ },
+ {
+ "source": "/cloud/bestpractices/avoid-mutations",
+ "destination": "/core/concepts/best-practices/avoid-mutations"
+ },
+ {
+ "source": "/cloud/bestpractices/avoid-nullable-columns",
+ "destination": "/core/concepts/best-practices/select-data-type"
+ },
+ {
+ "source": "/cloud/bestpractices/avoid-optimize-final",
+ "destination": "/core/concepts/best-practices/avoid-optimize-final"
+ },
+ {
+ "source": "/cloud/bestpractices/low-cardinality-partitioning-key",
+ "destination": "/core/concepts/best-practices/partitioning-keys"
+ },
+ {
+ "source": "/integrations/postgresql/postgres-vs-clickhouse",
+ "destination": "/core/get-started/setup/migration-guides/postgres/appendix"
+ },
+ {
+ "source": "/migrations/postgresql/designing-schemas",
+ "destination": "/core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3"
+ },
+ {
+ "source": "/category/engines",
+ "destination": "/core/reference/engines/engines"
+ },
+ {
+ "source": "/integrations/postgresql/data-type-mappings",
+ "destination": "/core/get-started/setup/migration-guides/postgres/appendix#data-type-mappings"
+ },
+ {
+ "source": "/operations/system-tables/error_log",
+ "destination": "/core/reference/system-tables/error_log"
+ },
+ {
+ "source": "/engines/table-engines/special/replicatedmergetree",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/replication"
+ },
+ {
+ "source": "/integrations/language-clients/java/jdbc-v1",
+ "destination": "/integrations/language-clients/java/jdbc"
+ },
+ {
+ "source": "/engines/table-engines/integrations/google-cloud-storage",
+ "destination": "/core/reference/functions/table-functions/gcs"
+ },
+ {
+ "source": "/getting-started/example-datasets/reddit-comments",
+ "destination": "/core/get-started/sample-datasets"
+ },
+ {
+ "source": "/getting-started/example-datasets/recipes",
+ "destination": "/core/get-started/sample-datasets"
+ },
+ {
+ "source": "/development/adding_test_queries",
+ "destination": "/resources/develop-contribute/tests#adding-a-new-test"
+ },
+ {
+ "source": "/cloud/get-started/cloud-quick-start",
+ "destination": "/core/get-started/setup/cloud"
+ },
+ {
+ "source": "/integrations/migration/upload-a-csv-file",
+ "destination": "/products/cloud/guides/migration/upload-a-csv-file"
+ },
+ {
+ "source": "/faq/troubleshooting",
+ "destination": "/resources/support-center/knowledge-base/cloud-services/unable-to-access-cloud-service"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq/summary",
+ "destination": "/products/cloud/features/cloud-tiers"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq/new-tiers",
+ "destination": "/products/cloud/features/cloud-tiers"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq/scaling",
+ "destination": "/products/cloud/features/autoscaling/overview"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq/backup",
+ "destination": "/products/cloud/guides/backups/review-and-restore-backups"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq/pricing-dimensions",
+ "destination": "/products/cloud/features/cloud-tiers"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq/billing",
+ "destination": "/products/cloud/reference/billing"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq",
+ "destination": "/products/cloud/features/cloud-tiers"
+ },
+ {
+ "source": "/cloud/manage/jan-2025-faq/plan-migrations",
+ "destination": "/products/cloud/features/cloud-tiers"
+ },
+ {
+ "source": "/operations/system-tables/latency_log",
+ "destination": "/core/reference/system-tables/histogram_metrics"
+ },
+ {
+ "source": "/operations/system-tables/latency_buckets",
+ "destination": "/core/reference/system-tables/histogram_metrics"
+ },
+ {
+ "source": "/integrations/kafka/cloud/confluent/custom-connector-cloud",
+ "destination": "/integrations/connectors/data-ingestion/kafka/confluent/confluent-cloud"
+ },
+ {
+ "source": "/integrations/data-ingestion/clickpipes/mysql/parallel_initial_load",
+ "destination": "/integrations/clickpipes/mysql/parallel-initial-load"
+ },
+ {
+ "source": "/integrations/data-ingestion/clickpipes/postgres/parallel_initial_load",
+ "destination": "/integrations/clickpipes/postgres/parallel-initial-load"
+ },
+ {
+ "source": "/integrations/redshift",
+ "destination": "/core/get-started/setup/migration-guides/redshift/migration-guide"
+ },
+ {
+ "source": "/integrations/migration",
+ "destination": "/core/get-started/setup/migration-guides/overview"
+ },
+ {
+ "source": "/cloud/security/security-and-compliance",
+ "destination": "/products/cloud/reference/security/compliance-overview"
+ },
+ {
+ "source": "/cloud/manage",
+ "destination": "/products/cloud/features/admin-features/api"
+ },
+ {
+ "source": "/migrations/migrations",
+ "destination": "/core/get-started/setup/migration-guides/overview"
+ },
+ {
+ "source": "/cloud/security/personal-data-access",
+ "destination": "/products/cloud/reference/personal-data-access"
+ },
+ {
+ "source": "/cloud/security/cloud-access-management/overview",
+ "destination": "/products/cloud/guides/security/cloud-access-management/manage-database-users"
+ },
+ {
+ "source": "/cloud/security/cloud-access-management",
+ "destination": "/products/cloud/guides/security/cloud-access-management"
+ },
+ {
+ "source": "/cloud/guides/sql-console/config-sql-console-role-assignments",
+ "destination": "/products/cloud/guides/security/cloud-access-management/manage-sql-console-role-assignments"
+ },
+ {
+ "source": "/cloud/security/secure-s3",
+ "destination": "/products/cloud/guides/data-sources/accessing-s3-data-securely"
+ },
+ {
+ "source": "/manage/security/cloud-endpoints-api",
+ "destination": "/products/cloud/guides/data-sources/cloud-endpoints-api"
+ },
+ {
+ "source": "/cloud/security/shared-responsibility-model",
+ "destination": "/products/cloud/reference/security/console-roles"
+ },
+ {
+ "source": "/cloud/security/cloud-authentication",
+ "destination": "/products/cloud/features/security#cloud-console-auth"
+ },
+ {
+ "source": "/cloud/security/private-link-overview",
+ "destination": "/products/cloud/guides/security/connectivity/private-networking"
+ },
+ {
+ "source": "/cloud/security/connectivity",
+ "destination": "/products/cloud/guides/security/connectivity/private-networking"
+ },
+ {
+ "source": "/cloud/guides/sql-console/configure-org-service-role-assignments",
+ "destination": "/products/cloud/guides/security/cloud-access-management"
+ },
+ {
+ "source": "/operations/system-tables/crash-log",
+ "destination": "/core/reference/system-tables/crash_log"
+ },
+ {
+ "source": "/operations/system-tables/current-roles",
+ "destination": "/core/reference/system-tables/current_roles"
+ },
+ {
+ "source": "/operations/system-tables/enabled-roles",
+ "destination": "/core/reference/system-tables/enabled_roles"
+ },
+ {
+ "source": "/operations/system-tables/role-grants",
+ "destination": "/core/reference/system-tables/role_grants"
+ },
+ {
+ "source": "/cloud/reference/byoc",
+ "destination": "/products/cloud/guides/infrastructure/deployment-options/byoc/overview"
+ },
+ {
+ "source": "/about-clickhouse",
+ "destination": "/core/get-started/about/intro"
+ },
+ {
+ "source": "/cloud/security/inviting-new-users",
+ "destination": "/products/cloud/guides/security/cloud-access-management/manage-cloud-users#invite-users"
+ },
+ {
+ "source": "/sql-reference/functions/time-series-analysis-functions",
+ "destination": "/core/reference/functions/regular-functions/time-series-functions"
+ },
+ {
+ "source": "/use-cases/observability/clickstack/ingesting-data/kubernetes",
+ "destination": "/products/clickstack/integration-examples/kubernetes"
+ },
+ {
+ "source": "/operations/backup",
+ "destination": "/core/concepts/features/backup-restore/overview"
+ },
+ {
+ "source": "/sql-reference/data-types/object-data-type",
+ "destination": "/core/reference/data-types/newjson"
+ },
+ {
+ "source": "/about-us/faq",
+ "destination": "/resources/support-center/knowledge-base/general-faqs/faq-index"
+ },
+ {
+ "source": "/engines/table-engines/mergetree-family/invertedindexes",
+ "destination": "/core/reference/engines/table-engines/mergetree-family/textindexes"
+ },
+ {
+ "source": "/core/guides/sre/configuring-ssl",
+ "destination": "/core/concepts/features/security/tls/configuring-tls"
+ },
+ {
+ "source": "/use-cases/observability/clickstack/deployment/hyperdx-clickhouse-cloud",
+ "destination": "/products/clickstack/deployment/managed"
+ },
+ {
+ "source": "/use-cases/observability/clickstack/demo-days/2026/04/03-04-2026",
+ "destination": "/products/clickstack/demo-days/2026/2026-04-03"
+ },
+ {
+ "source": "/use-cases/observability/clickstack/demo-days/2026/04/10-04-2026",
+ "destination": "/products/clickstack/demo-days/2026/2026-04-10"
+ },
+ {
+ "source": "/cloud/security/compliance/hipaa-onboarding#deploy-hippa-services",
+ "destination": "/products/cloud/guides/security/compliance/hipaa-onboarding#deploy-hipaa-services"
+ },
+ {
+ "source": "/operations/compression_codecs",
+ "destination": "/core/reference/statements/create/table#column_compression_codec"
+ },
+ {
+ "source": "/operations/server-configuration-parameters/users",
+ "destination": "/core/concepts/features/configuration/settings/settings-users"
+ },
+ {
+ "source": "/operations/performance",
+ "destination": "/core/concepts/features/performance/troubleshoot/sampling-query-profiler"
+ },
+ {
+ "source": "/operations/access-rights/users",
+ "destination": "/core/concepts/features/security/access-rights"
+ },
+ {
+ "source": "/operations/resource-management/resource_pools",
+ "destination": "/core/concepts/features/configuration/server-config/workload-scheduling"
+ },
+ {
+ "source": "/whats-new",
+ "destination": "/resources/changelogs/oss/2026"
+ },
+ {
+ "source": "/whats-new/TODO",
+ "destination": "/resources/changelogs/oss/2026"
+ },
+ {
+ "source": "/whats-new/cloud",
+ "destination": "/resources/changelogs/cloud"
+ },
+ {
+ "source": "/cloud/reference/byoc/faq/:path*",
+ "destination": "/products/bring-your-own-cloud/reference/faq"
+ },
+ {
+ "source": "/about-quotas-and-query-complexity",
+ "destination": "/resources/support-center/knowledge-base/configuration-settings/about-quotas-and-query-complexity"
+ },
+ {
+ "source": "/integrations/dbt/materialized-views",
+ "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt/materialization-materialized-view"
+ },
+ {
+ "source": "/managing-data/update_mutations",
+ "destination": "/core/reference/statements/alter/update"
+ },
+ {
+ "source": "/sql-reference/formats",
+ "destination": "/core/reference/formats"
+ }
+]
diff --git a/scripts/update_quickstarts.py b/_site/scripts/update_quickstarts.py
similarity index 100%
rename from scripts/update_quickstarts.py
rename to _site/scripts/update_quickstarts.py
diff --git a/scripts/update_release_notes.py b/_site/scripts/update_release_notes.py
similarity index 100%
rename from scripts/update_release_notes.py
rename to _site/scripts/update_release_notes.py
diff --git a/styles.css b/_site/styles.css
similarity index 99%
rename from styles.css
rename to _site/styles.css
index 86ff6ebc..b8b61c86 100644
--- a/styles.css
+++ b/_site/styles.css
@@ -293,8 +293,9 @@ html:not(.dark) #pagination svg.lucide-chevron-right {
background-color: #151515 !important;
}
-/* Hide the chat assistant textarea */
-.chat-assistant-input {
+/* Hide the chat assistant textarea and its floating-input wrapper */
+.chat-assistant-input,
+.chat-assistant-floating-input {
display: none !important;
}
diff --git a/styles/.markdownlint-cli2.yaml b/_site/styles/.markdownlint-cli2.yaml
similarity index 100%
rename from styles/.markdownlint-cli2.yaml
rename to _site/styles/.markdownlint-cli2.yaml
diff --git a/styles/.vale.ini b/_site/styles/.vale.ini
similarity index 100%
rename from styles/.vale.ini
rename to _site/styles/.vale.ini
diff --git a/styles/markdownlint/custom_rules/headings_have_custom_anchors.js b/_site/styles/markdownlint/custom_rules/headings_have_custom_anchors.js
similarity index 100%
rename from styles/markdownlint/custom_rules/headings_have_custom_anchors.js
rename to _site/styles/markdownlint/custom_rules/headings_have_custom_anchors.js
diff --git a/styles/markdownlint/custom_rules/utility_functions.js b/_site/styles/markdownlint/custom_rules/utility_functions.js
similarity index 100%
rename from styles/markdownlint/custom_rules/utility_functions.js
rename to _site/styles/markdownlint/custom_rules/utility_functions.js
diff --git a/styles/vale/ClickHouse/Ability.yml b/_site/styles/vale/ClickHouse/Ability.yml
similarity index 100%
rename from styles/vale/ClickHouse/Ability.yml
rename to _site/styles/vale/ClickHouse/Ability.yml
diff --git a/styles/vale/ClickHouse/BackTicksFormats.yml b/_site/styles/vale/ClickHouse/BackTicksFormats.yml
similarity index 100%
rename from styles/vale/ClickHouse/BackTicksFormats.yml
rename to _site/styles/vale/ClickHouse/BackTicksFormats.yml
diff --git a/styles/vale/ClickHouse/BackTicksFunctions.yml b/_site/styles/vale/ClickHouse/BackTicksFunctions.yml
similarity index 100%
rename from styles/vale/ClickHouse/BackTicksFunctions.yml
rename to _site/styles/vale/ClickHouse/BackTicksFunctions.yml
diff --git a/styles/vale/ClickHouse/BackTicksServerSettings.yml b/_site/styles/vale/ClickHouse/BackTicksServerSettings.yml
similarity index 100%
rename from styles/vale/ClickHouse/BackTicksServerSettings.yml
rename to _site/styles/vale/ClickHouse/BackTicksServerSettings.yml
diff --git a/styles/vale/ClickHouse/BackTicksSessionSettings.yml b/_site/styles/vale/ClickHouse/BackTicksSessionSettings.yml
similarity index 100%
rename from styles/vale/ClickHouse/BackTicksSessionSettings.yml
rename to _site/styles/vale/ClickHouse/BackTicksSessionSettings.yml
diff --git a/styles/vale/ClickHouse/BackTicksTableEngines.yml b/_site/styles/vale/ClickHouse/BackTicksTableEngines.yml
similarity index 100%
rename from styles/vale/ClickHouse/BackTicksTableEngines.yml
rename to _site/styles/vale/ClickHouse/BackTicksTableEngines.yml
diff --git a/styles/vale/ClickHouse/BackTicksTableFunctions.yml b/_site/styles/vale/ClickHouse/BackTicksTableFunctions.yml
similarity index 100%
rename from styles/vale/ClickHouse/BackTicksTableFunctions.yml
rename to _site/styles/vale/ClickHouse/BackTicksTableFunctions.yml
diff --git a/styles/vale/ClickHouse/BadPlurals.yml b/_site/styles/vale/ClickHouse/BadPlurals.yml
similarity index 100%
rename from styles/vale/ClickHouse/BadPlurals.yml
rename to _site/styles/vale/ClickHouse/BadPlurals.yml
diff --git a/styles/vale/ClickHouse/British.yml b/_site/styles/vale/ClickHouse/British.yml
similarity index 100%
rename from styles/vale/ClickHouse/British.yml
rename to _site/styles/vale/ClickHouse/British.yml
diff --git a/styles/vale/ClickHouse/CodeblockFences.yml b/_site/styles/vale/ClickHouse/CodeblockFences.yml
similarity index 100%
rename from styles/vale/ClickHouse/CodeblockFences.yml
rename to _site/styles/vale/ClickHouse/CodeblockFences.yml
diff --git a/styles/vale/ClickHouse/Colons.yml b/_site/styles/vale/ClickHouse/Colons.yml
similarity index 100%
rename from styles/vale/ClickHouse/Colons.yml
rename to _site/styles/vale/ClickHouse/Colons.yml
diff --git a/styles/vale/ClickHouse/Contractions.yml b/_site/styles/vale/ClickHouse/Contractions.yml
similarity index 100%
rename from styles/vale/ClickHouse/Contractions.yml
rename to _site/styles/vale/ClickHouse/Contractions.yml
diff --git a/styles/vale/ClickHouse/CurrentStatus.yml b/_site/styles/vale/ClickHouse/CurrentStatus.yml
similarity index 100%
rename from styles/vale/ClickHouse/CurrentStatus.yml
rename to _site/styles/vale/ClickHouse/CurrentStatus.yml
diff --git a/styles/vale/ClickHouse/EOLWhitespace.yml b/_site/styles/vale/ClickHouse/EOLWhitespace.yml
similarity index 100%
rename from styles/vale/ClickHouse/EOLWhitespace.yml
rename to _site/styles/vale/ClickHouse/EOLWhitespace.yml
diff --git a/styles/vale/ClickHouse/Exclamation.yml b/_site/styles/vale/ClickHouse/Exclamation.yml
similarity index 100%
rename from styles/vale/ClickHouse/Exclamation.yml
rename to _site/styles/vale/ClickHouse/Exclamation.yml
diff --git a/styles/vale/ClickHouse/FutureTense.yml b/_site/styles/vale/ClickHouse/FutureTense.yml
similarity index 100%
rename from styles/vale/ClickHouse/FutureTense.yml
rename to _site/styles/vale/ClickHouse/FutureTense.yml
diff --git a/styles/vale/ClickHouse/HeadingPunctuation.yml b/_site/styles/vale/ClickHouse/HeadingPunctuation.yml
similarity index 100%
rename from styles/vale/ClickHouse/HeadingPunctuation.yml
rename to _site/styles/vale/ClickHouse/HeadingPunctuation.yml
diff --git a/styles/vale/ClickHouse/Headings.yml b/_site/styles/vale/ClickHouse/Headings.yml
similarity index 100%
rename from styles/vale/ClickHouse/Headings.yml
rename to _site/styles/vale/ClickHouse/Headings.yml
diff --git a/styles/vale/ClickHouse/Ordinal.yml b/_site/styles/vale/ClickHouse/Ordinal.yml
similarity index 100%
rename from styles/vale/ClickHouse/Ordinal.yml
rename to _site/styles/vale/ClickHouse/Ordinal.yml
diff --git a/styles/vale/ClickHouse/OxfordComma.yml b/_site/styles/vale/ClickHouse/OxfordComma.yml
similarity index 100%
rename from styles/vale/ClickHouse/OxfordComma.yml
rename to _site/styles/vale/ClickHouse/OxfordComma.yml
diff --git a/styles/vale/ClickHouse/Quotes.yml b/_site/styles/vale/ClickHouse/Quotes.yml
similarity index 100%
rename from styles/vale/ClickHouse/Quotes.yml
rename to _site/styles/vale/ClickHouse/Quotes.yml
diff --git a/styles/vale/ClickHouse/Repetition.yml b/_site/styles/vale/ClickHouse/Repetition.yml
similarity index 100%
rename from styles/vale/ClickHouse/Repetition.yml
rename to _site/styles/vale/ClickHouse/Repetition.yml
diff --git a/styles/vale/ClickHouse/SentenceLength.yml b/_site/styles/vale/ClickHouse/SentenceLength.yml
similarity index 100%
rename from styles/vale/ClickHouse/SentenceLength.yml
rename to _site/styles/vale/ClickHouse/SentenceLength.yml
diff --git a/styles/vale/ClickHouse/Units.yml b/_site/styles/vale/ClickHouse/Units.yml
similarity index 100%
rename from styles/vale/ClickHouse/Units.yml
rename to _site/styles/vale/ClickHouse/Units.yml
diff --git a/styles/vale/ClickHouse/Uppercase.yml b/_site/styles/vale/ClickHouse/Uppercase.yml
similarity index 100%
rename from styles/vale/ClickHouse/Uppercase.yml
rename to _site/styles/vale/ClickHouse/Uppercase.yml
diff --git a/styles/vale/ClickHouse/Wordy.yml b/_site/styles/vale/ClickHouse/Wordy.yml
similarity index 100%
rename from styles/vale/ClickHouse/Wordy.yml
rename to _site/styles/vale/ClickHouse/Wordy.yml
diff --git a/concepts/advanced-guides/index.mdx b/concepts/advanced-guides/index.mdx
deleted file mode 100644
index eb55fca6..00000000
--- a/concepts/advanced-guides/index.mdx
+++ /dev/null
@@ -1,23 +0,0 @@
----
-slug: /guides/developer/overview
-sidebarTitle: 'Advanced guides overview'
-description: 'Overview of the advanced guides'
-title: 'Advanced guides'
-keywords: ['ClickHouse advanced guides', 'developer guides', 'query optimization', 'materialized views', 'deduplication', 'time series', 'query execution']
-doc_type: 'guide'
----
-
-This section contains the following advanced guides:
-
-| Guide | Description |
-|------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Alternative Query Languages](/concepts/features/configuration/settings/alternative-query-languages) | A guide on alternative supported dialects and how to use them. Provides examples of queries in each dialect. |
-| [Cascading Materialized Views](/concepts/features/materialized-views/cascading-materialized-views) | A guide on how to create Materialized Views and cascade them together, combine multiple source tables into a single destination table. Contains an example of using cascading materialized views to aggregate data by month and year for a group of domain names. |
-| [Debugging memory issues](/concepts/features/performance/troubleshoot/debugging-memory-issues) | A guide on how to debug memory issues within ClickHouse. |
-| [Deduplicating Inserts on Retries](/concepts/operations/insert/deduplicating-inserts-on-retries) | A guide on how to handle situations where you might retry failed inserts. |
-| [Deduplication strategies](/concepts/operations/insert/deduplication) | A guide which dives into data deduplication, a technique for removing duplicate rows from your database. Explains differences from primary key-based deduplication in OLTP systems, ClickHouse's approach to deduplication and how to handle duplicate data scenarios within your ClickHouse queries. |
-| [Filling gaps in time-series data](/guides/real-time-analytics/time-series/time-series-filling-gaps) | A guide which provides insights into ClickHouse's capabilities for handling time-series data, including techniques for filling gaps in data to create a more complete and continuous representation of time-series information. |
-| [Manage Data with TTL (Time-to-live)](/concepts/operations/delete/ttl) | A guide discussing how to use the `WITH FILL` clause to fill gaps in time-series data. It covers how to fill gaps with 0 values, how to specify a starting point for filling gaps, how to fill gaps up to a specific end point, and how to interpolate values for cumulative calculations. |
-| [Stored procedures & query parameters](/guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements) | A guide explaining that ClickHouse doesn't support traditional stored procedures, and provides recommended alternatives including User-Defined Functions (UDFs), parameterized views, materialized views, and external orchestration. Also covers query parameters for safe parameterized queries (similar to prepared statements). |
-| [Understanding query execution with the Analyzer](/guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer) | A guide which demystifies ClickHouse query execution by introducing the analyzer tool. It explains how the analyzer breaks down a query into a series of steps, allowing you to visualize and troubleshoot the entire execution process for optimal performance. |
-| [Using JOINs in ClickHouse](/concepts/operations/select/joining-tables) | A guide that simplifies joining tables in ClickHouse. It covers different join types (`INNER`, `LEFT`, `RIGHT`, etc.), explores best practices for efficient joins (like placing smaller tables on the right), and provides insights on ClickHouse's internal join algorithms to help you optimize your queries for complex data relationships. |
diff --git a/concepts/features/configuration/settings/query-complexity.mdx b/concepts/features/configuration/settings/query-complexity.mdx
deleted file mode 100644
index f58f8018..00000000
--- a/concepts/features/configuration/settings/query-complexity.mdx
+++ /dev/null
@@ -1,115 +0,0 @@
----
-description: 'Settings which restrict query complexity.'
-sidebarTitle: 'Restrictions on query complexity'
-slug: /operations/settings/query-complexity
-title: 'Restrictions on query complexity'
-doc_type: 'reference'
----
-
-## Overview {#overview}
-
-As part of the [settings](/concepts/features/configuration/settings/overview), ClickHouse offers
-the ability to place restrictions on query complexity. This helps protect against
-potentially resource-intensive queries, ensuring safer and more predictable
-execution, particularly when using the user interface.
-
-Almost all the restrictions only apply to `SELECT` queries, and for distributed
-query processing, restrictions are applied on each server separately.
-
-ClickHouse generally checks the restrictions only after data parts have been
-fully processed, rather than checking the restrictions for each row. This can
-result in a situation where restrictions are violated while the part is being
-processed.
-
-## `overflow_mode` settings {#overflow_mode_setting}
-
-Most restrictions also have an `overflow_mode` setting, which defines what happens
-when the limit is exceeded, and can take one of two values:
-- `throw`: throw an exception (default).
-- `break`: stop executing the query and return the partial result, as if the
- source data ran out.
-
-## `group_by_overflow_mode` settings {#group_by_overflow_mode_settings}
-
-The `group_by_overflow_mode` setting also has
-the value `any`:
-- `any` : continue aggregation for the keys that got into the set, but do not
- add new keys to the set.
-
-## List of settings {#relevant-settings}
-
-The following settings are used for applying restrictions on query complexity.
-
-
-Restrictions on the "maximum amount of something" can take a value of `0`,
-which means that it is "unrestricted".
-
-
-| Setting | Short description |
-|------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [`max_memory_usage`](/reference/settings/session-settings#max_memory_usage) | The maximum amount of RAM to use for running a query on a single server. |
-| [`max_memory_usage_for_user`](/reference/settings/session-settings#max_memory_usage_for_user) | The maximum amount of RAM to use for running a user's queries on a single server. |
-| [`max_rows_to_read`](/reference/settings/session-settings#max_rows_to_read) | The maximum number of rows that can be read from a table when running a query. |
-| [`max_bytes_to_read`](/reference/settings/session-settings#max_bytes_to_read) | The maximum number of bytes (of uncompressed data) that can be read from a table when running a query. |
-| [`read_overflow_mode_leaf`](/reference/settings/session-settings#read_overflow_mode_leaf) | Sets what happens when the volume of data read exceeds one of the leaf limits |
-| [`max_rows_to_read_leaf`](/reference/settings/session-settings#max_rows_to_read_leaf) | The maximum number of rows that can be read from a local table on a leaf node when running a distributed query |
-| [`max_bytes_to_read_leaf`](/reference/settings/session-settings#max_bytes_to_read_leaf) | The maximum number of bytes (of uncompressed data) that can be read from a local table on a leaf node when running a distributed query. |
-| [`read_overflow_mode_leaf`](/reference/settings/session-settings#read_overflow_mode_leaf) | Sets what happens when the volume of data read exceeds one of the leaf limits. |
-| [`max_rows_to_group_by`](/reference/settings/session-settings#max_rows_to_group_by) | The maximum number of unique keys received from aggregation. |
-| [`group_by_overflow_mode`](/reference/settings/session-settings#group_by_overflow_mode) | Sets what happens when the number of unique keys for aggregation exceeds the limit |
-| [`max_bytes_before_external_group_by`](/reference/settings/session-settings#max_bytes_before_external_group_by) | Enables or disables execution of `GROUP BY` clauses in external memory. |
-| [`max_bytes_ratio_before_external_group_by`](/reference/settings/session-settings#max_bytes_ratio_before_external_group_by) | The ratio of available memory that is allowed for `GROUP BY`. Once reached, external memory is used for aggregation. |
-| [`max_bytes_before_external_sort`](/reference/settings/session-settings#max_bytes_before_external_sort) | Enables or disables execution of `ORDER BY` clauses in external memory. |
-| [`max_bytes_ratio_before_external_sort`](/reference/settings/session-settings#max_bytes_ratio_before_external_sort) | The ratio of available memory that is allowed for `ORDER BY`. Once reached, external sort is used. |
-| [`max_rows_to_sort`](/reference/settings/session-settings#max_rows_to_sort) | The maximum number of rows before sorting. Allows limiting memory consumption when sorting. |
-| [`max_bytes_to_sort`](/reference/settings/session-settings#max_rows_to_sort) | The maximum number of bytes before sorting. |
-| [`sort_overflow_mode`](/reference/settings/session-settings#sort_overflow_mode) | Sets what happens if the number of rows received before sorting exceeds one of the limits. |
-| [`max_result_rows`](/reference/settings/session-settings#max_result_rows) | Limits the number of rows in the result. |
-| [`max_result_bytes`](/reference/settings/session-settings#max_result_bytes) | Limits the result size in bytes (uncompressed) |
-| [`result_overflow_mode`](/reference/settings/session-settings#result_overflow_mode) | Sets what to do if the volume of the result exceeds one of the limits. |
-| [`max_execution_time`](/reference/settings/session-settings#max_execution_time) | The maximum query execution time in seconds. |
-| [`timeout_overflow_mode`](/reference/settings/session-settings#timeout_overflow_mode) | Sets what to do if the query is run longer than the `max_execution_time` or the estimated running time is longer than `max_estimated_execution_time`. |
-| [`max_execution_time_leaf`](/reference/settings/session-settings#max_execution_time_leaf) | Similar semantically to `max_execution_time` but only applied on leaf nodes for distributed or remote queries. |
-| [`timeout_overflow_mode_leaf`](/reference/settings/session-settings#timeout_overflow_mode_leaf) | Sets what happens when the query in leaf node run longer than `max_execution_time_leaf`. |
-| [`min_execution_speed`](/reference/settings/session-settings#min_execution_speed) | Minimal execution speed in rows per second. |
-| [`min_execution_speed_bytes`](/reference/settings/session-settings#min_execution_speed_bytes) | The minimum number of execution bytes per second. |
-| [`max_execution_speed`](/reference/settings/session-settings#max_execution_speed) | The maximum number of execution rows per second. |
-| [`max_execution_speed_bytes`](/reference/settings/session-settings#max_execution_speed_bytes) | The maximum number of execution bytes per second. |
-| [`timeout_before_checking_execution_speed`](/reference/settings/session-settings#timeout_before_checking_execution_speed) | Checks that execution speed is not too slow (no less than `min_execution_speed`), after the specified time in seconds has expired. |
-| [`max_estimated_execution_time`](/reference/settings/session-settings#max_estimated_execution_time) | Maximum query estimate execution time in seconds. |
-| [`max_columns_to_read`](/reference/settings/session-settings#max_columns_to_read) | The maximum number of columns that can be read from a table in a single query. |
-| [`max_temporary_columns`](/reference/settings/session-settings#max_temporary_columns) | The maximum number of temporary columns that must be kept in RAM simultaneously when running a query, including constant columns. |
-| [`max_temporary_non_const_columns`](/reference/settings/session-settings#max_temporary_non_const_columns) | The maximum number of temporary columns that must be kept in RAM simultaneously when running a query, but without counting constant columns. |
-| [`max_subquery_depth`](/reference/settings/session-settings#max_subquery_depth) | Sets what happens if a query has more than the specified number of nested subqueries. |
-| [`max_ast_depth`](/reference/settings/session-settings#max_ast_depth) | The maximum nesting depth of a query syntactic tree. |
-| [`max_ast_elements`](/reference/settings/session-settings#max_ast_elements) | The maximum number of elements in a query syntactic tree. |
-| [`max_rows_in_set`](/reference/settings/session-settings#max_rows_in_set) | The maximum number of rows for a data set in the IN clause created from a subquery. |
-| [`max_bytes_in_set`](/reference/settings/session-settings#max_bytes_in_set) | The maximum number of bytes (of uncompressed data) used by a set in the IN clause created from a subquery. |
-| [`set_overflow_mode`](/reference/settings/session-settings#max_bytes_in_set) | Sets what happens when the amount of data exceeds one of the limits. |
-| [`max_rows_in_distinct`](/reference/settings/session-settings#max_rows_in_distinct) | The maximum number of different rows when using DISTINCT. |
-| [`max_bytes_in_distinct`](/reference/settings/session-settings#max_bytes_in_distinct) | The maximum number of bytes of the state (in uncompressed bytes) in memory, which is used by a hash table when using DISTINCT. |
-| [`distinct_overflow_mode`](/reference/settings/session-settings#distinct_overflow_mode) | Sets what happens when the amount of data exceeds one of the limits. |
-| [`max_rows_to_transfer`](/reference/settings/session-settings#max_rows_to_transfer) | Maximum size (in rows) that can be passed to a remote server or saved in a temporary table when the GLOBAL IN/JOIN section is executed. |
-| [`max_bytes_to_transfer`](/reference/settings/session-settings#max_bytes_to_transfer) | The maximum number of bytes (uncompressed data) that can be passed to a remote server or saved in a temporary table when the GLOBAL IN/JOIN section is executed. |
-| [`transfer_overflow_mode`](/reference/settings/session-settings#transfer_overflow_mode) | Sets what happens when the amount of data exceeds one of the limits. |
-| [`max_rows_in_join`](/reference/settings/session-settings#max_rows_in_join) | Limits the number of rows in the hash table that is used when joining tables. |
-| [`max_bytes_in_join`](/reference/settings/session-settings#max_bytes_in_join) | The maximum size in number of bytes of the hash table used when joining tables. |
-| [`join_overflow_mode`](/reference/settings/session-settings#join_overflow_mode) | Defines what action ClickHouse performs when any of the following join limits is reached. |
-| [`max_partitions_per_insert_block`](/reference/settings/session-settings#max_partitions_per_insert_block) | Limits the maximum number of partitions in a single inserted block and an exception is thrown if the block contains too many partitions. |
-| [`throw_on_max_partitions_per_insert_block`](/reference/settings/session-settings#throw_on_max_partitions_per_insert_block) | Allows you to control the behaviour when `max_partitions_per_insert_block` is reached. |
-| [`max_temporary_data_on_disk_size_for_user`](/reference/settings/session-settings#throw_on_max_partitions_per_insert_block) | The maximum amount of data consumed by temporary files on disk in bytes for all concurrently running user queries. |
-| [`max_temporary_data_on_disk_size_for_query`](/reference/settings/session-settings#max_temporary_data_on_disk_size_for_query) | The maximum amount of data consumed by temporary files on disk in bytes for all concurrently running queries. |
-| [`max_sessions_for_user`](/reference/settings/session-settings#max_sessions_for_user) | Maximum number of simultaneous sessions per authenticated user to the ClickHouse server. |
-| [`max_partitions_to_read`](/reference/settings/session-settings#max_partitions_to_read) | Limits the maximum number of partitions that can be accessed in a single query. |
-
-## Obsolete settings {#obsolete-settings}
-
-
-The following settings are obsolete
-
-
-### max_pipeline_depth {#max-pipeline-depth}
-
-Maximum pipeline depth. It Corresponds to the number of transformations that each
-data block goes through during query processing. Counted within the limits of a
-single server. If the pipeline depth is greater, an exception is thrown.
diff --git a/concepts/features/performance/caches/caches.mdx b/concepts/features/performance/caches/caches.mdx
deleted file mode 100644
index 0b5ed6d5..00000000
--- a/concepts/features/performance/caches/caches.mdx
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: 'When performing queries, ClickHouse uses different caches.'
-sidebarTitle: 'Caches'
-slug: /operations/caches
-title: 'Cache types'
-keywords: ['cache']
-doc_type: 'reference'
----
-
-When performing queries, ClickHouse uses different caches to speed up queries
-and reduce the need to read from or write to disk.
-
-The main cache types are:
-
-- `mark_cache` — Cache of [marks](/resources/contribute/architecture#merge-tree) used by table engines of the [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) family.
-- `uncompressed_cache` — Cache of uncompressed data used by table engines of the [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) family.
-- Operating system page cache (used indirectly, for files with actual data).
-
-There are also a host of additional cache types:
-
-- DNS cache.
-- [Regexp](/reference/formats/Regexp) cache.
-- Compiled expressions cache.
-- [Vector similarity index](/reference/engines/table-engines/mergetree-family/annindexes) cache.
-- [Text index](/reference/engines/table-engines/mergetree-family/textindexes#caching) cache.
-- [Avro format](/reference/formats/Avro/Avro) schemas cache.
-- [Dictionaries](/reference/statements/create/dictionary) data cache.
-- Schema inference cache.
-- [Filesystem cache](/concepts/features/configuration/server-config/storing-data) over S3, Azure, Local and other disks.
-- [Userspace page cache](/concepts/features/performance/caches/userspace-page-cache)
-- [Query cache](/concepts/features/performance/caches/query-cache).
-- [Query condition cache](/concepts/features/performance/caches/query-condition-cache).
-- Format schema cache.
-
-Should you wish to clear one of the caches, for performance tuning, troubleshooting, or data consistency reasons,
-you can use the [`SYSTEM CLEAR ... CACHE`](/reference/statements/system) statement.
diff --git a/concepts/features/security/external-authenticators/index.mdx b/concepts/features/security/external-authenticators/index.mdx
deleted file mode 100644
index c0ab184f..00000000
--- a/concepts/features/security/external-authenticators/index.mdx
+++ /dev/null
@@ -1,20 +0,0 @@
----
-description: 'Overview of external authentication methods supported by ClickHouse'
-sidebarTitle: 'External User Authenticators and Directories'
-slug: /operations/external-authenticators/
-title: 'External User Authenticators and Directories'
-doc_type: 'reference'
----
-
-import SelfManaged from '/snippets/_self_managed_only_no_roadmap.mdx';
-
-
-
-ClickHouse supports authenticating and managing users using external services.
-
-The following external authenticators and directories are supported:
-
-- [LDAP](/concepts/features/security/external-authenticators/ldap#ldap-external-authenticator) [Authenticator](/concepts/features/security/external-authenticators/ldap#ldap-external-authenticator) and [Directory](/concepts/features/security/external-authenticators/ldap#ldap-external-user-directory)
-- Kerberos [Authenticator](/concepts/features/security/external-authenticators/kerberos#kerberos-as-an-external-authenticator-for-existing-users)
-- [SSL X.509 authentication](/concepts/features/security/external-authenticators/ssl-x509)
-- HTTP [Authenticator](/concepts/features/security/external-authenticators/http)
\ No newline at end of file
diff --git a/concepts/features/tools-and-utilities/index.mdx b/concepts/features/tools-and-utilities/index.mdx
deleted file mode 100644
index 57db08e0..00000000
--- a/concepts/features/tools-and-utilities/index.mdx
+++ /dev/null
@@ -1,21 +0,0 @@
----
-description: 'Page listing various useful ClickHouse tools and utilities.'
-keywords: ['tools', 'utilities']
-sidebarTitle: 'List of tools and utilities'
-slug: /operations/utilities/
-title: 'List of tools and utilities'
-doc_type: 'landing-page'
----
-
-| Tool/Utility | Description |
-|------|-------------|
-|[clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local) | Allows running SQL queries on data without starting the ClickHouse server, similar to how `awk` does this.|
-|[clickhouse-benchmark](/concepts/features/tools-and-utilities/clickhouse-benchmark) | Loads server with the custom queries and settings.|
-| [clickhouse-format](/concepts/features/tools-and-utilities/clickhouse-format) | Enables formatting input queries.|
-|[ClickHouse obfuscator](/concepts/features/tools-and-utilities/clickhouse-obfuscator) | Obfuscates data.|
-|[ClickHouse compressor](/concepts/features/tools-and-utilities/clickhouse-compressor) | Compresses and decompresses data.|
-| [clickhouse-disks](/concepts/features/tools-and-utilities/clickhouse-disks) | Provides filesystem-like operations on files among different ClickHouse disks.|
-| [clickhouse-odbc-bridge](/concepts/features/tools-and-utilities/odbc-bridge) | A proxy server for ODBC driver.|
-| [clickhouse_backupview](/concepts/features/tools-and-utilities/backupview) | A python module to analyze ClickHouse backups.|
-| [clickhouse-keeper-client](/concepts/features/tools-and-utilities/clickhouse-keeper-client) | A client application to interact with ClickHouse Keeper.|
-| [Keeper HTTP API](/concepts/features/tools-and-utilities/clickhouse-keeper-http-api) | HTTP API and embedded dashboard for ClickHouse Keeper.|
diff --git a/core/README.md b/core/README.md
new file mode 100644
index 00000000..a4077dca
--- /dev/null
+++ b/core/README.md
@@ -0,0 +1,18 @@
+# Core
+
+Documentation for ClickHouse in general - independent of any specific
+product or deployment. This is where the majority of technical content lives.
+
+## Structure
+
+- `get-started/` — Onboarding material: quickstarts, install guides, sample
+ datasets, use-case landing pages. Start here if you're new to ClickHouse.
+- `concepts/` — How ClickHouse works: core mechanics (parts, merges, indexes),
+ feature deep-dives, best practices. Content explains *what* and *why*.
+- `guides/` — Task-oriented how-to guides: data modelling, performance tuning,
+ use-case walkthroughs, OSS deployment and operations. Content explains *how*.
+- `reference/` — Exhaustive reference material: SQL statements, functions,
+ data types, engines, formats, settings, system tables.
+
+Each subdirectory has its own `README.md` with more detail on what belongs
+there and how to decide between sections.
\ No newline at end of file
diff --git a/core/concepts/README.md b/core/concepts/README.md
new file mode 100644
index 00000000..c668a5c5
--- /dev/null
+++ b/core/concepts/README.md
@@ -0,0 +1,19 @@
+# Concepts
+
+**What goes here:** Explanations of how ClickHouse works and what its features
+are. Core mechanics (parts, merges, partitions, primary indexes), best-practice
+guidance, and feature deep-dives (materialized views, dictionaries, projections,
+performance, operations, configuration, security, backup/restore,
+tools-and-utilities).
+
+**Audience:** Engineers who want to understand *what* a feature is and *why* it
+behaves the way it does. Not task-oriented — for "how do I do X," use `/guides`.
+
+**Subdirectories:**
+- `core-concepts/` — fundamental mechanics (parts, merges, indexes).
+- `best-practices/` — opinionated must-know guidance for working with ClickHouse.
+- `features/` — ClickHouse DB core features.
+- `advanced-guides/` — longer-form material that doesn't fit elsewhere.
+
+If you're adding a page that explains what something is, and how something works, it belongs here.
+If you're adding step-by-step instructions of how to use a feature in practice, it belongs in `/guides`.
\ No newline at end of file
diff --git a/concepts/best-practices/avoid-mutations.mdx b/core/concepts/best-practices/avoid-mutations.mdx
similarity index 100%
rename from concepts/best-practices/avoid-mutations.mdx
rename to core/concepts/best-practices/avoid-mutations.mdx
diff --git a/concepts/best-practices/avoid-optimize-final.mdx b/core/concepts/best-practices/avoid-optimize-final.mdx
similarity index 100%
rename from concepts/best-practices/avoid-optimize-final.mdx
rename to core/concepts/best-practices/avoid-optimize-final.mdx
diff --git a/concepts/best-practices/avoidnullablecolumns.mdx b/core/concepts/best-practices/avoidnullablecolumns.mdx
similarity index 100%
rename from concepts/best-practices/avoidnullablecolumns.mdx
rename to core/concepts/best-practices/avoidnullablecolumns.mdx
diff --git a/concepts/best-practices/choosing-a-primary-key.mdx b/core/concepts/best-practices/choosing-a-primary-key.mdx
similarity index 90%
rename from concepts/best-practices/choosing-a-primary-key.mdx
rename to core/concepts/best-practices/choosing-a-primary-key.mdx
index f1e3e230..e2307acb 100644
--- a/concepts/best-practices/choosing-a-primary-key.mdx
+++ b/core/concepts/best-practices/choosing-a-primary-key.mdx
@@ -10,9 +10,9 @@ doc_type: 'guide'
import { Image } from "/snippets/components/Image.jsx";
-> We interchangeably use the term "ordering key" to refer to the "primary key" on this page. Strictly, [these differ in ClickHouse](/reference/engines/table-engines/mergetree-family/mergetree#choosing-a-primary-key-that-differs-from-the-sorting-key), but for the purposes of this document, readers can use them interchangeably, with the ordering key referring to the columns specified in the table `ORDER BY`.
+> We interchangeably use the term "ordering key" to refer to the "primary key" on this page. Strictly, [these differ in ClickHouse](/core/reference/engines/table-engines/mergetree-family/mergetree#choosing-a-primary-key-that-differs-from-the-sorting-key), but for the purposes of this document, readers can use them interchangeably, with the ordering key referring to the columns specified in the table `ORDER BY`.
-Note that a ClickHouse primary key works [very differently](/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3#primary-ordering-keys-in-clickhouse) to those familiar with similar terms in OLTP databases such as Postgres.
+Note that a ClickHouse primary key works [very differently](/core/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3#primary-ordering-keys-in-clickhouse) to those familiar with similar terms in OLTP databases such as Postgres.
Choosing an effective primary key in ClickHouse is crucial for query performance and storage efficiency. ClickHouse organizes data into parts, each containing its own sparse primary index. This index significantly speeds up queries by reducing the volume of data scanned. Additionally, because the primary key determines the physical order of data on disk, it directly impacts compression efficiency. Optimally ordered data compresses more effectively, which further enhances performance by reducing I/O.
@@ -24,7 +24,7 @@ Some simple rules can be applied to help choose an ordering key. The following c
**Important**
-Ordering keys must be defined on table creation and can't be added. Additional ordering can be added to a table after (or before) data insertion through a feature known as projections. Be aware these result in data duplication. Further details [here](/reference/statements/alter/projection).
+Ordering keys must be defined on table creation and can't be added. Additional ordering can be added to a table after (or before) data insertion through a feature known as projections. Be aware these result in data duplication. Further details [here](/core/reference/statements/alter/projection).
## Example {#example}
@@ -168,6 +168,6 @@ Additionally, we visualize how the sparse index prunes all row blocks that can't
All columns in a table will be sorted based on the value of the specified ordering key, regardless of whether they're included in the key itself. For instance, if `CreationDate` is used as the key, the order of values in all other columns will correspond to the order of values in the `CreationDate` column. Multiple ordering keys can be specified - this will order with the same semantics as an `ORDER BY` clause in a `SELECT` query.
-A complete advanced guide on choosing primary keys can be found [here](/guides/cloud-oss/data-modelling/sparse-primary-indexes).
+A complete advanced guide on choosing primary keys can be found [here](/core/guides/clickhouse/data-modelling/sparse-primary-indexes).
-For deeper insights into how ordering keys improve compression and further optimize storage, explore the official guides on [Compression in ClickHouse](/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse) and [Column Compression Codecs](/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse#choosing-the-right-column-compression-codec).
+For deeper insights into how ordering keys improve compression and further optimize storage, explore the official guides on [Compression in ClickHouse](/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse) and [Column Compression Codecs](/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse#choosing-the-right-column-compression-codec).
diff --git a/concepts/best-practices/index.mdx b/core/concepts/best-practices/index.mdx
similarity index 100%
rename from concepts/best-practices/index.mdx
rename to core/concepts/best-practices/index.mdx
diff --git a/concepts/best-practices/json-type.mdx b/core/concepts/best-practices/json-type.mdx
similarity index 89%
rename from concepts/best-practices/json-type.mdx
rename to core/concepts/best-practices/json-type.mdx
index 2b4f642a..77b9b1f5 100644
--- a/concepts/best-practices/json-type.mdx
+++ b/core/concepts/best-practices/json-type.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
import WhenToUseJson from '/snippets/_when-to-use-json.mdx';
-ClickHouse now offers a native JSON column type designed for semi-structured and dynamic data. It's important to clarify that **this is a column type, not a data format**—you can insert JSON into ClickHouse as a string or via supported formats like [JSONEachRow](/reference/formats/JSON/JSONEachRow), but that doesn't imply using the JSON column type. You should only use the JSON type when the structure of your data is dynamic, not when you simply happen to store JSON.
+ClickHouse now offers a native JSON column type designed for semi-structured and dynamic data. It's important to clarify that **this is a column type, not a data format**—you can insert JSON into ClickHouse as a string or via supported formats like [JSONEachRow](/core/reference/formats/JSON/JSONEachRow), but that doesn't imply using the JSON column type. You should only use the JSON type when the structure of your data is dynamic, not when you simply happen to store JSON.
@@ -18,9 +18,9 @@ ClickHouse now offers a native JSON column type designed for semi-structured and
The JSON type enables efficient columnar storage by flattening paths into subcolumns. But with flexibility comes responsibility. To use it effectively:
-* **Specify path types** using [hints in the column definition](/reference/data-types/newjson) to specify types for known subcolumns, avoiding unnecessary type inference.
-* **Skip paths** if you don't need the values, with [SKIP and SKIP REGEXP](/reference/data-types/newjson) to reduce storage and improve performance.
-* **Avoid setting [`max_dynamic_paths`](/reference/data-types/newjson#reaching-the-limit-of-dynamic-paths-inside-json) too high**—large values increase resource consumption and reduce efficiency. As a rule of thumb, keep it below 10,000.
+* **Specify path types** using [hints in the column definition](/core/reference/data-types/newjson) to specify types for known subcolumns, avoiding unnecessary type inference.
+* **Skip paths** if you don't need the values, with [SKIP and SKIP REGEXP](/core/reference/data-types/newjson) to reduce storage and improve performance.
+* **Avoid setting [`max_dynamic_paths`](/core/reference/data-types/newjson#reaching-the-limit-of-dynamic-paths-inside-json) too high**—large values increase resource consumption and reduce efficiency. As a rule of thumb, keep it below 10,000.
**Type hints**
@@ -31,11 +31,11 @@ Type hints offer more than just a way to avoid unnecessary type inference—they
## Advanced features {#advanced-features}
* JSON columns **can be used in primary keys** like any other columns. Codecs can't be specified for a subcolumn.
-* They support introspection via functions like [`JSONAllPathsWithTypes()` and `JSONDynamicPaths()`](/reference/data-types/newjson#introspection-functions).
+* They support introspection via functions like [`JSONAllPathsWithTypes()` and `JSONDynamicPaths()`](/core/reference/data-types/newjson#introspection-functions).
* You can read nested sub-objects using the `.^` syntax.
* Query syntax may differ from standard SQL and may require special casting or operators for nested fields.
-For additional guidance, see[ ClickHouse JSON documentation](/reference/data-types/newjson) or explore our blog post[ A New Powerful JSON Data Type for ClickHouse](https://clickhouse.com/blog/a-new-powerful-json-data-type-for-clickhouse).
+For additional guidance, see[ ClickHouse JSON documentation](/core/reference/data-types/newjson) or explore our blog post[ A New Powerful JSON Data Type for ClickHouse](https://clickhouse.com/blog/a-new-powerful-json-data-type-for-clickhouse).
## Examples {#examples}
@@ -114,7 +114,7 @@ Consider the [arXiv dataset](https://www.kaggle.com/datasets/Cornell-University/
}
```
-While the JSON here is complex, with nested structures, it is predictable. The number and type of the fields won't change. While we could use the JSON type for this example, we can also just define the structure explicitly using [Tuples](/reference/data-types/tuple) and [Nested](/reference/data-types/nested-data-structures) types:
+While the JSON here is complex, with nested structures, it is predictable. The number and type of the fields won't change. While we could use the JSON type for this example, we can also just define the structure explicitly using [Tuples](/core/reference/data-types/tuple) and [Nested](/core/reference/data-types/nested-data-structures) types:
```sql
CREATE TABLE arxiv
@@ -214,7 +214,7 @@ ORDER BY doc.update_date
We provide a type hint for the `update_date` column in the JSON definition, as we use it in the ordering/primary key. This helps ClickHouse to know that this column won't be null and ensures it knows which `update_date` subcolumn to use (there may be multiple for each type, so this is ambiguous otherwise).
-We can insert into this table and view the subsequently inferred schema using the [`JSONAllPathsWithTypes`](/reference/functions/regular-functions/json-functions#JSONAllPathsWithTypes) function and [`PrettyJSONEachRow`](/reference/formats/JSON/PrettyJSONEachRow) output format:
+We can insert into this table and view the subsequently inferred schema using the [`JSONAllPathsWithTypes`](/core/reference/functions/regular-functions/json-functions#JSONAllPathsWithTypes) function and [`PrettyJSONEachRow`](/core/reference/formats/JSON/PrettyJSONEachRow) output format:
```sql
INSERT INTO arxiv FORMAT JSONAsObject
diff --git a/concepts/best-practices/minimize-optimize-joins.mdx b/core/concepts/best-practices/minimize-optimize-joins.mdx
similarity index 86%
rename from concepts/best-practices/minimize-optimize-joins.mdx
rename to core/concepts/best-practices/minimize-optimize-joins.mdx
index 3051c04d..4cd45f0d 100644
--- a/concepts/best-practices/minimize-optimize-joins.mdx
+++ b/core/concepts/best-practices/minimize-optimize-joins.mdx
@@ -19,9 +19,9 @@ In general, denormalize when:
- Only a limited subset of the columns will be queried, i.e. certain columns can be excluded from denormalization.
- You have the capability to shift processing out of ClickHouse into upstream systems like [Flink](/integrations/connectors/data-ingestion/apache-flink), where real-time enrichment or flattening can be managed.
-Not all data needs to be denormalized — focus on the attributes that are frequently queried. Also consider [materialized views](/concepts/best-practices/use-materialized-views) to incrementally compute aggregates instead of duplicating entire sub-tables. When schema updates are rare and latency is critical, denormalization offers the best performance trade-off.
+Not all data needs to be denormalized — focus on the attributes that are frequently queried. Also consider [materialized views](/core/concepts/best-practices/use-materialized-views) to incrementally compute aggregates instead of duplicating entire sub-tables. When schema updates are rare and latency is critical, denormalization offers the best performance trade-off.
-For a full guide on denormalizing data in ClickHouse see [here](/guides/cloud-oss/data-modelling/denormalization).
+For a full guide on denormalizing data in ClickHouse see [here](/core/guides/clickhouse/data-modelling/denormalization).
## When JOINs are required {#when-joins-are-required}
@@ -31,7 +31,7 @@ Follow these best practices to improve JOIN performance:
* **Avoid Cartesian products**: If a value on the left-hand side matches multiple values on the right-hand side, the JOIN will return multiple rows — the so-called Cartesian product. If your use case doesn't need all matches from the right-hand side but just any single match, you can use `ANY` JOINs (e.g. `LEFT ANY JOIN`). They're faster and use less memory than regular JOINs.
* **Reduce the sizes of JOINed tables**: The runtime and memory consumption of JOINs grows proportionally with the sizes of the left and right tables. To reduce the amount of processed data by the JOIN, add additional filter conditions in the `WHERE` or `JOIN ON` clauses of the query. ClickHouse pushes filter conditions as deep as possible down in the query plan, usually before JOINs. If the filters aren't pushed down automatically (for any reason), rewrite one side of the JOIN as a sub-query to force pushdown.
-* **Use direct JOINs via dictionaries if appropriate**: Standard JOINs in ClickHouse are executed in two phases: a build phase which iterates the right-hand side to build a hash table, followed by a probe phase which iterates the left-hand side to find matching join partners via hash table lookups. If the right-hand side is a [dictionary](/concepts/features/dictionaries) or another table engine with key-value characteristics (e.g. [EmbeddedRocksDB](/reference/engines/table-engines/integrations/embedded-rocksdb) or the [Join table engine](/reference/engines/table-engines/special/join)), then ClickHouse can use the "direct" join algorithm, which effectively removes the need to build a hash table, speeding up query processing. This works for `INNER` and `LEFT OUTER` JOINs and is preferred for real-time analytical workloads.
+* **Use direct JOINs via dictionaries if appropriate**: Standard JOINs in ClickHouse are executed in two phases: a build phase which iterates the right-hand side to build a hash table, followed by a probe phase which iterates the left-hand side to find matching join partners via hash table lookups. If the right-hand side is a [dictionary](/core/concepts/features/dictionaries) or another table engine with key-value characteristics (e.g. [EmbeddedRocksDB](/core/reference/engines/table-engines/integrations/embedded-rocksdb) or the [Join table engine](/core/reference/engines/table-engines/special/join)), then ClickHouse can use the "direct" join algorithm, which effectively removes the need to build a hash table, speeding up query processing. This works for `INNER` and `LEFT OUTER` JOINs and is preferred for real-time analytical workloads.
* **Utilize table sorting for JOINs**: Each table in ClickHouse is sorted by the table's primary key columns. It is possible to exploit the table's sorting by using so-called sort-merge JOIN algorithms like `full_sorting_merge` and `partial_merge`. Unlike standard JOIN algorithms based on hash tables (see below, `parallel_hash`, `hash`, `grace_hash`), sort-merge JOIN algorithms first sort and then merge both tables. If the query JOINs both tables by their respective primary key columns, then sort-merge has an optimization which omits the sort step, saving processing time and overhead.
* **Avoid disk-spilling JOINs**: Intermediate states of JOINs (e.g. hash tables) can become so big that they no longer fit into main memory. In this situation, ClickHouse will return an out-of-memory error by default. Some join algorithms (see below), for example [`grace_hash`](https://clickhouse.com/blog/clickhouse-fully-supports-joins-hash-joins-part2), [`partial_merge`](https://clickhouse.com/blog/clickhouse-fully-supports-joins-full-sort-partial-merge-part3) and [`full_sorting_merge`](https://clickhouse.com/blog/clickhouse-fully-supports-joins-full-sort-partial-merge-part3), are able to spill intermediate states to disk and continue query execution. These join algorithms should nevertheless be used with care as disk access can significantly slow down join processing. We instead recommend optimizing the JOIN query in other ways to reduce the size of intermediate states.
* **Default values as no-match markers in outer JOINs**: Left/right/full outer joins include all values from the left/right/both tables. If no join partner is found in the other table for some value, ClickHouse replaces the join partner by a special marker. The SQL standard mandates that databases use NULL as such a marker. In ClickHouse, this requires wrapping the result column in Nullable, creating an additional memory and performance overhead. As an alternative, you can configure the setting `join_use_nulls = 0` and use the default value of the result column data type as the marker.
@@ -39,7 +39,7 @@ Follow these best practices to improve JOIN performance:
**Use dictionaries carefully**
-When using dictionaries for JOINs in ClickHouse, it's important to understand that dictionaries, by design, don't allow duplicate keys. During data loading, any duplicate keys are silently deduplicated—only the last loaded value for a given key is retained. This behavior makes dictionaries ideal for one-to-one or many-to-one relationships where only the latest or authoritative value is needed. However, using a dictionary for a one-to-many or many-to-many relationship (e.g. joining roles to actors where an actor can have multiple roles) will result in silent data loss, as all but one of the matching rows will be discarded. As a result, dictionaries aren't suitable for scenarios requiring full relational fidelity across multiple matches. For more on when dictionaries help (and when they don't), see [Dictionary best practices](/concepts/features/dictionaries/best-practices).
+When using dictionaries for JOINs in ClickHouse, it's important to understand that dictionaries, by design, don't allow duplicate keys. During data loading, any duplicate keys are silently deduplicated—only the last loaded value for a given key is retained. This behavior makes dictionaries ideal for one-to-one or many-to-one relationships where only the latest or authoritative value is needed. However, using a dictionary for a one-to-many or many-to-many relationship (e.g. joining roles to actors where an actor can have multiple roles) will result in silent data loss, as all but one of the matching rows will be discarded. As a result, dictionaries aren't suitable for scenarios requiring full relational fidelity across multiple matches. For more on when dictionaries help (and when they don't), see [Dictionary best practices](/core/concepts/features/dictionaries/best-practices).
## Choosing the correct JOIN Algorithm {#choosing-the-right-join-algorithm}
@@ -55,10 +55,10 @@ ClickHouse supports several JOIN algorithms that trade off between speed and mem
-Each algorithm has varying support for JOIN types. A full list of supported join types for each algorithm can be found [here](/concepts/operations/select/joining-tables#choosing-a-join-algorithm).
+Each algorithm has varying support for JOIN types. A full list of supported join types for each algorithm can be found [here](/core/concepts/features/operations/select/joining-tables#choosing-a-join-algorithm).
-You can let ClickHouse choose the best algorithm by setting `join_algorithm = 'auto'` (the default), or explicitly control it based on your workload. If you need to select a join algorithm to optimize for performance or memory overhead, we recommend [this guide](/concepts/operations/select/joining-tables#choosing-a-join-algorithm).
+You can let ClickHouse choose the best algorithm by setting `join_algorithm = 'auto'` (the default), or explicitly control it based on your workload. If you need to select a join algorithm to optimize for performance or memory overhead, we recommend [this guide](/core/concepts/features/operations/select/joining-tables#choosing-a-join-algorithm).
For optimal performance:
@@ -66,4 +66,4 @@ For optimal performance:
* Avoid more than 3–4 joins per query.
* Benchmark different algorithms on real data — performance varies based on JOIN key distribution and data size.
-For more on JOIN optimization strategies, JOIN algorithms, and how to tune them, refer to the[ ClickHouse documentation](/concepts/operations/select/joining-tables) and this [blog series](https://clickhouse.com/blog/clickhouse-fully-supports-joins-part1).
+For more on JOIN optimization strategies, JOIN algorithms, and how to tune them, refer to the[ ClickHouse documentation](/core/concepts/features/operations/select/joining-tables) and this [blog series](https://clickhouse.com/blog/clickhouse-fully-supports-joins-part1).
diff --git a/concepts/best-practices/partitioning-keys.mdx b/core/concepts/best-practices/partitioning-keys.mdx
similarity index 78%
rename from concepts/best-practices/partitioning-keys.mdx
rename to core/concepts/best-practices/partitioning-keys.mdx
index b128fedb..1f2ced7b 100644
--- a/concepts/best-practices/partitioning-keys.mdx
+++ b/core/concepts/best-practices/partitioning-keys.mdx
@@ -32,15 +32,15 @@ ORDER BY (town, street)
PARTITION BY toStartOfMonth(date)
```
-Whenever a set of rows is inserted into the table, instead of creating (at[ least](/reference/settings/session-settings#max_insert_block_size)) one single data part containing all the inserted rows (as described [here](/concepts/core-concepts/parts)), ClickHouse creates one new data part for each unique partition key value among the inserted rows:
+Whenever a set of rows is inserted into the table, instead of creating (at[ least](/core/reference/settings/session-settings#max_insert_block_size)) one single data part containing all the inserted rows (as described [here](/core/concepts/core-concepts/parts)), ClickHouse creates one new data part for each unique partition key value among the inserted rows:
-The ClickHouse server first splits the rows from the example insert with 4 rows sketched in the diagram above by their partition key value `toStartOfMonth(date)`. Then, for each identified partition, the rows are processed as[ usual](/concepts/core-concepts/parts) by performing several sequential steps (① Sorting, ② Splitting into columns, ③ Compression, ④ Writing to Disk).
+The ClickHouse server first splits the rows from the example insert with 4 rows sketched in the diagram above by their partition key value `toStartOfMonth(date)`. Then, for each identified partition, the rows are processed as[ usual](/core/concepts/core-concepts/parts) by performing several sequential steps (① Sorting, ② Splitting into columns, ③ Compression, ④ Writing to Disk).
-For a more detailed explanation of partitioning, we recommend [this guide](/concepts/core-concepts/partitions).
+For a more detailed explanation of partitioning, we recommend [this guide](/core/concepts/core-concepts/partitions).
-With partitioning enabled, ClickHouse only [merges](/concepts/core-concepts/merges) data parts within, but not across partitions. We sketch that for our example table from above:
+With partitioning enabled, ClickHouse only [merges](/core/concepts/core-concepts/merges) data parts within, but not across partitions. We sketch that for our example table from above:
@@ -49,16 +49,16 @@ Partitioning is a powerful tool for managing large datasets in ClickHouse, espec
While partitioning can improve query performance for some workloads, it can also negatively impact response time.
-If the partitioning key isn't in the primary key and you're filtering by it, users may see an improvement in query performance with partitioning. See [here](/concepts/core-concepts/partitions#query-optimization) for an example.
+If the partitioning key isn't in the primary key and you're filtering by it, users may see an improvement in query performance with partitioning. See [here](/core/concepts/core-concepts/partitions#query-optimization) for an example.
Conversely, if queries need to query across partitions performance may be negatively impacted due to a higher number of total parts. For this reason, users should understand their access patterns before considering partitioning a query optimization technique.
-In summary, users should primarily think of partitioning as a data management technique. For an example of managing data, see ["Managing Data"](/guides/observability/build-your-own/managing-data) from the observability use-case guide and ["What are table partitions used for?"](/concepts/core-concepts/partitions#data-management) from Core Concepts - Table partitions.
+In summary, users should primarily think of partitioning as a data management technique. For an example of managing data, see ["Managing Data"](/core/guides/use-cases/observability/build-your-own/managing-data) from the observability use-case guide and ["What are table partitions used for?"](/core/concepts/core-concepts/partitions#data-management) from Core Concepts - Table partitions.
## Choose a low cardinality partitioning key {#choose-a-low-cardinality-partitioning-key}
-Importantly, a higher number of parts will negatively affect query performance. ClickHouse will therefore respond to inserts with a [“too many parts”](/resources/support-center/knowledge-base/troubleshooting/exception-too-many-parts) error if the number of parts exceeds specified limits either in [total](/reference/settings/merge-tree-settings#max_parts_in_total) or [per partition](/reference/settings/merge-tree-settings#parts_to_throw_insert).
+Importantly, a higher number of parts will negatively affect query performance. ClickHouse will therefore respond to inserts with a [“too many parts”](/resources/support-center/knowledge-base/troubleshooting/exception-too-many-parts) error if the number of parts exceeds specified limits either in [total](/core/reference/settings/merge-tree-settings#max_parts_in_total) or [per partition](/core/reference/settings/merge-tree-settings#parts_to_throw_insert).
-Choosing the right **cardinality** for the partitioning key is critical. A high-cardinality partitioning key - where the number of distinct partition values is large - can lead to a proliferation of data parts. Since ClickHouse doesn't merge parts across partitions, too many partitions will result in too many unmerged parts, eventually triggering the “Too many parts” error. [Merges are essential](/concepts/core-concepts/merges) for reducing storage fragmentation and optimizing query speed, but with high-cardinality partitions, that merge potential is lost.
+Choosing the right **cardinality** for the partitioning key is critical. A high-cardinality partitioning key - where the number of distinct partition values is large - can lead to a proliferation of data parts. Since ClickHouse doesn't merge parts across partitions, too many partitions will result in too many unmerged parts, eventually triggering the “Too many parts” error. [Merges are essential](/core/concepts/core-concepts/merges) for reducing storage fragmentation and optimizing query speed, but with high-cardinality partitions, that merge potential is lost.
By contrast, a **low-cardinality partitioning key**—with fewer than 100 - 1,000 distinct values - is usually optimal. It enables efficient part merging, keeps metadata overhead low, and avoids excessive object creation in storage. In addition, ClickHouse automatically builds MinMax indexes on partition columns, which can significantly speed up queries that filter on those columns. For example, filtering by month when the table is partitioned by `toStartOfMonth(date)` allows the engine to skip irrelevant partitions and their parts entirely.
diff --git a/concepts/best-practices/select-data-type.mdx b/core/concepts/best-practices/select-data-type.mdx
similarity index 97%
rename from concepts/best-practices/select-data-type.mdx
rename to core/concepts/best-practices/select-data-type.mdx
index 1cffb406..60c5a4b8 100644
--- a/concepts/best-practices/select-data-type.mdx
+++ b/core/concepts/best-practices/select-data-type.mdx
@@ -17,9 +17,9 @@ Some straightforward guidelines can significantly enhance the schema:
* **Use Strict Types:** Always select the correct data type for columns. Numeric and date fields should use appropriate numeric and date types rather than general-purpose String types. This ensures correct semantics for filtering and aggregations.
-* **Avoid nullable Columns:** Nullable columns introduce additional overhead by maintaining separate columns for tracking null values. Only use Nullable if explicitly required to distinguish between empty and null states. Otherwise, default or zero-equivalent values typically suffice. For further information on why this type should be avoided unless needed, see [Avoid nullable Columns](/concepts/best-practices/select-data-type#avoid-nullable-columns).
+* **Avoid nullable Columns:** Nullable columns introduce additional overhead by maintaining separate columns for tracking null values. Only use Nullable if explicitly required to distinguish between empty and null states. Otherwise, default or zero-equivalent values typically suffice. For further information on why this type should be avoided unless needed, see [Avoid nullable Columns](/core/concepts/best-practices/select-data-type#avoid-nullable-columns).
-* **Minimize Numeric Precision:** Select numeric types with minimal bit-width that still accommodate the expected data range. For instance, prefer [UInt16 over Int32](/reference/data-types/int-uint) if negative values aren't needed, and the range fits within 0–65535.
+* **Minimize Numeric Precision:** Select numeric types with minimal bit-width that still accommodate the expected data range. For instance, prefer [UInt16 over Int32](/core/reference/data-types/int-uint) if negative values aren't needed, and the range fits within 0–65535.
* **Optimize Date and Time Precision:** Choose the most coarse-grained date or datetime type that meets query requirements. Use Date or Date32 for date-only fields, and prefer DateTime over DateTime64 unless millisecond or finer precision is essential.
@@ -29,7 +29,7 @@ Some straightforward guidelines can significantly enhance the schema:
## Example {#example}
-ClickHouse offers built-in tools to streamline type optimization. For example, schema inference can automatically identify initial types. Consider the Stack Overflow dataset, publicly available in Parquet format. Running a simple schema inference via the [`DESCRIBE`](/reference/statements/describe-table) command provides an initial non-optimized schema.
+ClickHouse offers built-in tools to streamline type optimization. For example, schema inference can automatically identify initial types. Consider the Stack Overflow dataset, publicly available in Parquet format. Running a simple schema inference via the [`DESCRIBE`](/core/reference/statements/describe-table) command provides an initial non-optimized schema.
By default, ClickHouse maps these to equivalent Nullable types. This is preferred as the schema is based on a sample of the rows only.
diff --git a/concepts/best-practices/selecting-an-insert-strategy.mdx b/core/concepts/best-practices/selecting-an-insert-strategy.mdx
similarity index 74%
rename from concepts/best-practices/selecting-an-insert-strategy.mdx
rename to core/concepts/best-practices/selecting-an-insert-strategy.mdx
index 7773c92c..d2c05c2a 100644
--- a/concepts/best-practices/selecting-an-insert-strategy.mdx
+++ b/core/concepts/best-practices/selecting-an-insert-strategy.mdx
@@ -16,7 +16,7 @@ import BulkInserts from '/snippets/_bulk_inserts.mdx';
Efficient data ingestion forms the basis of high-performance ClickHouse deployments. Selecting the right insert strategy can dramatically impact throughput, cost, and reliability. This section outlines best practices, tradeoffs, and configuration options to help you make the right decision for your workload.
-The following assumes you're pushing data to ClickHouse via a client. If you're pulling data into ClickHouse e.g. using built in table functions such as [s3](/reference/functions/table-functions/s3) and [gcs](/reference/functions/table-functions/gcs), we recommend our guide ["Optimizing for S3 Insert and Read Performance"](/integrations/connectors/data-ingestion/AWS/performance).
+The following assumes you're pushing data to ClickHouse via a client. If you're pulling data into ClickHouse e.g. using built in table functions such as [s3](/core/reference/functions/table-functions/s3) and [gcs](/core/reference/functions/table-functions/gcs), we recommend our guide ["Optimizing for S3 Insert and Read Performance"](/integrations/connectors/data-ingestion/AWS/performance).
## Synchronous inserts by default {#synchronous-inserts-by-default}
@@ -37,19 +37,19 @@ If not, see [Asynchronous inserts](#asynchronous-inserts) below.
For optimal performance, data must be ①[ batched](https://clickhouse.com/blog/asynchronous-data-inserts-in-clickhouse#data-needs-to-be-batched-for-optimal-performance), making batch size the **first decision**.
-ClickHouse stores inserted data on disk,[ ordered](/guides/cloud-oss/data-modelling/sparse-primary-indexes#data-is-stored-on-disk-ordered-by-primary-key-columns) by the table's primary key columns. The **second decision** is whether to ② pre-sort the data before transmission to the server. If a batch arrives pre-sorted by primary key columns, ClickHouse can [skip](https://github.com/ClickHouse/ClickHouse/blob/94ce8e95404e991521a5608cd9d636ff7269743d/src/Storages/MergeTree/MergeTreeDataWriter.cpp#L595) the ⑩ sorting step, speeding up ingestion.
+ClickHouse stores inserted data on disk,[ ordered](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#data-is-stored-on-disk-ordered-by-primary-key-columns) by the table's primary key columns. The **second decision** is whether to ② pre-sort the data before transmission to the server. If a batch arrives pre-sorted by primary key columns, ClickHouse can [skip](https://github.com/ClickHouse/ClickHouse/blob/94ce8e95404e991521a5608cd9d636ff7269743d/src/Storages/MergeTree/MergeTreeDataWriter.cpp#L595) the ⑩ sorting step, speeding up ingestion.
-If the data to be ingested has no predefined format, the **key decision** is choosing a format. ClickHouse supports inserting data in [over 70 formats](/reference/formats). However, when using the ClickHouse command-line client or programming language clients, this choice is often handled automatically. If needed, this automatic selection can also be overridden explicitly.
+If the data to be ingested has no predefined format, the **key decision** is choosing a format. ClickHouse supports inserting data in [over 70 formats](/core/reference/formats). However, when using the ClickHouse command-line client or programming language clients, this choice is often handled automatically. If needed, this automatic selection can also be overridden explicitly.
The next **major decision** is ④ whether to compress data before transmission to the ClickHouse server. Compression reduces transfer size and improves network efficiency, leading to faster data transfers and lower bandwidth usage, especially for large datasets.
-The data is ⑤ transmitted to a ClickHouse network interface—either the [native](/integrations/connectors/data-integrations/drivers-and-interfaces/tcp) or[ HTTP](/integrations/connectors/data-integrations/drivers-and-interfaces/http) interface (which we [compare](https://clickhouse.com/blog/clickhouse-input-format-matchup-which-is-fastest-most-efficient#clickhouse-client-defaults) later in this post).
+The data is ⑤ transmitted to a ClickHouse network interface—either the [native](/core/concepts/features/interfaces/tcp) or[ HTTP](/core/concepts/features/interfaces/http) interface (which we [compare](https://clickhouse.com/blog/clickhouse-input-format-matchup-which-is-fastest-most-efficient#clickhouse-client-defaults) later in this post).
#### Server-side steps {#server-side-steps}
After ⑥ receiving the data, ClickHouse ⑦ decompresses it if compression was used, then ⑧ parses it from the originally sent format.
-Using the values from that formatted data and the target table's [DDL](/reference/statements/create/table) statement, ClickHouse ⑨ builds an in-memory [block](/resources/contribute/architecture#block) in the MergeTree format, ⑩ [sorts](/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) rows by the primary key columns if they're not already pre-sorted, ⑪ creates a [sparse primary index](/guides/cloud-oss/data-modelling/sparse-primary-indexes), ⑫ applies [per-column compression](/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse), and ⑬ writes the data as a new ⑭ [data part](/concepts/core-concepts/parts) to disk.
+Using the values from that formatted data and the target table's [DDL](/core/reference/statements/create/table) statement, ClickHouse ⑨ builds an in-memory [block](/resources/develop-contribute/introduction/architecture#block) in the MergeTree format, ⑩ [sorts](/core/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) rows by the primary key columns if they're not already pre-sorted, ⑪ creates a [sparse primary index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes), ⑫ applies [per-column compression](/core/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse), and ⑬ writes the data as a new ⑭ [data part](/core/concepts/core-concepts/parts) to disk.
### Batch inserts if synchronous {#batch-inserts-if-synchronous}
@@ -69,7 +69,7 @@ In both cases, it's safe to **retry the insert** — as long as the batch conten
For sharded clusters, you have two options:
* Insert directly into a **MergeTree** or **ReplicatedMergeTree** table. This is the most efficient option when the client can perform load balancing across shards. With `internal_replication = true`, ClickHouse handles replication transparently.
-* Insert into a [Distributed table](/reference/engines/table-engines/special/distributed). This allows clients to send data to any node and let ClickHouse forward it to the correct shard. This is simpler but slightly less performant due to the extra forwarding step. `internal_replication = true` is still recommended.
+* Insert into a [Distributed table](/core/reference/engines/table-engines/special/distributed). This allows clients to send data to any node and let ClickHouse forward it to the correct shard. This is simpler but slightly less performant due to the extra forwarding step. `internal_replication = true` is still recommended.
**In ClickHouse Cloud all nodes read and write to the same single shard. Inserts are automatically balanced across nodes. You can simply send inserts to the exposed endpoint.**
@@ -112,9 +112,9 @@ The impact of compression on CPU and memory is modest for LZ4, and moderate for
**Combining compression with batching and an efficient input format (like Native) yields the best ingestion performance.**
-When using the native interface (e.g. [clickhouse-client](/integrations/connectors/data-integrations/drivers-and-interfaces/cli)), LZ4 compression is enabled by default. You can optionally switch to ZSTD via settings.
+When using the native interface (e.g. [clickhouse-client](/core/concepts/features/interfaces/cli)), LZ4 compression is enabled by default. You can optionally switch to ZSTD via settings.
-With the [HTTP interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http), use the Content-Encoding header to apply compression (e.g. Content-Encoding: lz4). The entire payload must be compressed before sending.
+With the [HTTP interface](/core/concepts/features/interfaces/http), use the Content-Encoding header to apply compression (e.g. Content-Encoding: lz4). The entire payload must be compressed before sending.
### Pre-sort if low cost {#pre-sort-if-low-cost}
@@ -134,16 +134,16 @@ When data arrives pre-sorted, ClickHouse can skip or simplify the internal sorti
### Native {#choose-an-interface-native}
-ClickHouse offers two main interfaces for data ingestion: the **native interface** and the **HTTP interface**—each with trade-offs between performance and flexibility. The native interface, used by [clickhouse-client](/integrations/connectors/data-integrations/drivers-and-interfaces/cli) and select language clients like Go and C++, is purpose-built for performance. It always transmits data in ClickHouse's highly efficient Native format, supports block-wise compression with LZ4 or ZSTD, and minimizes server-side processing by offloading work such as parsing and format conversion to the client.
+ClickHouse offers two main interfaces for data ingestion: the **native interface** and the **HTTP interface**—each with trade-offs between performance and flexibility. The native interface, used by [clickhouse-client](/core/concepts/features/interfaces/cli) and select language clients like Go and C++, is purpose-built for performance. It always transmits data in ClickHouse's highly efficient Native format, supports block-wise compression with LZ4 or ZSTD, and minimizes server-side processing by offloading work such as parsing and format conversion to the client.
It even enables client-side computation of MATERIALIZED and DEFAULT column values, allowing the server to skip these steps entirely. This makes the native interface ideal for high-throughput ingestion scenarios where efficiency is critical.
### HTTP {#choose-an-interface-http}
-Unlike many traditional databases, ClickHouse also supports an HTTP interface. **This, by contrast, prioritizes compatibility and flexibility.** It allows data to be sent in [any supported format](/integrations/connectors/data-ingestion/data-formats/intro)—including JSON, CSV, Parquet, and others—and is widely supported across most ClickHouse clients, including Python, Java, JavaScript, and Rust.
+Unlike many traditional databases, ClickHouse also supports an HTTP interface. **This, by contrast, prioritizes compatibility and flexibility.** It allows data to be sent in [any supported format](/core/guides/clickhouse/data-formats/intro)—including JSON, CSV, Parquet, and others—and is widely supported across most ClickHouse clients, including Python, Java, JavaScript, and Rust.
This is often preferable to ClickHouse's native protocol as it allows traffic to be easily switched with load balancers. We expect small differences in insert performance with the native protocol, which incurs a little less overhead.
However, it lacks the native protocol's deeper integration and can't perform client-side optimizations like materialized value computation or automatic conversion to Native format. While HTTP inserts can still be compressed using standard HTTP headers (e.g. `Content-Encoding: lz4`), the compression is applied to the entire payload rather than individual data blocks. This interface is often preferred in environments where protocol simplicity, load balancing, or broad format compatibility is more important than raw performance.
-For a more detailed description of these interfaces see [here](/integrations/connectors/data-integrations/drivers-and-interfaces/overview).
+For a more detailed description of these interfaces see [here](/core/concepts/features/interfaces/overview).
diff --git a/concepts/best-practices/use-materialized-views.mdx b/core/concepts/best-practices/use-materialized-views.mdx
similarity index 87%
rename from concepts/best-practices/use-materialized-views.mdx
rename to core/concepts/best-practices/use-materialized-views.mdx
index 7c836624..3b9061c6 100644
--- a/concepts/best-practices/use-materialized-views.mdx
+++ b/core/concepts/best-practices/use-materialized-views.mdx
@@ -10,9 +10,9 @@ doc_type: 'guide'
import { Image } from "/snippets/components/Image.jsx";
-ClickHouse supports two types of materialized views: [**incremental**](/concepts/features/materialized-views/incremental-materialized-view) and [**refreshable**](/concepts/features/materialized-views/refreshable-materialized-view). While both are designed to accelerate queries by pre-computing and storing results, they differ significantly in how and when the underlying queries are executed, what workloads they're suited for, and how data freshness is handled.
+ClickHouse supports two types of materialized views: [**incremental**](/core/concepts/features/materialized-views/incremental-materialized-view) and [**refreshable**](/core/concepts/features/materialized-views/refreshable-materialized-view). While both are designed to accelerate queries by pre-computing and storing results, they differ significantly in how and when the underlying queries are executed, what workloads they're suited for, and how data freshness is handled.
-**You should consider materialized views for specific query patterns which need to be accelerated, assuming previous best practices [regarding type](/concepts/best-practices/select-data-type) and [primary key optimization](/concepts/best-practices/choosing-a-primary-key) have been performed.**
+**You should consider materialized views for specific query patterns which need to be accelerated, assuming previous best practices [regarding type](/core/concepts/best-practices/select-data-type) and [primary key optimization](/core/concepts/best-practices/choosing-a-primary-key) have been performed.**
**Incremental materialized views** are updated in real-time. As new data is inserted into the source table, ClickHouse automatically applies the materialized view's query to the new data block and writes the results to a separate target table. Over time, ClickHouse merges these partial results to produce a complete, up-to-date view. This approach is highly efficient because it shifts the computational cost to insert time and only processes new data. As a result, `SELECT` queries against the target table are fast and lightweight. Incremental views support all aggregation functions and scale well—even to petabytes of data—because each query operates on a small, recent subset of the dataset being inserted.
@@ -34,7 +34,7 @@ Use incremental materialized views when:
- You're aggregating or filtering large volumes of data frequently.
- Your queries involve straightforward transformations or aggregations on single tables.
-For examples of incremental materialized views see [here](/concepts/features/materialized-views/incremental-materialized-view).
+For examples of incremental materialized views see [here](/core/concepts/features/materialized-views/incremental-materialized-view).
## When to use refreshable materialized views {#when-to-use-refreshable-materialized-views}
@@ -54,7 +54,7 @@ In summary, use refreshable materialized views when:
- You're performing complex joins or denormalization involving multiple tables, requiring updates whenever any source table changes.
- You're building batch workflows, denormalization tasks, or creating view dependencies similar to DBT DAGs.
-For examples of refreshable materialized views see [here](/concepts/features/materialized-views/refreshable-materialized-view).
+For examples of refreshable materialized views see [here](/core/concepts/features/materialized-views/refreshable-materialized-view).
### APPEND vs REPLACE mode {#append-vs-replace-mode}
diff --git a/concepts/best-practices/using-data-skipping-indices.mdx b/core/concepts/best-practices/using-data-skipping-indices.mdx
similarity index 93%
rename from concepts/best-practices/using-data-skipping-indices.mdx
rename to core/concepts/best-practices/using-data-skipping-indices.mdx
index 47d9c581..cbc52bf9 100644
--- a/concepts/best-practices/using-data-skipping-indices.mdx
+++ b/core/concepts/best-practices/using-data-skipping-indices.mdx
@@ -10,13 +10,13 @@ doc_type: 'guide'
import { Image } from "/snippets/components/Image.jsx";
-Data skipping indices should be considered when previous best practices have been followed i.e. types are optimized, a good primary key has been selected and materialized views have been exploited. If you're new to skipping indices, [this guide](/concepts/features/performance/skip-indexes/skipping-indexes) is a good place to start.
+Data skipping indices should be considered when previous best practices have been followed i.e. types are optimized, a good primary key has been selected and materialized views have been exploited. If you're new to skipping indices, [this guide](/core/concepts/features/performance/skip-indexes/skipping-indexes) is a good place to start.
These types of indices can be used to accelerate query performance if used carefully with an understanding of how they work.
ClickHouse provides a powerful mechanism called **data skipping indices** that can dramatically reduce the amount of data scanned during query execution — particularly when the primary key isn't helpful for a specific filter condition. Unlike traditional databases that rely on row-based secondary indexes (like B-trees), ClickHouse is a column-store and doesn't store row locations in a way that supports such structures. Instead, it uses skip indexes, which help it avoid reading blocks of data guaranteed not to match a query's filtering conditions.
-Skip indexes work by storing metadata about blocks of data — such as min/max values, value sets, or Bloom filter representations — and using this metadata during query execution to determine which data blocks can be skipped entirely. They apply only to the [MergeTree family](/reference/engines/table-engines/mergetree-family/mergetree) of table engines and are defined using an expression, an index type, a name, and a granularity that defines the size of each indexed block. These indexes are stored alongside the table data and are consulted when the query filter matches the index expression.
+Skip indexes work by storing metadata about blocks of data — such as min/max values, value sets, or Bloom filter representations — and using this metadata during query execution to determine which data blocks can be skipped entirely. They apply only to the [MergeTree family](/core/reference/engines/table-engines/mergetree-family/mergetree) of table engines and are defined using an expression, an index type, a name, and a granularity that defines the size of each indexed block. These indexes are stored alongside the table data and are consulted when the query filter matches the index expression.
There are several types of data skipping indexes, each suited to different types of queries and data distributions:
@@ -45,7 +45,7 @@ Always:
**When used appropriately, skip indexes can provide a substantial performance boost — when used blindly, they can add unnecessary cost.**
-For a more detailed guide on Data Skipping Indices see [here](/reference/statements/alter/skipping-index).
+For a more detailed guide on Data Skipping Indices see [here](/core/reference/statements/alter/skipping-index).
## Example {#example}
@@ -251,7 +251,7 @@ We also show an animation how the minmax skipping index prunes all row blocks th
## Related docs {#related-docs}
-- [Data skipping indices guide](/concepts/features/performance/skip-indexes/skipping-indexes)
-- [Data skipping index examples](/concepts/features/performance/skip-indexes/skipping-indexes-examples)
-- [Manipulating data skipping indices](/reference/statements/alter/skipping-index)
-- [System table information](/reference/system-tables/data_skipping_indices)
+- [Data skipping indices guide](/core/concepts/features/performance/skip-indexes/skipping-indexes)
+- [Data skipping index examples](/core/concepts/features/performance/skip-indexes/skipping-indexes-examples)
+- [Manipulating data skipping indices](/core/reference/statements/alter/skipping-index)
+- [System table information](/core/reference/system-tables/data_skipping_indices)
diff --git a/concepts/core-concepts/academic-overview.mdx b/core/concepts/core-concepts/academic-overview.mdx
similarity index 100%
rename from concepts/core-concepts/academic-overview.mdx
rename to core/concepts/core-concepts/academic-overview.mdx
diff --git a/concepts/core-concepts/glossary.mdx b/core/concepts/core-concepts/glossary.mdx
similarity index 99%
rename from concepts/core-concepts/glossary.mdx
rename to core/concepts/core-concepts/glossary.mdx
index cc3cad88..6a66fda1 100644
--- a/concepts/core-concepts/glossary.mdx
+++ b/core/concepts/core-concepts/glossary.mdx
@@ -2,7 +2,7 @@
sidebarTitle: 'Glossary'
description: 'This page contains a list of commonly used words and phrases regarding ClickHouse, as well as their definitions.'
title: 'Glossary'
-slug: /concepts/glossary
+slug: /core/concepts/glossary
keywords: ['glossary', 'definitions', 'terminology']
doc_type: 'reference'
---
diff --git a/concepts/core-concepts/index.mdx b/core/concepts/core-concepts/index.mdx
similarity index 73%
rename from concepts/core-concepts/index.mdx
rename to core/concepts/core-concepts/index.mdx
index e48655cd..d504dcea 100644
--- a/concepts/core-concepts/index.mdx
+++ b/core/concepts/core-concepts/index.mdx
@@ -11,9 +11,9 @@ you will learn some of the core concepts of how ClickHouse works.
| Page | Description |
|----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Table parts](/concepts/core-concepts/parts) | Learn what table parts are in ClickHouse. |
+| [Table parts](/core/concepts/core-concepts/parts) | Learn what table parts are in ClickHouse. |
| [Table partitions](./partitions.mdx) | Learn what table partitions are and what they're used for. |
| [Table part merges](./merges.mdx) | Learn what table part merges are and what they're used for. |
-| [Table shards and replicas](/guides/oss/deployment-and-scaling/shards) | Learn what table shards and replicas are and what they're used for. |
+| [Table shards and replicas](/core/guides/oss/deployment-and-scaling/shards) | Learn what table shards and replicas are and what they're used for. |
| [Primary indexes](./primary-indexes.mdx) | Introduces ClickHouse's sparse primary index and how it helps efficiently skip unnecessary data during query execution. Explains how the index is built and used, with examples and tools for observing its effect. Links to a deep dive for advanced use cases and best practices. |
-| [Architectural Overview](/concepts/core-concepts/academic-overview) | A concise academic overview of all components of the ClickHouse architecture, based on our VLDB 2024 scientific paper. |
+| [Architectural Overview](/core/concepts/core-concepts/academic-overview) | A concise academic overview of all components of the ClickHouse architecture, based on our VLDB 2024 scientific paper. |
diff --git a/concepts/core-concepts/merges.mdx b/core/concepts/core-concepts/merges.mdx
similarity index 57%
rename from concepts/core-concepts/merges.mdx
rename to core/concepts/core-concepts/merges.mdx
index 8bcd1e33..8dbb16e3 100644
--- a/concepts/core-concepts/merges.mdx
+++ b/core/concepts/core-concepts/merges.mdx
@@ -11,15 +11,15 @@ import { Image } from "/snippets/components/Image.jsx";
## What are part merges in ClickHouse? {#what-are-part-merges-in-clickhouse}
-ClickHouse [is fast](/get-started/about/why-clickhouse-is-so-fast) not just for queries but also for inserts, thanks to its [storage layer](https://www.vldb.org/pvldb/vol17/p3731-schulze.pdf), which operates similarly to [LSM trees](https://en.wikipedia.org/wiki/Log-structured_merge-tree):
+ClickHouse [is fast](/core/get-started/about/why-clickhouse-is-so-fast) not just for queries but also for inserts, thanks to its [storage layer](https://www.vldb.org/pvldb/vol17/p3731-schulze.pdf), which operates similarly to [LSM trees](https://en.wikipedia.org/wiki/Log-structured_merge-tree):
-① Inserts (into tables from the [MergeTree engine](/reference/engines/table-engines/mergetree-family) family) create sorted, immutable [data parts](/concepts/core-concepts/parts).
+① Inserts (into tables from the [MergeTree engine](/core/reference/engines/table-engines/mergetree-family) family) create sorted, immutable [data parts](/core/concepts/core-concepts/parts).
② All data processing is offloaded to **background part merges**.
-This makes data writes lightweight and [highly efficient](/get-started/about/why-clickhouse-is-so-fast#storage-layer-concurrent-inserts-are-isolated-from-each-other).
+This makes data writes lightweight and [highly efficient](/core/get-started/about/why-clickhouse-is-so-fast#storage-layer-concurrent-inserts-are-isolated-from-each-other).
-To control the number of parts per table and implement ② above, ClickHouse continuously merges ([per partition](/concepts/core-concepts/partitions#per-partition-merges)) smaller parts into larger ones in the background until they reach a compressed size of approximately [~150 GB](/reference/settings/merge-tree-settings#max_bytes_to_merge_at_max_space_in_pool).
+To control the number of parts per table and implement ② above, ClickHouse continuously merges ([per partition](/core/concepts/core-concepts/partitions#per-partition-merges)) smaller parts into larger ones in the background until they reach a compressed size of approximately [~150 GB](/core/reference/settings/merge-tree-settings#max_bytes_to_merge_at_max_space_in_pool).
The following diagram sketches this background merge process:
@@ -27,10 +27,10 @@ The following diagram sketches this background merge process:
-The `merge level` of a part is incremented by one with each additional merge. A level of `0` means the part is new and hasn't been merged yet. Parts that were merged into larger parts are marked as [inactive](/reference/system-tables/parts) and finally deleted after a [configurable](/reference/settings/merge-tree-settings#old_parts_lifetime) time (8 minutes by default). Over time, this creates a **tree** of merged parts. Hence the name [merge tree](/reference/engines/table-engines/mergetree-family) table.
+The `merge level` of a part is incremented by one with each additional merge. A level of `0` means the part is new and hasn't been merged yet. Parts that were merged into larger parts are marked as [inactive](/core/reference/system-tables/parts) and finally deleted after a [configurable](/core/reference/settings/merge-tree-settings#old_parts_lifetime) time (8 minutes by default). Over time, this creates a **tree** of merged parts. Hence the name [merge tree](/core/reference/engines/table-engines/mergetree-family) table.
## Monitoring merges {#monitoring-merges}
-In the [what are table parts](/concepts/core-concepts/parts) example, we [showed](/concepts/core-concepts/parts#monitoring-table-parts) that ClickHouse tracks all table parts in the [parts](/reference/system-tables/parts) system table. We used the following query to retrieve the merge level and the number of stored rows per active part of the example table:
+In the [what are table parts](/core/concepts/core-concepts/parts) example, we [showed](/core/concepts/core-concepts/parts#monitoring-table-parts) that ClickHouse tracks all table parts in the [parts](/core/reference/system-tables/parts) system table. We used the following query to retrieve the merge level and the number of stored rows per active part of the example table:
```sql
SELECT
name,
@@ -41,7 +41,7 @@ WHERE (database = 'uk') AND (`table` = 'uk_price_paid_simple') AND active
ORDER BY name ASC;
```
-The [previously documented](/concepts/core-concepts/parts#monitoring-table-parts) query result shows that the example table had four active parts, each created from a single merge of the initially inserted parts:
+The [previously documented](/core/concepts/core-concepts/parts#monitoring-table-parts) query result shows that the example table had four active parts, each created from a single merge of the initially inserted parts:
```response
┌─name────────┬─level─┬────rows─┐
1. │ all_0_5_1 │ 1 │ 6368414 │
@@ -74,7 +74,7 @@ The recorded dashboard above captures the entire process, from the initial data
③ [Write amplification](https://en.wikipedia.org/wiki/Write_amplification).
## Concurrent merges {#concurrent-merges}
-A single ClickHouse server uses several background [merge threads](/reference/settings/server-settings/settings#background_pool_size) to execute concurrent part merges:
+A single ClickHouse server uses several background [merge threads](/core/reference/settings/server-settings/settings#background_pool_size) to execute concurrent part merges:
@@ -93,10 +93,10 @@ Go to ①
Note that increasing the number of CPU cores and the size of RAM allows to increase the background merge throughput.
## Memory optimized merges {#memory-optimized-merges}
-ClickHouse doesn't necessarily load all parts to be merged into memory at once, as sketched in the [previous example](/concepts/core-concepts/merges#concurrent-merges). Based on several [factors](https://github.com/ClickHouse/ClickHouse/blob/bf37120c925ed846ae5cd72cd51e6340bebd2918/src/Storages/MergeTree/MergeTreeSettings.cpp#L210), and to reduce memory consumption (sacrificing merge speed), so-called [vertical merging](https://github.com/ClickHouse/ClickHouse/blob/bf37120c925ed846ae5cd72cd51e6340bebd2918/src/Storages/MergeTree/MergeTreeSettings.cpp#L209) loads and merges parts by chunks of blocks instead of in one go.
+ClickHouse doesn't necessarily load all parts to be merged into memory at once, as sketched in the [previous example](/core/concepts/core-concepts/merges#concurrent-merges). Based on several [factors](https://github.com/ClickHouse/ClickHouse/blob/bf37120c925ed846ae5cd72cd51e6340bebd2918/src/Storages/MergeTree/MergeTreeSettings.cpp#L210), and to reduce memory consumption (sacrificing merge speed), so-called [vertical merging](https://github.com/ClickHouse/ClickHouse/blob/bf37120c925ed846ae5cd72cd51e6340bebd2918/src/Storages/MergeTree/MergeTreeSettings.cpp#L209) loads and merges parts by chunks of blocks instead of in one go.
## Merge mechanics {#merge-mechanics}
-The diagram below illustrates how a single background [merge thread](/concepts/core-concepts/merges#concurrent-merges) in ClickHouse merges parts (by default, without [vertical merging](/concepts/core-concepts/merges#memory-optimized-merges)):
+The diagram below illustrates how a single background [merge thread](/core/concepts/core-concepts/merges#concurrent-merges) in ClickHouse merges parts (by default, without [vertical merging](/core/concepts/core-concepts/merges#memory-optimized-merges)):
@@ -104,33 +104,33 @@ The diagram below illustrates how a single background [merge thread](/concepts/c
The part merging is performed in several steps:
-**① Decompression & Loading**: The [compressed binary column files](/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) from the parts to be merged are decompressed and loaded into memory.
+**① Decompression & Loading**: The [compressed binary column files](/core/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) from the parts to be merged are decompressed and loaded into memory.
**② Merging**: The data is merged into larger column files.
-**③ Indexing**: A new [sparse primary index](/guides/cloud-oss/data-modelling/sparse-primary-indexes) is generated for the merged column files.
+**③ Indexing**: A new [sparse primary index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes) is generated for the merged column files.
-**④ Compression & Storage**: The new column files and index are [compressed](/reference/statements/create/table#column_compression_codec) and saved in a new [directory](/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) representing the merged data part.
+**④ Compression & Storage**: The new column files and index are [compressed](/core/reference/statements/create/table#column_compression_codec) and saved in a new [directory](/core/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) representing the merged data part.
-Additional [metadata in data parts](/concepts/core-concepts/parts), such as secondary data skipping indexes, column statistics, checksums, and min-max indexes, is also recreated based on the merged column files. We omitted these details for simplicity.
+Additional [metadata in data parts](/core/concepts/core-concepts/parts), such as secondary data skipping indexes, column statistics, checksums, and min-max indexes, is also recreated based on the merged column files. We omitted these details for simplicity.
-The mechanics of step ② depend on the specific [MergeTree engine](/reference/engines/table-engines/mergetree-family) used, as different engines handle merging differently. For example, rows may be aggregated or replaced if outdated. As mentioned earlier, this approach **offloads all data processing to background merges**, enabling **super-fast inserts** by keeping write operations lightweight and efficient.
+The mechanics of step ② depend on the specific [MergeTree engine](/core/reference/engines/table-engines/mergetree-family) used, as different engines handle merging differently. For example, rows may be aggregated or replaced if outdated. As mentioned earlier, this approach **offloads all data processing to background merges**, enabling **super-fast inserts** by keeping write operations lightweight and efficient.
Next, we will briefly outline the merge mechanics of specific engines in the MergeTree family.
### Standard merges {#standard-merges}
-The diagram below illustrates how parts in a standard [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) table are merged:
+The diagram below illustrates how parts in a standard [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table are merged:
-The DDL statement in the diagram above creates a `MergeTree` table with a sorting key `(town, street)`, [meaning](/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) data on disk is sorted by these columns, and a sparse primary index is generated accordingly.
+The DDL statement in the diagram above creates a `MergeTree` table with a sorting key `(town, street)`, [meaning](/core/concepts/core-concepts/parts#what-are-table-parts-in-clickhouse) data on disk is sorted by these columns, and a sparse primary index is generated accordingly.
The ① decompressed, pre-sorted table columns are ② merged while preserving the table's global sorting order defined by the table's sorting key, ③ a new sparse primary index is generated, and ④ the merged column files and index are compressed and stored as a new data part on disk.
### Replacing merges {#replacing-merges}
-Part merges in a [ReplacingMergeTree](/reference/engines/table-engines/mergetree-family/replacingmergetree) table work similarly to [standard merges](/concepts/core-concepts/merges#standard-merges), but only the most recent version of each row is retained, with older versions being discarded:
+Part merges in a [ReplacingMergeTree](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) table work similarly to [standard merges](/core/concepts/core-concepts/merges#standard-merges), but only the most recent version of each row is retained, with older versions being discarded:
@@ -145,7 +145,7 @@ However, the `ReplacingMergeTree` removes duplicate rows with the same sorting k
### Summing merges {#summing-merges}
-Numeric data is automatically summarized during merges of parts from a [SummingMergeTree](/reference/engines/table-engines/mergetree-family/summingmergetree) table:
+Numeric data is automatically summarized during merges of parts from a [SummingMergeTree](/core/reference/engines/table-engines/mergetree-family/summingmergetree) table:
@@ -156,7 +156,7 @@ The DDL statement in the diagram above defines a `SummingMergeTree` table with `
In the ② merging step, ClickHouse replaces all rows with the same sorting key with a single row, summing the values of numeric columns.
### Aggregating merges {#aggregating-merges}
-The `SummingMergeTree` table example from above is a specialized variant of the [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table, allowing [automatic incremental data transformation](https://www.youtube.com/watch?v=QDAJTKZT8y4) by applying any of [90+](/reference/functions/aggregate-functions/reference) aggregation functions during part merges:
+The `SummingMergeTree` table example from above is a specialized variant of the [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table, allowing [automatic incremental data transformation](https://www.youtube.com/watch?v=QDAJTKZT8y4) by applying any of [90+](/core/reference/functions/aggregate-functions/reference) aggregation functions during part merges:
diff --git a/concepts/core-concepts/partitions.mdx b/core/concepts/core-concepts/partitions.mdx
similarity index 76%
rename from concepts/core-concepts/partitions.mdx
rename to core/concepts/core-concepts/partitions.mdx
index 9467d405..2f8d797f 100644
--- a/concepts/core-concepts/partitions.mdx
+++ b/core/concepts/core-concepts/partitions.mdx
@@ -12,12 +12,12 @@ import { RunnableCode } from "/snippets/components/RunnableCode/RunnableCode.jsx
## What are table partitions in ClickHouse? {#what-are-table-partitions-in-clickhouse}
-Partitions group the [data parts](/concepts/core-concepts/parts) of a table in the [MergeTree engine family](/reference/engines/table-engines/mergetree-family) into organized, logical units, which is a way of organizing data that is conceptually meaningful and aligned with specific criteria, such as time ranges, categories, or other key attributes. These logical units make data easier to manage, query, and optimize.
+Partitions group the [data parts](/core/concepts/core-concepts/parts) of a table in the [MergeTree engine family](/core/reference/engines/table-engines/mergetree-family) into organized, logical units, which is a way of organizing data that is conceptually meaningful and aligned with specific criteria, such as time ranges, categories, or other key attributes. These logical units make data easier to manage, query, and optimize.
### PARTITION BY {#partition-by}
-Partitioning can be enabled when a table is initially defined via the [PARTITION BY clause](/reference/engines/table-engines/mergetree-family/custom-partitioning-key). This clause can contain a SQL expression on any columns, the results of which will define which partition a row belongs to.
+Partitioning can be enabled when a table is initially defined via the [PARTITION BY clause](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key). This clause can contain a SQL expression on any columns, the results of which will define which partition a row belongs to.
-To illustrate this, we [enhance](https://sql.clickhouse.com/?query=U0hPVyBDUkVBVEUgVEFCTEUgdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQ&run_query=true&tab=results) the [What are table parts](/concepts/core-concepts/parts) example table by adding a `PARTITION BY toStartOfMonth(date)` clause, which organizes the table`s data parts based on the months of property sales:
+To illustrate this, we [enhance](https://sql.clickhouse.com/?query=U0hPVyBDUkVBVEUgVEFCTEUgdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQ&run_query=true&tab=results) the [What are table parts](/core/concepts/core-concepts/parts) example table by adding a `PARTITION BY toStartOfMonth(date)` clause, which organizes the table`s data parts based on the months of property sales:
```sql
CREATE TABLE uk.uk_price_paid_simple_partitioned
@@ -35,19 +35,19 @@ PARTITION BY toStartOfMonth(date);
You can [query this table](https://sql.clickhouse.com/?query=U0VMRUNUICogRlJPTSB1ay51a19wcmljZV9wYWlkX3NpbXBsZV9wYXJ0aXRpb25lZA&run_query=true&tab=results) in our ClickHouse SQL Playground.
### Structure on disk {#structure-on-disk}
-Whenever a set of rows is inserted into the table, instead of creating (at [least](/reference/settings/session-settings#max_insert_block_size)) one single data part containing all the inserted rows (as described [here](/concepts/core-concepts/parts)), ClickHouse creates one new data part for each unique partition key value among the inserted rows:
+Whenever a set of rows is inserted into the table, instead of creating (at [least](/core/reference/settings/session-settings#max_insert_block_size)) one single data part containing all the inserted rows (as described [here](/core/concepts/core-concepts/parts)), ClickHouse creates one new data part for each unique partition key value among the inserted rows:
The ClickHouse server first splits the rows from the example insert with 4 rows sketched in the diagram above by their partition key value `toStartOfMonth(date)`.
-Then, for each identified partition, the rows are processed as [usual](/concepts/core-concepts/parts) by performing several sequential steps (① Sorting, ② Splitting into columns, ③ Compression, ④ Writing to Disk).
+Then, for each identified partition, the rows are processed as [usual](/core/concepts/core-concepts/parts) by performing several sequential steps (① Sorting, ② Splitting into columns, ③ Compression, ④ Writing to Disk).
Note that with partitioning enabled, ClickHouse automatically creates [MinMax indexes](https://github.com/ClickHouse/ClickHouse/blob/dacc8ebb0dac5bbfce5a7541e7fc70f26f7d5065/src/Storages/MergeTree/IMergeTreeDataPart.h#L341) for each data part. These are simply files for each table column used in the partition key expression, containing the minimum and maximum values of that column within the data part.
### Per partition merges {#per-partition-merges}
-With partitioning enabled, ClickHouse only [merges](/concepts/core-concepts/merges) data parts within, but not across partitions. We sketch that for our example table from above:
+With partitioning enabled, ClickHouse only [merges](/core/concepts/core-concepts/merges) data parts within, but not across partitions. We sketch that for our example table from above:
@@ -56,7 +56,7 @@ With partitioning enabled, ClickHouse only [merges](/concepts/core-concepts/merg
As sketched in the diagram above, parts belonging to different partitions are never merged. If a partition key with high cardinality is chosen, then parts spread across thousands of partitions will never be merge candidates - exceeding preconfigured limits and causing the dreaded `Too many parts` error. Addressing this problem is simple: choose a sensible partition key with [cardinality under 1000..10000](https://github.com/ClickHouse/ClickHouse/blob/ffc5b2c56160b53cf9e5b16cfb73ba1d956f7ce4/src/Storages/MergeTree/MergeTreeDataWriter.cpp#L121).
## Monitoring partitions {#monitoring-partitions}
-You can [query](https://sql.clickhouse.com/?query=U0VMRUNUIERJU1RJTkNUIF9wYXJ0aXRpb25fdmFsdWUgQVMgcGFydGl0aW9uCkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQKT1JERVIgQlkgcGFydGl0aW9uIEFTQw&run_query=true&tab=results) the list of all existing unique partitions of our example table by using the [virtual column](/reference/engines/table-engines#table_engines-virtual_columns) `_partition_value`:
+You can [query](https://sql.clickhouse.com/?query=U0VMRUNUIERJU1RJTkNUIF9wYXJ0aXRpb25fdmFsdWUgQVMgcGFydGl0aW9uCkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQKT1JERVIgQlkgcGFydGl0aW9uIEFTQw&run_query=true&tab=results) the list of all existing unique partitions of our example table by using the [virtual column](/core/reference/engines/table-engines#table_engines-virtual_columns) `_partition_value`:
```sql
@@ -65,7 +65,7 @@ FROM uk.uk_price_paid_simple_partitioned
ORDER BY partition ASC;
```
-Alternatively, ClickHouse tracks all parts and partitions of all tables in the [system.parts](/reference/system-tables/parts) system table, and the following query [returns](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICBwYXJ0aXRpb24sCiAgICBjb3VudCgpIEFTIHBhcnRzLAogICAgc3VtKHJvd3MpIEFTIHJvd3MKRlJPTSBzeXN0ZW0ucGFydHMKV0hFUkUgKGRhdGFiYXNlID0gJ3VrJykgQU5EIChgdGFibGVgID0gJ3VrX3ByaWNlX3BhaWRfc2ltcGxlX3BhcnRpdGlvbmVkJykgQU5EIGFjdGl2ZQpHUk9VUCBCWSBwYXJ0aXRpb24KT1JERVIgQlkgcGFydGl0aW9uIEFTQzs&run_query=true&tab=results) for our example table above the list of all partitions, plus the current number of active parts and the sum of rows in these parts per partition:
+Alternatively, ClickHouse tracks all parts and partitions of all tables in the [system.parts](/core/reference/system-tables/parts) system table, and the following query [returns](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICBwYXJ0aXRpb24sCiAgICBjb3VudCgpIEFTIHBhcnRzLAogICAgc3VtKHJvd3MpIEFTIHJvd3MKRlJPTSBzeXN0ZW0ucGFydHMKV0hFUkUgKGRhdGFiYXNlID0gJ3VrJykgQU5EIChgdGFibGVgID0gJ3VrX3ByaWNlX3BhaWRfc2ltcGxlX3BhcnRpdGlvbmVkJykgQU5EIGFjdGl2ZQpHUk9VUCBCWSBwYXJ0aXRpb24KT1JERVIgQlkgcGFydGl0aW9uIEFTQzs&run_query=true&tab=results) for our example table above the list of all partitions, plus the current number of active parts and the sum of rows in these parts per partition:
```sql
@@ -81,7 +81,7 @@ ORDER BY partition ASC;
## What are table partitions used for? {#what-are-table-partitions-used-for}
### Data management {#data-management}
-In ClickHouse, partitioning is primarily a data management feature. By organizing data logically based on a partition expression, each partition can be managed independently. For instance, the partitioning scheme in the example table above enables scenarios where only the last 12 months of data are retained in the main table by automatically removing older data using a [TTL rule](/concepts/operations/delete/ttl) (see the added last row of the DDL statement):
+In ClickHouse, partitioning is primarily a data management feature. By organizing data logically based on a partition expression, each partition can be managed independently. For instance, the partitioning scheme in the example table above enables scenarios where only the last 12 months of data are retained in the main table by automatically removing older data using a [TTL rule](/core/concepts/features/operations/delete/ttl) (see the added last row of the DDL statement):
```sql
CREATE TABLE uk.uk_price_paid_simple_partitioned
@@ -96,7 +96,7 @@ PARTITION BY toStartOfMonth(date)
ORDER BY (town, street)
TTL date + INTERVAL 12 MONTH DELETE;
```
-Since the table is partitioned by `toStartOfMonth(date)`, entire partitions (sets of [table parts](/concepts/core-concepts/parts)) that meet the TTL condition will be dropped, making the cleanup operation more efficient, [without having to rewrite parts](/reference/statements/alter#mutations).
+Since the table is partitioned by `toStartOfMonth(date)`, entire partitions (sets of [table parts](/core/concepts/core-concepts/parts)) that meet the TTL condition will be dropped, making the cleanup operation more efficient, [without having to rewrite parts](/core/reference/statements/alter#mutations).
Similarly, instead of deleting old data, it can be automatically and efficiently moved to a more cost-effective [storage tier](/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse#storage-tiers):
@@ -134,11 +134,11 @@ ClickHouse processes that query by applying a sequence of pruning techniques to
-① **Partition pruning**: [MinMax indexes](/concepts/core-concepts/partitions#what-are-table-partitions-in-clickhouse) are used to ignore whole partitions (sets of parts) that logically can't match the query's filter on columns used in the table's partition key.
+① **Partition pruning**: [MinMax indexes](/core/concepts/core-concepts/partitions#what-are-table-partitions-in-clickhouse) are used to ignore whole partitions (sets of parts) that logically can't match the query's filter on columns used in the table's partition key.
-② **Granule pruning**: For the remaining data parts after step ①, their [primary index](/guides/cloud-oss/data-modelling/sparse-primary-indexes) is used to ignore all [granules](/guides/cloud-oss/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing) (blocks of rows) that logically can't match the query's filter on columns used in the table's primary key.
+② **Granule pruning**: For the remaining data parts after step ①, their [primary index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes) is used to ignore all [granules](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing) (blocks of rows) that logically can't match the query's filter on columns used in the table's primary key.
-We can observe these data pruning steps by [inspecting](https://sql.clickhouse.com/?query=RVhQTEFJTiBpbmRleGVzID0gMQpTRUxFQ1QgTUFYKHByaWNlKSBBUyBoaWdoZXN0X3ByaWNlCkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQKV0hFUkUgZGF0ZSA-PSAnMjAyMC0xMi0wMScKICBBTkQgZGF0ZSA8PSAnMjAyMC0xMi0zMScKICBBTkQgdG93biA9ICdMT05ET04nOw&run_query=true&tab=results) the physical query execution plan for our example query from above via an [EXPLAIN](/reference/statements/explain) clause :
+We can observe these data pruning steps by [inspecting](https://sql.clickhouse.com/?query=RVhQTEFJTiBpbmRleGVzID0gMQpTRUxFQ1QgTUFYKHByaWNlKSBBUyBoaWdoZXN0X3ByaWNlCkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQKV0hFUkUgZGF0ZSA-PSAnMjAyMC0xMi0wMScKICBBTkQgZGF0ZSA8PSAnMjAyMC0xMi0zMScKICBBTkQgdG93biA9ICdMT05ET04nOw&run_query=true&tab=results) the physical query execution plan for our example query from above via an [EXPLAIN](/core/reference/statements/explain) clause :
```sql style="fontSize:13px"
EXPLAIN indexes = 1
@@ -178,23 +178,23 @@ WHERE date >= '2020-12-01'
The output above shows:
-① Partition pruning: Row 7 to 18 of the EXPLAIN output above show that ClickHouse first uses the `date` field's [MinMax index](/concepts/core-concepts/partitions#what-are-table-partitions-in-clickhouse) to identify 11 out of 3257 existing [granules](/guides/cloud-oss/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing) (blocks of rows) stored in 1 out of 436 existing active data parts that contain rows matching the query's `date` filter.
+① Partition pruning: Row 7 to 18 of the EXPLAIN output above show that ClickHouse first uses the `date` field's [MinMax index](/core/concepts/core-concepts/partitions#what-are-table-partitions-in-clickhouse) to identify 11 out of 3257 existing [granules](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing) (blocks of rows) stored in 1 out of 436 existing active data parts that contain rows matching the query's `date` filter.
-② Granule pruning: Row 19 to 24 of the EXPLAIN output above indicate that ClickHouse then uses the [primary index](/guides/cloud-oss/data-modelling/sparse-primary-indexes) (created over the `town`-field) of the data part identified in step ① to further reduce the number of granules (that contain rows potentially also matching the query's `town` filter) from 11 to 1. This is also reflected in the ClickHouse-client output that we printed further above for the query run:
+② Granule pruning: Row 19 to 24 of the EXPLAIN output above indicate that ClickHouse then uses the [primary index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes) (created over the `town`-field) of the data part identified in step ① to further reduce the number of granules (that contain rows potentially also matching the query's `town` filter) from 11 to 1. This is also reflected in the ClickHouse-client output that we printed further above for the query run:
```response
... Elapsed: 0.006 sec. Processed 8.19 thousand rows, 57.34 KB (1.36 million rows/s., 9.49 MB/s.)
Peak memory usage: 2.73 MiB.
```
-Meaning that ClickHouse scanned and processed 1 granule (block of [8192](/reference/settings/merge-tree-settings#index_granularity) rows) in 6 milliseconds for calculating the query result.
+Meaning that ClickHouse scanned and processed 1 granule (block of [8192](/core/reference/settings/merge-tree-settings#index_granularity) rows) in 6 milliseconds for calculating the query result.
### Partitioning is primarily a data management feature {#partitioning-is-primarily-a-data-management-feature}
Be aware that querying across all partitions is typically slower than running the same query on a non-partitioned table.
With partitioning, the data is usually distributed across more data parts, which often leads to ClickHouse scanning and processing a larger volume of data.
-We can demonstrate this by running the same query over both the [What are table parts](/concepts/core-concepts/parts) example table (without partitioning enabled), and our current example table from above (with partitioning enabled). Both tables [contain](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICB0YWJsZSwKICAgIHN1bShyb3dzKSBBUyByb3dzCkZST00gc3lzdGVtLnBhcnRzCldIRVJFIChkYXRhYmFzZSA9ICd1aycpIEFORCAoYHRhYmxlYCBJTiBbJ3VrX3ByaWNlX3BhaWRfc2ltcGxlJywgJ3VrX3ByaWNlX3BhaWRfc2ltcGxlX3BhcnRpdGlvbmVkJ10pIEFORCBhY3RpdmUKR1JPVVAgQlkgdGFibGU7&run_query=true&tab=results) the same data and number of rows:
+We can demonstrate this by running the same query over both the [What are table parts](/core/concepts/core-concepts/parts) example table (without partitioning enabled), and our current example table from above (with partitioning enabled). Both tables [contain](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICB0YWJsZSwKICAgIHN1bShyb3dzKSBBUyByb3dzCkZST00gc3lzdGVtLnBhcnRzCldIRVJFIChkYXRhYmFzZSA9ICd1aycpIEFORCAoYHRhYmxlYCBJTiBbJ3VrX3ByaWNlX3BhaWRfc2ltcGxlJywgJ3VrX3ByaWNlX3BhaWRfc2ltcGxlX3BhcnRpdGlvbmVkJ10pIEFORCBhY3RpdmUKR1JPVVAgQlkgdGFibGU7&run_query=true&tab=results) the same data and number of rows:
```sql
@@ -206,7 +206,7 @@ WHERE (database = 'uk') AND (table IN ['uk_price_paid_simple', 'uk_price_paid_si
GROUP BY table;
```
-However, the table with partitions enabled, [has](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICB0YWJsZSwKICAgIGNvdW50KCkgQVMgcGFydHMKRlJPTSBzeXN0ZW0ucGFydHMKV0hFUkUgKGRhdGFiYXNlID0gJ3VrJykgQU5EIChgdGFibGVgIElOIFsndWtfcHJpY2VfcGFpZF9zaW1wbGUnLCAndWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQnXSkgQU5EIGFjdGl2ZQpHUk9VUCBCWSB0YWJsZTs&run_query=true&tab=results) more active [data parts](/concepts/core-concepts/parts), because, as mentioned above, ClickHouse only [merges](/concepts/core-concepts/parts) data parts within, but not across partitions:
+However, the table with partitions enabled, [has](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICB0YWJsZSwKICAgIGNvdW50KCkgQVMgcGFydHMKRlJPTSBzeXN0ZW0ucGFydHMKV0hFUkUgKGRhdGFiYXNlID0gJ3VrJykgQU5EIChgdGFibGVgIElOIFsndWtfcHJpY2VfcGFpZF9zaW1wbGUnLCAndWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQnXSkgQU5EIGFjdGl2ZQpHUk9VUCBCWSB0YWJsZTs&run_query=true&tab=results) more active [data parts](/core/concepts/core-concepts/parts), because, as mentioned above, ClickHouse only [merges](/core/concepts/core-concepts/parts) data parts within, but not across partitions:
```sql
@@ -219,9 +219,9 @@ GROUP BY table;
```
-As shown further above, the partitioned table `uk_price_paid_simple_partitioned` has over 600 partitions, and therefore at 600 306 active data parts. Whereas for our non-partitioned table `uk_price_paid_simple` all [initial](/concepts/core-concepts/parts) data parts could be merged into a single active part by background merges.
+As shown further above, the partitioned table `uk_price_paid_simple_partitioned` has over 600 partitions, and therefore at 600 306 active data parts. Whereas for our non-partitioned table `uk_price_paid_simple` all [initial](/core/concepts/core-concepts/parts) data parts could be merged into a single active part by background merges.
-When we [check](https://sql.clickhouse.com/?query=RVhQTEFJTiBpbmRleGVzID0gMQpTRUxFQ1QgTUFYKHByaWNlKSBBUyBoaWdoZXN0X3ByaWNlCkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQKV0hFUkUgdG93biA9ICdMT05ET04nOw&run_query=true&tab=results) the physical query execution plan with an [EXPLAIN](/reference/statements/explain) clause for our example query from above without the partition filter running over the partitioned table, we can see in row 19 and 20 of the output below that ClickHouse identified 671 out of 3257 existing [granules](/guides/cloud-oss/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing) (blocks of rows) spread over 431 out of 436 existing active data parts that potentially contain rows matching the query's filter, and therefore will be scanned and processed by the query engine:
+When we [check](https://sql.clickhouse.com/?query=RVhQTEFJTiBpbmRleGVzID0gMQpTRUxFQ1QgTUFYKHByaWNlKSBBUyBoaWdoZXN0X3ByaWNlCkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGVfcGFydGl0aW9uZWQKV0hFUkUgdG93biA9ICdMT05ET04nOw&run_query=true&tab=results) the physical query execution plan with an [EXPLAIN](/core/reference/statements/explain) clause for our example query from above without the partition filter running over the partitioned table, we can see in row 19 and 20 of the output below that ClickHouse identified 671 out of 3257 existing [granules](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing) (blocks of rows) spread over 431 out of 436 existing active data parts that potentially contain rows matching the query's filter, and therefore will be scanned and processed by the query engine:
```sql
EXPLAIN indexes = 1
diff --git a/concepts/core-concepts/parts.mdx b/core/concepts/core-concepts/parts.mdx
similarity index 66%
rename from concepts/core-concepts/parts.mdx
rename to core/concepts/core-concepts/parts.mdx
index b9eb796c..c05c1f57 100644
--- a/concepts/core-concepts/parts.mdx
+++ b/core/concepts/core-concepts/parts.mdx
@@ -12,9 +12,9 @@ import { Image } from "/snippets/components/Image.jsx";
-The data from each table in the ClickHouse [MergeTree engine family](/reference/engines/table-engines/mergetree-family) is organized on disk as a collection of immutable `data parts`.
+The data from each table in the ClickHouse [MergeTree engine family](/core/reference/engines/table-engines/mergetree-family) is organized on disk as a collection of immutable `data parts`.
-To illustrate this, we use [this](https://sql.clickhouse.com/?query=U0hPVyBDUkVBVEUgVEFCTEUgdWsudWtfcHJpY2VfcGFpZF9zaW1wbGU&run_query=true&tab=results) table (adapted from the [UK property prices dataset](/get-started/sample-datasets/uk-price-paid)) tracking the date, town, street, and price for sold properties in the United Kingdom:
+To illustrate this, we use [this](https://sql.clickhouse.com/?query=U0hPVyBDUkVBVEUgVEFCTEUgdWsudWtfcHJpY2VfcGFpZF9zaW1wbGU&run_query=true&tab=results) table (adapted from the [UK property prices dataset](/core/get-started/sample-datasets/uk-price-paid)) tracking the date, town, street, and price for sold properties in the United Kingdom:
```sql
CREATE TABLE uk.uk_price_paid_simple
@@ -36,9 +36,9 @@ A data part is created whenever a set of rows is inserted into the table. The fo
-When a ClickHouse server processes the example insert with 4 rows (e.g., via an [INSERT INTO statement](/reference/statements/insert-into)) sketched in the diagram above, it performs several steps:
+When a ClickHouse server processes the example insert with 4 rows (e.g., via an [INSERT INTO statement](/core/reference/statements/insert-into)) sketched in the diagram above, it performs several steps:
-① **Sorting**: The rows are sorted by the table's sorting key `(town, street)`, and a [sparse primary index](/guides/cloud-oss/data-modelling/sparse-primary-indexes) is generated for the sorted rows.
+① **Sorting**: The rows are sorted by the table's sorting key `(town, street)`, and a [sparse primary index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes) is generated for the sorted rows.
② **Splitting**: The sorted data is split into columns.
@@ -46,13 +46,13 @@ When a ClickHouse server processes the example insert with 4 rows (e.g., via an
④ **Writing to Disk**: The compressed columns are saved as binary column files within a new directory representing the insert's data part. The sparse primary index is also compressed and stored in the same directory.
-Depending on the table's specific engine, additional transformations [may](/reference/settings/session-settings) take place alongside sorting.
+Depending on the table's specific engine, additional transformations [may](/core/reference/settings/session-settings) take place alongside sorting.
-Data parts are self-contained, including all metadata needed to interpret their contents without requiring a central catalog. Beyond the sparse primary index, parts contain additional metadata, such as secondary [data skipping indexes](/concepts/features/performance/skip-indexes/skipping-indexes), [column statistics](https://clickhouse.com/blog/clickhouse-release-23-11#column-statistics-for-prewhere), checksums, min-max indexes (if [partitioning](/concepts/core-concepts/partitions) is used), and [more](https://github.com/ClickHouse/ClickHouse/blob/a065b11d591f22b5dd50cb6224fab2ca557b4989/src/Storages/MergeTree/MergeTreeData.h#L104).
+Data parts are self-contained, including all metadata needed to interpret their contents without requiring a central catalog. Beyond the sparse primary index, parts contain additional metadata, such as secondary [data skipping indexes](/core/concepts/features/performance/skip-indexes/skipping-indexes), [column statistics](https://clickhouse.com/blog/clickhouse-release-23-11#column-statistics-for-prewhere), checksums, min-max indexes (if [partitioning](/core/concepts/core-concepts/partitions) is used), and [more](https://github.com/ClickHouse/ClickHouse/blob/a065b11d591f22b5dd50cb6224fab2ca557b4989/src/Storages/MergeTree/MergeTreeData.h#L104).
## Part merges {#part-merges}
-To manage the number of parts per table, a [background merge](/concepts/core-concepts/merges) job periodically combines smaller parts into larger ones until they reach a [configurable](/reference/settings/merge-tree-settings#max_bytes_to_merge_at_max_space_in_pool) compressed size (typically ~150 GB). Merged parts are marked as inactive and deleted after a [configurable](/reference/settings/merge-tree-settings#old_parts_lifetime) time interval. Over time, this process creates a hierarchical structure of merged parts, which is why it's called a MergeTree table:
+To manage the number of parts per table, a [background merge](/core/concepts/core-concepts/merges) job periodically combines smaller parts into larger ones until they reach a [configurable](/core/reference/settings/merge-tree-settings#max_bytes_to_merge_at_max_space_in_pool) compressed size (typically ~150 GB). Merged parts are marked as inactive and deleted after a [configurable](/core/reference/settings/merge-tree-settings#old_parts_lifetime) time interval. Over time, this process creates a hierarchical structure of merged parts, which is why it's called a MergeTree table:
@@ -62,7 +62,7 @@ To minimize the number of initial parts and the overhead of merges, database cli
## Monitoring table parts {#monitoring-table-parts}
-You can [query](https://sql.clickhouse.com/?query=U0VMRUNUIF9wYXJ0CkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGUKR1JPVVAgQlkgX3BhcnQKT1JERVIgQlkgX3BhcnQgQVNDOw&run_query=true&tab=results) the list of all currently existing active parts of our example table by using the [virtual column](/reference/engines/table-engines#table_engines-virtual_columns) `_part`:
+You can [query](https://sql.clickhouse.com/?query=U0VMRUNUIF9wYXJ0CkZST00gdWsudWtfcHJpY2VfcGFpZF9zaW1wbGUKR1JPVVAgQlkgX3BhcnQKT1JERVIgQlkgX3BhcnQgQVNDOw&run_query=true&tab=results) the list of all currently existing active parts of our example table by using the [virtual column](/core/reference/engines/table-engines#table_engines-virtual_columns) `_part`:
```sql
SELECT _part
@@ -79,7 +79,7 @@ ORDER BY _part ASC;
```
The query above retrieves the names of directories on disk, with each directory representing an active data part of the table. The components of these directory names have specific meanings, which are documented [here](https://github.com/ClickHouse/ClickHouse/blob/f90551824bb90ade2d8a1d8edd7b0a3c0a459617/src/Storages/MergeTree/MergeTreeData.h#L130) for those interested in exploring further.
-Alternatively, ClickHouse tracks info for all parts of all tables in the [system.parts](/reference/system-tables/parts) system table, and the following query [returns](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICBuYW1lLAogICAgbGV2ZWwsCiAgICByb3dzCkZST00gc3lzdGVtLnBhcnRzCldIRVJFIChkYXRhYmFzZSA9ICd1aycpIEFORCAoYHRhYmxlYCA9ICd1a19wcmljZV9wYWlkX3NpbXBsZScpIEFORCBhY3RpdmUKT1JERVIgQlkgbmFtZSBBU0M7&run_query=true&tab=results) for our example table above the list of all currently active parts, their merge level, and the number of rows stored in these parts:
+Alternatively, ClickHouse tracks info for all parts of all tables in the [system.parts](/core/reference/system-tables/parts) system table, and the following query [returns](https://sql.clickhouse.com/?query=U0VMRUNUCiAgICBuYW1lLAogICAgbGV2ZWwsCiAgICByb3dzCkZST00gc3lzdGVtLnBhcnRzCldIRVJFIChkYXRhYmFzZSA9ICd1aycpIEFORCAoYHRhYmxlYCA9ICd1a19wcmljZV9wYWlkX3NpbXBsZScpIEFORCBhY3RpdmUKT1JERVIgQlkgbmFtZSBBU0M7&run_query=true&tab=results) for our example table above the list of all currently active parts, their merge level, and the number of rows stored in these parts:
```sql
SELECT
diff --git a/concepts/core-concepts/primary-indexes.mdx b/core/concepts/core-concepts/primary-indexes.mdx
similarity index 83%
rename from concepts/core-concepts/primary-indexes.mdx
rename to core/concepts/core-concepts/primary-indexes.mdx
index 62fef08e..372d09b6 100644
--- a/concepts/core-concepts/primary-indexes.mdx
+++ b/core/concepts/core-concepts/primary-indexes.mdx
@@ -13,18 +13,18 @@ import { Image } from "/snippets/components/Image.jsx";
This page introduces ClickHouse's sparse primary index, how it's built, how it works, and how it helps accelerate queries.
-For advanced indexing strategies and deeper technical detail, see the [primary indexes deep dive](/guides/cloud-oss/data-modelling/sparse-primary-indexes).
+For advanced indexing strategies and deeper technical detail, see the [primary indexes deep dive](/core/guides/clickhouse/data-modelling/sparse-primary-indexes).
## How does the sparse primary index work in ClickHouse? {#how-does-the-sparse-primary-index-work-in-clickHouse}
-The sparse primary index in ClickHouse helps efficiently identify [granules](/guides/cloud-oss/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing)—blocks of rows—that might contain data matching a query's condition on the table's primary key columns. In the next section, we explain how this index is constructed from the values in those columns.
+The sparse primary index in ClickHouse helps efficiently identify [granules](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#data-is-organized-into-granules-for-parallel-data-processing)—blocks of rows—that might contain data matching a query's condition on the table's primary key columns. In the next section, we explain how this index is constructed from the values in those columns.
### Sparse primary index creation {#sparse-primary-index-creation}
-To illustrate how the sparse primary index is built, we use the [uk_price_paid_simple](/concepts/core-concepts/parts) table along with some animations.
+To illustrate how the sparse primary index is built, we use the [uk_price_paid_simple](/core/concepts/core-concepts/parts) table along with some animations.
-As a [reminder](/concepts/core-concepts/parts), in our ① example table with the primary key (town, street), ② inserted data is ③ stored on disk, sorted by the primary key column values, and compressed, in separate files for each column:
+As a [reminder](/core/concepts/core-concepts/parts), in our ① example table with the primary key (town, street), ② inserted data is ③ stored on disk, sorted by the primary key column values, and compressed, in separate files for each column:
@@ -53,10 +53,10 @@ We sketch how the sparse primary index is used for query acceleration with anoth
③ It then scans the index entries to identify which granules might contain rows matching the predicate—in other words, which granules can't be skipped.
-④ These potentially relevant granules are then loaded and [processed](/concepts/core-concepts/query-parallelism) in memory, along with the corresponding granules from any other columns required for the query.
+④ These potentially relevant granules are then loaded and [processed](/core/concepts/core-concepts/query-parallelism) in memory, along with the corresponding granules from any other columns required for the query.
## Monitoring primary indexes {#monitoring-primary-indexes}
-Each [data part](/concepts/core-concepts/parts) in the table has its own primary index. We can inspect the contents of these indexes using the [mergeTreeIndex](/reference/functions/table-functions/mergeTreeIndex) table function.
+Each [data part](/core/concepts/core-concepts/parts) in the table has its own primary index. We can inspect the contents of these indexes using the [mergeTreeIndex](/core/reference/functions/table-functions/mergeTreeIndex) table function.
The following query lists the number of entries in the primary index for each data part of our example table:
@@ -76,7 +76,7 @@ GROUP BY part_name;
└───────────┴─────────┘
```
-This query shows the first 10 entries from the primary index of one of the current data parts. Note that these parts are continuously [merged](/concepts/core-concepts/merges) in the background into larger parts:
+This query shows the first 10 entries from the primary index of one of the current data parts. Note that these parts are continuously [merged](/core/concepts/core-concepts/merges) in the background into larger parts:
```sql
SELECT
@@ -104,7 +104,7 @@ LIMIT 10;
└───────┴────────────────┴──────────────────┘
```
-Lastly, we use the [EXPLAIN](/reference/statements/explain) clause to see how the primary indexes of all data parts are used to skip granules that can't possibly contain rows matching the example query's predicates. These granules are excluded from loading and processing:
+Lastly, we use the [EXPLAIN](/core/reference/statements/explain) clause to see how the primary indexes of all data parts are used to skip granules that can't possibly contain rows matching the example query's predicates. These granules are excluded from loading and processing:
```sql
EXPLAIN indexes = 1
SELECT
@@ -174,6 +174,6 @@ SELECT count() FROM uk.uk_price_paid_simple;
* You can **inspect index contents** using the `mergeTreeIndex` table function and monitor index usage with the `EXPLAIN` clause.
## Where to find more information {#where-to-find-more-information}
-For a deeper look at how sparse primary indexes work in ClickHouse, including how they differ from traditional database indexes and best practices for using them, check out our detailed indexing [deep dive](/guides/cloud-oss/data-modelling/sparse-primary-indexes).
+For a deeper look at how sparse primary indexes work in ClickHouse, including how they differ from traditional database indexes and best practices for using them, check out our detailed indexing [deep dive](/core/guides/clickhouse/data-modelling/sparse-primary-indexes).
-If you're interested in how ClickHouse processes data selected by the primary index scan in a highly parallel way, see the query parallelism guide [here](/concepts/core-concepts/query-parallelism).
+If you're interested in how ClickHouse processes data selected by the primary index scan in a highly parallel way, see the query parallelism guide [here](/core/concepts/core-concepts/query-parallelism).
diff --git a/concepts/core-concepts/query-parallelism.mdx b/core/concepts/core-concepts/query-parallelism.mdx
similarity index 80%
rename from concepts/core-concepts/query-parallelism.mdx
rename to core/concepts/core-concepts/query-parallelism.mdx
index f12d4079..721e43c8 100644
--- a/concepts/core-concepts/query-parallelism.mdx
+++ b/core/concepts/core-concepts/query-parallelism.mdx
@@ -9,11 +9,11 @@ keywords: ['parallel processing', 'query optimization', 'performance', 'threadin
import { Image } from "/snippets/components/Image.jsx";
-ClickHouse is [built for speed](/get-started/about/why-clickhouse-is-so-fast). It executes queries in a highly parallel fashion, using all available CPU cores, distributing data across processing lanes, and often pushing hardware close to its limits.
+ClickHouse is [built for speed](/core/get-started/about/why-clickhouse-is-so-fast). It executes queries in a highly parallel fashion, using all available CPU cores, distributing data across processing lanes, and often pushing hardware close to its limits.
This guide walks through how query parallelism works in ClickHouse and how you can tune or monitor it to improve performance on large workloads.
-We use an aggregation query on the [uk_price_paid_simple](/concepts/core-concepts/parts) dataset to illustrate key concepts.
+We use an aggregation query on the [uk_price_paid_simple](/core/concepts/core-concepts/parts) dataset to illustrate key concepts.
## Step-by-step: How ClickHouse parallelizes an aggregation query {#step-by-step-how-clickHouse-parallelizes-an-aggregation-query}
@@ -23,12 +23,12 @@ When ClickHouse ① runs an aggregation query with a filter on the table's prima
### Distributing work across processing lanes {#distributing-work-across-processing-lanes}
-The selected data is then [dynamically](#load-balancing-across-processing-lanes) distributed across `n` parallel [processing lanes](/concepts/core-concepts/academic-overview#4-2-multi-core-parallelization), which stream and process the data [block](/resources/contribute/architecture#block) by block into the final result:
+The selected data is then [dynamically](#load-balancing-across-processing-lanes) distributed across `n` parallel [processing lanes](/core/concepts/core-concepts/academic-overview#4-2-multi-core-parallelization), which stream and process the data [block](/resources/develop-contribute/introduction/architecture#block) by block into the final result:
-The number of `n` parallel processing lanes is controlled by the [`max_threads`](/reference/settings/session-settings#max_threads) setting, which by default matches the number of cores (threads) of a single CPU available to ClickHouse on the server. In the example above, we assume `4` cores.
+The number of `n` parallel processing lanes is controlled by the [`max_threads`](/core/reference/settings/session-settings#max_threads) setting, which by default matches the number of cores (threads) of a single CPU available to ClickHouse on the server. In the example above, we assume `4` cores.
On a machine with `8` cores, query processing throughput would roughly double (but memory usage would also increase accordingly), as more lanes process data in parallel:
@@ -39,7 +39,7 @@ Efficient lane distribution is key to maximizing CPU utilization and reducing to
### Processing queries on sharded tables {#processing-queries-on-sharded-tables}
-When table data is distributed across multiple servers as [shards](/guides/oss/deployment-and-scaling/shards), each server processes its shard in parallel. Within each server, the local data is handled using parallel processing lanes, just as described above:
+When table data is distributed across multiple servers as [shards](/core/guides/oss/deployment-and-scaling/shards), each server processes its shard in parallel. Within each server, the local data is handled using parallel processing lanes, just as described above:
@@ -79,7 +79,7 @@ We can see that
* ① ClickHouse needs to read 3,609 granules (indicated as marks in the trace logs) across 3 data ranges.
* ② With 59 CPU cores, it distributes this work across 59 parallel processing streams—one per lane.
-Alternatively, we can use the [EXPLAIN](/reference/statements/explain#explain-pipeline) clause to inspect the [physical operator plan](/concepts/core-concepts/academic-overview#4-2-multi-core-parallelization)—also known as the "query pipeline"—for the aggregation query:
+Alternatively, we can use the [EXPLAIN](/core/reference/statements/explain#explain-pipeline) clause to inspect the [physical operator plan](/core/concepts/core-concepts/academic-overview#4-2-multi-core-parallelization)—also known as the "query pipeline"—for the aggregation query:
```sql
EXPLAIN PIPELINE
SELECT
@@ -104,7 +104,7 @@ FROM
Note: Read the operator plan above from bottom to top. Each line represents a stage in the physical execution plan, starting with reading data from storage at the bottom and ending with the final processing steps at the top. Operators marked with `× 59` are executed concurrently on non-overlapping data regions across 59 parallel processing lanes. This reflects the value of `max_threads` and illustrates how each stage of the query is parallelized across CPU cores.
-ClickHouse's [embedded web UI](/integrations/connectors/data-integrations/drivers-and-interfaces/http) (available at the `/play` endpoint) can render the physical plan from above as a graphical visualization. In this example, we set `max_threads` to `4` to keep the visualization compact, showing just 4 parallel processing lanes:
+ClickHouse's [embedded web UI](/core/concepts/features/interfaces/http) (available at the `/play` endpoint) can render the physical plan from above as a graphical visualization. In this example, we set `max_threads` to `4` to keep the visualization compact, showing just 4 parallel processing lanes:
@@ -112,7 +112,7 @@ Note: Read the visualization from left to right. Each row represents a parallel
### Load balancing across processing lanes {#load-balancing-across-processing-lanes}
-Note that the `Resize` operators in the physical plan above [repartition and redistribute](/concepts/core-concepts/academic-overview#4-2-multi-core-parallelization) data block streams across processing lanes to keep them evenly utilized. This rebalancing is especially important when data ranges vary in how many rows match the query predicates, otherwise, some lanes may become overloaded while others sit idle. By redistributing the work, faster lanes effectively help out slower ones, optimizing overall query runtime.
+Note that the `Resize` operators in the physical plan above [repartition and redistribute](/core/concepts/core-concepts/academic-overview#4-2-multi-core-parallelization) data block streams across processing lanes to keep them evenly utilized. This rebalancing is especially important when data ranges vary in how many rows match the query predicates, otherwise, some lanes may become overloaded while others sit idle. By redistributing the work, faster lanes effectively help out slower ones, optimizing overall query runtime.
## Why max_threads isn't always respected {#why-max-threads-isnt-always-respected}
@@ -192,15 +192,15 @@ Regardless of the configured `max_threads` value, ClickHouse only allocates addi
What "enough data" means is primarily determined by two settings, which define the minimum number of rows (163,840 by default) and the minimum number of bytes (2,097,152 by default) that each processing lane should handle:
For shared-nothing clusters:
-* [merge_tree_min_rows_for_concurrent_read](/reference/settings/session-settings#merge_tree_min_rows_for_concurrent_read)
-* [merge_tree_min_bytes_for_concurrent_read](/reference/settings/session-settings#merge_tree_min_bytes_for_concurrent_read)
+* [merge_tree_min_rows_for_concurrent_read](/core/reference/settings/session-settings#merge_tree_min_rows_for_concurrent_read)
+* [merge_tree_min_bytes_for_concurrent_read](/core/reference/settings/session-settings#merge_tree_min_bytes_for_concurrent_read)
For clusters with shared storage (e.g. ClickHouse Cloud):
-* [merge_tree_min_rows_for_concurrent_read_for_remote_filesystem](/reference/settings/session-settings#merge_tree_min_rows_for_concurrent_read_for_remote_filesystem)
-* [merge_tree_min_bytes_for_concurrent_read_for_remote_filesystem](/reference/settings/session-settings#merge_tree_min_bytes_for_concurrent_read_for_remote_filesystem)
+* [merge_tree_min_rows_for_concurrent_read_for_remote_filesystem](/core/reference/settings/session-settings#merge_tree_min_rows_for_concurrent_read_for_remote_filesystem)
+* [merge_tree_min_bytes_for_concurrent_read_for_remote_filesystem](/core/reference/settings/session-settings#merge_tree_min_bytes_for_concurrent_read_for_remote_filesystem)
Additionally, there's a hard lower limit for read task size, controlled by:
-* [Merge_tree_min_read_task_size](/reference/settings/session-settings#merge_tree_min_read_task_size) + [merge_tree_min_bytes_per_task_for_remote_reading](/reference/settings/session-settings#merge_tree_min_bytes_per_task_for_remote_reading)
+* [Merge_tree_min_read_task_size](/core/reference/settings/session-settings#merge_tree_min_read_task_size) + [merge_tree_min_bytes_per_task_for_remote_reading](/core/reference/settings/session-settings#merge_tree_min_bytes_per_task_for_remote_reading)
**Don't modify these settings**
@@ -242,7 +242,7 @@ This demonstrates that for queries on small datasets, ClickHouse will intentiona
If you'd like to dive deeper into how ClickHouse executes queries in parallel and how it achieves high performance at scale, explore the following resources:
-* [Query Processing Layer – VLDB 2024 Paper (Web Edition)](/concepts/core-concepts/academic-overview#4-query-processing-layer) - A detailed breakdown of ClickHouse's internal execution model, including scheduling, pipelining, and operator design.
+* [Query Processing Layer – VLDB 2024 Paper (Web Edition)](/core/concepts/core-concepts/academic-overview#4-query-processing-layer) - A detailed breakdown of ClickHouse's internal execution model, including scheduling, pipelining, and operator design.
* [Partial aggregation states explained](https://clickhouse.com/blog/clickhouse_vs_elasticsearch_mechanics_of_count_aggregations#-multi-core-parallelization) - A technical deep dive into how partial aggregation states enable efficient parallel execution across processing lanes.
diff --git a/concepts/features/backup-restore/alternative-methods.mdx b/core/concepts/features/backup-restore/alternative-methods.mdx
similarity index 93%
rename from concepts/features/backup-restore/alternative-methods.mdx
rename to core/concepts/features/backup-restore/alternative-methods.mdx
index cf7f14e0..eada78f8 100644
--- a/concepts/features/backup-restore/alternative-methods.mdx
+++ b/core/concepts/features/backup-restore/alternative-methods.mdx
@@ -24,7 +24,7 @@ or a distributed filesystem like [HDFS](https://hadoop.apache.org/docs/stable/ha
Some local filesystems provide snapshot functionality (for example, [ZFS](https://en.wikipedia.org/wiki/ZFS)),
but they might not be the best choice for serving live queries. A possible solution
is to create additional replicas with this kind of filesystem and exclude them
-from the [Distributed](/reference/engines/table-engines/special/distributed) tables that are used for `SELECT` queries.
+from the [Distributed](/core/reference/engines/table-engines/special/distributed) tables that are used for `SELECT` queries.
Snapshots on such replicas will be out of reach of any queries that modify data.
As a bonus, these replicas might have special hardware configurations with more
disks attached per server, which would be cost-effective.
@@ -47,6 +47,6 @@ but normal attached file servers with a large enough capacity might work as well
Data can be restored from backup using the `ALTER TABLE ... ATTACH PARTITION ...`
For more information about queries related to partition manipulations, see the
-[`ALTER` documentation](/reference/statements/alter/partition).
+[`ALTER` documentation](/core/reference/statements/alter/partition).
A third-party tool is available to automate this approach: [clickhouse-backup](https://github.com/AlexAkulov/clickhouse-backup).
diff --git a/concepts/features/backup-restore/azure-blob-storage.mdx b/core/concepts/features/backup-restore/azure-blob-storage.mdx
similarity index 100%
rename from concepts/features/backup-restore/azure-blob-storage.mdx
rename to core/concepts/features/backup-restore/azure-blob-storage.mdx
diff --git a/concepts/features/backup-restore/local-disk.mdx b/core/concepts/features/backup-restore/local-disk.mdx
similarity index 100%
rename from concepts/features/backup-restore/local-disk.mdx
rename to core/concepts/features/backup-restore/local-disk.mdx
diff --git a/concepts/features/backup-restore/overview.mdx b/core/concepts/features/backup-restore/overview.mdx
similarity index 91%
rename from concepts/features/backup-restore/overview.mdx
rename to core/concepts/features/backup-restore/overview.mdx
index c2623fb5..bbc98e2e 100644
--- a/concepts/features/backup-restore/overview.mdx
+++ b/core/concepts/features/backup-restore/overview.mdx
@@ -17,13 +17,13 @@ in the sidebar.
## Introduction {#introduction}
-While [replication](/reference/engines/table-engines/mergetree-family/replication) provides protection from hardware failures, it doesn't
+While [replication](/core/reference/engines/table-engines/mergetree-family/replication) provides protection from hardware failures, it doesn't
protect against human errors: accidental deletion of data, deletion of the wrong
table or a table on the wrong cluster, and software bugs that result in incorrect
data processing or data corruption.
In many cases mistakes like these will affect all replicas. ClickHouse has built-in
-safeguards to prevent some types of mistakes, for example, by [default](/reference/settings/session-settings#max_table_size_to_drop)
+safeguards to prevent some types of mistakes, for example, by [default](/core/reference/settings/session-settings#max_table_size_to_drop)
you can't just drop tables with a `MergeTree` family engine containing more than
50 Gb of data. However, these safeguards don't cover all possible cases and
problems can still occur.
@@ -52,11 +52,11 @@ restore methods available in ClickHouse:
| Page | Description |
|---------------------------------------------------------------------|-----------------------------------------------------------|
-| [Backup/restore using local disk or S3 disk](/concepts/features/backup-restore/local-disk) | Details backup/restore to or from a local disk or S3 disk |
-| [Backup/restore using S3 endpoint](/concepts/features/backup-restore/s3-endpoint) | Details backup/restore to or from an S3 endpoint |
-| [Backup/restore using AzureBlobStorage](/concepts/features/backup-restore/azure-blob-storage) | Details backup/restore to or from Azure blob storage |
-| [Alternative methods](/concepts/features/backup-restore/alternative-methods) | Discusses alternative backup methods |
-| [Snapshot backup](/concepts/features/backup-restore/snapshot) | Lightweight snapshots for SharedMergeTree tables using cloud object storage |
+| [Backup/restore using local disk or S3 disk](/core/concepts/features/backup-restore/local-disk) | Details backup/restore to or from a local disk or S3 disk |
+| [Backup/restore using S3 endpoint](/core/concepts/features/backup-restore/s3-endpoint) | Details backup/restore to or from an S3 endpoint |
+| [Backup/restore using AzureBlobStorage](/core/concepts/features/backup-restore/azure-blob-storage) | Details backup/restore to or from Azure blob storage |
+| [Alternative methods](/core/concepts/features/backup-restore/alternative-methods) | Discusses alternative backup methods |
+| [Snapshot backup](/core/concepts/features/backup-restore/snapshot) | Lightweight snapshots for SharedMergeTree tables using cloud object storage |
Backups can:
- be [full or incremental](#backup-types)
@@ -136,7 +136,7 @@ They help to:
- Maintain consistency across operations
- Avoid credential exposure in query logs
-See ["named collections"](/concepts/features/configuration/server-config/named-collections) for further details.
+See ["named collections"](/core/concepts/features/configuration/server-config/named-collections) for further details.
## Backing up system, log or access management tables {#system-backups}
@@ -161,7 +161,7 @@ configuration of a ClickHouse cluster can be backed up and restored as part of
the cluster's overall setup.
This functionality only works for configurations managed through SQL commands
-(referred to as ["SQL-driven Access Control and Account Management"](/concepts/features/security/access-rights#enabling-access-control)).
+(referred to as ["SQL-driven Access Control and Account Management"](/core/concepts/features/security/access-rights#enabling-access-control)).
Access configurations defined in ClickHouse server configuration files (e.g. `users.xml`)
aren't included in backups and can't be restored through this method.
@@ -251,8 +251,8 @@ end_time: 2022-08-30 09:21:46
1 row in set. Elapsed: 0.002 sec.
```
-Along with the [`system.backups`](/reference/system-tables/backups) table, all backup and restore operations are also tracked in the system log table
-[`system.backup_log`](/reference/system-tables/backup_log):
+Along with the [`system.backups`](/core/reference/system-tables/backups) table, all backup and restore operations are also tracked in the system log table
+[`system.backup_log`](/core/reference/system-tables/backup_log):
```sql
SELECT *
diff --git a/concepts/features/backup-restore/s3-endpoint.mdx b/core/concepts/features/backup-restore/s3-endpoint.mdx
similarity index 98%
rename from concepts/features/backup-restore/s3-endpoint.mdx
rename to core/concepts/features/backup-restore/s3-endpoint.mdx
index 037b6838..f9063b6e 100644
--- a/concepts/features/backup-restore/s3-endpoint.mdx
+++ b/core/concepts/features/backup-restore/s3-endpoint.mdx
@@ -26,7 +26,7 @@ again.
For an explanation of the differences between a full backup and an incremental
-backup, see ["Backup types"](/concepts/features/backup-restore/overview#backup-types)
+backup, see ["Backup types"](/core/concepts/features/backup-restore/overview#backup-types)
You will need the following information to use this method:
diff --git a/concepts/features/backup-restore/snapshot.mdx b/core/concepts/features/backup-restore/snapshot.mdx
similarity index 81%
rename from concepts/features/backup-restore/snapshot.mdx
rename to core/concepts/features/backup-restore/snapshot.mdx
index 22f13240..26164f70 100644
--- a/concepts/features/backup-restore/snapshot.mdx
+++ b/core/concepts/features/backup-restore/snapshot.mdx
@@ -13,7 +13,7 @@ The lightweight path applies to [SharedMergeTree](/products/cloud/features/infra
## Create a snapshot {#create-a-snapshot}
-Snapshot backup uses the standard [`BACKUP`](/concepts/features/backup-restore/overview#syntax) command with `experimental_lightweight_snapshot = true`. The `id` setting is required — it names the snapshot and is used to reference it in unlock and observability commands:
+Snapshot backup uses the standard [`BACKUP`](/core/concepts/features/backup-restore/overview#syntax) command with `experimental_lightweight_snapshot = true`. The `id` setting is required — it names the snapshot and is used to reference it in unlock and observability commands:
```sql
BACKUP { TABLE [db.]table_name | DATABASE db_name | ALL [EXCEPT {TABLES | DATABASES} ...] }
@@ -21,7 +21,7 @@ TO { S3(...) | AzureBlobStorage(...) }
SETTINGS experimental_lightweight_snapshot = true, id = ''
```
-The command returns the `id` and `status`, and the `id` can be used to track the operation in [`system.backups`](/reference/system-tables/backups).
+The command returns the `id` and `status`, and the `id` can be used to track the operation in [`system.backups`](/core/reference/system-tables/backups).
Backup a single table to S3:
@@ -111,7 +111,7 @@ After unlocking, the corresponding row disappears from `system.snapshot_locks`,
### system.backups {#system-backups}
-All snapshot operations appear in [`system.backups`](/reference/system-tables/backups) alongside regular backup and restore operations. Query it with the `id` you set (or the UUID returned by the command):
+All snapshot operations appear in [`system.backups`](/core/reference/system-tables/backups) alongside regular backup and restore operations. Query it with the `id` you set (or the UUID returned by the command):
```sql
SELECT id, name, status, error, start_time, end_time, num_files, uncompressed_size, compressed_size
@@ -221,8 +221,8 @@ The following server configuration parameters control snapshot behavior. They ar
| Setting | Type | Default | Changeable without restart | Description |
|---|---|---|---|---|
-| [`max_held_snapshots`](/reference/settings/server-settings/settings#max_held_snapshots) | UInt64 | `0` | No | Maximum number of lightweight snapshots that can be held at the same time. `0` means unlimited. If the limit is reached, creating a new snapshot throws an exception. |
-| [`max_snapshot_commit_thread_pool_size`](/reference/settings/server-settings/settings#max_snapshot_commit_thread_pool_size) | UInt64 | `64` | Yes | Number of threads used to commit snapshot lock nodes into Keeper. Increase this if snapshot creation is slow on large tables with many parts. |
-| [`max_snapshot_commit_thread_pool_free_size`](/reference/settings/server-settings/settings#max_snapshot_commit_thread_pool_free_size) | UInt64 | `0` | Yes | If the number of idle threads in the snapshot commit pool exceeds this value, ClickHouse releases those threads and shrinks the pool. Threads are created again on demand. `0` means idle threads are never released. |
-| [`snapshot_cleaner_period`](/reference/settings/server-settings/settings#snapshot_cleaner_period) | UInt64 | `120` | No | How often (in seconds) the snapshot cleaner runs to remove parts that are no longer referenced by any snapshot lock. ClickHouse Cloud only. |
-| [`snapshot_cleaner_pool_size`](/reference/settings/server-settings/settings#snapshot_cleaner_pool_size) | UInt64 | `128` | No | Number of threads in the snapshot cleaner thread pool. ClickHouse Cloud only. |
+| [`max_held_snapshots`](/core/reference/settings/server-settings/settings#max_held_snapshots) | UInt64 | `0` | No | Maximum number of lightweight snapshots that can be held at the same time. `0` means unlimited. If the limit is reached, creating a new snapshot throws an exception. |
+| [`max_snapshot_commit_thread_pool_size`](/core/reference/settings/server-settings/settings#max_snapshot_commit_thread_pool_size) | UInt64 | `64` | Yes | Number of threads used to commit snapshot lock nodes into Keeper. Increase this if snapshot creation is slow on large tables with many parts. |
+| [`max_snapshot_commit_thread_pool_free_size`](/core/reference/settings/server-settings/settings#max_snapshot_commit_thread_pool_free_size) | UInt64 | `0` | Yes | If the number of idle threads in the snapshot commit pool exceeds this value, ClickHouse releases those threads and shrinks the pool. Threads are created again on demand. `0` means idle threads are never released. |
+| [`snapshot_cleaner_period`](/core/reference/settings/server-settings/settings#snapshot_cleaner_period) | UInt64 | `120` | No | How often (in seconds) the snapshot cleaner runs to remove parts that are no longer referenced by any snapshot lock. ClickHouse Cloud only. |
+| [`snapshot_cleaner_pool_size`](/core/reference/settings/server-settings/settings#snapshot_cleaner_pool_size) | UInt64 | `128` | No | Number of threads in the snapshot cleaner thread pool. ClickHouse Cloud only. |
diff --git a/concepts/features/configuration/server-config/composable-protocols.mdx b/core/concepts/features/configuration/server-config/composable-protocols.mdx
similarity index 98%
rename from concepts/features/configuration/server-config/composable-protocols.mdx
rename to core/concepts/features/configuration/server-config/composable-protocols.mdx
index 127121ab..1201ee3d 100644
--- a/concepts/features/configuration/server-config/composable-protocols.mdx
+++ b/core/concepts/features/configuration/server-config/composable-protocols.mdx
@@ -211,7 +211,7 @@ while requests to port 8124 use the `` rules. If ``
is omitted, the endpoint falls back to the default ``.
The custom handlers section follows the same format as
-[``](/reference/settings/server-settings/settings#http_handlers).
+[``](/core/reference/settings/server-settings/settings#http_handlers).
Changes to the custom handlers section are detected during config reload, and the
corresponding endpoint is automatically restarted.
diff --git a/concepts/features/configuration/server-config/configuration-files.mdx b/core/concepts/features/configuration/server-config/configuration-files.mdx
similarity index 95%
rename from concepts/features/configuration/server-config/configuration-files.mdx
rename to core/concepts/features/configuration/server-config/configuration-files.mdx
index 1a716a6e..493c9824 100644
--- a/concepts/features/configuration/server-config/configuration-files.mdx
+++ b/core/concepts/features/configuration/server-config/configuration-files.mdx
@@ -167,7 +167,7 @@ Resulting in configuration:
It is also possible to replace parts of the configuration by file contents. This can be done in two ways:
-- *Substituting Values*: If an element has the attribute `incl`, its value will be replaced by the content of the referenced file. By default, the path to the file with substitutions is `/etc/metrika.xml`. This can be changed in the [`include_from`](/reference/settings/server-settings/settings#include_from) element in the server config. The substitution values are specified in `/clickhouse/substitution_name` elements in this file. If a substitution specified in `incl` does not exist, it is recorded in the log. To prevent ClickHouse from logging missing substitutions, specify attribute `optional="true"` (for example, settings for [macros](/reference/settings/server-settings/settings#macros)).
+- *Substituting Values*: If an element has the attribute `incl`, its value will be replaced by the content of the referenced file. By default, the path to the file with substitutions is `/etc/metrika.xml`. This can be changed in the [`include_from`](/core/reference/settings/server-settings/settings#include_from) element in the server config. The substitution values are specified in `/clickhouse/substitution_name` elements in this file. If a substitution specified in `incl` does not exist, it is recorded in the log. To prevent ClickHouse from logging missing substitutions, specify attribute `optional="true"` (for example, settings for [macros](/core/reference/settings/server-settings/settings#macros)).
- *Substituting elements*: If you want to replace the entire element with a substitution, use `include` as the element name. The element name `include` can be combined with the attribute `from_zk = "/path/to/node"`. In this case, the element value is replaced by the contents of the ZooKeeper node at `/path/to/node`. This also works with you store an entire XML subtree as a Zookeeper node, it will be fully inserted into the source element.
An example of this is shown below:
@@ -190,7 +190,7 @@ If you want to merge the substituting content with the existing configuration in
## Encrypting and hiding configuration {#encryption}
You can use symmetric encryption to encrypt a configuration element, for example, a plaintext password or private key.
-To do so, first configure the [encryption codec](/reference/statements/create/table#encryption-codecs), then add the attribute `encrypted_by` with the name of the encryption codec as the value to the element to encrypt.
+To do so, first configure the [encryption codec](/core/reference/statements/create/table#encryption-codecs), then add the attribute `encrypted_by` with the name of the encryption codec as the value to the element to encrypt.
Unlike attributes `from_zk`, `from_env` and `incl`, or element `include`, no substitution (i.e. decryption of the encrypted value) is performed in the preprocessed file.
Decryption happens only at runtime in the server process.
diff --git a/concepts/features/configuration/server-config/named-collections.mdx b/core/concepts/features/configuration/server-config/named-collections.mdx
similarity index 95%
rename from concepts/features/configuration/server-config/named-collections.mdx
rename to core/concepts/features/configuration/server-config/named-collections.mdx
index 751d9579..9e5153ff 100644
--- a/concepts/features/configuration/server-config/named-collections.mdx
+++ b/core/concepts/features/configuration/server-config/named-collections.mdx
@@ -73,7 +73,7 @@ In the above example the `password_sha256_hex` value is the hexadecimal represen
### Storage for named collections {#storage-for-named-collections}
Named collections can either be stored on local disk or in ZooKeeper/Keeper. By default local storage is used.
-They can also be stored using encryption with the same algorithms used for [disk encryption](/concepts/features/configuration/server-config/storing-data#encrypted-virtual-file-system),
+They can also be stored using encryption with the same algorithms used for [disk encryption](/core/concepts/features/configuration/server-config/storing-data#encrypted-virtual-file-system),
where `aes_128_ctr` is used by default.
To configure named collections storage you need to specify a `type`. This can be either `local` or `keeper`/`zookeeper`. For encrypted storage,
@@ -158,7 +158,7 @@ DROP NAMED COLLECTION collection2
## Named collections for accessing S3 {#named-collections-for-accessing-s3}
-The description of parameters see [s3 Table Function](/reference/functions/table-functions/s3).
+The description of parameters see [s3 Table Function](/core/reference/functions/table-functions/s3).
### DDL example {#ddl-example-1}
@@ -218,7 +218,7 @@ SELECT * FROM s3_engine_table LIMIT 3;
## Named collections for accessing MySQL database {#named-collections-for-accessing-mysql-database}
-The description of parameters see [mysql](/reference/functions/table-functions/mysql).
+The description of parameters see [mysql](/core/reference/functions/table-functions/mysql).
### DDL example {#ddl-example-2}
@@ -314,7 +314,7 @@ SELECT dictGet('dict', 'B', 2);
## Named collections for accessing PostgreSQL database {#named-collections-for-accessing-postgresql-database}
-The description of parameters see [postgresql](/reference/functions/table-functions/postgresql). Additionally, there are aliases:
+The description of parameters see [postgresql](/core/reference/functions/table-functions/postgresql). Additionally, there are aliases:
- `username` for `user`
- `db` for `database`.
@@ -422,7 +422,7 @@ SELECT dictGet('dict', 'b', 2);
## Named collections for accessing a remote ClickHouse database {#named-collections-for-accessing-a-remote-clickhouse-database}
-The description of parameters see [remote](/reference/functions/table-functions/remote#parameters).
+The description of parameters see [remote](/core/reference/functions/table-functions/remote#parameters).
Example of configuration:
@@ -490,7 +490,7 @@ SELECT dictGet('dict', 'b', 1);
## Named collections for accessing Kafka {#named-collections-for-accessing-kafka}
-The description of parameters see [Kafka](/reference/engines/table-engines/integrations/kafka).
+The description of parameters see [Kafka](/core/reference/engines/table-engines/integrations/kafka).
### DDL example {#ddl-example-3}
@@ -545,7 +545,7 @@ SETTINGS kafka_num_consumers = 4,
## Named collections for backups {#named-collections-for-backups}
-For the description of parameters see [Backup and Restore](/concepts/features/backup-restore/overview).
+For the description of parameters see [Backup and Restore](/core/concepts/features/backup-restore/overview).
### DDL example {#ddl-example-4}
@@ -569,7 +569,7 @@ BACKUP TABLE default.test to S3(named_collection_s3_backups, 'directory')
## Named collections for accessing MongoDB Table and Dictionary {#named-collections-for-accessing-mongodb-table-and-dictionary}
-For the description of parameters see [mongodb](/reference/functions/table-functions/mongodb).
+For the description of parameters see [mongodb](/core/reference/functions/table-functions/mongodb).
### DDL example {#ddl-example-5}
diff --git a/concepts/features/configuration/server-config/quotas.mdx b/core/concepts/features/configuration/server-config/quotas.mdx
similarity index 97%
rename from concepts/features/configuration/server-config/quotas.mdx
rename to core/concepts/features/configuration/server-config/quotas.mdx
index 40ee3085..c40a2c20 100644
--- a/concepts/features/configuration/server-config/quotas.mdx
+++ b/core/concepts/features/configuration/server-config/quotas.mdx
@@ -9,13 +9,13 @@ doc_type: 'guide'
**Quotas in ClickHouse Cloud**
-Quotas are supported in ClickHouse Cloud but must be created using the [DDL syntax](/reference/statements/create/quota). The XML configuration approach documented below is **not supported**.
+Quotas are supported in ClickHouse Cloud but must be created using the [DDL syntax](/core/reference/statements/create/quota). The XML configuration approach documented below is **not supported**.
Quotas allow you to limit resource usage over a period of time or track the use of resources.
Quotas are set up in the user config, which is usually 'users.xml'.
-The system also has a feature for limiting the complexity of a single query. See the section [Restrictions on query complexity](/concepts/features/configuration/settings/query-complexity).
+The system also has a feature for limiting the complexity of a single query. See the section [Restrictions on query complexity](/core/concepts/features/configuration/settings/query-complexity).
In contrast to query complexity restrictions, quotas:
diff --git a/concepts/features/configuration/server-config/startup-scripts.mdx b/core/concepts/features/configuration/server-config/startup-scripts.mdx
similarity index 100%
rename from concepts/features/configuration/server-config/startup-scripts.mdx
rename to core/concepts/features/configuration/server-config/startup-scripts.mdx
diff --git a/concepts/features/configuration/server-config/storing-data.mdx b/core/concepts/features/configuration/server-config/storing-data.mdx
similarity index 95%
rename from concepts/features/configuration/server-config/storing-data.mdx
rename to core/concepts/features/configuration/server-config/storing-data.mdx
index 69432512..580932dd 100644
--- a/concepts/features/configuration/server-config/storing-data.mdx
+++ b/core/concepts/features/configuration/server-config/storing-data.mdx
@@ -21,14 +21,14 @@ the external storage option described on this page, as they allow reading data
stored in some general file format (like Parquet). On this page we are describing
storage configuration for the ClickHouse `MergeTree` family or `Log` family tables.
-1. to work with data stored on `Amazon S3` disks, use the [S3](/reference/engines/table-engines/integrations/s3) table engine.
-2. to work with data stored in Azure Blob Storage, use the [AzureBlobStorage](/reference/engines/table-engines/integrations/azureBlobStorage) table engine.
-3. to work with data in the Hadoop Distributed File System (unsupported), use the [HDFS](/reference/engines/table-engines/integrations/hdfs) table engine.
+1. to work with data stored on `Amazon S3` disks, use the [S3](/core/reference/engines/table-engines/integrations/s3) table engine.
+2. to work with data stored in Azure Blob Storage, use the [AzureBlobStorage](/core/reference/engines/table-engines/integrations/azureBlobStorage) table engine.
+3. to work with data in the Hadoop Distributed File System (unsupported), use the [HDFS](/core/reference/engines/table-engines/integrations/hdfs) table engine.
## Configure external storage {#configuring-external-storage}
-[`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) and [`Log`](/reference/engines/table-engines/log-family/log)
+[`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) and [`Log`](/core/reference/engines/table-engines/log-family/log)
family table engines can store data to `S3`, `AzureBlobStorage`, `HDFS` (unsupported) using a disk with types `s3`,
`azure_blob_storage`, `hdfs` (unsupported) respectively.
@@ -46,7 +46,7 @@ It requires specifying:
Optionally, `metadata_type` can be specified (it is equal to `local` by default), but it can also be set to `plain`, `web` and, starting from `24.4`, `plain_rewritable`.
-Usage of `plain` metadata type is described in [plain storage section](/concepts/features/configuration/server-config/storing-data#plain-storage), `web` metadata type can be used only with `web` object storage type, `local` metadata type stores metadata files locally (each metadata files contains mapping to files in object storage and some additional meta information about them).
+Usage of `plain` metadata type is described in [plain storage section](/core/concepts/features/configuration/server-config/storing-data#plain-storage), `web` metadata type can be used only with `web` object storage type, `local` metadata type stores metadata files locally (each metadata files contains mapping to files in object storage and some additional meta information about them).
For example:
@@ -355,8 +355,8 @@ where `web` is from the server configuration file:
| `s3_max_put_burst` | Maximum concurrent PUT requests before hitting RPS limit. | Same as `s3_max_put_rps` |
| `s3_max_get_rps` | Maximum GET requests per second before throttling. | `0` (unlimited) |
| `s3_max_get_burst` | Maximum concurrent GET requests before hitting RPS limit. | Same as `s3_max_get_rps` |
-| `read_resource` | Resource name for [scheduling](/concepts/features/configuration/server-config/workload-scheduling) read requests. | Empty string (disabled) |
-| `write_resource` | Resource name for [scheduling](/concepts/features/configuration/server-config/workload-scheduling) write requests. | Empty string (disabled) |
+| `read_resource` | Resource name for [scheduling](/core/concepts/features/configuration/server-config/workload-scheduling) read requests. | Empty string (disabled) |
+| `write_resource` | Resource name for [scheduling](/core/concepts/features/configuration/server-config/workload-scheduling) write requests. | Empty string (disabled) |
| `key_template` | Defines object key generation format using [re2](https://github.com/google/re2/wiki/Syntax) syntax. Requires `storage_metadata_write_full_object_key` flag. Incompatible with `root path` in `endpoint`. Requires `key_compatibility_prefix`. | - |
| `key_compatibility_prefix` | Required with `key_template`. Specifies the previous `root path` from `endpoint` for reading older metadata versions. | - |
| `read_only` | Only allowing reading from the disk. | - |
@@ -412,7 +412,7 @@ Similar to the `s3_plain` disk type, it does not require additional storage for
metadata files. Instead, metadata is stored in S3.
Unlike the `s3_plain` disk type, `s3_plain_rewritable` allows executing merges
and supports `INSERT` operations.
-[Mutations](/reference/statements/alter#mutations) and replication of tables are not supported.
+[Mutations](/core/reference/statements/alter#mutations) and replication of tables are not supported.
A use case for this disk type is for non-replicated `MergeTree` tables. Although
the `s3` disk type is suitable for non-replicated `MergeTree` tables, you may opt
@@ -504,8 +504,8 @@ Authentication parameters (the disk will try all available methods **and** Manag
|----------------------------------|------------------------------------------------------------------------------------|------------------------------------------|
| `metadata_path` | Local filesystem path to store metadata files for Blob Storage. | `/var/lib/clickhouse/disks//` |
| `skip_access_check` | If `true`, skips disk access checks during startup. | `false` |
-| `read_resource` | Resource name for [scheduling](/concepts/features/configuration/server-config/workload-scheduling) read requests. | Empty string (disabled) |
-| `write_resource` | Resource name for [scheduling](/concepts/features/configuration/server-config/workload-scheduling) write requests. | Empty string (disabled) |
+| `read_resource` | Resource name for [scheduling](/core/concepts/features/configuration/server-config/workload-scheduling) read requests. | Empty string (disabled) |
+| `write_resource` | Resource name for [scheduling](/core/concepts/features/configuration/server-config/workload-scheduling) write requests. | Empty string (disabled) |
| `metadata_keep_free_space_bytes` | Amount of free metadata disk space to reserve. | - |
Examples of working configurations can be found in integration tests directory (see e.g. [test_merge_tree_azure_blob_storage](https://github.com/ClickHouse/ClickHouse/blob/master/tests/integration/test_merge_tree_azure_blob_storage/configs/config.d/storage_conf.xml) or [test_azure_blob_storage_zero_copy_replication](https://github.com/ClickHouse/ClickHouse/blob/master/tests/integration/test_azure_blob_storage_zero_copy_replication/configs/config.d/storage_conf.xml)).
@@ -558,7 +558,7 @@ Keep in mind that HDFS may not work in corner cases.
### Using Data Encryption {#encrypted-virtual-file-system}
-You can encrypt the data stored on [S3](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3), or [HDFS](#using-hdfs-storage-unsupported) (unsupported) external disks, or on a local disk. To turn on the encryption mode, in the configuration file you must define a disk with the type `encrypted` and choose a disk on which the data will be saved. An `encrypted` disk ciphers all written files on the fly, and when you read files from an `encrypted` disk it deciphers them automatically. So you can work with an `encrypted` disk like with a normal one.
+You can encrypt the data stored on [S3](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3), or [HDFS](#using-hdfs-storage-unsupported) (unsupported) external disks, or on a local disk. To turn on the encryption mode, in the configuration file you must define a disk with the type `encrypted` and choose a disk on which the data will be saved. An `encrypted` disk ciphers all written files on the fly, and when you read files from an `encrypted` disk it deciphers them automatically. So you can work with an `encrypted` disk like with a normal one.
Example of disk configuration:
@@ -779,9 +779,9 @@ This is a read-only disk. Its data is only read and never modified. A new table
is loaded to this disk via `ATTACH TABLE` query (see example below). Local disk
is not actually used, each `SELECT` query will result in a `http` request to
fetch required data. All modification of the table data will result in an
-exception, i.e. the following types of queries are not allowed: [`CREATE TABLE`](/reference/statements/create/table),
-[`ALTER TABLE`](/reference/statements/alter), [`RENAME TABLE`](/reference/statements/rename#rename-table),
-[`DETACH TABLE`](/reference/statements/detach) and [`TRUNCATE TABLE`](/reference/statements/truncate).
+exception, i.e. the following types of queries are not allowed: [`CREATE TABLE`](/core/reference/statements/create/table),
+[`ALTER TABLE`](/core/reference/statements/alter), [`RENAME TABLE`](/core/reference/statements/rename#rename-table),
+[`DETACH TABLE`](/core/reference/statements/detach) and [`TRUNCATE TABLE`](/core/reference/statements/truncate).
Web storage can be used for read-only purposes. An example use is for hosting
sample data, or for migrating data. There is a tool `clickhouse-static-files-uploader`,
which prepares a data directory for a given table (`SELECT data_paths FROM system.tables WHERE name = 'table_name'`).
@@ -835,7 +835,7 @@ not expected to be used routinely, see [dynamic configuration](#dynamic-configur
editing the configuration file.
A [demo dataset](https://github.com/ClickHouse/web-tables-demo) is hosted in GitHub. To prepare your own tables for web
-storage see the tool [clickhouse-static-files-uploader](/concepts/features/tools-and-utilities/static-files-disk-uploader)
+storage see the tool [clickhouse-static-files-uploader](/core/concepts/features/tools-and-utilities/static-files-disk-uploader)
In this `ATTACH TABLE` query the `UUID` provided matches the directory name of the data, and the endpoint is the URL for the raw GitHub content.
@@ -1052,7 +1052,7 @@ SETTINGS storage_policy='web';
| `remote_fs_read_backoff_threashold` | The maximum wait time when trying to read data for remote disk | `10000` seconds |
| `remote_fs_read_backoff_max_tries` | The maximum number of attempts to read with backoff | `5` |
-If a query fails with an exception `DB:Exception Unreachable URL`, then you can try to adjust the settings: [http_connection_timeout](/reference/settings/session-settings#http_connection_timeout), [http_receive_timeout](/reference/settings/session-settings#http_receive_timeout), [keep_alive_timeout](/reference/settings/server-settings/settings#keep_alive_timeout).
+If a query fails with an exception `DB:Exception Unreachable URL`, then you can try to adjust the settings: [http_connection_timeout](/core/reference/settings/session-settings#http_connection_timeout), [http_receive_timeout](/core/reference/settings/session-settings#http_receive_timeout), [keep_alive_timeout](/core/reference/settings/server-settings/settings#keep_alive_timeout).
To get files for upload run:
`clickhouse static-files-disk-uploader --metadata-path --output-dir ` (`--metadata-path` can be found in query `SELECT data_paths FROM system.tables WHERE name = 'table_name'`).
@@ -1061,7 +1061,7 @@ When loading files by `endpoint`, they must be loaded into `/store/` p
If URL is not reachable on disk load when the server is starting up tables, then all errors are caught. If in this case there were errors, tables can be reloaded (become visible) via `DETACH TABLE table_name` -> `ATTACH TABLE table_name`. If metadata was successfully loaded at server startup, then tables are available straight away.
-Use [http_max_single_read_retries](/concepts/features/configuration/server-config/storing-data#web-storage) setting to limit the maximum number of retries during a single HTTP read.
+Use [http_max_single_read_retries](/core/concepts/features/configuration/server-config/storing-data#web-storage) setting to limit the maximum number of retries during a single HTTP read.
### Zero-copy Replication (not ready for production) {#zero-copy}
diff --git a/concepts/features/configuration/server-config/workload-scheduling.mdx b/core/concepts/features/configuration/server-config/workload-scheduling.mdx
similarity index 87%
rename from concepts/features/configuration/server-config/workload-scheduling.mdx
rename to core/concepts/features/configuration/server-config/workload-scheduling.mdx
index 1f314189..2e4dad7e 100644
--- a/concepts/features/configuration/server-config/workload-scheduling.mdx
+++ b/core/concepts/features/configuration/server-config/workload-scheduling.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
When ClickHouse execute multiple queries simultaneously, they may be using shared resources (e.g. disks and CPU cores). Scheduling constraints and policies can be applied to regulate how resources are utilized and shared between different workloads. For all resources a common scheduling hierarchy can be configured. Hierarchy root represents shared resources, while leafs are specific workloads, holding requests that exceed resource capacity.
-Currently [remote disk IO](#disk_config) and [CPU](#cpu_scheduling) can be scheduled using described method. For flexible memory limits see [Memory overcommit](/concepts/features/configuration/settings/memory-overcommit)
+Currently [remote disk IO](#disk_config) and [CPU](#cpu_scheduling) can be scheduled using described method. For flexible memory limits see [Memory overcommit](/core/concepts/features/configuration/settings/memory-overcommit)
## Disk configuration {#disk_config}
@@ -104,7 +104,7 @@ graph TD
```
-Workload scheduling using clickhouse configuration is deprecated. SQL syntax should be used instead. SQL syntax creates all necessary scheduling nodes automatically and the following scheduling node description should be considered as lower level implementation details, accessible through [system.scheduler](/reference/system-tables/scheduler) table.
+Workload scheduling using clickhouse configuration is deprecated. SQL syntax should be used instead. SQL syntax creates all necessary scheduling nodes automatically and the following scheduling node description should be considered as lower level implementation details, accessible through [system.scheduler](/core/reference/system-tables/scheduler) table.
**Possible node types:**
@@ -235,7 +235,7 @@ CREATE RESOURCE cpu (MASTER THREAD, WORKER THREAD)
CREATE WORKLOAD all SETTINGS max_concurrent_threads = 100
```
-When ClickHouse server executes many concurrent queries with [multiple threads](/reference/settings/session-settings#max_threads) and all CPU slots are in use the overload state is reached. In the overload state every released CPU slot is rescheduled to proper workload according to scheduling policies. For queries sharing the same workload, slots are allocated using round robin. For queries in separate workloads, slots are allocated according to weights, priorities, and limits specified for workloads.
+When ClickHouse server executes many concurrent queries with [multiple threads](/core/reference/settings/session-settings#max_threads) and all CPU slots are in use the overload state is reached. In the overload state every released CPU slot is rescheduled to proper workload according to scheduling policies. For queries sharing the same workload, slots are allocated using round robin. For queries in separate workloads, slots are allocated according to weights, priorities, and limits specified for workloads.
CPU time is consumed by threads when they are not blocked and work on CPU-intensive tasks. For scheduling purpose, two kinds of threads are distinguished:
* Master thread — the first thread that starts working on a query or background activity like a merge or a mutation.
@@ -266,18 +266,18 @@ CREATE WORKLOAD ingestion IN production
This configuration example provides independent CPU slot pools for admin and production. The production pool is shared between analytics and ingestion. Furthermore, if the production pool is overloaded, 9 of 10 released slots will be rescheduled to analytical queries if necessary. The ingestion queries would only receive 1 of 10 slots during overload periods. This might improve the latency of user-facing queries. Analytics has its own limit of 60 concurrent thread, always leaving at least 40 threads to support ingestion. When there is no overload, ingestion could use all 100 threads.
-To exclude a query from CPU scheduling set a query setting [use_concurrency_control](/reference/settings/session-settings#use_concurrency_control) to 0.
+To exclude a query from CPU scheduling set a query setting [use_concurrency_control](/core/reference/settings/session-settings#use_concurrency_control) to 0.
CPU scheduling is not supported for merges and mutations yet.
To provide fair allocations for workload it is necessary to perform preemption and down-scaling during query execution. Preemption is enabled with `cpu_slot_preemption` server setting. If it is enabled, every threads renews its CPU slot periodically (according to `cpu_slot_quantum_ns` server setting). Such a renewal can block execution if CPU is overloaded. When execution is blocked for prolonged time (see `cpu_slot_preemption_timeout_ms` server setting), then query scales down and the number of concurrently running threads decreases dynamically. Note that CPU time fairness is guaranteed between workloads, but between queries inside the same workload it might be violated in some corner cases.
-Slot scheduling provides a way to control [query concurrency](/reference/settings/session-settings#max_threads) but does not guarantee fair CPU time allocation unless server setting `cpu_slot_preemption` is set to `true`, otherwise fairness is provided based on number of CPU slot allocations among competing workloads. It does not imply equal amount of CPU seconds because without preemption CPU slot may be held indefinitely. A thread acquires a slot at the beginning and release when work is done.
+Slot scheduling provides a way to control [query concurrency](/core/reference/settings/session-settings#max_threads) but does not guarantee fair CPU time allocation unless server setting `cpu_slot_preemption` is set to `true`, otherwise fairness is provided based on number of CPU slot allocations among competing workloads. It does not imply equal amount of CPU seconds because without preemption CPU slot may be held indefinitely. A thread acquires a slot at the beginning and release when work is done.
-Declaring CPU resource disables effect of [`concurrent_threads_soft_limit_num`](/reference/settings/server-settings/settings#concurrent_threads_soft_limit_num) and [`concurrent_threads_soft_limit_ratio_to_cores`](/reference/settings/server-settings/settings#concurrent_threads_soft_limit_ratio_to_cores) settings. Instead, workload setting `max_concurrent_threads` is used to limit the number of CPUs allocated for a specific workload. To achieve the previous behavior create only WORKER THREAD resource, set `max_concurrent_threads` for the workload `all` to the same value as `concurrent_threads_soft_limit_num` and use `workload = "all"` query setting. This configuration corresponds to [`concurrent_threads_scheduler`](/reference/settings/server-settings/settings#concurrent_threads_scheduler) setting set "fair_round_robin" value.
+Declaring CPU resource disables effect of [`concurrent_threads_soft_limit_num`](/core/reference/settings/server-settings/settings#concurrent_threads_soft_limit_num) and [`concurrent_threads_soft_limit_ratio_to_cores`](/core/reference/settings/server-settings/settings#concurrent_threads_soft_limit_ratio_to_cores) settings. Instead, workload setting `max_concurrent_threads` is used to limit the number of CPUs allocated for a specific workload. To achieve the previous behavior create only WORKER THREAD resource, set `max_concurrent_threads` for the workload `all` to the same value as `concurrent_threads_soft_limit_num` and use `workload = "all"` query setting. This configuration corresponds to [`concurrent_threads_scheduler`](/core/reference/settings/server-settings/settings#concurrent_threads_scheduler) setting set "fair_round_robin" value.
## Threads vs. CPUs {#threads_vs_cpus}
@@ -326,7 +326,7 @@ CREATE RESOURCE query (QUERY)
CREATE WORKLOAD all SETTINGS max_concurrent_queries = 100, max_queries_per_second = 10, max_burst_queries = 20
```
-Workload setting `max_concurrent_queries` limits the number of concurrent queries that could run simultaneously for a given workload. This is analog of query [`max_concurrent_queries_for_all_users`](/reference/settings/session-settings#max_concurrent_queries_for_all_users) and server [max_concurrent_queries](/reference/settings/server-settings/settings#max_concurrent_queries) settings. Async insert queries and some specific queries like KILL are not counted towards the limit.
+Workload setting `max_concurrent_queries` limits the number of concurrent queries that could run simultaneously for a given workload. This is analog of query [`max_concurrent_queries_for_all_users`](/core/reference/settings/session-settings#max_concurrent_queries_for_all_users) and server [max_concurrent_queries](/core/reference/settings/server-settings/settings#max_concurrent_queries) settings. Async insert queries and some specific queries like KILL are not counted towards the limit.
Workload settings `max_queries_per_second` and `max_burst_queries` limit number of queries for the workload with a token bucket throttler. It guarantees that during any time interval `T` no more than `max_queries_per_second * T + max_burst_queries` new queries will start execution.
@@ -381,15 +381,15 @@ Do not set `throw_on_unknown_workload` to `true` unless `CREATE WORKLOAD default
## See also {#see-also}
-- [system.scheduler](/reference/system-tables/scheduler)
-- [system.workloads](/reference/system-tables/workloads)
-- [system.resources](/reference/system-tables/resources)
-- [merge_workload](/reference/settings/merge-tree-settings#merge_workload) merge tree setting
-- [merge_workload](/reference/settings/server-settings/settings#merge_workload) global server setting
-- [mutation_workload](/reference/settings/merge-tree-settings#mutation_workload) merge tree setting
-- [mutation_workload](/reference/settings/server-settings/settings#mutation_workload) global server setting
-- [workload_path](/reference/settings/server-settings/settings#workload_path) global server setting
-- [workload_zookeeper_path](/reference/settings/server-settings/settings#workload_zookeeper_path) global server setting
-- [cpu_slot_preemption](/reference/settings/server-settings/settings#cpu_slot_preemption) global server setting
-- [cpu_slot_quantum_ns](/reference/settings/server-settings/settings#cpu_slot_quantum_ns) global server setting
-- [cpu_slot_preemption_timeout_ms](/reference/settings/server-settings/settings#cpu_slot_preemption_timeout_ms) global server setting
\ No newline at end of file
+- [system.scheduler](/core/reference/system-tables/scheduler)
+- [system.workloads](/core/reference/system-tables/workloads)
+- [system.resources](/core/reference/system-tables/resources)
+- [merge_workload](/core/reference/settings/merge-tree-settings#merge_workload) merge tree setting
+- [merge_workload](/core/reference/settings/server-settings/settings#merge_workload) global server setting
+- [mutation_workload](/core/reference/settings/merge-tree-settings#mutation_workload) merge tree setting
+- [mutation_workload](/core/reference/settings/server-settings/settings#mutation_workload) global server setting
+- [workload_path](/core/reference/settings/server-settings/settings#workload_path) global server setting
+- [workload_zookeeper_path](/core/reference/settings/server-settings/settings#workload_zookeeper_path) global server setting
+- [cpu_slot_preemption](/core/reference/settings/server-settings/settings#cpu_slot_preemption) global server setting
+- [cpu_slot_quantum_ns](/core/reference/settings/server-settings/settings#cpu_slot_quantum_ns) global server setting
+- [cpu_slot_preemption_timeout_ms](/core/reference/settings/server-settings/settings#cpu_slot_preemption_timeout_ms) global server setting
\ No newline at end of file
diff --git a/concepts/features/configuration/settings/alternative-query-languages.mdx b/core/concepts/features/configuration/settings/alternative-query-languages.mdx
similarity index 97%
rename from concepts/features/configuration/settings/alternative-query-languages.mdx
rename to core/concepts/features/configuration/settings/alternative-query-languages.mdx
index 43ea9a9a..44e818b7 100644
--- a/concepts/features/configuration/settings/alternative-query-languages.mdx
+++ b/core/concepts/features/configuration/settings/alternative-query-languages.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/alternative-query-languages
+slug: /core/guides/developer/alternative-query-languages
sidebarTitle: 'Alternative query languages'
title: 'Alternative query languages'
description: 'Use alternative query languages in ClickHouse'
diff --git a/concepts/features/configuration/settings/constraints-on-settings.mdx b/core/concepts/features/configuration/settings/constraints-on-settings.mdx
similarity index 97%
rename from concepts/features/configuration/settings/constraints-on-settings.mdx
rename to core/concepts/features/configuration/settings/constraints-on-settings.mdx
index abf3a652..ba41a654 100644
--- a/concepts/features/configuration/settings/constraints-on-settings.mdx
+++ b/core/concepts/features/configuration/settings/constraints-on-settings.mdx
@@ -18,7 +18,7 @@ stability, security and predictable behavior of your database.
Constraints on settings can be defined in the `profiles` section of the `user.xml`
configuration file. They prohibit users from changing some settings using the
-[`SET`](/reference/statements/set) statement.
+[`SET`](/core/reference/statements/set) statement.
Constraints are defined as follows:
@@ -159,7 +159,7 @@ until they're overridden explicitly for those users.
## Constraints on MergeTree settings {#constraints-on-merge-tree-settings}
-It is possible to set constraints for [merge tree settings](/reference/settings/merge-tree-settings).
+It is possible to set constraints for [merge tree settings](/core/reference/settings/merge-tree-settings).
These constraints are applied when a table with the MergeTree engine is created
or its storage settings are altered.
diff --git a/concepts/features/configuration/settings/memory-overcommit.mdx b/core/concepts/features/configuration/settings/memory-overcommit.mdx
similarity index 100%
rename from concepts/features/configuration/settings/memory-overcommit.mdx
rename to core/concepts/features/configuration/settings/memory-overcommit.mdx
diff --git a/concepts/features/configuration/settings/overview.mdx b/core/concepts/features/configuration/settings/overview.mdx
similarity index 71%
rename from concepts/features/configuration/settings/overview.mdx
rename to core/concepts/features/configuration/settings/overview.mdx
index f5fbd26d..5a292102 100644
--- a/concepts/features/configuration/settings/overview.mdx
+++ b/core/concepts/features/configuration/settings/overview.mdx
@@ -8,9 +8,9 @@ doc_type: 'reference'
## Overview {#overview}
-XML-based Settings Profiles and [configuration files](/concepts/features/configuration/server-config/configuration-files) are currently not
+XML-based Settings Profiles and [configuration files](/core/concepts/features/configuration/server-config/configuration-files) are currently not
supported for ClickHouse Cloud. To specify settings for your ClickHouse Cloud
-service, you must use [SQL-driven Settings Profiles](/concepts/features/security/access-rights#settings-profiles-management).
+service, you must use [SQL-driven Settings Profiles](/core/concepts/features/security/access-rights#settings-profiles-management).
There are following main groups of ClickHouse settings:
@@ -53,8 +53,8 @@ Which will return something like this:
## Further reading {#further-reading}
-- See [global server settings](/reference/settings/server-settings/settings) to learn more about configuring your
+- See [global server settings](/core/reference/settings/server-settings/settings) to learn more about configuring your
ClickHouse server at the global server level.
-- See [session settings](/concepts/features/configuration/settings/settings-query-level) to learn more about configuring your ClickHouse
+- See [session settings](/core/concepts/features/configuration/settings/settings-query-level) to learn more about configuring your ClickHouse
server at the session level.
-- See [context hierarchy](/resources/contribute/architecture#context) to learn more about configuration processing by Clickhouse.
+- See [context hierarchy](/resources/develop-contribute/introduction/architecture#context) to learn more about configuration processing by Clickhouse.
diff --git a/concepts/features/configuration/settings/permissions-for-queries.mdx b/core/concepts/features/configuration/settings/permissions-for-queries.mdx
similarity index 88%
rename from concepts/features/configuration/settings/permissions-for-queries.mdx
rename to core/concepts/features/configuration/settings/permissions-for-queries.mdx
index 40f6dc43..319b63e7 100644
--- a/concepts/features/configuration/settings/permissions-for-queries.mdx
+++ b/core/concepts/features/configuration/settings/permissions-for-queries.mdx
@@ -42,9 +42,9 @@ Default value: 0
After setting `readonly = 1`, the user can't change `readonly` and `allow_ddl` settings in the current session.
-When using the `GET` method in the [HTTP interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http), `readonly = 1` is set automatically. To modify data, use the `POST` method.
+When using the `GET` method in the [HTTP interface](/core/concepts/features/interfaces/http), `readonly = 1` is set automatically. To modify data, use the `POST` method.
-Setting `readonly = 1` prohibits the user from changing settings. There is a way to prohibit the user from changing only specific settings. Also there is a way to allow changing only specific settings under `readonly = 1` restrictions. For details see [constraints on settings](/concepts/features/configuration/settings/constraints-on-settings).
+Setting `readonly = 1` prohibits the user from changing settings. There is a way to prohibit the user from changing only specific settings. Also there is a way to allow changing only specific settings under `readonly = 1` restrictions. For details see [constraints on settings](/core/concepts/features/configuration/settings/constraints-on-settings).
## allow_ddl {#allow_ddl}
diff --git a/core/concepts/features/configuration/settings/query-complexity.mdx b/core/concepts/features/configuration/settings/query-complexity.mdx
new file mode 100644
index 00000000..cf54d056
--- /dev/null
+++ b/core/concepts/features/configuration/settings/query-complexity.mdx
@@ -0,0 +1,115 @@
+---
+description: 'Settings which restrict query complexity.'
+sidebarTitle: 'Restrictions on query complexity'
+slug: /operations/settings/query-complexity
+title: 'Restrictions on query complexity'
+doc_type: 'reference'
+---
+
+## Overview {#overview}
+
+As part of the [settings](/core/concepts/features/configuration/settings/overview), ClickHouse offers
+the ability to place restrictions on query complexity. This helps protect against
+potentially resource-intensive queries, ensuring safer and more predictable
+execution, particularly when using the user interface.
+
+Almost all the restrictions only apply to `SELECT` queries, and for distributed
+query processing, restrictions are applied on each server separately.
+
+ClickHouse generally checks the restrictions only after data parts have been
+fully processed, rather than checking the restrictions for each row. This can
+result in a situation where restrictions are violated while the part is being
+processed.
+
+## `overflow_mode` settings {#overflow_mode_setting}
+
+Most restrictions also have an `overflow_mode` setting, which defines what happens
+when the limit is exceeded, and can take one of two values:
+- `throw`: throw an exception (default).
+- `break`: stop executing the query and return the partial result, as if the
+ source data ran out.
+
+## `group_by_overflow_mode` settings {#group_by_overflow_mode_settings}
+
+The `group_by_overflow_mode` setting also has
+the value `any`:
+- `any` : continue aggregation for the keys that got into the set, but do not
+ add new keys to the set.
+
+## List of settings {#relevant-settings}
+
+The following settings are used for applying restrictions on query complexity.
+
+
+Restrictions on the "maximum amount of something" can take a value of `0`,
+which means that it is "unrestricted".
+
+
+| Setting | Short description |
+|------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| [`max_memory_usage`](/core/reference/settings/session-settings#max_memory_usage) | The maximum amount of RAM to use for running a query on a single server. |
+| [`max_memory_usage_for_user`](/core/reference/settings/session-settings#max_memory_usage_for_user) | The maximum amount of RAM to use for running a user's queries on a single server. |
+| [`max_rows_to_read`](/core/reference/settings/session-settings#max_rows_to_read) | The maximum number of rows that can be read from a table when running a query. |
+| [`max_bytes_to_read`](/core/reference/settings/session-settings#max_bytes_to_read) | The maximum number of bytes (of uncompressed data) that can be read from a table when running a query. |
+| [`read_overflow_mode_leaf`](/core/reference/settings/session-settings#read_overflow_mode_leaf) | Sets what happens when the volume of data read exceeds one of the leaf limits |
+| [`max_rows_to_read_leaf`](/core/reference/settings/session-settings#max_rows_to_read_leaf) | The maximum number of rows that can be read from a local table on a leaf node when running a distributed query |
+| [`max_bytes_to_read_leaf`](/core/reference/settings/session-settings#max_bytes_to_read_leaf) | The maximum number of bytes (of uncompressed data) that can be read from a local table on a leaf node when running a distributed query. |
+| [`read_overflow_mode_leaf`](/core/reference/settings/session-settings#read_overflow_mode_leaf) | Sets what happens when the volume of data read exceeds one of the leaf limits. |
+| [`max_rows_to_group_by`](/core/reference/settings/session-settings#max_rows_to_group_by) | The maximum number of unique keys received from aggregation. |
+| [`group_by_overflow_mode`](/core/reference/settings/session-settings#group_by_overflow_mode) | Sets what happens when the number of unique keys for aggregation exceeds the limit |
+| [`max_bytes_before_external_group_by`](/core/reference/settings/session-settings#max_bytes_before_external_group_by) | Enables or disables execution of `GROUP BY` clauses in external memory. |
+| [`max_bytes_ratio_before_external_group_by`](/core/reference/settings/session-settings#max_bytes_ratio_before_external_group_by) | The ratio of available memory that is allowed for `GROUP BY`. Once reached, external memory is used for aggregation. |
+| [`max_bytes_before_external_sort`](/core/reference/settings/session-settings#max_bytes_before_external_sort) | Enables or disables execution of `ORDER BY` clauses in external memory. |
+| [`max_bytes_ratio_before_external_sort`](/core/reference/settings/session-settings#max_bytes_ratio_before_external_sort) | The ratio of available memory that is allowed for `ORDER BY`. Once reached, external sort is used. |
+| [`max_rows_to_sort`](/core/reference/settings/session-settings#max_rows_to_sort) | The maximum number of rows before sorting. Allows limiting memory consumption when sorting. |
+| [`max_bytes_to_sort`](/core/reference/settings/session-settings#max_rows_to_sort) | The maximum number of bytes before sorting. |
+| [`sort_overflow_mode`](/core/reference/settings/session-settings#sort_overflow_mode) | Sets what happens if the number of rows received before sorting exceeds one of the limits. |
+| [`max_result_rows`](/core/reference/settings/session-settings#max_result_rows) | Limits the number of rows in the result. |
+| [`max_result_bytes`](/core/reference/settings/session-settings#max_result_bytes) | Limits the result size in bytes (uncompressed) |
+| [`result_overflow_mode`](/core/reference/settings/session-settings#result_overflow_mode) | Sets what to do if the volume of the result exceeds one of the limits. |
+| [`max_execution_time`](/core/reference/settings/session-settings#max_execution_time) | The maximum query execution time in seconds. |
+| [`timeout_overflow_mode`](/core/reference/settings/session-settings#timeout_overflow_mode) | Sets what to do if the query is run longer than the `max_execution_time` or the estimated running time is longer than `max_estimated_execution_time`. |
+| [`max_execution_time_leaf`](/core/reference/settings/session-settings#max_execution_time_leaf) | Similar semantically to `max_execution_time` but only applied on leaf nodes for distributed or remote queries. |
+| [`timeout_overflow_mode_leaf`](/core/reference/settings/session-settings#timeout_overflow_mode_leaf) | Sets what happens when the query in leaf node run longer than `max_execution_time_leaf`. |
+| [`min_execution_speed`](/core/reference/settings/session-settings#min_execution_speed) | Minimal execution speed in rows per second. |
+| [`min_execution_speed_bytes`](/core/reference/settings/session-settings#min_execution_speed_bytes) | The minimum number of execution bytes per second. |
+| [`max_execution_speed`](/core/reference/settings/session-settings#max_execution_speed) | The maximum number of execution rows per second. |
+| [`max_execution_speed_bytes`](/core/reference/settings/session-settings#max_execution_speed_bytes) | The maximum number of execution bytes per second. |
+| [`timeout_before_checking_execution_speed`](/core/reference/settings/session-settings#timeout_before_checking_execution_speed) | Checks that execution speed is not too slow (no less than `min_execution_speed`), after the specified time in seconds has expired. |
+| [`max_estimated_execution_time`](/core/reference/settings/session-settings#max_estimated_execution_time) | Maximum query estimate execution time in seconds. |
+| [`max_columns_to_read`](/core/reference/settings/session-settings#max_columns_to_read) | The maximum number of columns that can be read from a table in a single query. |
+| [`max_temporary_columns`](/core/reference/settings/session-settings#max_temporary_columns) | The maximum number of temporary columns that must be kept in RAM simultaneously when running a query, including constant columns. |
+| [`max_temporary_non_const_columns`](/core/reference/settings/session-settings#max_temporary_non_const_columns) | The maximum number of temporary columns that must be kept in RAM simultaneously when running a query, but without counting constant columns. |
+| [`max_subquery_depth`](/core/reference/settings/session-settings#max_subquery_depth) | Sets what happens if a query has more than the specified number of nested subqueries. |
+| [`max_ast_depth`](/core/reference/settings/session-settings#max_ast_depth) | The maximum nesting depth of a query syntactic tree. |
+| [`max_ast_elements`](/core/reference/settings/session-settings#max_ast_elements) | The maximum number of elements in a query syntactic tree. |
+| [`max_rows_in_set`](/core/reference/settings/session-settings#max_rows_in_set) | The maximum number of rows for a data set in the IN clause created from a subquery. |
+| [`max_bytes_in_set`](/core/reference/settings/session-settings#max_bytes_in_set) | The maximum number of bytes (of uncompressed data) used by a set in the IN clause created from a subquery. |
+| [`set_overflow_mode`](/core/reference/settings/session-settings#max_bytes_in_set) | Sets what happens when the amount of data exceeds one of the limits. |
+| [`max_rows_in_distinct`](/core/reference/settings/session-settings#max_rows_in_distinct) | The maximum number of different rows when using DISTINCT. |
+| [`max_bytes_in_distinct`](/core/reference/settings/session-settings#max_bytes_in_distinct) | The maximum number of bytes of the state (in uncompressed bytes) in memory, which is used by a hash table when using DISTINCT. |
+| [`distinct_overflow_mode`](/core/reference/settings/session-settings#distinct_overflow_mode) | Sets what happens when the amount of data exceeds one of the limits. |
+| [`max_rows_to_transfer`](/core/reference/settings/session-settings#max_rows_to_transfer) | Maximum size (in rows) that can be passed to a remote server or saved in a temporary table when the GLOBAL IN/JOIN section is executed. |
+| [`max_bytes_to_transfer`](/core/reference/settings/session-settings#max_bytes_to_transfer) | The maximum number of bytes (uncompressed data) that can be passed to a remote server or saved in a temporary table when the GLOBAL IN/JOIN section is executed. |
+| [`transfer_overflow_mode`](/core/reference/settings/session-settings#transfer_overflow_mode) | Sets what happens when the amount of data exceeds one of the limits. |
+| [`max_rows_in_join`](/core/reference/settings/session-settings#max_rows_in_join) | Limits the number of rows in the hash table that is used when joining tables. |
+| [`max_bytes_in_join`](/core/reference/settings/session-settings#max_bytes_in_join) | The maximum size in number of bytes of the hash table used when joining tables. |
+| [`join_overflow_mode`](/core/reference/settings/session-settings#join_overflow_mode) | Defines what action ClickHouse performs when any of the following join limits is reached. |
+| [`max_partitions_per_insert_block`](/core/reference/settings/session-settings#max_partitions_per_insert_block) | Limits the maximum number of partitions in a single inserted block and an exception is thrown if the block contains too many partitions. |
+| [`throw_on_max_partitions_per_insert_block`](/core/reference/settings/session-settings#throw_on_max_partitions_per_insert_block) | Allows you to control the behaviour when `max_partitions_per_insert_block` is reached. |
+| [`max_temporary_data_on_disk_size_for_user`](/core/reference/settings/session-settings#throw_on_max_partitions_per_insert_block) | The maximum amount of data consumed by temporary files on disk in bytes for all concurrently running user queries. |
+| [`max_temporary_data_on_disk_size_for_query`](/core/reference/settings/session-settings#max_temporary_data_on_disk_size_for_query) | The maximum amount of data consumed by temporary files on disk in bytes for all concurrently running queries. |
+| [`max_sessions_for_user`](/core/reference/settings/session-settings#max_sessions_for_user) | Maximum number of simultaneous sessions per authenticated user to the ClickHouse server. |
+| [`max_partitions_to_read`](/core/reference/settings/session-settings#max_partitions_to_read) | Limits the maximum number of partitions that can be accessed in a single query. |
+
+## Obsolete settings {#obsolete-settings}
+
+
+The following settings are obsolete
+
+
+### max_pipeline_depth {#max-pipeline-depth}
+
+Maximum pipeline depth. It Corresponds to the number of transformations that each
+data block goes through during query processing. Counted within the limits of a
+single server. If the pipeline depth is greater, an exception is thrown.
diff --git a/concepts/features/configuration/settings/server-overload.mdx b/core/concepts/features/configuration/settings/server-overload.mdx
similarity index 100%
rename from concepts/features/configuration/settings/server-overload.mdx
rename to core/concepts/features/configuration/settings/server-overload.mdx
diff --git a/concepts/features/configuration/settings/settings-profiles.mdx b/core/concepts/features/configuration/settings/settings-profiles.mdx
similarity index 95%
rename from concepts/features/configuration/settings/settings-profiles.mdx
rename to core/concepts/features/configuration/settings/settings-profiles.mdx
index dd7846a0..ba7ad182 100644
--- a/concepts/features/configuration/settings/settings-profiles.mdx
+++ b/core/concepts/features/configuration/settings/settings-profiles.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
A settings profile is a collection of settings grouped under the same name.
-ClickHouse also supports [SQL-driven workflow](/concepts/features/security/access-rights#access-control-usage) for managing settings profiles. We recommend using it.
+ClickHouse also supports [SQL-driven workflow](/core/concepts/features/security/access-rights#access-control-usage) for managing settings profiles. We recommend using it.
The profile can have any name. You can specify the same profile for different users. The most important thing you can write in the settings profile is `readonly=1`, which ensures read-only access.
diff --git a/concepts/features/configuration/settings/settings-query-level.mdx b/core/concepts/features/configuration/settings/settings-query-level.mdx
similarity index 93%
rename from concepts/features/configuration/settings/settings-query-level.mdx
rename to core/concepts/features/configuration/settings/settings-query-level.mdx
index 87624e21..6360d851 100644
--- a/concepts/features/configuration/settings/settings-query-level.mdx
+++ b/core/concepts/features/configuration/settings/settings-query-level.mdx
@@ -33,7 +33,7 @@ The order of priority for defining a setting is:
parameter `--setting=value`.
- When using the HTTP API, pass CGI parameters (`URL?setting_1=value&setting_2=value...`).
- Define settings in the
- [SETTINGS](/reference/statements/select#settings-in-select-query)
+ [SETTINGS](/core/reference/statements/select#settings-in-select-query)
clause of the SELECT query. The setting value is applied only to that query
and is reset to the default or previous value after the query is executed.
@@ -79,14 +79,14 @@ The setting is now back to its default:
## Custom settings {#custom_settings}
-In addition to the common [settings](/reference/settings/session-settings), users can define custom settings.
+In addition to the common [settings](/core/reference/settings/session-settings), users can define custom settings.
Custom settings enable you to pass **session-specific parameters** that can be referenced within queries, policies, or functions. This is useful when you need to:
- Filter data based on user identity or organization
- Apply different business logic based on context
- Maintain stateful information across queries in a session
A custom setting name must begin with one of a number of predefined prefixes from a list you define.
-The list of prefixes can be specified using the [`custom_settings_prefixes`](/reference/settings/server-settings/settings#custom_settings_prefixes) server setting, defined in your server configuration file.
+The list of prefixes can be specified using the [`custom_settings_prefixes`](/core/reference/settings/server-settings/settings#custom_settings_prefixes) server setting, defined in your server configuration file.
In the example below, `SQL_` is chosen as the custom prefix:
@@ -220,5 +220,5 @@ VALUES (...)
## See also {#see-also}
-- View the [Settings](/reference/settings/session-settings) page for a description of the ClickHouse settings.
-- [Global server settings](/reference/settings/server-settings/settings)
+- View the [Settings](/core/reference/settings/session-settings) page for a description of the ClickHouse settings.
+- [Global server settings](/core/reference/settings/server-settings/settings)
diff --git a/concepts/features/configuration/settings/settings-users.mdx b/core/concepts/features/configuration/settings/settings-users.mdx
similarity index 94%
rename from concepts/features/configuration/settings/settings-users.mdx
rename to core/concepts/features/configuration/settings/settings-users.mdx
index 8b5c73f2..58d9f979 100644
--- a/concepts/features/configuration/settings/settings-users.mdx
+++ b/core/concepts/features/configuration/settings/settings-users.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
The `users` section of the `users.xml` configuration file contains user settings.
-ClickHouse also supports [SQL-driven workflow](/concepts/features/security/access-rights#access-control-usage) for managing users. We recommend using it.
+ClickHouse also supports [SQL-driven workflow](/core/concepts/features/security/access-rights#access-control-usage) for managing users. We recommend using it.
Structure of the `users` section:
@@ -284,7 +284,7 @@ In this example, TOTP verification is applied to the password-based method (`
```
-The `filter` can be any expression resulting in a [UInt8](/reference/data-types/int-uint)-type value. It usually contains comparisons and logical operators. Rows from `database_name.table1` where filter results to 0 are not returned for this user. The filtering is incompatible with `PREWHERE` operations and disables `WHERE→PREWHERE` optimization.
+The `filter` can be any expression resulting in a [UInt8](/core/reference/data-types/int-uint)-type value. It usually contains comparisons and logical operators. Rows from `database_name.table1` where filter results to 0 are not returned for this user. The filtering is incompatible with `PREWHERE` operations and disables `WHERE→PREWHERE` optimization.
## Roles {#roles}
diff --git a/concepts/features/configuration/settings/tcp-connection-limits.mdx b/core/concepts/features/configuration/settings/tcp-connection-limits.mdx
similarity index 95%
rename from concepts/features/configuration/settings/tcp-connection-limits.mdx
rename to core/concepts/features/configuration/settings/tcp-connection-limits.mdx
index ff0e6330..2ccc48b1 100644
--- a/concepts/features/configuration/settings/tcp-connection-limits.mdx
+++ b/core/concepts/features/configuration/settings/tcp-connection-limits.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
## Overview {#overview}
-You may have a ClickHouse TCP connection (i.e., one through the [command-line client](/integrations/connectors/data-integrations/drivers-and-interfaces/client))
+You may have a ClickHouse TCP connection (i.e., one through the [command-line client](/core/concepts/features/interfaces/client))
disconnect automatically after some number of queries or duration.
After disconnecting, no automatic reconnection occurs (unless triggered through something else,
such as sending another query in the command-line client).
diff --git a/concepts/features/dictionaries/best-practices.mdx b/core/concepts/features/dictionaries/best-practices.mdx
similarity index 95%
rename from concepts/features/dictionaries/best-practices.mdx
rename to core/concepts/features/dictionaries/best-practices.mdx
index 2bdd73ea..dc85839a 100644
--- a/concepts/features/dictionaries/best-practices.mdx
+++ b/core/concepts/features/dictionaries/best-practices.mdx
@@ -9,7 +9,7 @@ keywords: ['dictionary', 'dictionaries', 'layout', 'dictGet', 'JOIN', 'hashed',
This page covers practical guidance for choosing the right dictionary layout, understanding when dictionaries outperform JOINs (and when they don't), and monitoring dictionary usage.
-For an introduction to dictionaries with worked examples, see the [main Dictionary guide](/concepts/features/dictionaries).
+For an introduction to dictionaries with worked examples, see the [main Dictionary guide](/core/concepts/features/dictionaries).
## When to use dictionaries vs JOINs {#when-to-use-dictionaries-vs-joins}
@@ -23,7 +23,7 @@ As a rule of thumb:
## Choosing a layout {#choosing-a-layout}
-The `LAYOUT` clause controls the internal data structure for the dictionary. All available layouts are documented in the [layouts reference](/reference/statements/create/dictionary/layouts/overview#storing-dictionaries-in-memory).
+The `LAYOUT` clause controls the internal data structure for the dictionary. All available layouts are documented in the [layouts reference](/core/reference/statements/create/dictionary/layouts/overview#storing-dictionaries-in-memory).
When choosing a layout, use the following guidelines:
@@ -37,7 +37,7 @@ When choosing a layout, use the following guidelines:
## Monitoring dictionary usage {#monitoring-dictionary-usage}
-Track memory consumption and health via the [`system.dictionaries`](/reference/system-tables/dictionaries) table:
+Track memory consumption and health via the [`system.dictionaries`](/core/reference/system-tables/dictionaries) table:
```sql
SELECT
diff --git a/concepts/features/dictionaries/index.mdx b/core/concepts/features/dictionaries/index.mdx
similarity index 85%
rename from concepts/features/dictionaries/index.mdx
rename to core/concepts/features/dictionaries/index.mdx
index 8bdd3b46..603e2a54 100644
--- a/concepts/features/dictionaries/index.mdx
+++ b/core/concepts/features/dictionaries/index.mdx
@@ -10,7 +10,7 @@ import { Image } from "/snippets/components/Image.jsx";
# Dictionary
-A dictionary in ClickHouse provides an in-memory [key-value](https://en.wikipedia.org/wiki/Key%E2%80%93value_database) representation of data from various [internal and external sources](/reference/statements/create/dictionary/sources/overview#dictionary-sources), optimizing for super-low latency lookup queries.
+A dictionary in ClickHouse provides an in-memory [key-value](https://en.wikipedia.org/wiki/Key%E2%80%93value_database) representation of data from various [internal and external sources](/core/reference/statements/create/dictionary/sources/overview#dictionary-sources), optimizing for super-low latency lookup queries.
Dictionaries are useful for:
- Improving the performance of queries, especially when used with `JOIN`s
@@ -20,17 +20,17 @@ Dictionaries are useful for:
## Speeding up joins using a Dictionary {#speeding-up-joins-using-a-dictionary}
-Dictionaries can be used to speed up a specific type of `JOIN`: the [`LEFT ANY` type](/reference/statements/select/join#supported-types-of-join) where the join key needs to match the key attribute of the underlying key-value storage.
+Dictionaries can be used to speed up a specific type of `JOIN`: the [`LEFT ANY` type](/core/reference/statements/select/join#supported-types-of-join) where the join key needs to match the key attribute of the underlying key-value storage.
-If this is the case, ClickHouse can exploit the dictionary to perform a [Direct Join](https://clickhouse.com/blog/clickhouse-fully-supports-joins-direct-join-part4#direct-join). This is ClickHouse's fastest join algorithm and is applicable when the underlying [table engine](/reference/engines/table-engines) for the right-hand side table supports low-latency key-value requests. ClickHouse has three table engines providing this: [Join](/reference/engines/table-engines/special/join) (that is basically a pre-calculated hash table), [EmbeddedRocksDB](/reference/engines/table-engines/integrations/embedded-rocksdb) and [Dictionary](/reference/engines/table-engines/special/dictionary). We will describe the dictionary-based approach, but the mechanics are the same for all three engines.
+If this is the case, ClickHouse can exploit the dictionary to perform a [Direct Join](https://clickhouse.com/blog/clickhouse-fully-supports-joins-direct-join-part4#direct-join). This is ClickHouse's fastest join algorithm and is applicable when the underlying [table engine](/core/reference/engines/table-engines) for the right-hand side table supports low-latency key-value requests. ClickHouse has three table engines providing this: [Join](/core/reference/engines/table-engines/special/join) (that is basically a pre-calculated hash table), [EmbeddedRocksDB](/core/reference/engines/table-engines/integrations/embedded-rocksdb) and [Dictionary](/core/reference/engines/table-engines/special/dictionary). We will describe the dictionary-based approach, but the mechanics are the same for all three engines.
The direct join algorithm requires that the right table is backed by a dictionary, such that the to-be-joined data from that table is already present in memory in the form of a low-latency key-value data structure.
### Example {#example}
-Using the [Stack Overflow dataset](/get-started/sample-datasets/stackoverflow), let's answer the question:
+Using the [Stack Overflow dataset](/core/get-started/sample-datasets/stackoverflow), let's answer the question:
*What is the most controversial post concerning SQL on Hacker News?*
We will define controversial as when posts have a similar number of up and down votes. We compute this absolute difference, where a value closer to 0 means more controversy. We'll assume the post must have at least 10 up and down votes - posts which people don't vote on aren't very controversial.
@@ -84,7 +84,7 @@ While this query is fast, it relies on us to write the `JOIN` carefully to achie
#### Applying a dictionary {#applying-a-dictionary}
-To demonstrate these concepts, we use a dictionary for our vote data. Since dictionaries are usually held in memory ([ssd_cache](/reference/statements/create/dictionary/layouts/ssd-cache) is the exception), you should be cognizant of the size of the data. Confirming our `votes` table size:
+To demonstrate these concepts, we use a dictionary for our vote data. Since dictionaries are usually held in memory ([ssd_cache](/core/reference/statements/create/dictionary/layouts/ssd-cache) is the exception), you should be cognizant of the size of the data. Confirming our `votes` table size:
```sql
SELECT table,
@@ -102,7 +102,7 @@ GROUP BY table
Data will be stored uncompressed in our dictionary, so we need at least 4GB of memory if we were to store all columns (we won't) in a dictionary. The dictionary will be replicated across our cluster, so this amount of memory needs to be reserved *per node*.
-> In the example below the data for our dictionary originates from a ClickHouse table. While this represents the most common source of dictionaries, [a number of sources](/reference/statements/create/dictionary/sources/overview#dictionary-sources) are supported including files, http and databases including [Postgres](/reference/statements/create/dictionary/sources/postgresql). As we'll show, dictionaries can be automatically refreshed providing an ideal way to ensure small datasets subject to frequent changes are available for direct joins.
+> In the example below the data for our dictionary originates from a ClickHouse table. While this represents the most common source of dictionaries, [a number of sources](/core/reference/statements/create/dictionary/sources/overview#dictionary-sources) are supported including files, http and databases including [Postgres](/core/reference/statements/create/dictionary/sources/postgresql). As we'll show, dictionaries can be automatically refreshed providing an ideal way to ensure small datasets subject to frequent changes are available for direct joins.
Our dictionary requires a primary key on which lookups will be performed. This is conceptually identical to a transactional database primary key and should be unique. Our above query requires a lookup on the join key - `PostId`. The dictionary should in turn be populated with the total of the up and down votes per `PostId` from our `votes` table. Here's the query to obtain this dictionary data:
@@ -279,7 +279,7 @@ ORDER BY (PostTypeId, toDate(CreationDate), CommentCount)
In the above example the `Location` is declared as a `MATERIALIZED` column. This means the value can be provided as part of an `INSERT` query and will always be calculated.
-> ClickHouse also supports [`DEFAULT` columns](/reference/statements/create/table#default_values) (where the value can be inserted or calculated if not provided).
+> ClickHouse also supports [`DEFAULT` columns](/core/reference/statements/create/table#default_values) (where the value can be inserted or calculated if not provided).
To populate the table we can use the usual `INSERT INTO SELECT` from S3:
@@ -312,21 +312,21 @@ Peak memory usage: 666.82 MiB.
## Advanced dictionary topics {#advanced-dictionary-topics}
-For guidance on choosing dictionary layouts, when to use dictionaries vs JOINs, and monitoring dictionary usage, see [Dictionary best practices](/concepts/features/dictionaries/best-practices).
+For guidance on choosing dictionary layouts, when to use dictionaries vs JOINs, and monitoring dictionary usage, see [Dictionary best practices](/core/concepts/features/dictionaries/best-practices).
### Refreshing dictionaries {#refreshing-dictionaries}
We have specified a `LIFETIME` for the dictionary of `MIN 600 MAX 900`. LIFETIME is the update interval for the dictionary, with the values here causing a periodic reload at a random interval between 600 and 900s. This random interval is necessary in order to distribute the load on the dictionary source when updating on a large number of servers. During updates, the old version of a dictionary can still be queried, with only the initial load blocking queries. Note that setting `(LIFETIME(0))` prevents dictionaries from updating.
Dictionaries can be forcibly reloaded using the `SYSTEM RELOAD DICTIONARY` command.
-For database sources such as ClickHouse and Postgres, you can set up a query that will update the dictionaries only if they really changed (the response of the query determines this), rather than at a periodic interval. Further details can be found [here](/reference/statements/create/dictionary/lifetime).
+For database sources such as ClickHouse and Postgres, you can set up a query that will update the dictionaries only if they really changed (the response of the query determines this), rather than at a periodic interval. Further details can be found [here](/core/reference/statements/create/dictionary/lifetime).
### Other dictionary types {#other-dictionary-types}
-ClickHouse also supports [Hierarchical](/reference/statements/create/dictionary/layouts/hierarchical), [Polygon](/reference/statements/create/dictionary/layouts/polygon) and [Regular Expression](/reference/statements/create/dictionary/layouts/regexp-tree) dictionaries.
+ClickHouse also supports [Hierarchical](/core/reference/statements/create/dictionary/layouts/hierarchical), [Polygon](/core/reference/statements/create/dictionary/layouts/polygon) and [Regular Expression](/core/reference/statements/create/dictionary/layouts/regexp-tree) dictionaries.
### More reading {#more-reading}
-- [Dictionary best practices](/concepts/features/dictionaries/best-practices) — layout selection, dictionaries vs JOINs, monitoring
+- [Dictionary best practices](/core/concepts/features/dictionaries/best-practices) — layout selection, dictionaries vs JOINs, monitoring
- [Using Dictionaries to Accelerate Queries](https://clickhouse.com/blog/faster-queries-dictionaries-clickhouse)
-- [Advanced Configuration for Dictionaries](/reference/statements/create/dictionary)
+- [Advanced Configuration for Dictionaries](/core/reference/statements/create/dictionary)
diff --git a/concepts/features/index.mdx b/core/concepts/features/index.mdx
similarity index 53%
rename from concepts/features/index.mdx
rename to core/concepts/features/index.mdx
index 5406246d..fa0583e4 100644
--- a/concepts/features/index.mdx
+++ b/core/concepts/features/index.mdx
@@ -1,36 +1,36 @@
---
title: 'ClickHouse Concepts'
-slug: /guides/manage-and-deploy
+slug: /core/guides/manage-and-deploy
description: 'Explore ClickHouse concepts including materialized views, dictionaries, performance tuning, operations, configuration, security, and more.'
mode: wide
---
-
+
Learn about incremental, refreshable, and cascading materialized views.
-
+
External and internal dictionaries for fast key-value lookups.
-
+
Pre-sorted data representations for faster queries.
-
+
Prewhere, caches, skipping indexes, lazy materialization, and troubleshooting.
-
+
Insert, select, update, and delete operations.
-
+
Settings, server configuration, and workload scheduling.
-
+
Access control, TLS, external authenticators, and network security.
-
+
Backup to local disk, S3, Azure Blob Storage, and alternative methods.
-
+
clickhouse-local, clickhouse-benchmark, clickhouse-keeper, and more.
\ No newline at end of file
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/arrowflight.mdx b/core/concepts/features/interfaces/arrowflight.mdx
similarity index 98%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/arrowflight.mdx
rename to core/concepts/features/interfaces/arrowflight.mdx
index fa3204d7..85821983 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/arrowflight.mdx
+++ b/core/concepts/features/interfaces/arrowflight.mdx
@@ -417,11 +417,11 @@ If a native ClickHouse connector is available for your tool (e.g., JDBC, ODBC, n
ClickHouse can also act as a Flight client to read data from external Arrow Flight servers. See:
-- [ArrowFlight table engine](/reference/engines/table-engines/integrations/arrowflight)
-- [arrowFlight table function](/reference/functions/table-functions/arrowflight)
+- [ArrowFlight table engine](/core/reference/engines/table-engines/integrations/arrowflight)
+- [arrowFlight table function](/core/reference/functions/table-functions/arrowflight)
## See also {#see-also}
- [Apache Arrow Flight specification](https://arrow.apache.org/docs/format/Flight.html)
- [Apache Arrow Flight SQL specification](https://arrow.apache.org/docs/format/FlightSql.html)
-- [Arrow format in ClickHouse](/reference/formats/Arrow/Arrow)
+- [Arrow format in ClickHouse](/core/reference/formats/Arrow/Arrow)
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/cli.mdx b/core/concepts/features/interfaces/cli.mdx
similarity index 100%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/cli.mdx
rename to core/concepts/features/interfaces/cli.mdx
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/client.mdx b/core/concepts/features/interfaces/client.mdx
similarity index 96%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/client.mdx
rename to core/concepts/features/interfaces/client.mdx
index 8cb7c80d..fe723653 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/client.mdx
+++ b/core/concepts/features/interfaces/client.mdx
@@ -10,7 +10,7 @@ import { Image } from "/snippets/components/Image.jsx";
ClickHouse provides a native command-line client for executing SQL queries directly against a ClickHouse server.
It supports both interactive mode (for live query execution) and batch mode (for scripting and automation).
-Query results can be displayed in the terminal or exported to a file, with support for all ClickHouse output [formats](/reference/formats), such as Pretty, CSV, JSON, and more.
+Query results can be displayed in the terminal or exported to a file, with support for all ClickHouse output [formats](/core/reference/formats), such as Pretty, CSV, JSON, and more.
The client provides real-time feedback on query execution with a progress bar and the number of rows read, bytes processed and query execution time.
It supports both [command-line options](#command-line-options) and [configuration files](#configuration_files).
@@ -29,7 +29,7 @@ To also install it, run:
sudo ./clickhouse install
```
-See [Install ClickHouse](/get-started/setup/self-managed/install) for more installation options.
+See [Install ClickHouse](/core/get-started/setup/install) for more installation options.
Different client and server versions are compatible with one another, but some features may not be available in older clients. We recommend using the same version for client and server.
@@ -173,7 +173,7 @@ It is not possible to cancel a query at certain stages.
If you do not wait and press `Ctrl+C` a second time, the client will exit.
ClickHouse Client allows passing external data (external temporary tables) for querying.
-For more information, see the section [External data for query processing](/reference/engines/table-engines/special/external-data).
+For more information, see the section [External data for query processing](/core/reference/engines/table-engines/special/external-data).
### Aliases {#cli_aliases}
@@ -272,7 +272,7 @@ In the example below, the contents of file.csv are output to stdout using `cat`,
cat file.csv | clickhouse-client --database=test --query="INSERT INTO test FORMAT CSV";
```
-In batch mode, the default data [format](/reference/formats) is `TabSeparated`.
+In batch mode, the default data [format](/core/reference/formats) is `TabSeparated`.
You can set the format in the `FORMAT` clause of the query as shown in the example above.
## Queries with parameters {#cli-queries-with-parameters}
@@ -326,7 +326,7 @@ In the query, place the values that you want to fill using command-line paramete
| Parameter | Description |
|-------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `name` | Placeholder identifier. The corresponding command-line option is `--param_ = value`. |
-| `data type` | [Data type](/reference/data-types) of the parameter.
For example, a data structure like `(integer, ('string', integer))` can have the `Tuple(UInt8, Tuple(String, UInt8))` data type (you can also use other [integer](/reference/data-types/int-uint) types).
It is also possible to pass the table name, database name, and column names as parameters, in that case you would need to use `Identifier` as the data type. |
+| `data type` | [Data type](/core/reference/data-types) of the parameter.
For example, a data structure like `(integer, ('string', integer))` can have the `Tuple(UInt8, Tuple(String, UInt8))` data type (you can also use other [integer](/core/reference/data-types/int-uint) types).
It is also possible to pass the table name, database name, and column names as parameters, in that case you would need to use `Identifier` as the data type. |
### Examples {#cli-queries-with-parameters-examples}
@@ -815,7 +815,7 @@ All command-line options can be specified directly on the command line or as def
| `--no-server-client-version-message` | Suppress server-client version mismatch message when the client connects to the server. | - |
| `--password ` | The password of the database user. You can also specify the password for a connection in the configuration file. If you do not specify the password, the client will ask for it. | - |
| `--port ` | The port the server is accepting connections on. The default ports are 9440 (TLS) and 9000 (no TLS).
Note: The client uses the native protocol and not HTTP(S). | `9440` if `--secure` is specified, `9000` otherwise. Always defaults to `9440` if the hostname ends in `.clickhouse.cloud`. |
-| `-s [ --secure ]` | Whether to use TLS.
Enabled automatically when connecting to port 9440 (the default secure port) or ClickHouse Cloud.
You might need to configure your CA certificates in the [configuration file](#configuration_files). The available configuration settings are the same as for [server-side TLS configuration](/reference/settings/server-settings/settings#openssl). | Auto-enabled when connecting to port 9440 or ClickHouse Cloud |
+| `-s [ --secure ]` | Whether to use TLS.
Enabled automatically when connecting to port 9440 (the default secure port) or ClickHouse Cloud.
You might need to configure your CA certificates in the [configuration file](#configuration_files). The available configuration settings are the same as for [server-side TLS configuration](/core/reference/settings/server-settings/settings#openssl). | Auto-enabled when connecting to port 9440 or ClickHouse Cloud |
| `--ssh-key-file ` | File containing the SSH private key for authenticate with the server. | - |
| `--ssh-key-passphrase ` | Passphrase for the SSH private key specified in `--ssh-key-file`. | - |
| `--tls-sni-override ` | If using TLS, the server name (SNI) to pass in the handshake. | The host provided via `-h` or `--host`. |
@@ -833,7 +833,7 @@ Instead of the `--host`, `--port`, `--user` and `--password` options, the client
| `-q [ --query ] ` | The query to run in batch mode. Can be specified multiple times (`--query "SELECT 1" --query "SELECT 2"`) or once with multiple semicolon-separated queries (`--query "SELECT 1; SELECT 2;"`). In the latter case, `INSERT` queries with formats other than `VALUES` must be separated by empty lines.
A single query can also be specified without a parameter: `clickhouse-client "SELECT 1"`
Cannot be used together with `--queries-file`. |
| `--queries-file ` | Path to a file containing queries. `--queries-file` can be specified multiple times, e.g. `--queries-file queries1.sql --queries-file queries2.sql`.
Cannot be used together with `--query`. |
| `-m [ --multiline ]` | If specified, allow multiline queries (do not send the query on Enter). Queries will be sent only when they are ended with a semicolon. |
-| `--inline-insert-data` | Send `INSERT ... VALUES` (and other inline formats) as is in the query text instead of converting the data to blocks in the native format. The server parses the inline data itself, avoiding the round-trip to send table structure and column defaults back to the client. This can improve performance for many small inserts over the native protocol. Automatically sets [`send_table_structure_on_insert_with_inline_data`](/reference/settings/session-settings#send_table_structure_on_insert_with_inline_data) to `0`. Cannot be combined with inline data and external data (from stdin or `INFILE`). |
+| `--inline-insert-data` | Send `INSERT ... VALUES` (and other inline formats) as is in the query text instead of converting the data to blocks in the native format. The server parses the inline data itself, avoiding the round-trip to send table structure and column defaults back to the client. This can improve performance for many small inserts over the native protocol. Automatically sets [`send_table_structure_on_insert_with_inline_data`](/core/reference/settings/session-settings#send_table_structure_on_insert_with_inline_data) to `0`. Cannot be combined with inline data and external data (from stdin or `INFILE`). |
### Query settings {#command-line-options-query-settings}
@@ -842,15 +842,15 @@ Query settings can be specified as command-line options in the client, for examp
$ clickhouse-client --max_threads 1
```
-See [Settings](/reference/settings/session-settings) for a list of settings.
+See [Settings](/core/reference/settings/session-settings) for a list of settings.
### Formatting options {#command-line-options-formatting}
| Option | Description | Default |
|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------|
-| `-f [ --format ] ` | Use the specified format to output the result.
See [Formats for Input and Output Data](/reference/formats) for a list of supported formats. | `TabSeparated` |
+| `-f [ --format ] ` | Use the specified format to output the result.
See [Formats for Input and Output Data](/core/reference/formats) for a list of supported formats. | `TabSeparated` |
| `--pager ` | Pipe all output into this command. Typically `less` (e.g., `less -S` to display wide result sets) or similar. | - |
-| `-E [ --vertical ]` | Use the [Vertical format](/reference/formats/Vertical) to output the result. This is the same as `–-format Vertical`. In this format, each value is printed on a separate line, which is helpful when displaying wide tables. | - |
+| `-E [ --vertical ]` | Use the [Vertical format](/core/reference/formats/Vertical) to output the result. This is the same as `–-format Vertical`. In this format, each value is printed on a separate line, which is helpful when displaying wide tables. | - |
### Execution details {#command-line-options-execution-details}
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/cpp.mdx b/core/concepts/features/interfaces/cpp.mdx
similarity index 100%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/cpp.mdx
rename to core/concepts/features/interfaces/cpp.mdx
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/grpc.mdx b/core/concepts/features/interfaces/grpc.mdx
similarity index 95%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/grpc.mdx
rename to core/concepts/features/interfaces/grpc.mdx
index 80c3f79b..04ecbf2f 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/grpc.mdx
+++ b/core/concepts/features/interfaces/grpc.mdx
@@ -23,7 +23,7 @@ The specification of the interface is described in [clickhouse_grpc.proto](https
## gRPC configuration {#grpc-interface-configuration}
-To use the gRPC interface set `grpc_port` in the main [server configuration](/concepts/features/configuration/server-config/configuration-files). Other configuration options see in the following example:
+To use the gRPC interface set `grpc_port` in the main [server configuration](/core/concepts/features/configuration/server-config/configuration-files). Other configuration options see in the following example:
```xml
9100
@@ -71,7 +71,7 @@ The client supports the following arguments:
- `--password PASSWORD` – A password. Default value: empty string.
- `--query QUERY, -q QUERY` – A query to process when using non-interactive mode.
- `--database DATABASE, -d DATABASE` – A default database. If not specified, the current database set in the server settings is used (`default` by default).
-- `--format OUTPUT_FORMAT, -f OUTPUT_FORMAT` – A result output [format](/reference/formats). Default value for interactive mode: `PrettyCompact`.
+- `--format OUTPUT_FORMAT, -f OUTPUT_FORMAT` – A result output [format](/core/reference/formats). Default value for interactive mode: `PrettyCompact`.
- `--debug` – Enables showing debug information.
To run the client in an interactive mode call it without `--query` argument.
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/http.mdx b/core/concepts/features/interfaces/http.mdx
similarity index 95%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/http.mdx
rename to core/concepts/features/interfaces/http.mdx
index 9de05955..115852ec 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/http.mdx
+++ b/core/concepts/features/interfaces/http.mdx
@@ -32,7 +32,7 @@ $ curl 'http://localhost:8123/'
Ok.
```
-"Ok." is the default value defined in [`http_server_default_response`](/reference/settings/server-settings/settings#http_server_default_response) and can be changed if desired.
+"Ok." is the default value defined in [`http_server_default_response`](/core/reference/settings/server-settings/settings#http_server_default_response) and can be changed if desired.
Also see: [HTTP response codes caveats](#http_response_codes_caveats).
@@ -146,7 +146,7 @@ ECT 1
, expected One of: SHOW TABLES, SHOW DATABASES, SELECT, INSERT, CREATE, ATTACH, RENAME, DROP, DETACH, USE, SET, OPTIMIZE., e.what() = DB::Exception
```
-By default, data is returned in the [`TabSeparated`](/reference/formats/TabSeparated/TabSeparated) format.
+By default, data is returned in the [`TabSeparated`](/core/reference/formats/TabSeparated/TabSeparated) format.
The `FORMAT` clause is used in the query to request any other format. For example:
@@ -283,7 +283,7 @@ Compression can be used to reduce network traffic when transmitting a large amou
You can use the internal ClickHouse compression format when transmitting data. The compressed data has a non-standard format, and you need the `clickhouse-compressor` program to work with it. It is installed by default with the `clickhouse-client` package.
-To increase the efficiency of data insertion, disable server-side checksum verification by using the [`http_native_compression_disable_checksumming_on_decompress`](/reference/settings/session-settings#http_native_compression_disable_checksumming_on_decompress) setting.
+To increase the efficiency of data insertion, disable server-side checksum verification by using the [`http_native_compression_disable_checksumming_on_decompress`](/core/reference/settings/session-settings#http_native_compression_disable_checksumming_on_decompress) setting.
If you specify `compress=1` in the URL, the server will compress the data it sends to you. If you specify `decompress=1` in the URL, the server will decompress the data which you pass in the `POST` method.
@@ -302,7 +302,7 @@ To send a compressed `POST` request, append the request header `Content-Encoding
In order for ClickHouse to compress the response, append the `Accept-Encoding: compression_method` header to the request.
-You can configure the data compression level using the [`http_zlib_compression_level`](/reference/settings/session-settings#http_zlib_compression_level) setting for all compression methods.
+You can configure the data compression level using the [`http_zlib_compression_level`](/core/reference/settings/session-settings#http_zlib_compression_level) setting for all compression methods.
Some HTTP clients might decompress data from the server by default (with `gzip` and `deflate`) and you might get decompressed data even if you use the compression settings correctly.
@@ -415,8 +415,8 @@ $ echo 'SELECT number FROM system.numbers LIMIT 10' | curl 'http://localhost:812
```
For more information see:
-- [Settings](/reference/settings/session-settings)
-- [SET](/reference/statements/set)
+- [Settings](/core/reference/settings/session-settings)
+- [SET](/core/reference/statements/set)
## Using ClickHouse sessions in the HTTP protocol {#using-clickhouse-sessions-in-the-http-protocol}
@@ -426,7 +426,7 @@ By default, the session is terminated after 60 seconds of inactivity. To change
To check the session status, use the `session_check=1` parameter. Only one query at a time can be executed within a single session.
-You can receive information about the progress of a query in the `X-ClickHouse-Progress` response headers. To do this, enable [`send_progress_in_http_headers`](/reference/settings/session-settings#send_progress_in_http_headers).
+You can receive information about the progress of a query in the `X-ClickHouse-Progress` response headers. To do this, enable [`send_progress_in_http_headers`](/core/reference/settings/session-settings#send_progress_in_http_headers).
Below is an example of the header sequence:
@@ -454,10 +454,10 @@ The following optional parameters exist:
| Parameters | Description |
|-----------------------|-------------------------------------------|
-| `query_id` (optional) | Can be passed as the query ID (any string). [`replace_running_query`](/reference/settings/session-settings#replace_running_query)|
-| `quota_key` (optional)| Can be passed as the quota key (any string). ["Quotas"](/concepts/features/configuration/server-config/quotas) |
+| `query_id` (optional) | Can be passed as the query ID (any string). [`replace_running_query`](/core/reference/settings/session-settings#replace_running_query)|
+| `quota_key` (optional)| Can be passed as the quota key (any string). ["Quotas"](/core/concepts/features/configuration/server-config/quotas) |
-The HTTP interface allows passing external data (external temporary tables) for querying. For more information, see ["External data for query processing"](/reference/engines/table-engines/special/external-data).
+The HTTP interface allows passing external data (external temporary tables) for querying. For more information, see ["External data for query processing"](/core/reference/engines/table-engines/special/external-data).
## Response buffering {#response-buffering}
@@ -466,8 +466,8 @@ Response buffering can be enabled on the server-side. The following URL paramete
- `wait_end_of_query`
The following settings can be used:
-- [`http_response_buffer_size`](/reference/settings/session-settings#http_response_buffer_size)
-- [`http_wait_end_of_query`](/reference/settings/session-settings#http_wait_end_of_query)
+- [`http_response_buffer_size`](/core/reference/settings/session-settings#http_response_buffer_size)
+- [`http_wait_end_of_query`](/core/reference/settings/session-settings#http_wait_end_of_query)
`buffer_size` determines the number of bytes in the result to buffer in the server memory. If a result body is larger than this threshold, the buffer is written to the HTTP channel, and the remaining data is sent directly to the HTTP channel.
@@ -535,7 +535,7 @@ The reason for this behavior is the nature of the HTTP protocol. The HTTP header
This behavior is independent of the format used, whether it's `Native`, `TSV`, or `JSON`; the error message will always be in the middle of the response stream.
-You can mitigate this problem by enabling `wait_end_of_query=1` ([Response Buffering](#response-buffering)). In this case, sending of the HTTP header is delayed until the entire query is resolved. This however, doesn't completely solve the problem because the result must still fit within the [`http_response_buffer_size`](/reference/settings/session-settings#http_response_buffer_size), and other settings like [`send_progress_in_http_headers`](/reference/settings/session-settings#send_progress_in_http_headers) can interfere with the delay of the header.
+You can mitigate this problem by enabling `wait_end_of_query=1` ([Response Buffering](#response-buffering)). In this case, sending of the HTTP header is delayed until the entire query is resolved. This however, doesn't completely solve the problem because the result must still fit within the [`http_response_buffer_size`](/core/reference/settings/session-settings#http_response_buffer_size), and other settings like [`send_progress_in_http_headers`](/core/reference/settings/session-settings#send_progress_in_http_headers) can interfere with the delay of the header.
The only way to catch all errors is to analyze the HTTP body before parsing it using the required format.
@@ -609,7 +609,7 @@ __exception__
## Queries with parameters {#cli-queries-with-parameters}
-You can create a query with parameters and pass values for them from the corresponding HTTP request parameters. For more information, see [Queries with Parameters for CLI](/integrations/connectors/data-integrations/drivers-and-interfaces/client#cli-queries-with-parameters).
+You can create a query with parameters and pass values for them from the corresponding HTTP request parameters. For more information, see [Queries with Parameters for CLI](/core/concepts/features/interfaces/client#cli-queries-with-parameters).
### Example {#example-3}
@@ -778,7 +778,7 @@ The configuration methods for different `type`s are discussed next.
`query` value is a predefined query of `predefined_query_handler`, which is executed by ClickHouse when an HTTP request is matched and the result of the query is returned. It is a must configuration.
-The following example defines the values of [`max_threads`](/reference/settings/session-settings#max_threads) and [`max_final_threads`](/reference/settings/session-settings#max_final_threads) settings, then queries the system table to check whether these settings were set successfully.
+The following example defines the values of [`max_threads`](/core/reference/settings/session-settings#max_threads) and [`max_final_threads`](/core/reference/settings/session-settings#max_final_threads) settings, then queries the system table to check whether these settings were set successfully.
To keep the default `handlers` such as` query`, `play`,` ping`, add the `` rule.
@@ -856,7 +856,7 @@ In `dynamic_query_handler`, the query is written in the form of parameter of the
ClickHouse extracts and executes the value corresponding to the `query_param_name` value in the URL of the HTTP request. The default value of `query_param_name` is `/query` . It is an optional configuration. If there is no definition in the configuration file, the parameter isn't passed in.
-To experiment with this functionality, the following example defines the values of [`max_threads`](/reference/settings/session-settings#max_threads) and `max_final_threads` and `queries` whether the settings were set successfully.
+To experiment with this functionality, the following example defines the values of [`max_threads`](/core/reference/settings/session-settings#max_threads) and `max_final_threads` and `queries` whether the settings were set successfully.
Example:
@@ -1131,7 +1131,7 @@ In the example below, every server response will contain two custom headers: `X-
While query execution occurs over HTTP an exception can happen when part of the data has already been sent. Usually an exception is sent to the client in plain text.
Even if some specific data format was used to output data and the output may become invalid in terms of specified data format.
-To prevent it, you can use setting [`http_write_exception_in_output_format`](/reference/settings/session-settings#http_write_exception_in_output_format) (disabled by default) that will tell ClickHouse to write an exception in specified format (currently supported for XML and JSON* formats).
+To prevent it, you can use setting [`http_write_exception_in_output_format`](/core/reference/settings/session-settings#http_write_exception_in_output_format) (disabled by default) that will tell ClickHouse to write an exception in specified format (currently supported for XML and JSON* formats).
Examples:
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/jdbc.mdx b/core/concepts/features/interfaces/jdbc.mdx
similarity index 100%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/jdbc.mdx
rename to core/concepts/features/interfaces/jdbc.mdx
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/mysql.mdx b/core/concepts/features/interfaces/mysql.mdx
similarity index 83%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/mysql.mdx
rename to core/concepts/features/interfaces/mysql.mdx
index f7eeff1a..d1e34f06 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/mysql.mdx
+++ b/core/concepts/features/interfaces/mysql.mdx
@@ -27,7 +27,7 @@ If there is a native driver available (e.g., [DBeaver](/integrations/connectors/
If your use case involves a particular tool that doesn't have a native ClickHouse driver, and you would like to use it via the MySQL interface and you found certain incompatibilities - please [create an issue](https://github.com/ClickHouse/ClickHouse/issues) in the ClickHouse repository.
::::note
-To support the SQL dialect of above BI tools better, ClickHouse's MySQL interface implicitly runs SELECT queries with setting [prefer_column_name_to_alias = 1](/reference/settings/session-settings#prefer_column_name_to_alias).
+To support the SQL dialect of above BI tools better, ClickHouse's MySQL interface implicitly runs SELECT queries with setting [prefer_column_name_to_alias = 1](/core/reference/settings/session-settings#prefer_column_name_to_alias).
This can't be turned off and it can lead in rare edge cases to different behavior between queries sent to ClickHouse's normal and MySQL query interfaces.
::::
@@ -67,14 +67,14 @@ For ClickHouse Cloud hostname like `foobar.us-east1.aws.clickhouse.cloud`, the `
You can create extra users to use with the MySQL interface if, for example, you need to apply extra settings.
-1. Optional - create a [settings profile](/reference/statements/create/settings-profile) to apply for your custom user. For example, `my_custom_profile` with an extra setting which will be applied by default when we connect with the user we create later:
+1. Optional - create a [settings profile](/core/reference/statements/create/settings-profile) to apply for your custom user. For example, `my_custom_profile` with an extra setting which will be applied by default when we connect with the user we create later:
```sql
CREATE SETTINGS PROFILE my_custom_profile SETTINGS prefer_column_name_to_alias=1;
```
`prefer_column_name_to_alias` is used just as an example, you can use other settings there.
-2. [Create a user](/reference/statements/create/user) using the following format: `mysql4_` ([see above](#creating-multiple-mysql-users-in-clickhouse-cloud)). The password must be in double SHA1 format. For example:
+2. [Create a user](/core/reference/statements/create/user) using the following format: `mysql4_` ([see above](#creating-multiple-mysql-users-in-clickhouse-cloud)). The password must be in double SHA1 format. For example:
```sql
CREATE USER mysql4foobar_team1 IDENTIFIED WITH double_sha1_password BY 'YourPassword42$';
@@ -87,7 +87,7 @@ You can create extra users to use with the MySQL interface if, for example, you
```
where `my_custom_profile` is the name of the profile you created earlier.
-3. [Grant](/reference/statements/grant) the new user the necessary permissions to interact with the desired tables or databases. For example, if you want to grant access to `system.query_log` only:
+3. [Grant](/core/reference/statements/grant) the new user the necessary permissions to interact with the desired tables or databases. For example, if you want to grant access to `system.query_log` only:
```sql
GRANT SELECT ON system.query_log TO mysql4foobar_team1;
@@ -107,7 +107,7 @@ In this case, ensure that the username follows the `mysql4_
## Enabling the MySQL interface on self-managed ClickHouse {#enabling-the-mysql-interface-on-self-managed-clickhouse}
-Add the [mysql_port](/reference/settings/server-settings/settings#mysql_port) setting to your server's configuration file. For example, you could define the port in a new XML file in your `config.d/` [folder](/concepts/features/configuration/server-config/configuration-files):
+Add the [mysql_port](/core/reference/settings/server-settings/settings#mysql_port) setting to your server's configuration file. For example, you could define the port in a new XML file in your `config.d/` [folder](/core/concepts/features/configuration/server-config/configuration-files):
```xml
@@ -153,8 +153,8 @@ Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
```
-For compatibility with all MySQL clients, it is recommended to specify user password with [double SHA1](/concepts/features/configuration/settings/settings-users#user-namepassword) in configuration file.
-If user password is specified using [SHA256](/reference/functions/regular-functions/hash-functions#SHA256), some clients won't be able to authenticate (mysqljs and old versions of command-line tool MySQL and MariaDB).
+For compatibility with all MySQL clients, it is recommended to specify user password with [double SHA1](/core/concepts/features/configuration/settings/settings-users#user-namepassword) in configuration file.
+If user password is specified using [SHA256](/core/reference/functions/regular-functions/hash-functions#SHA256), some clients won't be able to authenticate (mysqljs and old versions of command-line tool MySQL and MariaDB).
Restrictions:
diff --git a/core/concepts/features/interfaces/native-clients-interfaces-index.mdx b/core/concepts/features/interfaces/native-clients-interfaces-index.mdx
new file mode 100644
index 00000000..e54bdaf3
--- /dev/null
+++ b/core/concepts/features/interfaces/native-clients-interfaces-index.mdx
@@ -0,0 +1,18 @@
+---
+description: 'Native clients and interfaces for ClickHouse'
+keywords: ['clients', 'interfaces', 'CLI', 'SQL console', 'drivers']
+slug: /interfaces/natives-clients-and-interfaces
+title: 'Native Clients and Interfaces'
+doc_type: 'landing-page'
+---
+
+ClickHouse provides a number of different native clients and interfaces that allow you to connect to ClickHouse.
+
+For more information see the pages below:
+
+| Section | Summary |
+|--------------------------------------------------------------|-------------------------------------------------------------------------------------|
+| [clickhousectl](/core/concepts/features/interfaces/cli) | The CLI for ClickHouse: local and cloud. |
+| [ClickHouse Client](/core/concepts/features/interfaces/client) | Native command-line client supporting command-line options and configuration files. |
+| [Drivers & Interfaces](/core/concepts/features/interfaces/overview) | A number of network interfaces, libraries and visual interfaces. |
+| [SQL Console](/products/cloud/features/sql-console-features/sql-console) | A fast and easy way to interact with your data in ClickHouse Cloud. |
\ No newline at end of file
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/odbc.mdx b/core/concepts/features/interfaces/odbc.mdx
similarity index 97%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/odbc.mdx
rename to core/concepts/features/interfaces/odbc.mdx
index faab5194..72e5c3ec 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/odbc.mdx
+++ b/core/concepts/features/interfaces/odbc.mdx
@@ -10,7 +10,7 @@ The ClickHouse ODBC driver provides a standards-compliant interface for connecti
ClickHouse. It implements the ODBC API and enables applications, BI tools, and scripting environments to execute SQL
queries, retrieve results, and interact with ClickHouse through familiar mechanisms.
-The driver communicates with the ClickHouse server using the [HTTP protocol](/integrations/connectors/data-integrations/drivers-and-interfaces/http), which is the primary
+The driver communicates with the ClickHouse server using the [HTTP protocol](/core/concepts/features/interfaces/http), which is the primary
protocol supported across all ClickHouse deployments. This allows the driver to operate consistently in diverse
environments, including local installations, cloud-managed services, and environments where only HTTP-based access is
available.
@@ -136,7 +136,7 @@ settings to align ClickHouse behavior more closely with standard SQL.
This section describes which settings the ODBC driver modifies and why.
-**[cast_keep_nullable](/reference/settings/session-settings#cast_keep_nullable)**
+**[cast_keep_nullable](/core/reference/settings/session-settings#cast_keep_nullable)**
By default, ClickHouse doesn't allow converting nullable types to non-nullable types. However, many BI tools don't
distinguish between nullable and non-nullable types when performing type conversions. As a result, it's not uncommon to
@@ -157,7 +157,7 @@ DB::Exception: Cannot convert NULL value to non-Nullable type: while executing '
Enabling `cast_keep_nullable` changes the behavior of `CAST` so it preserves the nullability of its arguments. This
makes ClickHouse's behavior closer to other databases and the SQL standard for this kind of conversion.
-**[prefer_column_name_to_alias](/reference/settings/session-settings#prefer_column_name_to_alias)**
+**[prefer_column_name_to_alias](/core/reference/settings/session-settings#prefer_column_name_to_alias)**
ClickHouse allows referencing expressions in the same `SELECT` list by their aliases. For example, this query avoids
repetition and is easier to write:
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/overview.mdx b/core/concepts/features/interfaces/overview.mdx
similarity index 68%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/overview.mdx
rename to core/concepts/features/interfaces/overview.mdx
index f4400199..e0ab12e4 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/overview.mdx
+++ b/core/concepts/features/interfaces/overview.mdx
@@ -11,19 +11,19 @@ doc_type: 'reference'
ClickHouse provides two network interfaces (they can be optionally wrapped in TLS for additional security):
-- [HTTP](/integrations/connectors/data-integrations/drivers-and-interfaces/http), which is documented and easy to use directly.
-- [Native TCP](/integrations/connectors/data-integrations/drivers-and-interfaces/tcp), which has less overhead.
+- [HTTP](/core/concepts/features/interfaces/http), which is documented and easy to use directly.
+- [Native TCP](/core/concepts/features/interfaces/tcp), which has less overhead.
In most cases it is recommended to use an appropriate tool or library instead of interacting with those directly. The following are officially supported by ClickHouse:
-- [Command-line client](/integrations/connectors/data-integrations/drivers-and-interfaces/cli)
-- [JDBC driver](/integrations/connectors/data-integrations/drivers-and-interfaces/jdbc)
-- [ODBC driver](/integrations/connectors/data-integrations/drivers-and-interfaces/odbc)
+- [Command-line client](/core/concepts/features/interfaces/cli)
+- [JDBC driver](/core/concepts/features/interfaces/jdbc)
+- [ODBC driver](/core/concepts/features/interfaces/odbc)
- [C++ client library](/integrations/language-clients/cpp)
ClickHouse also supports two RPC protocols:
-- [gRPC protocol](/integrations/connectors/data-integrations/drivers-and-interfaces/grpc) specially designed for ClickHouse.
-- [Apache Arrow Flight](/integrations/connectors/data-integrations/drivers-and-interfaces/arrowflight).
+- [gRPC protocol](/core/concepts/features/interfaces/grpc) specially designed for ClickHouse.
+- [Apache Arrow Flight](/core/concepts/features/interfaces/arrowflight).
ClickHouse server provides embedded visual interfaces for power users:
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/postgresql.mdx b/core/concepts/features/interfaces/postgresql.mdx
similarity index 95%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/postgresql.mdx
rename to core/concepts/features/interfaces/postgresql.mdx
index dd4c5af9..aa2bbd60 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/postgresql.mdx
+++ b/core/concepts/features/interfaces/postgresql.mdx
@@ -18,7 +18,7 @@ Check out our [Managed Postgres](/products/managed-postgres/overview) service. B
ClickHouse supports the PostgreSQL wire protocol, which allows you to use Postgres clients to connect to ClickHouse. In a sense, ClickHouse can pretend to be a PostgreSQL instance - allowing you to connect a PostgreSQL client application to ClickHouse that isn't already directly supported by ClickHouse (for example, Amazon Redshift).
-To enable the PostgreSQL wire protocol, add the [postgresql_port](/reference/settings/server-settings/settings#postgresql_port) setting to your server's configuration file. For example, you could define the port in a new XML file in your `config.d` folder:
+To enable the PostgreSQL wire protocol, add the [postgresql_port](/core/reference/settings/server-settings/settings#postgresql_port) setting to your server's configuration file. For example, you could define the port in a new XML file in your `config.d` folder:
```xml
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/prometheus.mdx b/core/concepts/features/interfaces/prometheus.mdx
similarity index 79%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/prometheus.mdx
rename to core/concepts/features/interfaces/prometheus.mdx
index dab0237c..fe81a440 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/prometheus.mdx
+++ b/core/concepts/features/interfaces/prometheus.mdx
@@ -27,7 +27,7 @@ ClickHouse can expose its own metrics for scraping from Prometheus:
Section `` can be used to make more extended handlers.
-This section is similar to [](/integrations/connectors/data-integrations/drivers-and-interfaces/http) but works for prometheus protocols:
+This section is similar to [](/core/concepts/features/interfaces/http) but works for prometheus protocols:
```xml
@@ -55,13 +55,13 @@ Settings:
|------------------------------|------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `port` | none | Port for serving the exposing metrics protocol. |
| `endpoint` | `/metrics` | HTTP endpoint for scraping metrics by prometheus server. Starts with `/`. Should not be used with the `` section. |
-| `url` / `headers` / `method` | none | Filters used to find a matching handler for a request. Similar to the fields with the same names in the [``](/integrations/connectors/data-integrations/drivers-and-interfaces/http) section. |
-| `metrics` | true | Expose metrics from the [system.metrics](/reference/system-tables/metrics) table. |
-| `asynchronous_metrics` | true | Expose current metrics values from the [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) table. |
-| `events` | true | Expose metrics from the [system.events](/reference/system-tables/events) table. |
-| `errors` | true | Expose the number of errors by error codes occurred since the last server restart. This information could be obtained from the [system.errors](/reference/system-tables/errors) as well. |
-| `histograms` | true | Expose histogram metrics from [system.histogram_metrics](/reference/system-tables/histogram_metrics) |
-| `dimensional_metrics` | true | Expose dimensional metrics from [system.dimensional_metrics](/reference/system-tables/dimensional_metrics) |
+| `url` / `headers` / `method` | none | Filters used to find a matching handler for a request. Similar to the fields with the same names in the [``](/core/concepts/features/interfaces/http) section. |
+| `metrics` | true | Expose metrics from the [system.metrics](/core/reference/system-tables/metrics) table. |
+| `asynchronous_metrics` | true | Expose current metrics values from the [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) table. |
+| `events` | true | Expose metrics from the [system.events](/core/reference/system-tables/events) table. |
+| `errors` | true | Expose the number of errors by error codes occurred since the last server restart. This information could be obtained from the [system.errors](/core/reference/system-tables/errors) as well. |
+| `histograms` | true | Expose histogram metrics from [system.histogram_metrics](/core/reference/system-tables/histogram_metrics) |
+| `dimensional_metrics` | true | Expose dimensional metrics from [system.dimensional_metrics](/core/reference/system-tables/dimensional_metrics) |
Check (replace `127.0.0.1` with the IP addr or hostname of your ClickHouse server):
```bash
@@ -71,7 +71,7 @@ curl 127.0.0.1:9363/metrics
## Remote-write protocol {#remote-write}
ClickHouse supports the [remote-write](https://prometheus.io/docs/specs/remote_write_spec/) protocol.
-Data are received by this protocol and written to a [TimeSeries](/reference/engines/table-engines/integrations/time-series) table
+Data are received by this protocol and written to a [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) table
(which should be created beforehand).
```xml
@@ -95,14 +95,14 @@ Settings:
| Name | Default | Description |
|------------------------------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `port` | none | Port for serving the `remote-write` protocol. |
-| `url` / `headers` / `method` | none | Filters used to find a matching handler for a request. Similar to the fields with the same names in the [``](/integrations/connectors/data-integrations/drivers-and-interfaces/http) section. |
-| `table` | none | The name of a [TimeSeries](/reference/engines/table-engines/integrations/time-series) table to write data received by the `remote-write` protocol. This name can optionally contain the name of a database too. |
+| `url` / `headers` / `method` | none | Filters used to find a matching handler for a request. Similar to the fields with the same names in the [``](/core/concepts/features/interfaces/http) section. |
+| `table` | none | The name of a [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) table to write data received by the `remote-write` protocol. This name can optionally contain the name of a database too. |
| `database` | none | The name of a database where the table specified in the `table` setting is located if it's not specified in the `table` setting. |
## Remote-read protocol {#remote-read}
ClickHouse supports the [remote-read](https://prometheus.io/docs/prometheus/latest/querying/remote_read_api/) protocol.
-Data are read from a [TimeSeries](/reference/engines/table-engines/integrations/time-series) table and sent via this protocol.
+Data are read from a [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) table and sent via this protocol.
```xml
@@ -125,8 +125,8 @@ Settings:
| Name | Default | Description |
|------------------------------|---------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `port` | none | Port for serving the `remote-read` protocol. |
-| `url` / `headers` / `method` | none | Filters used to find a matching handler for a request. Similar to the fields with the same names in the [``](/integrations/connectors/data-integrations/drivers-and-interfaces/http) section. |
-| `table` | none | The name of a [TimeSeries](/reference/engines/table-engines/integrations/time-series) table to read data to send by the `remote-read` protocol. This name can optionally contain the name of a database too. |
+| `url` / `headers` / `method` | none | Filters used to find a matching handler for a request. Similar to the fields with the same names in the [``](/core/concepts/features/interfaces/http) section. |
+| `table` | none | The name of a [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) table to read data to send by the `remote-read` protocol. This name can optionally contain the name of a database too. |
| `database` | none | The name of a database where the table specified in the `table` setting is located if it's not specified in the `table` setting. |
## Configuration for multiple protocols {#multiple-protocols}
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference.mdx b/core/concepts/features/interfaces/schema-inference.mdx
similarity index 91%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference.mdx
rename to core/concepts/features/interfaces/schema-inference.mdx
index aee3afa4..6b7986a3 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference.mdx
+++ b/core/concepts/features/interfaces/schema-inference.mdx
@@ -6,7 +6,7 @@ title: 'Automatic schema inference from input data'
doc_type: 'reference'
---
-ClickHouse can automatically determine the structure of input data in almost all supported [Input formats](/reference/formats).
+ClickHouse can automatically determine the structure of input data in almost all supported [Input formats](/core/reference/formats).
This document will describe when schema inference is used, how it works with different input formats and which settings
can control it.
@@ -14,7 +14,7 @@ can control it.
Schema inference is used when ClickHouse needs to read the data in a specific data format and the structure is unknown.
-## Table functions [file](/reference/functions/table-functions/file), [s3](/reference/functions/table-functions/s3), [url](/reference/functions/table-functions/url), [hdfs](/reference/functions/table-functions/hdfs), [azureBlobStorage](/reference/functions/table-functions/azureBlobStorage). {#table-functions-file-s3-url-hdfs-azureblobstorage}
+## Table functions [file](/core/reference/functions/table-functions/file), [s3](/core/reference/functions/table-functions/s3), [url](/core/reference/functions/table-functions/url), [hdfs](/core/reference/functions/table-functions/hdfs), [azureBlobStorage](/core/reference/functions/table-functions/azureBlobStorage). {#table-functions-file-s3-url-hdfs-azureblobstorage}
These table functions have the optional argument `structure` with the structure of input data. If this argument is not specified or set to `auto`, the structure will be inferred from the data.
@@ -56,7 +56,7 @@ DESCRIBE file('hobbies.jsonl')
└─────────┴─────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘
```
-## Table engines [File](/reference/engines/table-engines/special/file), [S3](/reference/engines/table-engines/integrations/s3), [URL](/reference/engines/table-engines/special/url), [HDFS](/reference/engines/table-engines/integrations/hdfs), [azureBlobStorage](/reference/engines/table-engines/integrations/azureBlobStorage) {#table-engines-file-s3-url-hdfs-azureblobstorage}
+## Table engines [File](/core/reference/engines/table-engines/special/file), [S3](/core/reference/engines/table-engines/integrations/s3), [URL](/core/reference/engines/table-engines/special/url), [HDFS](/core/reference/engines/table-engines/integrations/hdfs), [azureBlobStorage](/core/reference/engines/table-engines/integrations/azureBlobStorage) {#table-engines-file-s3-url-hdfs-azureblobstorage}
If the list of columns is not specified in `CREATE TABLE` query, the structure of the table will be inferred automatically from the data.
@@ -125,7 +125,7 @@ there is an option to use the structure from the insertion table instead of extr
It can improve insertion performance because schema inference can take some time. Also, it will be helpful when the table has an optimized schema, so
no conversions between types will be performed.
-There is a special setting [use_structure_from_insertion_table_in_table_functions](/reference/settings/session-settings#use_structure_from_insertion_table_in_table_functions)
+There is a special setting [use_structure_from_insertion_table_in_table_functions](/core/reference/settings/session-settings#use_structure_from_insertion_table_in_table_functions)
that controls this behaviour. It has 3 possible values:
- 0 - table function will extract the structure from the data.
- 1 - table function will use the structure from the insertion table.
@@ -238,7 +238,7 @@ For this reason, the schema inference cache identifies the schema by file source
Note: some files accessed by url in `url` table function may not contain information about the last modification time; for this case, there is a special setting
`schema_inference_cache_require_modification_time_for_url`. Disabling this setting allows the use of the schema from cache without the last modification time for such files.
-There is also a system table [schema_inference_cache](/reference/system-tables/schema_inference_cache) with all current schemas in cache and system query `SYSTEM CLEAR SCHEMA CACHE [FOR File/S3/URL/HDFS]`
+There is also a system table [schema_inference_cache](/core/reference/system-tables/schema_inference_cache) with all current schemas in cache and system query `SYSTEM CLEAR SCHEMA CACHE [FOR File/S3/URL/HDFS]`
that allows cleaning the schema cache for all sources, or for a specific source.
**Examples:**
@@ -384,7 +384,7 @@ SELECT count() FROM system.schema_inference_cache WHERE storage='S3'
For text formats, ClickHouse reads the data row by row, extracts column values according to the format,
and then uses some recursive parsers and heuristics to determine the type for each value. The maximum number of rows and bytes read from the data in schema inference
is controlled by the settings `input_format_max_rows_to_read_for_schema_inference` (25000 by default) and `input_format_max_bytes_to_read_for_schema_inference` (32Mb by default).
-By default, all inferred types are [Nullable](/reference/data-types/nullable), but you can change this by setting `schema_inference_make_columns_nullable` (see examples in the [settings](#settings-for-text-formats) section).
+By default, all inferred types are [Nullable](/core/reference/data-types/nullable), but you can change this by setting `schema_inference_make_columns_nullable` (see examples in the [settings](#settings-for-text-formats) section).
### JSON formats {#json-formats}
@@ -394,7 +394,7 @@ Let's see how it works, what types can be inferred and what specific settings ca
**Examples**
-Here and further, the [format](/reference/functions/table-functions/format) table function will be used in examples.
+Here and further, the [format](/core/reference/functions/table-functions/format) table function will be used in examples.
Integers, Floats, Bools, Strings:
```sql
@@ -1627,7 +1627,7 @@ DESC format(JSONEachRow, $$
└────────────┴─────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘
```
-Note: Parsing datetimes during schema inference respect setting [date_time_input_format](/reference/settings/formats#date_time_input_format)
+Note: Parsing datetimes during schema inference respect setting [date_time_input_format](/core/reference/settings/formats#date_time_input_format)
#### input_format_try_infer_dates {#input-format-try-infer-dates}
@@ -1728,7 +1728,7 @@ $$)
### JSON formats with metadata {#json-with-metadata}
-Some JSON input formats ([JSON](/reference/formats/JSON/JSON), [JSONCompact](/reference/formats/JSON/JSONCompact), [JSONColumnsWithMetadata](/reference/formats/JSON/JSONColumnsWithMetadata)) contain metadata with column names and types.
+Some JSON input formats ([JSON](/core/reference/formats/JSON/JSON), [JSONCompact](/core/reference/formats/JSON/JSONCompact), [JSONColumnsWithMetadata](/core/reference/formats/JSON/JSONColumnsWithMetadata)) contain metadata with column names and types.
In schema inference for such formats, ClickHouse reads this metadata.
**Example**
@@ -1785,20 +1785,20 @@ In Avro format ClickHouse reads its schema from the data and converts it to Clic
| Avro data type | ClickHouse data type |
|------------------------------------|--------------------------------------------------------------------------------|
-| `boolean` | [Bool](/reference/data-types/boolean) |
-| `int` | [Int32](/reference/data-types/int-uint) |
-| `int (date)` \* | [Date32](/reference/data-types/date32) |
-| `long` | [Int64](/reference/data-types/int-uint) |
-| `float` | [Float32](/reference/data-types/float) |
-| `double` | [Float64](/reference/data-types/float) |
-| `bytes`, `string` | [String](/reference/data-types/string) |
-| `fixed` | [FixedString(N)](/reference/data-types/fixedstring) |
-| `enum` | [Enum](/reference/data-types/enum) |
-| `array(T)` | [Array(T)](/reference/data-types/array) |
-| `union(null, T)`, `union(T, null)` | [Nullable(T)](/reference/data-types/date) |
-| `null` | [Nullable(Nothing)](/reference/data-types/special-data-types/nothing) |
-| `string (uuid)` \* | [UUID](/reference/data-types/uuid) |
-| `binary (decimal)` \* | [Decimal(P, S)](/reference/data-types/decimal) |
+| `boolean` | [Bool](/core/reference/data-types/boolean) |
+| `int` | [Int32](/core/reference/data-types/int-uint) |
+| `int (date)` \* | [Date32](/core/reference/data-types/date32) |
+| `long` | [Int64](/core/reference/data-types/int-uint) |
+| `float` | [Float32](/core/reference/data-types/float) |
+| `double` | [Float64](/core/reference/data-types/float) |
+| `bytes`, `string` | [String](/core/reference/data-types/string) |
+| `fixed` | [FixedString(N)](/core/reference/data-types/fixedstring) |
+| `enum` | [Enum](/core/reference/data-types/enum) |
+| `array(T)` | [Array(T)](/core/reference/data-types/array) |
+| `union(null, T)`, `union(T, null)` | [Nullable(T)](/core/reference/data-types/date) |
+| `null` | [Nullable(Nothing)](/core/reference/data-types/special-data-types/nothing) |
+| `string (uuid)` \* | [UUID](/core/reference/data-types/uuid) |
+| `binary (decimal)` \* | [Decimal(P, S)](/core/reference/data-types/decimal) |
\* [Avro logical types](https://avro.apache.org/docs/current/spec.html#Logical+Types)
@@ -1810,25 +1810,25 @@ In Parquet format ClickHouse reads its schema from the data and converts it to C
| Parquet data type | ClickHouse data type |
|------------------------------|---------------------------------------------------------|
-| `BOOL` | [Bool](/reference/data-types/boolean) |
-| `UINT8` | [UInt8](/reference/data-types/int-uint) |
-| `INT8` | [Int8](/reference/data-types/int-uint) |
-| `UINT16` | [UInt16](/reference/data-types/int-uint) |
-| `INT16` | [Int16](/reference/data-types/int-uint) |
-| `UINT32` | [UInt32](/reference/data-types/int-uint) |
-| `INT32` | [Int32](/reference/data-types/int-uint) |
-| `UINT64` | [UInt64](/reference/data-types/int-uint) |
-| `INT64` | [Int64](/reference/data-types/int-uint) |
-| `FLOAT` | [Float32](/reference/data-types/float) |
-| `DOUBLE` | [Float64](/reference/data-types/float) |
-| `DATE` | [Date32](/reference/data-types/date32) |
-| `TIME (ms)` | [DateTime](/reference/data-types/datetime) |
-| `TIMESTAMP`, `TIME (us, ns)` | [DateTime64](/reference/data-types/datetime64) |
-| `STRING`, `BINARY` | [String](/reference/data-types/string) |
-| `DECIMAL` | [Decimal](/reference/data-types/decimal) |
-| `LIST` | [Array](/reference/data-types/array) |
-| `STRUCT` | [Tuple](/reference/data-types/tuple) |
-| `MAP` | [Map](/reference/data-types/map) |
+| `BOOL` | [Bool](/core/reference/data-types/boolean) |
+| `UINT8` | [UInt8](/core/reference/data-types/int-uint) |
+| `INT8` | [Int8](/core/reference/data-types/int-uint) |
+| `UINT16` | [UInt16](/core/reference/data-types/int-uint) |
+| `INT16` | [Int16](/core/reference/data-types/int-uint) |
+| `UINT32` | [UInt32](/core/reference/data-types/int-uint) |
+| `INT32` | [Int32](/core/reference/data-types/int-uint) |
+| `UINT64` | [UInt64](/core/reference/data-types/int-uint) |
+| `INT64` | [Int64](/core/reference/data-types/int-uint) |
+| `FLOAT` | [Float32](/core/reference/data-types/float) |
+| `DOUBLE` | [Float64](/core/reference/data-types/float) |
+| `DATE` | [Date32](/core/reference/data-types/date32) |
+| `TIME (ms)` | [DateTime](/core/reference/data-types/datetime) |
+| `TIMESTAMP`, `TIME (us, ns)` | [DateTime64](/core/reference/data-types/datetime64) |
+| `STRING`, `BINARY` | [String](/core/reference/data-types/string) |
+| `DECIMAL` | [Decimal](/core/reference/data-types/decimal) |
+| `LIST` | [Array](/core/reference/data-types/array) |
+| `STRUCT` | [Tuple](/core/reference/data-types/tuple) |
+| `MAP` | [Map](/core/reference/data-types/map) |
Other Parquet types are not supported.
@@ -1838,25 +1838,25 @@ In Arrow format ClickHouse reads its schema from the data and converts it to Cli
| Arrow data type | ClickHouse data type |
|---------------------------------|---------------------------------------------------------|
-| `BOOL` | [Bool](/reference/data-types/boolean) |
-| `UINT8` | [UInt8](/reference/data-types/int-uint) |
-| `INT8` | [Int8](/reference/data-types/int-uint) |
-| `UINT16` | [UInt16](/reference/data-types/int-uint) |
-| `INT16` | [Int16](/reference/data-types/int-uint) |
-| `UINT32` | [UInt32](/reference/data-types/int-uint) |
-| `INT32` | [Int32](/reference/data-types/int-uint) |
-| `UINT64` | [UInt64](/reference/data-types/int-uint) |
-| `INT64` | [Int64](/reference/data-types/int-uint) |
-| `FLOAT`, `HALF_FLOAT` | [Float32](/reference/data-types/float) |
-| `DOUBLE` | [Float64](/reference/data-types/float) |
-| `DATE32` | [Date32](/reference/data-types/date32) |
-| `DATE64` | [DateTime](/reference/data-types/datetime) |
-| `TIMESTAMP`, `TIME32`, `TIME64` | [DateTime64](/reference/data-types/datetime64) |
-| `STRING`, `BINARY` | [String](/reference/data-types/string) |
-| `DECIMAL128`, `DECIMAL256` | [Decimal](/reference/data-types/decimal) |
-| `LIST` | [Array](/reference/data-types/array) |
-| `STRUCT` | [Tuple](/reference/data-types/tuple) |
-| `MAP` | [Map](/reference/data-types/map) |
+| `BOOL` | [Bool](/core/reference/data-types/boolean) |
+| `UINT8` | [UInt8](/core/reference/data-types/int-uint) |
+| `INT8` | [Int8](/core/reference/data-types/int-uint) |
+| `UINT16` | [UInt16](/core/reference/data-types/int-uint) |
+| `INT16` | [Int16](/core/reference/data-types/int-uint) |
+| `UINT32` | [UInt32](/core/reference/data-types/int-uint) |
+| `INT32` | [Int32](/core/reference/data-types/int-uint) |
+| `UINT64` | [UInt64](/core/reference/data-types/int-uint) |
+| `INT64` | [Int64](/core/reference/data-types/int-uint) |
+| `FLOAT`, `HALF_FLOAT` | [Float32](/core/reference/data-types/float) |
+| `DOUBLE` | [Float64](/core/reference/data-types/float) |
+| `DATE32` | [Date32](/core/reference/data-types/date32) |
+| `DATE64` | [DateTime](/core/reference/data-types/datetime) |
+| `TIMESTAMP`, `TIME32`, `TIME64` | [DateTime64](/core/reference/data-types/datetime64) |
+| `STRING`, `BINARY` | [String](/core/reference/data-types/string) |
+| `DECIMAL128`, `DECIMAL256` | [Decimal](/core/reference/data-types/decimal) |
+| `LIST` | [Array](/core/reference/data-types/array) |
+| `STRUCT` | [Tuple](/core/reference/data-types/tuple) |
+| `MAP` | [Map](/core/reference/data-types/map) |
Other Arrow types are not supported.
@@ -1866,20 +1866,20 @@ In ORC format ClickHouse reads its schema from the data and converts it to Click
| ORC data type | ClickHouse data type |
|--------------------------------------|---------------------------------------------------------|
-| `Boolean` | [Bool](/reference/data-types/boolean) |
-| `Tinyint` | [Int8](/reference/data-types/int-uint) |
-| `Smallint` | [Int16](/reference/data-types/int-uint) |
-| `Int` | [Int32](/reference/data-types/int-uint) |
-| `Bigint` | [Int64](/reference/data-types/int-uint) |
-| `Float` | [Float32](/reference/data-types/float) |
-| `Double` | [Float64](/reference/data-types/float) |
-| `Date` | [Date32](/reference/data-types/date32) |
-| `Timestamp` | [DateTime64](/reference/data-types/datetime64) |
-| `String`, `Char`, `Varchar`,`BINARY` | [String](/reference/data-types/string) |
-| `Decimal` | [Decimal](/reference/data-types/decimal) |
-| `List` | [Array](/reference/data-types/array) |
-| `Struct` | [Tuple](/reference/data-types/tuple) |
-| `Map` | [Map](/reference/data-types/map) |
+| `Boolean` | [Bool](/core/reference/data-types/boolean) |
+| `Tinyint` | [Int8](/core/reference/data-types/int-uint) |
+| `Smallint` | [Int16](/core/reference/data-types/int-uint) |
+| `Int` | [Int32](/core/reference/data-types/int-uint) |
+| `Bigint` | [Int64](/core/reference/data-types/int-uint) |
+| `Float` | [Float32](/core/reference/data-types/float) |
+| `Double` | [Float64](/core/reference/data-types/float) |
+| `Date` | [Date32](/core/reference/data-types/date32) |
+| `Timestamp` | [DateTime64](/core/reference/data-types/datetime64) |
+| `String`, `Char`, `Varchar`,`BINARY` | [String](/core/reference/data-types/string) |
+| `Decimal` | [Decimal](/core/reference/data-types/decimal) |
+| `List` | [Array](/core/reference/data-types/array) |
+| `Struct` | [Tuple](/core/reference/data-types/tuple) |
+| `Map` | [Map](/core/reference/data-types/map) |
Other ORC types are not supported.
@@ -1899,17 +1899,17 @@ In schema inference for Protobuf format ClickHouse uses the following type match
| Protobuf data type | ClickHouse data type |
|-------------------------------|---------------------------------------------------|
-| `bool` | [UInt8](/reference/data-types/int-uint) |
-| `float` | [Float32](/reference/data-types/float) |
-| `double` | [Float64](/reference/data-types/float) |
-| `int32`, `sint32`, `sfixed32` | [Int32](/reference/data-types/int-uint) |
-| `int64`, `sint64`, `sfixed64` | [Int64](/reference/data-types/int-uint) |
-| `uint32`, `fixed32` | [UInt32](/reference/data-types/int-uint) |
-| `uint64`, `fixed64` | [UInt64](/reference/data-types/int-uint) |
-| `string`, `bytes` | [String](/reference/data-types/string) |
-| `enum` | [Enum](/reference/data-types/enum) |
-| `repeated T` | [Array(T)](/reference/data-types/array) |
-| `message`, `group` | [Tuple](/reference/data-types/tuple) |
+| `bool` | [UInt8](/core/reference/data-types/int-uint) |
+| `float` | [Float32](/core/reference/data-types/float) |
+| `double` | [Float64](/core/reference/data-types/float) |
+| `int32`, `sint32`, `sfixed32` | [Int32](/core/reference/data-types/int-uint) |
+| `int64`, `sint64`, `sfixed64` | [Int64](/core/reference/data-types/int-uint) |
+| `uint32`, `fixed32` | [UInt32](/core/reference/data-types/int-uint) |
+| `uint64`, `fixed64` | [UInt64](/core/reference/data-types/int-uint) |
+| `string`, `bytes` | [String](/core/reference/data-types/string) |
+| `enum` | [Enum](/core/reference/data-types/enum) |
+| `repeated T` | [Array(T)](/core/reference/data-types/array) |
+| `message`, `group` | [Tuple](/core/reference/data-types/tuple) |
### CapnProto {#capnproto}
@@ -1917,22 +1917,22 @@ In schema inference for CapnProto format ClickHouse uses the following type matc
| CapnProto data type | ClickHouse data type |
|------------------------------------|--------------------------------------------------------|
-| `Bool` | [UInt8](/reference/data-types/int-uint) |
-| `Int8` | [Int8](/reference/data-types/int-uint) |
-| `UInt8` | [UInt8](/reference/data-types/int-uint) |
-| `Int16` | [Int16](/reference/data-types/int-uint) |
-| `UInt16` | [UInt16](/reference/data-types/int-uint) |
-| `Int32` | [Int32](/reference/data-types/int-uint) |
-| `UInt32` | [UInt32](/reference/data-types/int-uint) |
-| `Int64` | [Int64](/reference/data-types/int-uint) |
-| `UInt64` | [UInt64](/reference/data-types/int-uint) |
-| `Float32` | [Float32](/reference/data-types/float) |
-| `Float64` | [Float64](/reference/data-types/float) |
-| `Text`, `Data` | [String](/reference/data-types/string) |
-| `enum` | [Enum](/reference/data-types/enum) |
-| `List` | [Array](/reference/data-types/array) |
-| `struct` | [Tuple](/reference/data-types/tuple) |
-| `union(T, Void)`, `union(Void, T)` | [Nullable(T)](/reference/data-types/nullable) |
+| `Bool` | [UInt8](/core/reference/data-types/int-uint) |
+| `Int8` | [Int8](/core/reference/data-types/int-uint) |
+| `UInt8` | [UInt8](/core/reference/data-types/int-uint) |
+| `Int16` | [Int16](/core/reference/data-types/int-uint) |
+| `UInt16` | [UInt16](/core/reference/data-types/int-uint) |
+| `Int32` | [Int32](/core/reference/data-types/int-uint) |
+| `UInt32` | [UInt32](/core/reference/data-types/int-uint) |
+| `Int64` | [Int64](/core/reference/data-types/int-uint) |
+| `UInt64` | [UInt64](/core/reference/data-types/int-uint) |
+| `Float32` | [Float32](/core/reference/data-types/float) |
+| `Float64` | [Float64](/core/reference/data-types/float) |
+| `Text`, `Data` | [String](/core/reference/data-types/string) |
+| `enum` | [Enum](/core/reference/data-types/enum) |
+| `List` | [Array](/core/reference/data-types/array) |
+| `struct` | [Tuple](/core/reference/data-types/tuple) |
+| `union(T, Void)`, `union(Void, T)` | [Nullable(T)](/core/reference/data-types/nullable) |
## Strong-typed binary formats {#strong-typed-binary-formats}
@@ -1947,16 +1947,16 @@ using the setting `input_format_msgpack_number_of_columns`. ClickHouse uses the
| MessagePack data type (`INSERT`) | ClickHouse data type |
|--------------------------------------------------------------------|-----------------------------------------------------------|
-| `int N`, `uint N`, `negative fixint`, `positive fixint` | [Int64](/reference/data-types/int-uint) |
-| `bool` | [UInt8](/reference/data-types/int-uint) |
-| `fixstr`, `str 8`, `str 16`, `str 32`, `bin 8`, `bin 16`, `bin 32` | [String](/reference/data-types/string) |
-| `float 32` | [Float32](/reference/data-types/float) |
-| `float 64` | [Float64](/reference/data-types/float) |
-| `uint 16` | [Date](/reference/data-types/date) |
-| `uint 32` | [DateTime](/reference/data-types/datetime) |
-| `uint 64` | [DateTime64](/reference/data-types/datetime) |
-| `fixarray`, `array 16`, `array 32` | [Array](/reference/data-types/array) |
-| `fixmap`, `map 16`, `map 32` | [Map](/reference/data-types/map) |
+| `int N`, `uint N`, `negative fixint`, `positive fixint` | [Int64](/core/reference/data-types/int-uint) |
+| `bool` | [UInt8](/core/reference/data-types/int-uint) |
+| `fixstr`, `str 8`, `str 16`, `str 32`, `bin 8`, `bin 16`, `bin 32` | [String](/core/reference/data-types/string) |
+| `float 32` | [Float32](/core/reference/data-types/float) |
+| `float 64` | [Float64](/core/reference/data-types/float) |
+| `uint 16` | [Date](/core/reference/data-types/date) |
+| `uint 32` | [DateTime](/core/reference/data-types/datetime) |
+| `uint 64` | [DateTime64](/core/reference/data-types/datetime) |
+| `fixarray`, `array 16`, `array 32` | [Array](/core/reference/data-types/array) |
+| `fixmap`, `map 16`, `map 32` | [Map](/core/reference/data-types/map) |
By default, all inferred types are inside `Nullable`, but it can be changed using the setting `schema_inference_make_columns_nullable`.
@@ -1967,16 +1967,16 @@ values, names, and types from the data and then transforms these types to ClickH
| BSON Type | ClickHouse type |
|-----------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------|
-| `\x08` boolean | [Bool](/reference/data-types/boolean) |
-| `\x10` int32 | [Int32](/reference/data-types/int-uint) |
-| `\x12` int64 | [Int64](/reference/data-types/int-uint) |
-| `\x01` double | [Float64](/reference/data-types/float) |
-| `\x09` datetime | [DateTime64](/reference/data-types/datetime64) |
-| `\x05` binary with`\x00` binary subtype, `\x02` string, `\x0E` symbol, `\x0D` JavaScript code | [String](/reference/data-types/string) |
-| `\x07` ObjectId, | [FixedString(12)](/reference/data-types/fixedstring) |
-| `\x05` binary with `\x04` uuid subtype, size = 16 | [UUID](/reference/data-types/uuid) |
-| `\x04` array | [Array](/reference/data-types/array)/[Tuple](/reference/data-types/tuple) (if nested types are different) |
-| `\x03` document | [Named Tuple](/reference/data-types/tuple)/[Map](/reference/data-types/map) (with String keys) |
+| `\x08` boolean | [Bool](/core/reference/data-types/boolean) |
+| `\x10` int32 | [Int32](/core/reference/data-types/int-uint) |
+| `\x12` int64 | [Int64](/core/reference/data-types/int-uint) |
+| `\x01` double | [Float64](/core/reference/data-types/float) |
+| `\x09` datetime | [DateTime64](/core/reference/data-types/datetime64) |
+| `\x05` binary with`\x00` binary subtype, `\x02` string, `\x0E` symbol, `\x0D` JavaScript code | [String](/core/reference/data-types/string) |
+| `\x07` ObjectId, | [FixedString(12)](/core/reference/data-types/fixedstring) |
+| `\x05` binary with `\x04` uuid subtype, size = 16 | [UUID](/core/reference/data-types/uuid) |
+| `\x04` array | [Array](/core/reference/data-types/array)/[Tuple](/core/reference/data-types/tuple) (if nested types are different) |
+| `\x03` document | [Named Tuple](/core/reference/data-types/tuple)/[Map](/core/reference/data-types/map) (with String keys) |
By default, all inferred types are inside `Nullable`, but it can be changed using the setting `schema_inference_make_columns_nullable`.
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/ssh.mdx b/core/concepts/features/interfaces/ssh.mdx
similarity index 100%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/ssh.mdx
rename to core/concepts/features/interfaces/ssh.mdx
diff --git a/core/concepts/features/interfaces/tcp.mdx b/core/concepts/features/interfaces/tcp.mdx
new file mode 100644
index 00000000..0d068202
--- /dev/null
+++ b/core/concepts/features/interfaces/tcp.mdx
@@ -0,0 +1,9 @@
+---
+description: 'Documentation for the native TCP interface in ClickHouse'
+sidebarTitle: 'Native interface (TCP)'
+slug: /interfaces/tcp
+title: 'Native interface (TCP)'
+doc_type: 'reference'
+---
+
+The native protocol is used in the [command-line client](/core/concepts/features/interfaces/cli), for inter-server communication during distributed query processing, and also in other C++ programs. Unfortunately, native ClickHouse protocol doesn't have formal specification yet, but it can be reverse-engineered from ClickHouse source code (starting [around here](https://github.com/ClickHouse/ClickHouse/tree/master/src/Client)) and/or by intercepting and analyzing TCP traffic.
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/third-party/index.mdx b/core/concepts/features/interfaces/third-party/index.mdx
similarity index 68%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/third-party/index.mdx
rename to core/concepts/features/interfaces/third-party/index.mdx
index f70536ff..615953a5 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/third-party/index.mdx
+++ b/core/concepts/features/interfaces/third-party/index.mdx
@@ -15,5 +15,5 @@ This is a collection of links to third-party tools that provide some sort of int
- [Proxies](/integrations/connectors/tools/proxy)
-Generic tools that support common API like [ODBC](/integrations/connectors/data-integrations/drivers-and-interfaces/odbc) or [JDBC](/integrations/connectors/data-integrations/drivers-and-interfaces/jdbc) usually can work with ClickHouse as well, but are not listed here because there are way too many of them.
+Generic tools that support common API like [ODBC](/core/concepts/features/interfaces/odbc) or [JDBC](/core/concepts/features/interfaces/jdbc) usually can work with ClickHouse as well, but are not listed here because there are way too many of them.
\ No newline at end of file
diff --git a/integrations/connectors/data-integrations/drivers-and-interfaces/web-terminal.mdx b/core/concepts/features/interfaces/web-terminal.mdx
similarity index 91%
rename from integrations/connectors/data-integrations/drivers-and-interfaces/web-terminal.mdx
rename to core/concepts/features/interfaces/web-terminal.mdx
index 0921c994..ac34a57b 100644
--- a/integrations/connectors/data-integrations/drivers-and-interfaces/web-terminal.mdx
+++ b/core/concepts/features/interfaces/web-terminal.mdx
@@ -51,7 +51,7 @@ The terminal uses [xterm.js](https://xtermjs.org/) for rendering. All assets are
## Integration with `/play` {#play-integration}
-The [`/play`](/integrations/connectors/data-integrations/drivers-and-interfaces/http) Web SQL UI embeds the web terminal as a dockable panel. Toggle it with the terminal icon in the sidebar or press the `~` key when the query editor is empty. The `/play` page detects `/webterminal` availability at load time and hides the terminal controls when the endpoint is unavailable (for example, when the experimental setting is not enabled).
+The [`/play`](/core/concepts/features/interfaces/http) Web SQL UI embeds the web terminal as a dockable panel. Toggle it with the terminal icon in the sidebar or press the `~` key when the query editor is empty. The `/play` page detects `/webterminal` availability at load time and hides the terminal controls when the endpoint is unavailable (for example, when the experimental setting is not enabled).
## Security considerations {#security}
diff --git a/concepts/features/materialized-views/cascading-materialized-views.mdx b/core/concepts/features/materialized-views/cascading-materialized-views.mdx
similarity index 99%
rename from concepts/features/materialized-views/cascading-materialized-views.mdx
rename to core/concepts/features/materialized-views/cascading-materialized-views.mdx
index 9c66e47d..d80efcf0 100644
--- a/concepts/features/materialized-views/cascading-materialized-views.mdx
+++ b/core/concepts/features/materialized-views/cascading-materialized-views.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/cascading-materialized-views
+slug: /core/guides/developer/cascading-materialized-views
title: 'Cascading materialized views'
description: 'How to use multiple materialized views from a source table.'
keywords: ['materialized view', 'aggregation']
diff --git a/concepts/features/materialized-views/incremental-materialized-view.mdx b/core/concepts/features/materialized-views/incremental-materialized-view.mdx
similarity index 95%
rename from concepts/features/materialized-views/incremental-materialized-view.mdx
rename to core/concepts/features/materialized-views/incremental-materialized-view.mdx
index f1c30c5f..ae766593 100644
--- a/concepts/features/materialized-views/incremental-materialized-view.mdx
+++ b/core/concepts/features/materialized-views/incremental-materialized-view.mdx
@@ -17,13 +17,13 @@ Unlike in transactional databases like Postgres, a ClickHouse materialized view
The principal motivation for Materialized Views is that the results inserted into the target table represent the results of an aggregation, filtering, or transformation on rows. These results will often be a smaller representation of the original data (a partial sketch in the case of aggregations). This, along with the resulting query for reading the results from the target table being simple, ensures query times are faster than if the same computation was performed on the original data, shifting computation (and thus query latency) from query time to insert time.
-Materialized views in ClickHouse are updated in real time as data flows into the table they're based on, functioning more like continually updating indexes. This is in contrast to other databases where Materialized Views are typically static snapshots of a query that must be refreshed (similar to ClickHouse [Refreshable Materialized Views](/reference/statements/create/view#refreshable-materialized-view)).
+Materialized views in ClickHouse are updated in real time as data flows into the table they're based on, functioning more like continually updating indexes. This is in contrast to other databases where Materialized Views are typically static snapshots of a query that must be refreshed (similar to ClickHouse [Refreshable Materialized Views](/core/reference/statements/create/view#refreshable-materialized-view)).
## Example {#example}
-For example purposes we'll use the Stack Overflow dataset documented in ["Schema Design"](/guides/cloud-oss/data-modelling/schema-design).
+For example purposes we'll use the Stack Overflow dataset documented in ["Schema Design"](/core/guides/clickhouse/data-modelling/schema-design).
Suppose we want to obtain the number of up and down votes per day for a post.
@@ -45,7 +45,7 @@ INSERT INTO votes SELECT * FROM s3('https://datasets-documentation.s3.eu-west-3.
0 rows in set. Elapsed: 29.359 sec. Processed 238.98 million rows, 2.13 GB (8.14 million rows/s., 72.45 MB/s.)
```
-This is a reasonably simple query in ClickHouse thanks to the [`toStartOfDay`](/reference/functions/regular-functions/date-time-functions#toStartOfDay) function:
+This is a reasonably simple query in ClickHouse thanks to the [`toStartOfDay`](/core/reference/functions/regular-functions/date-time-functions#toStartOfDay) function:
```sql
SELECT toStartOfDay(CreationDate) AS day,
@@ -77,7 +77,7 @@ This query is already fast thanks to ClickHouse, but can we do better?
If we want to compute this at insert time using a materialized view, we need a table to receive the results. This table should only keep 1 row per day. If an update is received for an existing day, the other columns should be merged into the existing day's row. For this merge of incremental states to happen, partial states must be stored for the other columns.
-This requires a special engine type in ClickHouse: the [SummingMergeTree](/reference/engines/table-engines/mergetree-family/summingmergetree). This replaces all the rows with the same ordering key with one row which contains summed values for the numeric columns. The following table will merge any rows with the same date, summing any numerical columns:
+This requires a special engine type in ClickHouse: the [SummingMergeTree](/core/reference/engines/table-engines/mergetree-family/summingmergetree). This replaces all the rows with the same ordering key with one row which contains summed values for the numeric columns. The following table will merge any rows with the same date, summing any numerical columns:
```sql
CREATE TABLE up_down_votes_per_day
@@ -208,7 +208,7 @@ Peak memory usage: 658.84 MiB.
As before, we can create a materialized view which executes the above query as new posts are inserted into our `posts` table.
-For the purposes of example, and to avoid loading the posts data from S3, we will create a duplicate table `posts_null` with the same schema as `posts`. However, this table won't store any data and simply be used by the materialized view when rows are inserted. To prevent storage of data, we can use the [`Null` table engine type](/reference/engines/table-engines/special/null).
+For the purposes of example, and to avoid loading the posts data from S3, we will create a duplicate table `posts_null` with the same schema as `posts`. However, this table won't store any data and simply be used by the materialized view when rows are inserted. To prevent storage of data, we can use the [`Null` table engine type](/core/reference/engines/table-engines/special/null).
```sql
CREATE TABLE posts_null AS posts ENGINE = Null
@@ -244,7 +244,7 @@ ENGINE = AggregatingMergeTree
ORDER BY Day
```
-While earlier the `SummingMergeTree` was sufficient to store counts, we require a more advanced engine type for other functions: the [`AggregatingMergeTree`](/reference/engines/table-engines/mergetree-family/aggregatingmergetree).
+While earlier the `SummingMergeTree` was sufficient to store counts, we require a more advanced engine type for other functions: the [`AggregatingMergeTree`](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree).
To ensure ClickHouse knows that aggregate states will be stored, we define the `Score_quantiles` and `AvgCommentCount` as the type `AggregateFunction`, specifying the function source of the partial states and the type of their source columns. Like the `SummingMergeTree`, rows with the same `ORDER BY` key value will be merged (`Day` in the above example).
To populate our `post_stats_per_day` via our materialized view, we can simply insert all rows from `posts` into `posts_null`:
@@ -369,7 +369,7 @@ WHERE PostId IN (
### Chaining / cascading materialized views {#chaining}
Materialized views can be chained (or cascaded), allowing complex workflows to be established.
-For more information see the guide ["Cascading materialized views"](/concepts/features/materialized-views/cascading-materialized-views).
+For more information see the guide ["Cascading materialized views"](/core/concepts/features/materialized-views/cascading-materialized-views).
## Materialized views and JOINs {#materialized-views-and-joins}
@@ -389,7 +389,7 @@ This works well for enriching data with reference or dimension tables. However,
### Example {#materialized-views-and-joins-example}
-Let's walk through a concrete example using the [Stack Overflow dataset](/guides/cloud-oss/data-modelling/schema-design). We'll use a materialized view to compute **daily badges per user**, including the display name of the user from the `users` table.
+Let's walk through a concrete example using the [Stack Overflow dataset](/core/guides/clickhouse/data-modelling/schema-design). We'll use a materialized view to compute **daily badges per user**, including the display name of the user from the `users` table.
As a reminder, our table schemas are:
@@ -521,7 +521,7 @@ WHERE DisplayName = 'gingerwizard'
```
-Notice the latency of the insert here. The inserted user row is joined against the entire `users` table, significantly impacting insert performance. We propose approaches to address this below in ["Using source table in filters and joins"](/concepts/features/materialized-views/incremental-materialized-view#using-source-table-in-filters-and-joins-in-materialized-views).
+Notice the latency of the insert here. The inserted user row is joined against the entire `users` table, significantly impacting insert performance. We propose approaches to address this below in ["Using source table in filters and joins"](/core/concepts/features/materialized-views/incremental-materialized-view#using-source-table-in-filters-and-joins-in-materialized-views).
Conversely, if we insert a badge for a new user, followed by the row for the user, our materialized view will fail to capture the users' metrics.
@@ -569,13 +569,13 @@ Note, however, that this result is incorrect.
- **Evaluate insert-time performance.** JOINs increase the cost of inserts, especially with large right-side tables. Benchmark insert rates using representative production data.
-- **Prefer dictionaries for simple lookups**. Use [Dictionaries](/concepts/features/dictionaries) for key-value lookups (e.g., user ID to name) to avoid expensive JOIN operations.
+- **Prefer dictionaries for simple lookups**. Use [Dictionaries](/core/concepts/features/dictionaries) for key-value lookups (e.g., user ID to name) to avoid expensive JOIN operations.
- **Align `GROUP BY` and `ORDER BY` for merge efficiency.** When using `SummingMergeTree` or `AggregatingMergeTree`, ensure `GROUP BY` matches the `ORDER BY` clause in the target table to allow efficient row merging.
- **Use explicit column aliases.** When tables have overlapping column names, use aliases to prevent ambiguity and ensure correct results in the target table.
-- **Consider insert volume and frequency.** JOINs work well in moderate insert workloads. For high-throughput ingestion, consider using staging tables, pre-joins, or other approaches such as Dictionaries and [Refreshable Materialized Views](/concepts/features/materialized-views/refreshable-materialized-view).
+- **Consider insert volume and frequency.** JOINs work well in moderate insert workloads. For high-throughput ingestion, consider using staging tables, pre-joins, or other approaches such as Dictionaries and [Refreshable Materialized Views](/core/concepts/features/materialized-views/refreshable-materialized-view).
### Using source table in filters and joins {#using-source-table-in-filters-and-joins-in-materialized-views}
@@ -651,7 +651,7 @@ In this example, the set built from the `IN (SELECT id FROM t0)` subquery has on
#### Example with stack overflow {#example-with-stack-overflow}
-Consider our [earlier materialized view example](/concepts/features/materialized-views/incremental-materialized-view#example) to compute **daily badges per user**, including the user's display name from the `users` table.
+Consider our [earlier materialized view example](/core/concepts/features/materialized-views/incremental-materialized-view#example) to compute **daily badges per user**, including the user's display name from the `users` table.
```sql
CREATE MATERIALIZED VIEW daily_badges_by_user_mv TO daily_badges_by_user
@@ -797,7 +797,7 @@ ORDER BY last_activity DESC
LIMIT 10
```
-Let's assume we have a target table to receive the results of this query. Note the use of the [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table engine and [AggregateFunction](/reference/data-types/aggregatefunction) to ensure results are merged correctly:
+Let's assume we have a target table to receive the results of this query. Note the use of the [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table engine and [AggregateFunction](/core/reference/data-types/aggregatefunction) to ensure results are merged correctly:
```sql
CREATE TABLE user_activity
@@ -951,7 +951,7 @@ GROUP BY UserId
## Parallel vs sequential processing {#materialized-views-parallel-vs-sequential}
-As shown in the previous example, a table can act as the source for multiple Materialized Views. The order in which these are executed depends on the setting [`parallel_view_processing`](/reference/settings/session-settings#parallel_view_processing).
+As shown in the previous example, a table can act as the source for multiple Materialized Views. The order in which these are executed depends on the setting [`parallel_view_processing`](/core/reference/settings/session-settings#parallel_view_processing).
By default, this setting is equal to `0` (`false`), meaning Materialized Views are executed sequentially in `uuid` order.
@@ -1202,4 +1202,4 @@ SELECT * FROM stackoverflow.posts WHERE OwnerUserId IN (SELECT Id FROM recent_us
In this case, the users CTE is re-evaluated on every insert into posts, and the materialized view won't update when new users are inserted - only when posts are.
-Generally, use CTEs for logic that operates on the same source table the materialized view is attached to or ensure that referenced tables are small and unlikely to cause performance bottlenecks. Alternatively, consider [the same optimizations as JOINs with Materialized Views](/concepts/features/materialized-views/incremental-materialized-view#join-best-practices).
+Generally, use CTEs for logic that operates on the same source table the materialized view is attached to or ensure that referenced tables are small and unlikely to cause performance bottlenecks. Alternatively, consider [the same optimizations as JOINs with Materialized Views](/core/concepts/features/materialized-views/incremental-materialized-view#join-best-practices).
diff --git a/concepts/features/materialized-views/index.mdx b/core/concepts/features/materialized-views/index.mdx
similarity index 65%
rename from concepts/features/materialized-views/index.mdx
rename to core/concepts/features/materialized-views/index.mdx
index 8870a5ab..42dcc04e 100644
--- a/concepts/features/materialized-views/index.mdx
+++ b/core/concepts/features/materialized-views/index.mdx
@@ -8,8 +8,8 @@ doc_type: 'landing-page'
| Page | Description |
|-------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Incremental materialized view](/concepts/features/materialized-views/incremental-materialized-view) | Allow users to shift the cost of computation from query time to insert time, resulting in faster `SELECT` queries. |
-| [Refreshable materialized view](/concepts/features/materialized-views/refreshable-materialized-view) | Conceptually similar to incremental materialized views but require the periodic execution of the query over the full dataset - the results of which are stored in a target table for querying. |
+| [Incremental materialized view](/core/concepts/features/materialized-views/incremental-materialized-view) | Allow users to shift the cost of computation from query time to insert time, resulting in faster `SELECT` queries. |
+| [Refreshable materialized view](/core/concepts/features/materialized-views/refreshable-materialized-view) | Conceptually similar to incremental materialized views but require the periodic execution of the query over the full dataset - the results of which are stored in a target table for querying. |
diff --git a/concepts/features/materialized-views/refreshable-materialized-view.mdx b/core/concepts/features/materialized-views/refreshable-materialized-view.mdx
similarity index 91%
rename from concepts/features/materialized-views/refreshable-materialized-view.mdx
rename to core/concepts/features/materialized-views/refreshable-materialized-view.mdx
index bb6c1c28..672abad5 100644
--- a/concepts/features/materialized-views/refreshable-materialized-view.mdx
+++ b/core/concepts/features/materialized-views/refreshable-materialized-view.mdx
@@ -8,7 +8,7 @@ doc_type: 'guide'
import { Image } from "/snippets/components/Image.jsx";
-[Refreshable materialized views](/reference/statements/create/view#refreshable-materialized-view) are conceptually similar to materialized views in traditional OLTP databases, storing the result of a specified query for quick retrieval and reducing the need to repeatedly execute resource-intensive queries. Unlike ClickHouse's [incremental materialized views](/concepts/features/materialized-views/incremental-materialized-view), this requires the periodic execution of the query over the full dataset - the results of which are stored in a target table for querying. This result set should, in theory, be smaller than the original dataset, allowing the subsequent query to execute faster.
+[Refreshable materialized views](/core/reference/statements/create/view#refreshable-materialized-view) are conceptually similar to materialized views in traditional OLTP databases, storing the result of a specified query for quick retrieval and reducing the need to repeatedly execute resource-intensive queries. Unlike ClickHouse's [incremental materialized views](/core/concepts/features/materialized-views/incremental-materialized-view), this requires the periodic execution of the query over the full dataset - the results of which are stored in a target table for querying. This result set should, in theory, be smaller than the original dataset, allowing the subsequent query to execute faster.
The diagram explains how Refreshable Materialized Views work:
@@ -26,7 +26,7 @@ ClickHouse incremental materialized views are enormously powerful and typically
However, there are use cases where this incremental process isn't required or isn't applicable. Some problems are either incompatible with an incremental approach or don't require real-time updates, with a periodic rebuild being more appropriate. For example, you may want to regularly perform a complete re-computation of a view over the full dataset because it uses a complex join, which is incompatible with an incremental approach.
-> Refreshable materialized views can run batch processes performing tasks such as denormalization. Dependencies can be created between refreshable materialized views such that one view depends on the results of another and only executes once it is complete. This can replace scheduled workflows or simple DAGs such as a [dbt](https://www.getdbt.com/) job. To find out more about how to set dependencies between refreshable materialized views go to [CREATE VIEW](/reference/statements/create/view#refresh-dependencies), `Dependencies` section.
+> Refreshable materialized views can run batch processes performing tasks such as denormalization. Dependencies can be created between refreshable materialized views such that one view depends on the results of another and only executes once it is complete. This can replace scheduled workflows or simple DAGs such as a [dbt](https://www.getdbt.com/) job. To find out more about how to set dependencies between refreshable materialized views go to [CREATE VIEW](/core/reference/statements/create/view#refresh-dependencies), `Dependencies` section.
## How do you refresh a refreshable materialized view? {#how-do-you-refresh-a-refreshable-materialized-view}
@@ -46,11 +46,11 @@ SYSTEM REFRESH VIEW table_name_mv;
```
You can also cancel, stop, or start a view.
-For more details, see the [managing refreshable materialized views](/reference/statements/system#managing-refreshable-materialized-views) documentation.
+For more details, see the [managing refreshable materialized views](/core/reference/statements/system#managing-refreshable-materialized-views) documentation.
## When was a refreshable materialized view last refreshed? {#when-was-a-refreshable-materialized-view-last-refreshed}
-To find out when a refreshable materialized view was last refreshed, you can query the [`system.view_refreshes`](/reference/system-tables/view_refreshes) system table, as shown below:
+To find out when a refreshable materialized view was last refreshed, you can query the [`system.view_refreshes`](/core/reference/system-tables/view_refreshes) system table, as shown below:
```sql
SELECT database, view, status,
@@ -67,14 +67,14 @@ FROM system.view_refreshes;
## How can I change the refresh rate? {#how-can-i-change-the-refresh-rate}
-To change the refresh rate of a refreshable materialized view, use the [`ALTER TABLE...MODIFY REFRESH`](/reference/statements/alter/view#alter-table--modify-refresh-statement) syntax.
+To change the refresh rate of a refreshable materialized view, use the [`ALTER TABLE...MODIFY REFRESH`](/core/reference/statements/alter/view#alter-table--modify-refresh-statement) syntax.
```sql
ALTER TABLE table_name_mv
MODIFY REFRESH EVERY 30 SECONDS;
```
-Once you've done that, you can use [When was a refreshable materialized view last refreshed?](/concepts/features/materialized-views/refreshable-materialized-view#when-was-a-refreshable-materialized-view-last-refreshed) query to check that the rate has been updated:
+Once you've done that, you can use [When was a refreshable materialized view last refreshed?](/core/concepts/features/materialized-views/refreshable-materialized-view#when-was-a-refreshable-materialized-view-last-refreshed) query to check that the rate has been updated:
```text
┌─database─┬─view─────────────┬─status────┬───last_success_time─┬───last_refresh_time─┬───next_refresh_time─┬─read_rows─┬─written_rows─┐
@@ -186,7 +186,7 @@ Lets now have a look at how to use refreshable materialized views with some exam
### Stack Overflow {#stack-overflow}
-The [denormalizing data guide](/guides/cloud-oss/data-modelling/denormalization) shows various techniques for denormalizing data using a Stack Overflow dataset. We populate data into the following tables: `votes`, `users`, `badges`, `posts`, and `postlinks`.
+The [denormalizing data guide](/core/guides/clickhouse/data-modelling/denormalization) shows various techniques for denormalizing data using a Stack Overflow dataset. We populate data into the following tables: `votes`, `users`, `badges`, `posts`, and `postlinks`.
In that guide, we showed how to denormalize the `postlinks` dataset onto the `posts` table with the following query:
@@ -231,7 +231,7 @@ LEFT JOIN (
The view will execute immediately and every hour thereafter as configured to ensure updates to the source table are reflected. Importantly, when the query re-runs, the result set is atomically and transparently updated.
-The syntax here is identical to an incremental materialized view, except we include a [`REFRESH`](/reference/statements/create/view#refreshable-materialized-view) clause:
+The syntax here is identical to an incremental materialized view, except we include a [`REFRESH`](/core/reference/statements/create/view#refreshable-materialized-view) clause:
### IMDb {#imdb}
diff --git a/concepts/operations/delete/delete-mutations.mdx b/core/concepts/features/operations/delete/delete-mutations.mdx
similarity index 82%
rename from concepts/operations/delete/delete-mutations.mdx
rename to core/concepts/features/operations/delete/delete-mutations.mdx
index 58f9118a..d8b5a24a 100644
--- a/concepts/operations/delete/delete-mutations.mdx
+++ b/core/concepts/features/operations/delete/delete-mutations.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
Delete mutations refers to `ALTER` queries that manipulate table data through delete. Most notably they're queries like `ALTER TABLE DELETE`, etc. Performing such queries will produce new mutated versions of the data parts. This means that such statements would trigger a rewrite of whole data parts for all data that was inserted before the mutation, translating to a large amount of write requests.
-For deletes, you can avoid these large amounts of write requests by using specialised table engines like [ReplacingMergeTree](/concepts/operations/update/replacing-merge-tree) or [CollapsingMergeTree](/reference/engines/table-engines/mergetree-family/collapsingmergetree) instead of the default MergeTree table engine.
+For deletes, you can avoid these large amounts of write requests by using specialised table engines like [ReplacingMergeTree](/core/concepts/features/operations/update/replacing-merge-tree) or [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) instead of the default MergeTree table engine.
import DeleteMutations from '/snippets/delete.mdx';
diff --git a/concepts/operations/delete/drop-partition.mdx b/core/concepts/features/operations/delete/drop-partition.mdx
similarity index 94%
rename from concepts/operations/delete/drop-partition.mdx
rename to core/concepts/features/operations/delete/drop-partition.mdx
index 0729b632..ba62fb1d 100644
--- a/concepts/operations/delete/drop-partition.mdx
+++ b/core/concepts/features/operations/delete/drop-partition.mdx
@@ -28,9 +28,9 @@ ORDER BY (PostTypeId, toDate(CreationDate), CreationDate)
PARTITION BY toYear(CreationDate)
```
-Read about setting the partition expression in a section [How to set the partition expression](/reference/statements/alter/partition#how-to-set-partition-expression).
+Read about setting the partition expression in a section [How to set the partition expression](/core/reference/statements/alter/partition#how-to-set-partition-expression).
-In ClickHouse, users should principally consider partitioning to be a data management feature, not a query optimization technique. By separating data logically based on a key, each partition can be operated on independently e.g. deleted. This allows users to move partitions, and thus subsets, between [storage tiers](/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse#storage-tiers) efficiently on time or [expire data/efficiently delete from the cluster](/reference/statements/alter/partition).
+In ClickHouse, users should principally consider partitioning to be a data management feature, not a query optimization technique. By separating data logically based on a key, each partition can be operated on independently e.g. deleted. This allows users to move partitions, and thus subsets, between [storage tiers](/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse#storage-tiers) efficiently on time or [expire data/efficiently delete from the cluster](/core/reference/statements/alter/partition).
## Drop partitions {#drop-partitions}
`ALTER TABLE ... DROP PARTITION` provides a cost-efficient way to drop a whole partition.
diff --git a/core/concepts/features/operations/delete/index.mdx b/core/concepts/features/operations/delete/index.mdx
new file mode 100644
index 00000000..df3d8516
--- /dev/null
+++ b/core/concepts/features/operations/delete/index.mdx
@@ -0,0 +1,18 @@
+---
+slug: /managing-data/deleting-data/overview
+title: 'Deleting Data'
+description: 'How to delete data in ClickHouse Table Of Contents'
+keywords: ['delete', 'truncate', 'drop', 'lightweight delete']
+doc_type: 'guide'
+---
+
+In this section of the documentation,
+we will explore how to delete data in ClickHouse.
+
+| Page | Description |
+|-------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------|
+| [Overview](/core/concepts/features/operations/delete/overview) | Provides an overview of the various ways to delete data in ClickHouse. |
+| [Lightweight deletes](/core/concepts/features/operations/delete/lightweight-delete) | Learn how to use the Lightweight Delete to delete data. |
+| [Delete mutations](/core/concepts/features/operations/delete/delete-mutations) |Learn about Delete Mutations. |
+| [Truncate table](/core/concepts/features/operations/delete/truncate) | Learn about how to use Truncate, which allows the data in a table or database to be removed, while preserving its existence. |
+| [Drop partitions](/core/concepts/features/operations/delete/drop-partition) | Learn about Dropping Partitions in ClickHouse. |
diff --git a/concepts/operations/delete/lightweight-delete.mdx b/core/concepts/features/operations/delete/lightweight-delete.mdx
similarity index 82%
rename from concepts/operations/delete/lightweight-delete.mdx
rename to core/concepts/features/operations/delete/lightweight-delete.mdx
index cc4893c8..53e6ca4f 100644
--- a/concepts/operations/delete/lightweight-delete.mdx
+++ b/core/concepts/features/operations/delete/lightweight-delete.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/lightweight-delete
+slug: /core/guides/developer/lightweight-delete
title: 'Lightweight delete'
keywords: ['lightweight delete']
description: 'Provides an overview of lightweight deletes in ClickHouse'
diff --git a/concepts/operations/delete/overview.mdx b/core/concepts/features/operations/delete/overview.mdx
similarity index 57%
rename from concepts/operations/delete/overview.mdx
rename to core/concepts/features/operations/delete/overview.mdx
index bf7f0abd..b7c28286 100644
--- a/concepts/operations/delete/overview.mdx
+++ b/core/concepts/features/operations/delete/overview.mdx
@@ -10,10 +10,10 @@ There are several ways to delete data in ClickHouse, each with its own advantage
| Method | Syntax | When to use |
| --- | --- | --- |
-| [Lightweight delete](/concepts/operations/delete/lightweight-delete) | `DELETE FROM [table]` | Use when deleting small amounts of data. Rows are immediately filtered out of all subsequent SELECT queries but are initially only internally marked as deleted, not removed from disk. |
-| [Delete mutation](/reference/statements/alter/delete) | `ALTER TABLE [table] DELETE` | Use when data must be deleted from disk immediately (e.g. for compliance). Negatively affects SELECT performance. |
-| [Truncate table](/reference/statements/truncate) | `TRUNCATE TABLE [db.table]` | Efficiently removes all data from a table. |
-| [Drop partition](/reference/statements/alter/partition#drop-partitionpart) | `DROP PARTITION` | Efficiently removes all data from a partition. |
+| [Lightweight delete](/core/concepts/features/operations/delete/lightweight-delete) | `DELETE FROM [table]` | Use when deleting small amounts of data. Rows are immediately filtered out of all subsequent SELECT queries but are initially only internally marked as deleted, not removed from disk. |
+| [Delete mutation](/core/reference/statements/alter/delete) | `ALTER TABLE [table] DELETE` | Use when data must be deleted from disk immediately (e.g. for compliance). Negatively affects SELECT performance. |
+| [Truncate table](/core/reference/statements/truncate) | `TRUNCATE TABLE [db.table]` | Efficiently removes all data from a table. |
+| [Drop partition](/core/reference/statements/alter/partition#drop-partitionpart) | `DROP PARTITION` | Efficiently removes all data from a partition. |
Here is a summary of the different ways to delete data in ClickHouse:
@@ -27,11 +27,11 @@ DELETE FROM posts WHERE toYear(CreationDate) = 2018
Deleting large volumes of data with the lightweight `DELETE` statement can also negatively affect `SELECT` query performance. The command is also not compatible with tables with projections.
-Note that a mutation is used in the operation to [mark the deleted rows](/reference/statements/delete#how-lightweight-deletes-work-internally-in-clickhouse) (adding a `_row_exists` column), thus incurring some I/O.
+Note that a mutation is used in the operation to [mark the deleted rows](/core/reference/statements/delete#how-lightweight-deletes-work-internally-in-clickhouse) (adding a `_row_exists` column), thus incurring some I/O.
In general, lightweight deletes should be preferred over mutations if the existence of the deleted data on disk can be tolerated (e.g. in non-compliance cases). This approach should still be avoided if all data needs to be deleted.
-Read more about [lightweight deletes](/concepts/operations/delete/lightweight-delete).
+Read more about [lightweight deletes](/core/concepts/features/operations/delete/lightweight-delete).
## Delete mutations {#delete-mutations}
Delete mutations can be issued through a `ALTER TABLE ... DELETE` command e.g.
@@ -41,9 +41,9 @@ Delete mutations can be issued through a `ALTER TABLE ... DELETE` command e.g.
ALTER TABLE posts DELETE WHERE toYear(CreationDate) = 2018
```
-These can be executed either synchronously (by default if non-replicated) or asynchronously (determined by the [mutations_sync](/reference/settings/session-settings#mutations_sync) setting). These are extremely IO-heavy, rewriting all the parts that match the `WHERE` expression. There is no atomicity to this process - parts are substituted for mutated parts as soon as they're ready, and a `SELECT` query that starts executing during a mutation will see data from parts that have already been mutated along with data from parts that haven't been mutated yet. Users can track the state of the progress via the [system.mutations](/reference/system-tables/mutations#monitoring-mutations) table. These are I/O intense operations and should be used sparingly as they can impact cluster `SELECT` performance.
+These can be executed either synchronously (by default if non-replicated) or asynchronously (determined by the [mutations_sync](/core/reference/settings/session-settings#mutations_sync) setting). These are extremely IO-heavy, rewriting all the parts that match the `WHERE` expression. There is no atomicity to this process - parts are substituted for mutated parts as soon as they're ready, and a `SELECT` query that starts executing during a mutation will see data from parts that have already been mutated along with data from parts that haven't been mutated yet. Users can track the state of the progress via the [system.mutations](/core/reference/system-tables/mutations#monitoring-mutations) table. These are I/O intense operations and should be used sparingly as they can impact cluster `SELECT` performance.
-Read more about [delete mutations](/reference/statements/alter/delete).
+Read more about [delete mutations](/core/reference/statements/alter/delete).
## Truncate table {#truncate-table}
If all data in a table needs to be deleted, use the `TRUNCATE TABLE` command shown below. This is a lightweight operation.
@@ -52,7 +52,7 @@ If all data in a table needs to be deleted, use the `TRUNCATE TABLE` command sho
TRUNCATE TABLE posts
```
-Read more about [TRUNCATE TABLE](/reference/statements/truncate).
+Read more about [TRUNCATE TABLE](/core/reference/statements/truncate).
## Drop partition {#drop-partition}
If you have specified a custom partitioning key for your data, partitions can be efficiently dropped. Avoid high cardinality partitioning.
@@ -61,7 +61,7 @@ If you have specified a custom partitioning key for your data, partitions can be
ALTER TABLE posts (DROP PARTITION '2008')
```
-Read more about [DROP PARTITION](/reference/statements/alter/partition).
+Read more about [DROP PARTITION](/core/reference/statements/alter/partition).
## More resources {#more-resources}
- [Handling Updates and Deletes in ClickHouse](https://clickhouse.com/blog/handling-updates-and-deletes-in-clickhouse)
diff --git a/concepts/operations/delete/truncate.mdx b/core/concepts/features/operations/delete/truncate.mdx
similarity index 100%
rename from concepts/operations/delete/truncate.mdx
rename to core/concepts/features/operations/delete/truncate.mdx
diff --git a/concepts/operations/delete/ttl.mdx b/core/concepts/features/operations/delete/ttl.mdx
similarity index 99%
rename from concepts/operations/delete/ttl.mdx
rename to core/concepts/features/operations/delete/ttl.mdx
index aaa8f956..8489128c 100644
--- a/concepts/operations/delete/ttl.mdx
+++ b/core/concepts/features/operations/delete/ttl.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/ttl
+slug: /core/guides/developer/ttl
sidebarTitle: 'TTL (Time to Live)'
keywords: ['ttl', 'time to live', 'clickhouse', 'old', 'data']
description: 'TTL (time-to-live) refers to the capability of having rows or columns moved, deleted, or rolled up after a certain interval of time has passed.'
@@ -45,7 +45,7 @@ ORDER BY tuple()
- When the interval lapses, the column expires. ClickHouse replaces the column value with the default value of its data type. If all the column values in the data part expire, ClickHouse deletes this column from the data part in the filesystem.
-TTL rules can be altered or deleted. See the [Manipulations with Table TTL](/reference/statements/alter/ttl) page for more details.
+TTL rules can be altered or deleted. See the [Manipulations with Table TTL](/core/reference/statements/alter/ttl) page for more details.
diff --git a/concepts/operations/insert/asyncinserts.mdx b/core/concepts/features/operations/insert/asyncinserts.mdx
similarity index 100%
rename from concepts/operations/insert/asyncinserts.mdx
rename to core/concepts/features/operations/insert/asyncinserts.mdx
diff --git a/concepts/operations/insert/bulkinserts.mdx b/core/concepts/features/operations/insert/bulkinserts.mdx
similarity index 100%
rename from concepts/operations/insert/bulkinserts.mdx
rename to core/concepts/features/operations/insert/bulkinserts.mdx
diff --git a/concepts/operations/insert/deduplicating-inserts-on-retries.mdx b/core/concepts/features/operations/insert/deduplicating-inserts-on-retries.mdx
similarity index 94%
rename from concepts/operations/insert/deduplicating-inserts-on-retries.mdx
rename to core/concepts/features/operations/insert/deduplicating-inserts-on-retries.mdx
index 67a387eb..ead59eef 100644
--- a/concepts/operations/insert/deduplicating-inserts-on-retries.mdx
+++ b/core/concepts/features/operations/insert/deduplicating-inserts-on-retries.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/deduplicating-inserts-on-retries
+slug: /core/guides/developer/deduplicating-inserts-on-retries
title: 'Deduplicating inserts on retries'
description: 'Preventing duplicate data when retrying insert operations'
keywords: ['deduplication', 'deduplicate', 'insert retries', 'inserts']
@@ -26,7 +26,7 @@ If more than `*_deduplication_window` other insert operations occur during the r
**Only `*MergeTree` engines support deduplication on insertion.**
-For `*ReplicatedMergeTree` engines, insert deduplication is enabled by default and is controlled by the [`replicated_deduplication_window`](/reference/settings/merge-tree-settings#replicated_deduplication_window) and [`replicated_deduplication_window_seconds`](/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds) settings. For non-replicated `*MergeTree` engines, deduplication is controlled by the [`non_replicated_deduplication_window`](/reference/settings/merge-tree-settings#non_replicated_deduplication_window) setting.
+For `*ReplicatedMergeTree` engines, insert deduplication is enabled by default and is controlled by the [`replicated_deduplication_window`](/core/reference/settings/merge-tree-settings#replicated_deduplication_window) and [`replicated_deduplication_window_seconds`](/core/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds) settings. For non-replicated `*MergeTree` engines, deduplication is controlled by the [`non_replicated_deduplication_window`](/core/reference/settings/merge-tree-settings#non_replicated_deduplication_window) setting.
The settings above determine the parameters of the deduplication log for a table. The deduplication log stores a finite number of `block_id`s, which determine how deduplication works (see below).
@@ -53,11 +53,11 @@ When a table has one or more materialized views, the inserted data is also inser
You can control this process using the following settings for the source table:
-- [`replicated_deduplication_window`](/reference/settings/merge-tree-settings#replicated_deduplication_window)
-- [`replicated_deduplication_window_seconds`](/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds)
-- [`non_replicated_deduplication_window`](/reference/settings/merge-tree-settings#non_replicated_deduplication_window)
+- [`replicated_deduplication_window`](/core/reference/settings/merge-tree-settings#replicated_deduplication_window)
+- [`replicated_deduplication_window_seconds`](/core/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds)
+- [`non_replicated_deduplication_window`](/core/reference/settings/merge-tree-settings#non_replicated_deduplication_window)
-You have to also enable the user profile setting [`deduplicate_blocks_in_dependent_materialized_views`](/reference/settings/session-settings#deduplicate_blocks_in_dependent_materialized_views).
+You have to also enable the user profile setting [`deduplicate_blocks_in_dependent_materialized_views`](/core/reference/settings/session-settings#deduplicate_blocks_in_dependent_materialized_views).
With enabled setting `insert_deduplicate=1` an inserted data is deduplicated in source table. The setting `deduplicate_blocks_in_dependent_materialized_views=1` additionally enables deduplication in dependant tables. You have to enable both if full deduplication is desired.
When inserting blocks into tables under materialized views, ClickHouse calculates the `block_id` by hashing a string that combines the `block_id`s from the source table and additional identifiers. This ensures accurate deduplication within materialized views, allowing data to be distinguished based on its original insertion, regardless of any transformations applied before reaching the destination table under the materialized view.
diff --git a/concepts/operations/insert/deduplication.mdx b/core/concepts/features/operations/insert/deduplication.mdx
similarity index 98%
rename from concepts/operations/insert/deduplication.mdx
rename to core/concepts/features/operations/insert/deduplication.mdx
index 9511db4d..b371cc72 100644
--- a/concepts/operations/insert/deduplication.mdx
+++ b/core/concepts/features/operations/insert/deduplication.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/deduplication
+slug: /core/guides/developer/deduplication
sidebarTitle: 'Deduplication strategies'
description: 'Use deduplication when you need to perform frequent upserts, updates and deletes.'
title: 'Deduplication strategies'
@@ -340,4 +340,4 @@ A `VersionedCollapsingMergeTree` table is quite handy when you want to implement
One reason inserted rows may not be deduplicated is if you're using a non-idempotent function or expression in your `INSERT` statement. For example, if you're inserting rows with the column `createdAt DateTime64(3) DEFAULT now()`, your rows are guaranteed to be unique because each row will have a unique default value for the `createdAt` column. The MergeTree / ReplicatedMergeTree table engine won't know to deduplicate the rows as each inserted row will generate a unique checksum.
-In this case, you can specify your own `insert_deduplication_token` for each batch of rows to ensure that multiple inserts of the same batch won't result in the same rows being re-inserted. Please see the [documentation on `insert_deduplication_token`](/reference/settings/session-settings#insert_deduplication_token) for more details about how to use this setting.
+In this case, you can specify your own `insert_deduplication_token` for each batch of rows to ensure that multiple inserts of the same batch won't result in the same rows being re-inserted. Please see the [documentation on `insert_deduplication_token`](/core/reference/settings/session-settings#insert_deduplication_token) for more details about how to use this setting.
diff --git a/get-started/oss/starter-guides/inserting-data.mdx b/core/concepts/features/operations/insert/inserting-data.mdx
similarity index 88%
rename from get-started/oss/starter-guides/inserting-data.mdx
rename to core/concepts/features/operations/insert/inserting-data.mdx
index 3fd11388..6f5fd4d4 100644
--- a/get-started/oss/starter-guides/inserting-data.mdx
+++ b/core/concepts/features/operations/insert/inserting-data.mdx
@@ -3,7 +3,7 @@ title: 'Inserting ClickHouse data'
description: 'How to insert data into ClickHouse'
keywords: ['INSERT', 'Batch Insert']
sidebarTitle: 'Inserting ClickHouse data'
-slug: /guides/inserting-data
+slug: /core/guides/inserting-data
show_related_blogs: true
doc_type: 'guide'
---
@@ -52,7 +52,7 @@ As long as the retried insert query contains the same data in the same order, Cl
We recommend inserting directly into a MergeTree (or Replicated table), balancing the requests across a set of nodes if the data is sharded, and setting `internal_replication=true`.
This will leave ClickHouse to replicate the data to any available replica shards and ensure the data is eventually consistent.
-If this client side load balancing is inconvenient then you can insert via a [distributed table](/reference/engines/table-engines/special/distributed) which will then distribute writes across the nodes. Again, it is advised to set `internal_replication=true`.
+If this client side load balancing is inconvenient then you can insert via a [distributed table](/core/reference/engines/table-engines/special/distributed) which will then distribute writes across the nodes. Again, it is advised to set `internal_replication=true`.
It should be noted however that this approach is a little less performant as writes have to be made locally on the node with the distributed table and then sent to the shards.
### Use asynchronous inserts for small batches {#use-asynchronous-inserts-for-small-batches}
@@ -60,7 +60,7 @@ It should be noted however that this approach is a little less performant as wri
There are scenarios where client-side batching isn't feasible e.g. an observability use case with 100s or 1000s of single-purpose agents sending logs, metrics, traces, etc.
In this scenario real-time transport of that data is key to detect issues and anomalies as quickly as possible.
Furthermore, there is a risk of event spikes in the observed systems, which could potentially cause large memory spikes and related issues when trying to buffer observability data client-side.
-If large batches can't be inserted, you can delegate batching to ClickHouse using [asynchronous inserts](/concepts/best-practices/selecting-an-insert-strategy#asynchronous-inserts).
+If large batches can't be inserted, you can delegate batching to ClickHouse using [asynchronous inserts](/core/concepts/best-practices/selecting-an-insert-strategy#asynchronous-inserts).
With asynchronous inserts, data is inserted into a buffer first and then written to the database storage later in 3 steps, as illustrated by the diagram below:
@@ -79,7 +79,7 @@ Generally, these mechanics shift the batching of data from the client side to th
Note that the data isn't searchable by queries before being flushed to the database storage and that the buffer flush is configurable.
-Full details on configuring asynchronous inserts can be found [here](/concepts/operations/insert/asyncinserts#enabling-asynchronous-inserts), with a deep dive [here](https://clickhouse.com/blog/asynchronous-data-inserts-in-clickhouse).
+Full details on configuring asynchronous inserts can be found [here](/core/concepts/features/operations/insert/asyncinserts#enabling-asynchronous-inserts), with a deep dive [here](https://clickhouse.com/blog/asynchronous-data-inserts-in-clickhouse).
### Use official ClickHouse clients {#use-official-clickhouse-clients}
@@ -87,21 +87,21 @@ Full details on configuring asynchronous inserts can be found [here](/concepts/o
ClickHouse has clients in the most popular programming languages.
These are optimized to ensure that inserts are performed correctly and natively support asynchronous inserts either directly as in e.g. the [Go client](/integrations/language-clients/go/clickhouse-api#async-insert), or indirectly when enabled in the query, user or connection level settings.
-See [Clients and Drivers](/integrations/connectors/data-integrations/drivers-and-interfaces/cli) for a full list of available ClickHouse clients and drivers.
+See [Clients and Drivers](/core/concepts/features/interfaces/cli) for a full list of available ClickHouse clients and drivers.
### Prefer the native format {#prefer-the-native-format}
-ClickHouse supports many [input formats](/reference/formats) at insert (and query) time.
-This is a significant difference with OLTP databases and makes loading data from external sources much easier - especially when coupled with [table functions](/reference/functions/table-functions) and the ability to load data from files on disk.
+ClickHouse supports many [input formats](/core/reference/formats) at insert (and query) time.
+This is a significant difference with OLTP databases and makes loading data from external sources much easier - especially when coupled with [table functions](/core/reference/functions/table-functions) and the ability to load data from files on disk.
These formats are ideal for ad hoc data loading and data engineering tasks.
-For applications looking to achieve optimal insert performance, you should insert using the [Native](/reference/formats/Native) format.
+For applications looking to achieve optimal insert performance, you should insert using the [Native](/core/reference/formats/Native) format.
This is supported by most clients (such as Go and Python) and ensures the server has to do a minimal amount of work since this format is already column-oriented.
By doing so the responsibility for converting data into a column-oriented format is placed on the client side. This is important for scaling inserts efficiently.
-Alternatively, you can use [RowBinary format](/reference/formats/RowBinary/RowBinary) (as used by the Java client) if a row format is preferred - this is typically easier to write than the Native format.
-This is more efficient, in terms of compression, network overhead, and processing on the server, than alternative row formats such as [JSON](/reference/formats/JSON/JSON).
-The [JSONEachRow](/reference/formats/JSON/JSONEachRow) format can be considered if you have lower write throughput looking to integrate quickly. You should be aware this format will incur a CPU overhead in ClickHouse for parsing.
+Alternatively, you can use [RowBinary format](/core/reference/formats/RowBinary/RowBinary) (as used by the Java client) if a row format is preferred - this is typically easier to write than the Native format.
+This is more efficient, in terms of compression, network overhead, and processing on the server, than alternative row formats such as [JSON](/core/reference/formats/JSON/JSON).
+The [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) format can be considered if you have lower write throughput looking to integrate quickly. You should be aware this format will incur a CPU overhead in ClickHouse for parsing.
### Use the HTTP interface {#use-the-http-interface}
@@ -112,11 +112,11 @@ We expect small differences in insert performance with the native protocol, whic
Existing clients use either of these protocols (in some cases both e.g. the Go client).
The native protocol does allow query progress to be easily tracked.
-See [HTTP Interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http) for further details.
+See [HTTP Interface](/core/concepts/features/interfaces/http) for further details.
## Basic example {#basic-example}
-You can use the familiar `INSERT INTO TABLE` command with ClickHouse. Let's insert some data into the table that we created in the start guide ["Creating Tables in ClickHouse"](/get-started/oss/starter-guides/creating-tables).
+You can use the familiar `INSERT INTO TABLE` command with ClickHouse. Let's insert some data into the table that we created in the start guide ["Creating Tables in ClickHouse"](/core/get-started/quickstarts/creating-tables).
```sql
INSERT INTO helloworld.my_first_table (user_id, message, timestamp, metric) VALUES
@@ -161,13 +161,13 @@ If you need help inserting large datasets or encounter any errors when importing
## Inserting data from the command line {#inserting-data-from-command-line}
**Prerequisites**
-- You have [installed](/get-started/setup/self-managed/install) ClickHouse
+- You have [installed](/core/get-started/setup/install) ClickHouse
- `clickhouse-server` is running
- You have access to a terminal with `wget`, `zcat` and `curl`
-In this example you'll see how to insert a CSV file into ClickHouse from the command line using clickhouse-client in batch mode. For more information and examples of inserting data via command line using clickhouse-client in batch mode, see ["Batch mode"](/integrations/connectors/data-integrations/drivers-and-interfaces/client#batch-mode).
+In this example you'll see how to insert a CSV file into ClickHouse from the command line using clickhouse-client in batch mode. For more information and examples of inserting data via command line using clickhouse-client in batch mode, see ["Batch mode"](/core/concepts/features/interfaces/client#batch-mode).
-We'll be using the [Hacker News dataset](/get-started/sample-datasets/hacker-news) for this example, which contains 28 million rows of Hacker News data.
+We'll be using the [Hacker News dataset](/core/get-started/sample-datasets/hacker-news) for this example, which contains 28 million rows of Hacker News data.
diff --git a/concepts/operations/insert/transactions.mdx b/core/concepts/features/operations/insert/transactions.mdx
similarity index 97%
rename from concepts/operations/insert/transactions.mdx
rename to core/concepts/features/operations/insert/transactions.mdx
index 5b9f508e..93ebe0a9 100644
--- a/concepts/operations/insert/transactions.mdx
+++ b/core/concepts/features/operations/insert/transactions.mdx
@@ -1,6 +1,6 @@
---
description: 'Page describing transactional (ACID) support in ClickHouse'
-slug: /guides/developer/transactional
+slug: /core/guides/developer/transactional
title: 'Transactional (ACID) support'
doc_type: 'guide'
---
@@ -87,7 +87,7 @@ These examples are with a single node ClickHouse server with ClickHouse Keeper e
#### Basic configuration for a single ClickHouse server node with ClickHouse Keeper enabled {#basic-configuration-for-a-single-clickhouse-server-node-with-clickhouse-keeper-enabled}
-See the [deployment](/guides/oss/deployment-and-scaling/terminology) documentation for details on deploying ClickHouse server and a proper quorum of ClickHouse Keeper nodes. The configuration shown here is for experimental purposes.
+See the [deployment](/core/guides/oss/deployment-and-scaling/terminology) documentation for details on deploying ClickHouse server and a proper quorum of ClickHouse Keeper nodes. The configuration shown here is for experimental purposes.
```xml title=/etc/clickhouse-server/config.d/config.xml
diff --git a/concepts/operations/select/joining-tables.mdx b/core/concepts/features/operations/select/joining-tables.mdx
similarity index 92%
rename from concepts/operations/select/joining-tables.mdx
rename to core/concepts/features/operations/select/joining-tables.mdx
index 63177ba5..9356d629 100644
--- a/concepts/operations/select/joining-tables.mdx
+++ b/core/concepts/features/operations/select/joining-tables.mdx
@@ -2,7 +2,7 @@
title: 'Using JOINs in ClickHouse'
description: 'How to join tables in ClickHouse'
keywords: ['joins', 'join tables']
-slug: /guides/joining-tables
+slug: /core/guides/joining-tables
doc_type: 'guide'
---
@@ -10,9 +10,9 @@ import { Image } from "/snippets/components/Image.jsx";
ClickHouse has [full `JOIN` support](https://clickhouse.com/blog/clickhouse-fully-supports-joins-part1), with a wide selection of join algorithms. To maximize performance, we recommend following the join optimization suggestions listed in this guide.
-- For optimal performance, you should aim to reduce the number of `JOIN`s in queries, especially for real-time analytical workloads where millisecond performance is required. Aim for a maximum of 3 to 4 joins in a query. We detail a number of changes to minimize joins in the [data modeling section](/guides/cloud-oss/data-modelling/schema-design), including denormalization, dictionaries, and materialized views.
+- For optimal performance, you should aim to reduce the number of `JOIN`s in queries, especially for real-time analytical workloads where millisecond performance is required. Aim for a maximum of 3 to 4 joins in a query. We detail a number of changes to minimize joins in the [data modeling section](/core/guides/clickhouse/data-modelling/schema-design), including denormalization, dictionaries, and materialized views.
- As of ClickHouse 24.12, the query planner automatically reorders two-table joins to place the smaller table on the right-hand side for optimal performance. In version 25.9, this was extended to optimize join order across queries joining three or more tables.
-- If your query requires a direct join i.e. a `LEFT ANY JOIN` - as shown below, we recommend using [Dictionaries](/concepts/features/dictionaries) where possible.
+- If your query requires a direct join i.e. a `LEFT ANY JOIN` - as shown below, we recommend using [Dictionaries](/core/concepts/features/dictionaries) where possible.
@@ -155,7 +155,7 @@ If your key optimization metric is performance and you're looking to execute the
- **(1)** If the data from the right-hand side table can be pre-loaded into an in-memory low-latency key-value data structure, e.g. a dictionary, and if the join key matches the key attribute of the underlying key-value storage, and if `LEFT ANY JOIN` semantics are adequate - then the **direct join** is applicable and offers the fastest approach.
-- **(2)** If your table's [physical row order](/guides/cloud-oss/data-modelling/sparse-primary-indexes#data-is-stored-on-disk-ordered-by-primary-key-columns) matches the join key sort order, then it depends. In this case, the **full sorting merge join** [skips](https://clickhouse.com/blog/clickhouse-fully-supports-joins-full-sort-partial-merge-part3#utilizing-physical-row-order) the sorting phase resulting in significantly reduced memory usage plus, depending on data size and join key value distribution, faster execution times than some of the hash join algorithms.
+- **(2)** If your table's [physical row order](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#data-is-stored-on-disk-ordered-by-primary-key-columns) matches the join key sort order, then it depends. In this case, the **full sorting merge join** [skips](https://clickhouse.com/blog/clickhouse-fully-supports-joins-full-sort-partial-merge-part3#utilizing-physical-row-order) the sorting phase resulting in significantly reduced memory usage plus, depending on data size and join key value distribution, faster execution times than some of the hash join algorithms.
- **(3)** If the right table fits into memory, even with the [additional memory usage overhead](https://clickhouse.com/blog/clickhouse-fully-supports-joins-hash-joins-part2#summary) of the **parallel hash join**, then this algorithm or the hash join can be faster. This depends on data size, data types, and value distribution of the join key columns.
diff --git a/concepts/operations/update/index.mdx b/core/concepts/features/operations/update/index.mdx
similarity index 57%
rename from concepts/operations/update/index.mdx
rename to core/concepts/features/operations/update/index.mdx
index 9d6f0e07..7a0819a0 100644
--- a/concepts/operations/update/index.mdx
+++ b/core/concepts/features/operations/update/index.mdx
@@ -10,5 +10,5 @@ In this section of the documentation, you will learn how you can update your dat
| Page | Description |
|-----------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Working with updates](/concepts/operations/update/overview) | Provides an overview of the differences in updating data between ClickHouse and OLTP databases, as well as the various methods available to do so in ClickHouse. | |
-| [Working with ReplacingMergeTree](/concepts/operations/update/replacing-merge-tree) | Learn how to update using the ReplacingMergeTree. |
+| [Working with updates](/core/concepts/features/operations/update/overview) | Provides an overview of the differences in updating data between ClickHouse and OLTP databases, as well as the various methods available to do so in ClickHouse. | |
+| [Working with ReplacingMergeTree](/core/concepts/features/operations/update/replacing-merge-tree) | Learn how to update using the ReplacingMergeTree. |
diff --git a/concepts/operations/update/on-fly-mutations.mdx b/core/concepts/features/operations/update/on-fly-mutations.mdx
similarity index 98%
rename from concepts/operations/update/on-fly-mutations.mdx
rename to core/concepts/features/operations/update/on-fly-mutations.mdx
index 05b2cc44..8086a6ad 100644
--- a/concepts/operations/update/on-fly-mutations.mdx
+++ b/core/concepts/features/operations/update/on-fly-mutations.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/on-the-fly-mutations
+slug: /core/guides/developer/on-the-fly-mutations
sidebarTitle: 'On-the-fly mutation'
title: 'On-the-fly Mutations'
keywords: ['On-the-fly mutation']
diff --git a/concepts/operations/update/overview.mdx b/core/concepts/features/operations/update/overview.mdx
similarity index 80%
rename from concepts/operations/update/overview.mdx
rename to core/concepts/features/operations/update/overview.mdx
index 52e457b5..ad5cdeed 100644
--- a/concepts/operations/update/overview.mdx
+++ b/core/concepts/features/operations/update/overview.mdx
@@ -8,7 +8,7 @@ sidebarTitle: 'Working with updates'
---
When it comes to handling updates, analytical and transactional databases take different approaches to how they handle updates due to their underlying design philosophies and target use cases.
-ClickHouse is a [column-oriented database](/get-started/about/intro#row-oriented-vs-column-oriented-storage) which is optimized for read-heavy analytics and high throughput append-only operations.
+ClickHouse is a [column-oriented database](/core/get-started/about/intro#row-oriented-vs-column-oriented-storage) which is optimized for read-heavy analytics and high throughput append-only operations.
In practice, tables are often restructured to convert deletes and updates into append operations that are processed asynchronously and/or at read time, capitalizing on ClickHouse's strengths for high-throughput data ingestion.
ClickHouse also supports robust update and delete operations.
@@ -19,7 +19,7 @@ This guide provides an overview of the available update methods in ClickHouse, a
There are two fundamental approaches to updating data in ClickHouse:
1. Using **specialized table engines** that handle updates through inserts
-2. Using **declarative updates** like [`UPDATE ... SET`](/reference/statements/update) or [`ALTER TABLE ... UPDATE`](/reference/statements/alter/update) statements
+2. Using **declarative updates** like [`UPDATE ... SET`](/core/reference/statements/update) or [`ALTER TABLE ... UPDATE`](/core/reference/statements/alter/update) statements
Within each of the two categories above, there are several ways to update data.
Each has its advantages and performance characteristics and you should select the appropriate method based on your data model and the amount of data you intend to update.
@@ -32,12 +32,12 @@ The engines you will commonly encounter are:
| Engine | Syntax | When to use |
|---------------------------------------------------------------------------------------|--------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [ReplacingMergeTree](/reference/engines/table-engines/mergetree-family/replacingmergetree) | `ENGINE = ReplacingMergeTree` | Use when updating large amounts of data. This table engine is optimized for data deduplication on merges. |
-| [CoalescingMergeTree](/reference/engines/table-engines/mergetree-family/coalescingmergetree) | `ENGINE = CoalescingMergeTree` | Use when data arrives in fragments and you need column-level coalescing rather than full row replacement. |
-| [CollapsingMergeTree](/reference/engines/table-engines/mergetree-family/collapsingmergetree) | `ENGINE = CollapsingMergeTree(Sign)` | Use when updating individual rows frequently, or for scenarios where you need to maintain the latest state of objects that change over time. For example, tracking user activity or article stats. |
+| [ReplacingMergeTree](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) | `ENGINE = ReplacingMergeTree` | Use when updating large amounts of data. This table engine is optimized for data deduplication on merges. |
+| [CoalescingMergeTree](/core/reference/engines/table-engines/mergetree-family/coalescingmergetree) | `ENGINE = CoalescingMergeTree` | Use when data arrives in fragments and you need column-level coalescing rather than full row replacement. |
+| [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) | `ENGINE = CollapsingMergeTree(Sign)` | Use when updating individual rows frequently, or for scenarios where you need to maintain the latest state of objects that change over time. For example, tracking user activity or article stats. |
-As MergeTree-family table engines merge data parts in the background, they offer _eventual consistency_, and the [`FINAL`](/reference/statements/select/from#final-modifier) keyword needs to be used to ensure proper deduplication in the interim when querying the table.
-There are other [engine types](/reference/engines/table-engines/mergetree-family) too, but these are the most commonly used ones.
+As MergeTree-family table engines merge data parts in the background, they offer _eventual consistency_, and the [`FINAL`](/core/reference/statements/select/from#final-modifier) keyword needs to be used to ensure proper deduplication in the interim when querying the table.
+There are other [engine types](/core/reference/engines/table-engines/mergetree-family) too, but these are the most commonly used ones.
### When to use declarative updates {#when-to-use-declaritive-updates}
@@ -45,8 +45,8 @@ Declarative UPDATE statements can be more straightforward for simple update oper
| Method | Syntax | When to use |
|--------------------------------------------------------------|--------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Lightweight updates](/reference/statements/update) | `UPDATE [table] SET ... WHERE` | Use this in most scenarios, particularly when running frequent, small UPDATEs (up to ~10% of table) as part of your application or workflows. For example, a user wants to delete their event history, and events are spread across a multi-tenant table with many users. This approach creates patch parts for immediate visibility without rewriting entire columns. It adds overhead to `SELECT` queries but has predictable latency. |
-| [Update mutation](/reference/statements/alter/update) | `ALTER TABLE [table] UPDATE` | Use this when performing larger scale data management, particularly when an update aligns with your table partitioning. For example, you need to update a column of all rows within a month, in a table partitioned by month. |
+| [Lightweight updates](/core/reference/statements/update) | `UPDATE [table] SET ... WHERE` | Use this in most scenarios, particularly when running frequent, small UPDATEs (up to ~10% of table) as part of your application or workflows. For example, a user wants to delete their event history, and events are spread across a multi-tenant table with many users. This approach creates patch parts for immediate visibility without rewriting entire columns. It adds overhead to `SELECT` queries but has predictable latency. |
+| [Update mutation](/core/reference/statements/alter/update) | `ALTER TABLE [table] UPDATE` | Use this when performing larger scale data management, particularly when an update aligns with your table partitioning. For example, you need to update a column of all rows within a month, in a table partitioned by month. |
## Updates using specialized table engines {#insert-based-updates}
@@ -73,7 +73,7 @@ To update a row, simply insert a new version with the same sorting key values an
`ReplacingMergeTree` can't update sorting key values. It also supports a `Deleted` column for logical deletes.
-Read more: [ReplacingMergeTree guide](/concepts/operations/update/replacing-merge-tree) | [ReplacingMergeTree reference](/reference/engines/table-engines/mergetree-family/replacingmergetree)
+Read more: [ReplacingMergeTree guide](/core/concepts/features/operations/update/replacing-merge-tree) | [ReplacingMergeTree reference](/core/reference/engines/table-engines/mergetree-family/replacingmergetree)
### CoalescingMergeTree {#coalescingmergetree}
@@ -101,7 +101,7 @@ When rows with the same sorting key are merged, CoalescingMergeTree keeps the la
This engine is available from ClickHouse 25.6.
-Read more: [CoalescingMergeTree](/reference/engines/table-engines/mergetree-family/coalescingmergetree)
+Read more: [CoalescingMergeTree](/core/reference/engines/table-engines/mergetree-family/coalescingmergetree)
### CollapsingMergeTree {#collapsingmergetree}
@@ -145,11 +145,11 @@ Unlike `ReplacingMergeTree`, `CollapsingMergeTree` allows you to modify sorting
The approach above for updating requires your application to maintain state client-side in order to insert the cancellation row. While this is most efficient from ClickHouse's perspective, it can be complex to work with at scale. Queries also need aggregation with sign multiplication to produce correct results.
-Read more: [CollapsingMergeTree](/reference/engines/table-engines/mergetree-family/collapsingmergetree)
+Read more: [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree)
## Declarative updates {#sql-style-updates}
-These methods work with tables using [MergeTree family](/reference/engines/table-engines/mergetree-family) engines.
+These methods work with tables using [MergeTree family](/core/reference/engines/table-engines/mergetree-family) engines.
| Method | Syntax | Best for | Trade-offs |
|--------|--------|----------|------------|
@@ -167,13 +167,13 @@ ALTER TABLE posts UPDATE AnswerCount = AnswerCount + 1 WHERE AnswerCount = 0
Mutations are I/O-heavy, rewriting all parts that match the `WHERE` expression.
There is no atomicity to this process.
Parts get substituted for mutated parts as soon as they are ready, and a `SELECT` query that starts executing during a mutation will see data from parts that have already been mutated along with data from parts that have not been mutated yet.
-You can track the state of progress via the [`system.mutations`](/reference/system-tables/mutations) table.
+You can track the state of progress via the [`system.mutations`](/core/reference/system-tables/mutations) table.
Mutations are I/O intensive and should be used sparingly as they can impact cluster `SELECT` performance. If mutations queue faster than they process, query performance will degrade. Monitor the queue via `system.mutations`.
-Read more: [ALTER TABLE UPDATE](/reference/statements/alter/update)
+Read more: [ALTER TABLE UPDATE](/core/reference/statements/alter/update)
#### On-the-fly mutations {#on-the-fly-mutations}
@@ -278,7 +278,7 @@ This approach uses the standard `UPDATE` syntax and creates patch parts immediat
The trade-off is that `SELECT` queries incur overhead when applying patches, and patch parts count toward part limits. Beyond the ~10% threshold, patch-on-read overhead grows proportionally, making synchronous mutations more efficient for larger updates.
-Read more: [Lightweight UPDATE](/reference/statements/update)
+Read more: [Lightweight UPDATE](/core/reference/statements/update)
### On-the-fly mutations {#on-the-fly-mutations}
@@ -320,12 +320,12 @@ The following table summarizes query performance overhead based on [benchmarks](
| Method | Query slowdown | Memory overhead | Notes |
|--------|----------------|-----------------|-------|
-| [Mutations](/reference/statements/alter/update) | Baseline | Baseline | Full speed after completion; data physically rewritten |
+| [Mutations](/core/reference/statements/alter/update) | Baseline | Baseline | Full speed after completion; data physically rewritten |
| [On-the-fly mutations](#on-the-fly-mutations) | Variable | Variable | Instant visibility; performance degrades if many updates accumulate |
-| [Lightweight updates](/reference/statements/update#lightweight-update-requirements) | 7–18% (avg ~12%) | +20–210% | Most efficient for queries; best for updating ≤10% of table |
-| [ReplacingMergeTree](/concepts/operations/update/replacing-merge-tree) + `FINAL` | 21–550% (avg ~280%) | 20–200× baseline | Must read all row versions; heaviest query overhead |
-| [CoalescingMergeTree](/reference/engines/table-engines/mergetree-family/coalescingmergetree) + `FINAL` | Similar to ReplacingMergeTree | Similar to ReplacingMergeTree | Column-level coalescing adds comparable overhead |
-| [CollapsingMergeTree](/reference/engines/table-engines/mergetree-family/collapsingmergetree) | Aggregation dependent | Aggregation dependent | Overhead depends on query complexity |
+| [Lightweight updates](/core/reference/statements/update#lightweight-update-requirements) | 7–18% (avg ~12%) | +20–210% | Most efficient for queries; best for updating ≤10% of table |
+| [ReplacingMergeTree](/core/concepts/features/operations/update/replacing-merge-tree) + `FINAL` | 21–550% (avg ~280%) | 20–200× baseline | Must read all row versions; heaviest query overhead |
+| [CoalescingMergeTree](/core/reference/engines/table-engines/mergetree-family/coalescingmergetree) + `FINAL` | Similar to ReplacingMergeTree | Similar to ReplacingMergeTree | Column-level coalescing adds comparable overhead |
+| [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) | Aggregation dependent | Aggregation dependent | Overhead depends on query complexity |
## More resources {#more-resources}
diff --git a/concepts/operations/update/replacing-merge-tree.mdx b/core/concepts/features/operations/update/replacing-merge-tree.mdx
similarity index 92%
rename from concepts/operations/update/replacing-merge-tree.mdx
rename to core/concepts/features/operations/update/replacing-merge-tree.mdx
index a68c0e68..4b072917 100644
--- a/concepts/operations/update/replacing-merge-tree.mdx
+++ b/core/concepts/features/operations/update/replacing-merge-tree.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/replacing-merge-tree
+slug: /core/guides/replacing-merge-tree
title: 'Working with the ReplacingMergeTree engine'
description: 'Guide on how to use the ReplacingMergeTree engine in ClickHouse'
keywords: ['replacingmergetree', 'inserts', 'deduplication']
@@ -14,7 +14,7 @@ In order to process a stream of update and delete rows while avoiding the above
## Automatic upserts of inserted rows {#automatic-upserts-of-inserted-rows}
-The [ReplacingMergeTree table engine](/reference/engines/table-engines/mergetree-family/replacingmergetree) allows update operations to be applied to rows, without needing to use inefficient `ALTER` or `DELETE` statements, by offering the ability for you to insert multiple copies of the same row and denote one as the latest version. A background process, in turn, asynchronously removes older versions of the same row, efficiently imitating an update operation through the use of immutable inserts.
+The [ReplacingMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) allows update operations to be applied to rows, without needing to use inefficient `ALTER` or `DELETE` statements, by offering the ability for you to insert multiple copies of the same row and denote one as the latest version. A background process, in turn, asynchronously removes older versions of the same row, efficiently imitating an update operation through the use of immutable inserts.
This relies on the ability of the table engine to identify duplicate rows. This is achieved using the `ORDER BY` clause to determine uniqueness, i.e., if two rows have the same values for the columns specified in the `ORDER BY`, they're considered duplicates. A `version` column, specified when defining the table, allows the latest version of a row to be retained when two rows are identified as duplicates i.e. the row with the highest version value is kept.
We illustrate this process in the example below. Here, the rows are uniquely identified by the A column (the `ORDER BY` for the table). We assume these rows have been inserted as two batches, resulting in the formation of two data parts on disk. Later, during an asynchronous background process, these parts are merged together.
@@ -55,8 +55,8 @@ We recommend pausing inserts once (1) is guaranteed and until this command and t
Above, we highlighted an important additional constraint that must also be satisfied in the case of the ReplacingMergeTree: the values of columns of the `ORDER BY` uniquely identify a row across changes. If migrating from a transactional database like Postgres, the original Postgres primary key should thus be included in the Clickhouse `ORDER BY` clause.
-Users of ClickHouse will be familiar with choosing the columns in their tables `ORDER BY` clause to [optimize for query performance](/guides/cloud-oss/data-modelling/schema-design#choosing-an-ordering-key). Generally, these columns should be selected based on your [frequent queries and listed in order of increasing cardinality](/guides/cloud-oss/data-modelling/sparse-primary-indexes#an-index-design-for-massive-data-scales). Importantly, the ReplacingMergeTree imposes an additional constraint - these columns must be immutable, i.e., if replicating from Postgres, only add columns to this clause if they don't change in the underlying Postgres data. While other columns can change, these are required to be consistent for unique row identification.
-For analytical workloads, the Postgres primary key is generally of little use as you will rarely perform point row lookups. Given we recommend that columns be ordered in order of increasing cardinality, as well as the fact that matches on [columns listed earlier in the ORDER BY will usually be faster](/guides/cloud-oss/data-modelling/sparse-primary-indexes#ordering-key-columns-efficiently), the Postgres primary key should be appended to the end of the `ORDER BY` (unless it has analytical value). In the case that multiple columns form a primary key in Postgres, they should be appended to the `ORDER BY`, respecting cardinality and the likelihood of query value. You may also wish to generate a unique primary key using a concatenation of values via a `MATERIALIZED` column.
+Users of ClickHouse will be familiar with choosing the columns in their tables `ORDER BY` clause to [optimize for query performance](/core/guides/clickhouse/data-modelling/schema-design#choosing-an-ordering-key). Generally, these columns should be selected based on your [frequent queries and listed in order of increasing cardinality](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#an-index-design-for-massive-data-scales). Importantly, the ReplacingMergeTree imposes an additional constraint - these columns must be immutable, i.e., if replicating from Postgres, only add columns to this clause if they don't change in the underlying Postgres data. While other columns can change, these are required to be consistent for unique row identification.
+For analytical workloads, the Postgres primary key is generally of little use as you will rarely perform point row lookups. Given we recommend that columns be ordered in order of increasing cardinality, as well as the fact that matches on [columns listed earlier in the ORDER BY will usually be faster](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#ordering-key-columns-efficiently), the Postgres primary key should be appended to the end of the `ORDER BY` (unless it has analytical value). In the case that multiple columns form a primary key in Postgres, they should be appended to the `ORDER BY`, respecting cardinality and the likelihood of query value. You may also wish to generate a unique primary key using a concatenation of values via a `MATERIALIZED` column.
Consider the posts table from the Stack Overflow dataset.
diff --git a/concepts/features/performance/allocation-profiling-old.mdx b/core/concepts/features/performance/allocation-profiling-old.mdx
similarity index 97%
rename from concepts/features/performance/allocation-profiling-old.mdx
rename to core/concepts/features/performance/allocation-profiling-old.mdx
index 003e36d3..7b84d9b9 100644
--- a/concepts/features/performance/allocation-profiling-old.mdx
+++ b/core/concepts/features/performance/allocation-profiling-old.mdx
@@ -197,19 +197,19 @@ WHERE metric LIKE '%jemalloc%'
FORMAT Vertical
```
-[Reference](/reference/system-tables/asynchronous_metrics)
+[Reference](/core/reference/system-tables/asynchronous_metrics)
### System table `jemalloc_bins` {#system-table-jemalloc_bins}
Contains information about memory allocations done via the jemalloc allocator in different size classes (bins) aggregated from all arenas.
-[Reference](/reference/system-tables/jemalloc_bins)
+[Reference](/core/reference/system-tables/jemalloc_bins)
### Prometheus {#prometheus}
All `jemalloc` related metrics from `asynchronous_metrics` are also exposed using the Prometheus endpoint in both ClickHouse and Keeper.
-[Reference](/reference/settings/server-settings/settings#prometheus)
+[Reference](/core/reference/settings/server-settings/settings#prometheus)
### `jmst` 4LW command in Keeper {#jmst-4lw-command-in-keeper}
diff --git a/concepts/features/performance/allocation-profiling.mdx b/core/concepts/features/performance/allocation-profiling.mdx
similarity index 98%
rename from concepts/features/performance/allocation-profiling.mdx
rename to core/concepts/features/performance/allocation-profiling.mdx
index 7fc48383..e097b3ad 100644
--- a/concepts/features/performance/allocation-profiling.mdx
+++ b/core/concepts/features/performance/allocation-profiling.mdx
@@ -18,7 +18,7 @@ ClickHouse and Keeper allow you to control sampling using configs, query setting
This guide is applicable for versions 25.9+.
-For older versions, please check [allocation profiling for versions before 25.9](/concepts/features/performance/allocation-profiling-old).
+For older versions, please check [allocation profiling for versions before 25.9](/core/concepts/features/performance/allocation-profiling-old).
## Sampling allocations {#sampling-allocations}
@@ -477,13 +477,13 @@ WHERE metric LIKE '%jemalloc%'
FORMAT Vertical
```
-[Reference](/reference/system-tables/asynchronous_metrics)
+[Reference](/core/reference/system-tables/asynchronous_metrics)
### System table `jemalloc_bins` {#system-table-jemalloc_bins}
Contains information about memory allocations done via the jemalloc allocator in different size classes (bins) aggregated from all arenas.
-[Reference](/reference/system-tables/jemalloc_bins)
+[Reference](/core/reference/system-tables/jemalloc_bins)
### System table `jemalloc_stats` (26.2+) {#system-table-jemalloc_stats}
@@ -497,7 +497,7 @@ SELECT * FROM system.jemalloc_stats
All `jemalloc` related metrics from `asynchronous_metrics` are also exposed using the Prometheus endpoint in both ClickHouse and Keeper.
-[Reference](/reference/settings/server-settings/settings#prometheus)
+[Reference](/core/reference/settings/server-settings/settings#prometheus)
### `jmst` 4LW command in Keeper {#jmst-4lw-command-in-keeper}
diff --git a/core/concepts/features/performance/caches/caches.mdx b/core/concepts/features/performance/caches/caches.mdx
new file mode 100644
index 00000000..07729446
--- /dev/null
+++ b/core/concepts/features/performance/caches/caches.mdx
@@ -0,0 +1,36 @@
+---
+description: 'When performing queries, ClickHouse uses different caches.'
+sidebarTitle: 'Caches'
+slug: /operations/caches
+title: 'Cache types'
+keywords: ['cache']
+doc_type: 'reference'
+---
+
+When performing queries, ClickHouse uses different caches to speed up queries
+and reduce the need to read from or write to disk.
+
+The main cache types are:
+
+- `mark_cache` — Cache of [marks](/resources/develop-contribute/introduction/architecture#merge-tree) used by table engines of the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) family.
+- `uncompressed_cache` — Cache of uncompressed data used by table engines of the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) family.
+- Operating system page cache (used indirectly, for files with actual data).
+
+There are also a host of additional cache types:
+
+- DNS cache.
+- [Regexp](/core/reference/formats/Regexp) cache.
+- Compiled expressions cache.
+- [Vector similarity index](/core/reference/engines/table-engines/mergetree-family/annindexes) cache.
+- [Text index](/core/reference/engines/table-engines/mergetree-family/textindexes#caching) cache.
+- [Avro format](/core/reference/formats/Avro/Avro) schemas cache.
+- [Dictionaries](/core/reference/statements/create/dictionary) data cache.
+- Schema inference cache.
+- [Filesystem cache](/core/concepts/features/configuration/server-config/storing-data) over S3, Azure, Local and other disks.
+- [Userspace page cache](/core/concepts/features/performance/caches/userspace-page-cache)
+- [Query cache](/core/concepts/features/performance/caches/query-cache).
+- [Query condition cache](/core/concepts/features/performance/caches/query-condition-cache).
+- Format schema cache.
+
+Should you wish to clear one of the caches, for performance tuning, troubleshooting, or data consistency reasons,
+you can use the [`SYSTEM CLEAR ... CACHE`](/core/reference/statements/system) statement.
diff --git a/concepts/features/performance/caches/query-cache.mdx b/core/concepts/features/performance/caches/query-cache.mdx
similarity index 66%
rename from concepts/features/performance/caches/query-cache.mdx
rename to core/concepts/features/performance/caches/query-cache.mdx
index 6a8c0c8d..aefa35fa 100644
--- a/concepts/features/performance/caches/query-cache.mdx
+++ b/core/concepts/features/performance/caches/query-cache.mdx
@@ -33,15 +33,15 @@ effort and avoids redundancy.
## Configuration settings and usage {#configuration-settings-and-usage}
-In ClickHouse Cloud, you must use [query level settings](/concepts/features/configuration/settings/settings-query-level) to edit query cache settings. Editing [config level settings](/concepts/features/configuration/server-config/configuration-files) is currently not supported.
+In ClickHouse Cloud, you must use [query level settings](/core/concepts/features/configuration/settings/settings-query-level) to edit query cache settings. Editing [config level settings](/core/concepts/features/configuration/server-config/configuration-files) is currently not supported.
-[clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local) runs a single query at a time. Since query result caching does not make sense, the query
+[clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local) runs a single query at a time. Since query result caching does not make sense, the query
result cache is disabled in clickhouse-local.
-Setting [use_query_cache](/reference/settings/session-settings#use_query_cache) can be used to control whether a specific query or all queries of the
+Setting [use_query_cache](/core/reference/settings/session-settings#use_query_cache) can be used to control whether a specific query or all queries of the
current session should utilize the query cache. For example, the first execution of query
```sql
@@ -59,8 +59,8 @@ the results of `SELECT`s to views created by `CREATE VIEW AS SELECT [...] SETTIN
statement runs with `SETTINGS use_query_cache = true`.
-The way the cache is utilized can be configured in more detail using settings [enable_writes_to_query_cache](/reference/settings/session-settings#enable_writes_to_query_cache)
-and [enable_reads_from_query_cache](/reference/settings/session-settings#enable_reads_from_query_cache) (both `true` by default). The former setting
+The way the cache is utilized can be configured in more detail using settings [enable_writes_to_query_cache](/core/reference/settings/session-settings#enable_writes_to_query_cache)
+and [enable_reads_from_query_cache](/core/reference/settings/session-settings#enable_reads_from_query_cache) (both `true` by default). The former setting
controls whether query results are stored in the cache, whereas the latter setting determines if the database should try to retrieve query
results from the cache. For example, the following query will use the cache only passively, i.e. attempt to read from it but not store its
result in it:
@@ -76,25 +76,25 @@ For maximum control, it is generally recommended to provide settings `use_query_
use_query_cache = true`) but one should keep in mind that all `SELECT` queries may return cached results then.
The query cache can be cleared using statement `SYSTEM CLEAR QUERY CACHE`. The content of the query cache is displayed in system table
-[system.query_cache](/reference/system-tables/query_cache). The number of query cache hits and misses since database start are shown as events
-"QueryCacheHits" and "QueryCacheMisses" in system table [system.events](/reference/system-tables/events). Both counters are only updated for
+[system.query_cache](/core/reference/system-tables/query_cache). The number of query cache hits and misses since database start are shown as events
+"QueryCacheHits" and "QueryCacheMisses" in system table [system.events](/core/reference/system-tables/events). Both counters are only updated for
`SELECT` queries which run with setting `use_query_cache = true`, other queries do not affect "QueryCacheMisses". Field `query_cache_usage`
-in system table [system.query_log](/reference/system-tables/query_log) shows for each executed query whether the query result was written into or
+in system table [system.query_log](/core/reference/system-tables/query_log) shows for each executed query whether the query result was written into or
read from the query cache. Metrics `QueryCacheEntries` and `QueryCacheBytes` in system table
-[system.metrics](/reference/system-tables/metrics) show how many entries / bytes the query cache currently contains.
+[system.metrics](/core/reference/system-tables/metrics) show how many entries / bytes the query cache currently contains.
The query cache exists once per ClickHouse server process. However, cache results are by default not shared between users. This can be
changed (see below) but doing so is not recommended for security reasons.
Query results are referenced in the query cache by the [Abstract Syntax Tree (AST)](https://en.wikipedia.org/wiki/Abstract_syntax_tree) of
their query. This means that caching is agnostic to upper/lowercase, for example `SELECT 1` and `select 1` are treated as the same query. To
-make the matching more natural, all query-level settings related to the query cache and [output formatting](/reference/settings/formats))
+make the matching more natural, all query-level settings related to the query cache and [output formatting](/core/reference/settings/formats))
are removed from the AST.
If the query was aborted due to an exception or user cancellation, no entry is written into the query cache.
The size of the query cache in bytes, the maximum number of cache entries and the maximum size of individual cache entries (in bytes and in
-records) can be configured using different [server configuration options](/reference/settings/server-settings/settings#query_cache).
+records) can be configured using different [server configuration options](/core/reference/settings/server-settings/settings#query_cache).
```xml
@@ -105,11 +105,11 @@ records) can be configured using different [server configuration options](/refer
```
-It is also possible to limit the cache usage of individual users using [settings profiles](/concepts/features/configuration/settings/settings-profiles) and [settings
-constraints](/concepts/features/configuration/settings/constraints-on-settings). More specifically, you can restrict the maximum amount of memory (in bytes) a user may
+It is also possible to limit the cache usage of individual users using [settings profiles](/core/concepts/features/configuration/settings/settings-profiles) and [settings
+constraints](/core/concepts/features/configuration/settings/constraints-on-settings). More specifically, you can restrict the maximum amount of memory (in bytes) a user may
allocate in the query cache and the maximum number of stored query results. For that, first provide configurations
-[query_cache_max_size_in_bytes](/reference/settings/session-settings#query_cache_max_size_in_bytes) and
-[query_cache_max_entries](/reference/settings/session-settings#query_cache_max_entries) in a user profile in `users.xml`, then make both settings
+[query_cache_max_size_in_bytes](/core/reference/settings/session-settings#query_cache_max_size_in_bytes) and
+[query_cache_max_entries](/core/reference/settings/session-settings#query_cache_max_entries) in a user profile in `users.xml`, then make both settings
readonly:
```xml
@@ -133,7 +133,7 @@ readonly:
```
To define how long a query must run at least such that its result can be cached, you can use setting
-[query_cache_min_query_duration](/reference/settings/session-settings#query_cache_min_query_duration). For example, the result of query
+[query_cache_min_query_duration](/core/reference/settings/session-settings#query_cache_min_query_duration). For example, the result of query
```sql
SELECT some_expensive_calculation(column_1, column_2)
@@ -142,10 +142,10 @@ SETTINGS use_query_cache = true, query_cache_min_query_duration = 5000;
```
is only cached if the query runs longer than 5 seconds. It is also possible to specify how often a query needs to run until its result is
-cached - for that use setting [query_cache_min_query_runs](/reference/settings/session-settings#query_cache_min_query_runs).
+cached - for that use setting [query_cache_min_query_runs](/core/reference/settings/session-settings#query_cache_min_query_runs).
Entries in the query cache become stale after a certain time period (time-to-live). By default, this period is 60 seconds but a different
-value can be specified at session, profile or query level using setting [query_cache_ttl](/reference/settings/session-settings#query_cache_ttl). The query
+value can be specified at session, profile or query level using setting [query_cache_ttl](/core/reference/settings/session-settings#query_cache_ttl). The query
cache evicts entries "lazily", i.e. when an entry becomes stale, it is not immediately removed from the cache. Instead, when a new entry
is to be inserted into the query cache, the database checks whether the cache has enough free space for the new entry. If this is not the
case, the database tries to remove all stale entries. If the cache still has not enough free space, the new entry is not inserted.
@@ -154,10 +154,10 @@ If the query is run via HTTP, then ClickHouse sets the `Age` and `Expires` heade
cached entry.
Entries in the query cache are compressed by default. This reduces the overall memory consumption at the cost of slower writes into / reads
-from the query cache. To disable compression, use setting [query_cache_compress_entries](/reference/settings/session-settings#query_cache_compress_entries).
+from the query cache. To disable compression, use setting [query_cache_compress_entries](/core/reference/settings/session-settings#query_cache_compress_entries).
Sometimes it is useful to keep multiple results for the same query cached. This can be achieved using setting
-[query_cache_tag](/reference/settings/session-settings#query_cache_tag) that acts as as a label (or namespace) for a query cache entries. The query cache
+[query_cache_tag](/core/reference/settings/session-settings#query_cache_tag) that acts as as a label (or namespace) for a query cache entries. The query cache
considers results of the same query with different tags different.
Example for creating three different query cache entries for the same query:
@@ -170,46 +170,46 @@ SELECT 1 SETTINGS use_query_cache = true, query_cache_tag = 'tag 2';
To remove only entries with tag `tag` from the query cache, you can use statement `SYSTEM CLEAR QUERY CACHE TAG 'tag'`.
-ClickHouse reads table data in blocks of [max_block_size](/reference/settings/session-settings#max_block_size) rows. Due to filtering, aggregation,
+ClickHouse reads table data in blocks of [max_block_size](/core/reference/settings/session-settings#max_block_size) rows. Due to filtering, aggregation,
etc., result blocks are typically much smaller than 'max_block_size' but there are also cases where they are much bigger. Setting
-[query_cache_squash_partial_results](/reference/settings/session-settings#query_cache_squash_partial_results) (enabled by default) controls if result blocks
+[query_cache_squash_partial_results](/core/reference/settings/session-settings#query_cache_squash_partial_results) (enabled by default) controls if result blocks
are squashed (if they are tiny) or split (if they are large) into blocks of 'max_block_size' size before insertion into the query result
cache. This reduces performance of writes into the query cache but improves compression rate of cache entries and provides more natural
block granularity when query results are later served from the query cache.
As a result, the query cache stores for each query multiple (partial)
result blocks. While this behavior is a good default, it can be suppressed using setting
-[query_cache_squash_partial_results](/reference/settings/session-settings#query_cache_squash_partial_results).
+[query_cache_squash_partial_results](/core/reference/settings/session-settings#query_cache_squash_partial_results).
Also, results of queries with non-deterministic functions are not cached by default. Such functions include
-- functions for accessing dictionaries: [`dictGet()`](/reference/functions/regular-functions/ext-dict-functions) etc.
-- [user-defined functions](/reference/statements/create/function) without tag `true` in their XML
+- functions for accessing dictionaries: [`dictGet()`](/core/reference/functions/regular-functions/ext-dict-functions) etc.
+- [user-defined functions](/core/reference/statements/create/function) without tag `true` in their XML
definition,
-- functions which return the current date or time: [`now()`](/reference/functions/regular-functions/date-time-functions#now),
- [`today()`](/reference/functions/regular-functions/date-time-functions#today),
- [`yesterday()`](/reference/functions/regular-functions/date-time-functions#yesterday) etc.,
-- functions which return random values: [`randomString()`](/reference/functions/regular-functions/random-functions#randomString),
- [`fuzzBits()`](/reference/functions/regular-functions/random-functions#fuzzBits) etc.,
+- functions which return the current date or time: [`now()`](/core/reference/functions/regular-functions/date-time-functions#now),
+ [`today()`](/core/reference/functions/regular-functions/date-time-functions#today),
+ [`yesterday()`](/core/reference/functions/regular-functions/date-time-functions#yesterday) etc.,
+- functions which return random values: [`randomString()`](/core/reference/functions/regular-functions/random-functions#randomString),
+ [`fuzzBits()`](/core/reference/functions/regular-functions/random-functions#fuzzBits) etc.,
- functions whose result depends on the size and order or the internal chunks used for query processing:
- [`nowInBlock()`](/reference/functions/regular-functions/date-time-functions#nowInBlock) etc.,
- [`rowNumberInBlock()`](/reference/functions/regular-functions/other-functions#rowNumberInBlock),
- [`runningDifference()`](/reference/functions/regular-functions/other-functions#runningDifference),
- [`blockSize()`](/reference/functions/regular-functions/other-functions#blockSize) etc.,
-- functions which depend on the environment: [`currentUser()`](/reference/functions/regular-functions/other-functions#currentUser),
- [`queryID()`](/reference/functions/regular-functions/other-functions#queryID),
- [`getMacro()`](/reference/functions/regular-functions/other-functions#getMacro) etc.
+ [`nowInBlock()`](/core/reference/functions/regular-functions/date-time-functions#nowInBlock) etc.,
+ [`rowNumberInBlock()`](/core/reference/functions/regular-functions/other-functions#rowNumberInBlock),
+ [`runningDifference()`](/core/reference/functions/regular-functions/other-functions#runningDifference),
+ [`blockSize()`](/core/reference/functions/regular-functions/other-functions#blockSize) etc.,
+- functions which depend on the environment: [`currentUser()`](/core/reference/functions/regular-functions/other-functions#currentUser),
+ [`queryID()`](/core/reference/functions/regular-functions/other-functions#queryID),
+ [`getMacro()`](/core/reference/functions/regular-functions/other-functions#getMacro) etc.
To force caching of results of queries with non-deterministic functions regardless, use setting
-[query_cache_nondeterministic_function_handling](/reference/settings/session-settings#query_cache_nondeterministic_function_handling).
+[query_cache_nondeterministic_function_handling](/core/reference/settings/session-settings#query_cache_nondeterministic_function_handling).
-Results of queries that involve system tables (e.g. [system.processes](/reference/system-tables/processes)` or
-[information_schema.tables](/reference/system-tables/information_schema)) are not cached by default. To force caching of results of queries with
-system tables regardless, use setting [query_cache_system_table_handling](/reference/settings/session-settings#query_cache_system_table_handling).
+Results of queries that involve system tables (e.g. [system.processes](/core/reference/system-tables/processes)` or
+[information_schema.tables](/core/reference/system-tables/information_schema)) are not cached by default. To force caching of results of queries with
+system tables regardless, use setting [query_cache_system_table_handling](/core/reference/settings/session-settings#query_cache_system_table_handling).
Finally, entries in the query cache are not shared between users due to security reasons. For example, user A must not be able to bypass a
row policy on a table by running the same query as another user B for whom no such policy exists. However, if necessary, cache entries can
be marked accessible by other users (i.e. shared) by supplying setting
-[query_cache_share_between_users](/reference/settings/session-settings#query_cache_share_between_users).
+[query_cache_share_between_users](/core/reference/settings/session-settings#query_cache_share_between_users).
## Related content {#related-content}
diff --git a/concepts/features/performance/caches/query-condition-cache.mdx b/core/concepts/features/performance/caches/query-condition-cache.mdx
similarity index 83%
rename from concepts/features/performance/caches/query-condition-cache.mdx
rename to core/concepts/features/performance/caches/query-condition-cache.mdx
index e3680358..2c5afaf1 100644
--- a/concepts/features/performance/caches/query-condition-cache.mdx
+++ b/core/concepts/features/performance/caches/query-condition-cache.mdx
@@ -7,13 +7,13 @@ doc_type: 'guide'
---
-The query condition cache only works when [enable_analyzer](/reference/settings/session-settings#enable_analyzer) is set to true, which is the default value.
+The query condition cache only works when [enable_analyzer](/core/reference/settings/session-settings#enable_analyzer) is set to true, which is the default value.
Many real-world workloads involve repeated queries against the same or almost the same data (for instance, previously existing data plus new data).
ClickHouse provides various optimization techniques to optimize for such query patterns.
One possibility is to tune the physical data layout using index structures (e.g., primary key indexes, skipping indexes, projections) or pre-calculation (materialized views).
-Another possibility is to use ClickHouse's [query cache](/concepts/features/performance/caches/query-cache) to avoid repeated query evaluation.
+Another possibility is to use ClickHouse's [query cache](/core/concepts/features/performance/caches/query-cache) to avoid repeated query evaluation.
The downside of the first approach is that that it requires manual intervention and monitoring by a database administrator.
The second approach may return stale results (as the query cache is transactionally not consistent) which may or may not be acceptable, depending on the use case.
@@ -31,14 +31,14 @@ The query condition cache is effective if three prerequisites are fulfilled:
## Memory consumption {#memory-consumption}
Since the query condition cache stores only a single bit per filter condition and granule, it consumes only little memory.
-The maximum size of the query condition cache can be configured using server settings [`query_condition_cache_size`](/reference/settings/server-settings/settings#query_condition_cache_size) (default: 100 MB).
+The maximum size of the query condition cache can be configured using server settings [`query_condition_cache_size`](/core/reference/settings/server-settings/settings#query_condition_cache_size) (default: 100 MB).
A cache size of 100 MB corresponds to 100 * 1024 * 1024 * 8 = 838,860,800 entries.
Since each entry represents a mark (8192 rows by default), the cache can cover up to 6,871,947,673,600 (6.8 trillion) rows of a single column.
In practice, filter are evaluated on more than one column, so that number needs to be divided by the number of filtered columns.
## Configuration settings and usage {#configuration-settings-and-usage}
-Setting [use_query_condition_cache](/reference/settings/session-settings#use_query_condition_cache) controls whether a specific query or all queries of the current session should utilize the query condition cache.
+Setting [use_query_condition_cache](/core/reference/settings/session-settings#use_query_condition_cache) controls whether a specific query or all queries of the current session should utilize the query condition cache.
For example, the first execution of query
@@ -56,13 +56,13 @@ Subsequent executions of the same query, also with parameter `use_query_conditio
The query condition cache is not retained between restarts of ClickHouse.
-To clear the query condition cache, run [`SYSTEM CLEAR QUERY CONDITION CACHE`](/reference/statements/system#drop-query-condition-cache).
+To clear the query condition cache, run [`SYSTEM CLEAR QUERY CONDITION CACHE`](/core/reference/statements/system#drop-query-condition-cache).
-The content of the cache is displayed in system table [system.query_condition_cache](/reference/system-tables/query_condition_cache).
+The content of the cache is displayed in system table [system.query_condition_cache](/core/reference/system-tables/query_condition_cache).
To calculate the current size of the query condition cache in MB, run `SELECT formatReadableSize(sum(entry_size)) FROM system.query_condition_cache`.
If you like to investigate individual filter conditions, you can check field `condition` in `system.query_condition_cache`. Note that this field is only available in debug builds.
-The number of query condition cache hits and misses since database start are shown as events "QueryConditionCacheHits" and "QueryConditionCacheMisses" in system table [system.events](/reference/system-tables/events).
+The number of query condition cache hits and misses since database start are shown as events "QueryConditionCacheHits" and "QueryConditionCacheMisses" in system table [system.events](/core/reference/system-tables/events).
Both counters are only updated for `SELECT` queries which run with setting `use_query_condition_cache = true`, other queries do not affect "QueryCacheMisses".
## Related content {#related-content}
diff --git a/concepts/features/performance/caches/userspace-page-cache.mdx b/core/concepts/features/performance/caches/userspace-page-cache.mdx
similarity index 94%
rename from concepts/features/performance/caches/userspace-page-cache.mdx
rename to core/concepts/features/performance/caches/userspace-page-cache.mdx
index d0cef5ab..3fe10881 100644
--- a/concepts/features/performance/caches/userspace-page-cache.mdx
+++ b/core/concepts/features/performance/caches/userspace-page-cache.mdx
@@ -12,7 +12,7 @@ doc_type: 'reference'
> The userspace page cache is a new caching mechanism that allows for caching of
data in in-process memory rather than relying on the OS page cache.
-ClickHouse already offers the [Filesystem cache](/concepts/features/configuration/server-config/storing-data)
+ClickHouse already offers the [Filesystem cache](/core/concepts/features/configuration/server-config/storing-data)
as a way of caching on top of remote object storage such as Amazon S3, Google
Cloud Storage (GCS) or Azure Blob Storage. The userspace page cache is designed
to speed up access to remote data when the normal OS caching isn't doing a good
@@ -57,7 +57,7 @@ SET use_page_cache_for_disks_without_file_cache=1;
|----------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------|
| `use_page_cache_for_disks_without_file_cache` | Use userspace page cache for remote disks that don't have filesystem cache enabled. | `0` |
| `use_page_cache_with_distributed_cache` | Use userspace page cache when distributed cache is used. | `0` |
-| `read_from_page_cache_if_exists_otherwise_bypass_cache` | Use userspace page cache in passive mode, similar to [`read_from_filesystem_cache_if_exists_otherwise_bypass_cache`](/reference/settings/session-settings#read_from_filesystem_cache_if_exists_otherwise_bypass_cache). | `0` |
+| `read_from_page_cache_if_exists_otherwise_bypass_cache` | Use userspace page cache in passive mode, similar to [`read_from_filesystem_cache_if_exists_otherwise_bypass_cache`](/core/reference/settings/session-settings#read_from_filesystem_cache_if_exists_otherwise_bypass_cache). | `0` |
| `page_cache_inject_eviction` | Userspace page cache will sometimes invalidate some pages at random. Intended for testing. | `0` |
| `page_cache_block_size` | Size of file chunks to store in the userspace page cache, in bytes. All reads that go through the cache will be rounded up to a multiple of this size. | `1048576` |
| `page_cache_history_window_ms` | Delay before freed memory can be used by userspace page cache. | `1000` |
@@ -70,5 +70,5 @@ SET use_page_cache_for_disks_without_file_cache=1;
| `page_cache_shards` | Stripe userspace page cache over this many shards to reduce mutex contention. Experimental, not likely to improve performance. | `4` |
## Related content {#related-content}
-- [Filesystem cache](/concepts/features/configuration/server-config/storing-data)
+- [Filesystem cache](/core/concepts/features/configuration/server-config/storing-data)
- [ClickHouse v25.3 Release Webinar](https://www.youtube.com/live/iCKEzp0_Z2Q?feature=shared&t=1320)
diff --git a/core/concepts/features/performance/index.mdx b/core/concepts/features/performance/index.mdx
new file mode 100644
index 00000000..420a3f2a
--- /dev/null
+++ b/core/concepts/features/performance/index.mdx
@@ -0,0 +1,33 @@
+---
+slug: /operations/overview
+title: 'Performance and optimizations'
+description: 'Overview of performance and optimization features in ClickHouse'
+keywords: ['performance optimization', 'best practices', 'optimization guide', 'ClickHouse performance', 'database optimization']
+doc_type: 'landing-page'
+---
+
+This section covers features and techniques for improving query and ingestion
+performance with ClickHouse. We recommend reading
+[Core Concepts](/core/concepts/core-concepts/parts) first for the foundational
+material these guides build on.
+
+
+
+ How `PREWHERE` reduces I/O by filtering data before reading non-filter columns, and how to monitor its effectiveness.
+
+
+ Profile memory allocations to diagnose memory pressure and tune resource usage in ClickHouse.
+
+
+ Query cache, query-condition cache, and userspace page cache for accelerating repeated workloads.
+
+
+ Use secondary skip indexes to prune irrelevant data blocks and accelerate filtered queries.
+
+
+ Defer column reads until they are needed to reduce I/O for selective queries.
+
+
+ Sampling query profiler, hardware benchmarking, and debugging memory issues.
+
+
\ No newline at end of file
diff --git a/concepts/features/performance/lazy-materialization.mdx b/core/concepts/features/performance/lazy-materialization.mdx
similarity index 81%
rename from concepts/features/performance/lazy-materialization.mdx
rename to core/concepts/features/performance/lazy-materialization.mdx
index 0142ef40..cf778610 100644
--- a/concepts/features/performance/lazy-materialization.mdx
+++ b/core/concepts/features/performance/lazy-materialization.mdx
@@ -23,10 +23,10 @@ These techniques form the foundation of its speed and efficiency:
| Optimization | Description |
|---|---|
-| [**Columnar storage**](/get-started/about/intro#row-oriented-vs-column-oriented-storage) | Allows skipping entire columns that aren't needed for a query and also enables high compression by grouping similar values together, minimizing I/O during data loading. |
-| [**Sparse primary indexes**](/guides/cloud-oss/data-modelling/sparse-primary-indexes) \| [**secondary data-skipping indexes**](/concepts/features/performance/skip-indexes/skipping-indexes) \| [**projections**](/concepts/features/projections/projections) | Prune irrelevant data by identifying which [granules](/concepts/core-concepts/glossary#granule) (row blocks) might match filters on _indexed columns_. These techniques operate at the granule level and can be used individually or in combination. |
-| [**PREWHERE**](/reference/statements/select/prewhere) | Checks matches also for filters on _non-indexed_ columns to skip data early that would otherwise be loaded and discarded. It can work independently or refine the granules selected by indexes, complementing granule pruning by skipping rows that don't match _all_ column filters. |
-| [**Query condition cache**](/concepts/features/performance/caches/query-condition-cache) | Speeds up repeated queries by remembering which granules matched all filters last time. ClickHouse can then skip reading and filtering granules that didn't match, even if the query shape changes. |
+| [**Columnar storage**](/core/get-started/about/intro#row-oriented-vs-column-oriented-storage) | Allows skipping entire columns that aren't needed for a query and also enables high compression by grouping similar values together, minimizing I/O during data loading. |
+| [**Sparse primary indexes**](/core/guides/clickhouse/data-modelling/sparse-primary-indexes) \| [**secondary data-skipping indexes**](/core/concepts/features/performance/skip-indexes/skipping-indexes) \| [**projections**](/core/concepts/features/projections/projections) | Prune irrelevant data by identifying which [granules](/core/concepts/core-concepts/glossary#granule) (row blocks) might match filters on _indexed columns_. These techniques operate at the granule level and can be used individually or in combination. |
+| [**PREWHERE**](/core/reference/statements/select/prewhere) | Checks matches also for filters on _non-indexed_ columns to skip data early that would otherwise be loaded and discarded. It can work independently or refine the granules selected by indexes, complementing granule pruning by skipping rows that don't match _all_ column filters. |
+| [**Query condition cache**](/core/concepts/features/performance/caches/query-condition-cache) | Speeds up repeated queries by remembering which granules matched all filters last time. ClickHouse can then skip reading and filtering granules that didn't match, even if the query shape changes. |
While the aforementioned I/O optimizations can significantly reduce data read, they still assume that all columns for rows passing the `WHERE` clause must be loaded before running operations like sorting, aggregation, or `LIMIT`. But what if some columns aren’t needed until later, or some data, despite passing the `WHERE` clause, is never needed at all?
That’s where lazy materialization comes in. It is an orthogonal enhancement that completes the I/O optimization stack:
@@ -47,7 +47,7 @@ Lazy materialization layers cleanly on top, but unlike the other optimizations m
Consider the following example query which finds Amazon reviews with the highest number of helpful votes, regardless of date, product, rating, or verification status, and returns the top 3 along with their title, headline, and full text.
-First running the query (with cold filesystem caches) with lazy materialization disabled (using [`query_plan_optimize_lazy_materialization`](/reference/settings/session-settings#query_plan_optimize_lazy_materialization)):
+First running the query (with cold filesystem caches) with lazy materialization disabled (using [`query_plan_optimize_lazy_materialization`](/core/reference/settings/session-settings#query_plan_optimize_lazy_materialization)):
```sql title="Query"
SELECT
@@ -146,7 +146,7 @@ Consider the difference in performance with lazy materialization turned off and
## How to confirm lazy materialization in the query execution plan {#confirm-lazy-materialization}
-You can observe usage of lazy materialization for the previous query by inspecting the query’s logical execution plan using the [`EXPLAIN`](/reference/statements/explain) clause:
+You can observe usage of lazy materialization for the previous query by inspecting the query’s logical execution plan using the [`EXPLAIN`](/core/reference/statements/explain) clause:
```sql
EXPLAIN actions = 1
diff --git a/concepts/features/performance/prewhere.mdx b/core/concepts/features/performance/prewhere.mdx
similarity index 92%
rename from concepts/features/performance/prewhere.mdx
rename to core/concepts/features/performance/prewhere.mdx
index 2d53df75..32a4cacd 100644
--- a/concepts/features/performance/prewhere.mdx
+++ b/core/concepts/features/performance/prewhere.mdx
@@ -9,13 +9,13 @@ keywords: ['prewhere', 'query optimization', 'performance', 'filtering', 'best p
import { Image } from "/snippets/components/Image.jsx";
-The [PREWHERE clause](/reference/statements/select/prewhere) is a query execution optimization in ClickHouse. It reduces I/O and improves query speed by avoiding unnecessary data reads, and filtering out irrelevant data before reading non-filter columns from disk.
+The [PREWHERE clause](/core/reference/statements/select/prewhere) is a query execution optimization in ClickHouse. It reduces I/O and improves query speed by avoiding unnecessary data reads, and filtering out irrelevant data before reading non-filter columns from disk.
This guide explains how PREWHERE works, how to measure its impact, and how to tune it for best performance.
## Query processing without PREWHERE optimization {#query-processing-without-prewhere-optimization}
-We'll start by illustrating how a query on the [uk_price_paid_simple](/concepts/core-concepts/parts) table is processed without using PREWHERE:
+We'll start by illustrating how a query on the [uk_price_paid_simple](/core/concepts/core-concepts/parts) table is processed without using PREWHERE:
@@ -85,7 +85,7 @@ Note that ClickHouse processes the same number of rows in both the PREWHERE and
## PREWHERE optimization is automatically applied {#prewhere-optimization-is-automatically-applied}
-The PREWHERE clause can be added manually, as shown in the example above. However, you don't need to write PREWHERE manually. When the setting [`optimize_move_to_prewhere`](/reference/settings/session-settings#optimize_move_to_prewhere) is enabled (true by default), ClickHouse automatically moves filter conditions from WHERE to PREWHERE, prioritizing those that will reduce read volume the most.
+The PREWHERE clause can be added manually, as shown in the example above. However, you don't need to write PREWHERE manually. When the setting [`optimize_move_to_prewhere`](/core/reference/settings/session-settings#optimize_move_to_prewhere) is enabled (true by default), ClickHouse automatically moves filter conditions from WHERE to PREWHERE, prioritizing those that will reduce read volume the most.
The idea is that smaller columns are faster to scan, and by the time larger columns are processed, most granules have already been filtered out. Since all columns have the same number of rows, a column's size is primarily determined by its data type, for example, a `UInt8` column is generally much smaller than a `String` column.
@@ -148,7 +148,7 @@ The same number of rows was processed (2.31 million), but thanks to PREWHERE, Cl
For deeper insight into how ClickHouse applies PREWHERE behind the scenes, use EXPLAIN and trace logs.
-We inspect the query's logical plan using the [EXPLAIN](/reference/statements/explain#explain-plan) clause:
+We inspect the query's logical plan using the [EXPLAIN](/core/reference/statements/explain#explain-plan) clause:
```sql
EXPLAIN PLAN actions = 1
SELECT
diff --git a/concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx b/core/concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx
similarity index 76%
rename from concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx
rename to core/concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx
index fd6d8143..0ae3f2e0 100644
--- a/concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx
+++ b/core/concepts/features/performance/skip-indexes/skipping-indexes-examples.mdx
@@ -7,7 +7,7 @@ doc_type: 'guide'
keywords: ['skipping indexes', 'data skipping', 'performance', 'indexing', 'best practices']
---
-This page consolidates ClickHouse data skipping index examples, showing how to declare each type, when to use them, and how to verify they're applied. All features work with [MergeTree-family tables](/reference/engines/table-engines/mergetree-family/mergetree).
+This page consolidates ClickHouse data skipping index examples, showing how to declare each type, when to use them, and how to verify they're applied. All features work with [MergeTree-family tables](/core/reference/engines/table-engines/mergetree-family/mergetree).
**Index syntax:**
@@ -56,7 +56,7 @@ EXPLAIN indexes = 1
SELECT count() FROM events WHERE ts >= now() - 3600;
```
-See a [worked example](/concepts/best-practices/using-data-skipping-indices#example) with `EXPLAIN` and pruning.
+See a [worked example](/core/concepts/best-practices/using-data-skipping-indices#example) with `EXPLAIN` and pruning.
## Set index {#set-index}
@@ -72,7 +72,7 @@ EXPLAIN indexes = 1
SELECT * FROM events WHERE user_id IN (101, 202);
```
-A creation/materialization workflow and the before/after effect are shown in the [basic operation guide](/concepts/features/performance/skip-indexes/skipping-indexes#basic-operation).
+A creation/materialization workflow and the before/after effect are shown in the [basic operation guide](/core/concepts/features/performance/skip-indexes/skipping-indexes#basic-operation).
## Text index (text) for full text search {#textindex-for-full-text-search}
@@ -80,7 +80,7 @@ A creation/materialization workflow and the before/after effect are shown in the
Designed specifically for full-text search workloads, enabling efficient and deterministic token and term lookup.
Recommended for natural language or large-scale text search use cases.
-Just see [Full-text Search with Text Indexes](/reference/engines/table-engines/mergetree-family/textindexes) for more details and examples.
+Just see [Full-text Search with Text Indexes](/core/reference/engines/table-engines/mergetree-family/textindexes) for more details and examples.
```sql
ALTER TABLE logs ADD INDEX msg_text msg TYPE text(tokenizer = splitByNonAlpha);
@@ -89,7 +89,7 @@ ALTER TABLE logs MATERIALIZE INDEX msg_text;
SELECT count() FROM logs WHERE hasAllTokens(msg, 'exception');
```
-See a more complete observability example [here](/guides/observability/build-your-own/schema-design#text-index-for-full-text-search) documentation.
+See a more complete observability example [here](/core/guides/use-cases/observability/build-your-own/schema-design#text-index-for-full-text-search) documentation.
The text index is totally deterministic and fully tunable in terms of tokenization and text processing at a cost of some more storage consumption compared with bloom filter–based indexes,
@@ -110,10 +110,10 @@ SELECT * FROM events WHERE value IN (7, 42, 99);
## N-gram Bloom filter (ngrambf\_v1) for substring search *(Deprecated)* {#n-gram-bloom-filter-ngrambf-v1-for-substring-search}
-The usage of `ngrambf_v1` indexes for full-text search is deprecated in ClickHouse versions `>= 26.2` in favor of `text` indexes (see [here](/reference/engines/table-engines/mergetree-family/textindexes) for further details).
+The usage of `ngrambf_v1` indexes for full-text search is deprecated in ClickHouse versions `>= 26.2` in favor of `text` indexes (see [here](/core/reference/engines/table-engines/mergetree-family/textindexes) for further details).
-The `ngrambf_v1` index splits strings into n-grams. It works well for `LIKE '%...%'` queries. It supports String/FixedString/Map (via mapKeys/mapValues), as well as tunable size, hash count, and seed. See the documentation for [N-gram bloom filter](/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) for further details.
+The `ngrambf_v1` index splits strings into n-grams. It works well for `LIKE '%...%'` queries. It supports String/FixedString/Map (via mapKeys/mapValues), as well as tunable size, hash count, and seed. See the documentation for [N-gram bloom filter](/core/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) for further details.
```sql
-- Create index for substring search
@@ -127,7 +127,7 @@ EXPLAIN indexes = 1
SELECT count() FROM logs WHERE msg LIKE '%timeout%';
```
-[This guide](/guides/observability/build-your-own/schema-design#text-index-for-full-text-search) shows practical examples and when to use token vs ngram.
+[This guide](/core/guides/use-cases/observability/build-your-own/schema-design#text-index-for-full-text-search) shows practical examples and when to use token vs ngram.
**Parameter optimization helpers:**
@@ -145,17 +145,17 @@ SELECT bfEstimateBmSize(4300, 0.0001) / 8 AS size_bytes; -- ~10304
SELECT bfEstimateFunctions(4300, bfEstimateBmSize(4300, 0.0001)) AS k; -- ~13
```
-See [parameter docs](/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) for complete tuning guidance.
+See [parameter docs](/core/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) for complete tuning guidance.
## Token Bloom filter (tokenbf\_v1) for word-based search *(Deprecated)* {#token-bloom-filter-tokenbf-v1-for-word-based-search}
-The usage of `tokenbf_v1` indexes for full-text search is deprecated in ClickHouse versions `>= 26.2` in favor of `text` indexes (see [here](/reference/engines/table-engines/mergetree-family/textindexes) for further details).
+The usage of `tokenbf_v1` indexes for full-text search is deprecated in ClickHouse versions `>= 26.2` in favor of `text` indexes (see [here](/core/reference/engines/table-engines/mergetree-family/textindexes) for further details).
-`tokenbf_v1` indexes tokens separated by non-alphanumeric characters. You should use it with [`hasToken`](/reference/functions/regular-functions/string-search-functions#hasToken), `LIKE` word patterns or equals/IN. It supports `String`/`FixedString`/`Map` types.
+`tokenbf_v1` indexes tokens separated by non-alphanumeric characters. You should use it with [`hasToken`](/core/reference/functions/regular-functions/string-search-functions#hasToken), `LIKE` word patterns or equals/IN. It supports `String`/`FixedString`/`Map` types.
-See [Token bloom filter](/reference/engines/table-engines/mergetree-family/mergetree#token-bloom-filter) and [Bloom filter types](/concepts/features/performance/skip-indexes/skipping-indexes#skip-index-types) pages for more details.
+See [Token bloom filter](/core/reference/engines/table-engines/mergetree-family/mergetree#token-bloom-filter) and [Bloom filter types](/core/concepts/features/performance/skip-indexes/skipping-indexes#skip-index-types) pages for more details.
```sql
ALTER TABLE logs ADD INDEX msg_token lower(msg) TYPE tokenbf_v1(10000, 7, 7) GRANULARITY 1;
@@ -168,7 +168,7 @@ EXPLAIN indexes = 1
SELECT count() FROM logs WHERE hasToken(lower(msg), 'exception');
```
-See observability examples and guidance on token vs ngram [here](/guides/observability/build-your-own/schema-design#text-index-for-full-text-search).
+See observability examples and guidance on token vs ngram [here](/core/guides/use-cases/observability/build-your-own/schema-design#text-index-for-full-text-search).
## Add indexes during CREATE TABLE (multiple examples) {#add-indexes-during-create-table-multiple-examples}
@@ -205,7 +205,7 @@ SELECT count() FROM t WHERE u64 IN (123, 456);
SET send_logs_level = 'trace';
```
-This [worked minmax example](/concepts/best-practices/using-data-skipping-indices#example) demonstrates EXPLAIN output structure and pruning counts.
+This [worked minmax example](/core/concepts/best-practices/using-data-skipping-indices#example) demonstrates EXPLAIN output structure and pruning counts.
## When to use and when to avoid skipping indexes {#when-use-and-when-to-avoid}
@@ -228,7 +228,7 @@ If a value appears even once in a data block, ClickHouse must read the entire bl
## Temporarily ignore or force indexes {#temporarily-ignore-or-force-indexes}
-Disable specific indexes by name for individual queries during testing and troubleshooting. Settings also exist to force index usage when needed. See [`ignore_data_skipping_indices`](/reference/settings/session-settings#ignore_data_skipping_indices).
+Disable specific indexes by name for individual queries during testing and troubleshooting. Settings also exist to force index usage when needed. See [`ignore_data_skipping_indices`](/core/reference/settings/session-settings#ignore_data_skipping_indices).
```sql
-- Ignore an index by name
@@ -239,12 +239,12 @@ SETTINGS ignore_data_skipping_indices = 'msg_token';
## Notes and caveats {#notes-and-caveats}
-* Skipping indexes are only supported on [MergeTree-family tables](/reference/engines/table-engines/mergetree-family/mergetree); pruning happens at the granule/block level.
+* Skipping indexes are only supported on [MergeTree-family tables](/core/reference/engines/table-engines/mergetree-family/mergetree); pruning happens at the granule/block level.
* Bloom-filter-based indexes are probabilistic (false positives cause extra reads but won't skip valid data).
* Bloom filters and other skip indexes should be validated with `EXPLAIN` and tracing; adjust granularity to balance pruning vs. index size.
## Related docs {#related-docs}
-- [Data skipping index guide](/concepts/features/performance/skip-indexes/skipping-indexes)
-- [Best practices guide](/concepts/best-practices/using-data-skipping-indices)
-- [Manipulating data skipping indices](/reference/statements/alter/skipping-index)
-- [System table information](/reference/system-tables/data_skipping_indices)
+- [Data skipping index guide](/core/concepts/features/performance/skip-indexes/skipping-indexes)
+- [Best practices guide](/core/concepts/best-practices/using-data-skipping-indices)
+- [Manipulating data skipping indices](/core/reference/statements/alter/skipping-index)
+- [System table information](/core/reference/system-tables/data_skipping_indices)
diff --git a/concepts/features/performance/skip-indexes/skipping-indexes.mdx b/core/concepts/features/performance/skip-indexes/skipping-indexes.mdx
similarity index 92%
rename from concepts/features/performance/skip-indexes/skipping-indexes.mdx
rename to core/concepts/features/performance/skip-indexes/skipping-indexes.mdx
index 6e8d4079..64a2ec3e 100644
--- a/concepts/features/performance/skip-indexes/skipping-indexes.mdx
+++ b/core/concepts/features/performance/skip-indexes/skipping-indexes.mdx
@@ -138,7 +138,7 @@ The cost, performance, and effectiveness of this index is dependent on the cardi
For workloads that involve natural language or free-form text search (e.g., searching words or phrases in large text columns), ClickHouse provides a **text index** (a real inverted index).
Text index supports efficient full-text search semantics and tokenized lookups. It is the recommended choice for full-text search queries because it provides deterministic token indexing and better performance for search functions such as `hasAnyToken`, `hasAllTokens` but also optimize all common text search functions.
-See the text index documentation for details [here](/reference/engines/table-engines/mergetree-family/textindexes).
+See the text index documentation for details [here](/core/reference/engines/table-engines/mergetree-family/textindexes).
### Bloom filter types {#bloom-filter-types}
@@ -159,7 +159,7 @@ This index works only with String, FixedString, and Map datatypes. The input exp
```
This index can also be useful for text searches, particularly languages without word breaks, such as Chinese.
-> For full-text search workloads, the dedicated **text index** (see [Text index for full-text search](/reference/engines/table-engines/mergetree-family/textindexes)) is recommended over the deprecated *tokenbf_v1* or *ngrambf_v1* indexes.
+> For full-text search workloads, the dedicated **text index** (see [Text index for full-text search](/core/reference/engines/table-engines/mergetree-family/textindexes)) is recommended over the deprecated *tokenbf_v1* or *ngrambf_v1* indexes.
The text index provides a true inverted index with better search performance, more predictable behavior, and greater flexibility and performance compared with token-based Bloom filter indexes.
## Skip index functions {#skip-index-functions}
@@ -169,7 +169,7 @@ The core purpose of data-skipping indexes is to limit the amount of data analyze
* the query is processed and the expression is applied to the stored index values to determine whether to exclude the block.
Each type of skip index works on a subset of available ClickHouse functions appropriate to the index implementation listed
-[here](/reference/engines/table-engines/mergetree-family/mergetree#functions-support). In general, set indexes and Bloom filter based indexes (another type of set index) are both unordered and therefore don't work with ranges. In contrast, minmax indexes work particularly well with ranges since determining whether ranges intersect is very fast. The efficacy of partial match functions LIKE, startsWith, endsWith, and hasToken depend on the index type used, the index expression, and the particular shape of the data.
+[here](/core/reference/engines/table-engines/mergetree-family/mergetree#functions-support). In general, set indexes and Bloom filter based indexes (another type of set index) are both unordered and therefore don't work with ranges. In contrast, minmax indexes work particularly well with ranges since determining whether ranges intersect is very fast. The efficacy of partial match functions LIKE, startsWith, endsWith, and hasToken depend on the index type used, the index expression, and the particular shape of the data.
## Skip index settings {#skip-index-settings}
@@ -203,7 +203,7 @@ read from disk. The exact opposite is true for a ClickHouse data skipping index
regardless of the type of skip index.
Accordingly, the natural impulse to try to speed up ClickHouse queries by simply adding an index to key
-columns is often incorrect. This advanced functionality should only be used after investigating other alternatives, such as modifying the primary key (see [How to Pick a Primary Key](/guides/cloud-oss/data-modelling/sparse-primary-indexes)), using projections, or using materialized views. Even when a data skipping index is appropriate, careful tuning both the index and the table
+columns is often incorrect. This advanced functionality should only be used after investigating other alternatives, such as modifying the primary key (see [How to Pick a Primary Key](/core/guides/clickhouse/data-modelling/sparse-primary-indexes)), using projections, or using materialized views. Even when a data skipping index is appropriate, careful tuning both the index and the table
will often be necessary.
In most cases a useful skip index requires a strong correlation between the primary key and the targeted, non-primary column/expression.
@@ -228,7 +228,7 @@ include variations of the type, granularity size and other parameters. Testing w
thought experiments alone.
## Related docs {#related-docs}
-- [Best practices guide](/concepts/best-practices/using-data-skipping-indices)
-- [Data skipping index examples](/concepts/features/performance/skip-indexes/skipping-indexes-examples)
-- [Manipulating data skipping indices](/reference/statements/alter/skipping-index)
-- [System table information](/reference/system-tables/data_skipping_indices)
+- [Best practices guide](/core/concepts/best-practices/using-data-skipping-indices)
+- [Data skipping index examples](/core/concepts/features/performance/skip-indexes/skipping-indexes-examples)
+- [Manipulating data skipping indices](/core/reference/statements/alter/skipping-index)
+- [System table information](/core/reference/system-tables/data_skipping_indices)
diff --git a/concepts/features/performance/troubleshoot/debugging-memory-issues.mdx b/core/concepts/features/performance/troubleshoot/debugging-memory-issues.mdx
similarity index 97%
rename from concepts/features/performance/troubleshoot/debugging-memory-issues.mdx
rename to core/concepts/features/performance/troubleshoot/debugging-memory-issues.mdx
index c00bab78..db178653 100644
--- a/concepts/features/performance/troubleshoot/debugging-memory-issues.mdx
+++ b/core/concepts/features/performance/troubleshoot/debugging-memory-issues.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/debugging-memory-issues
+slug: /core/guides/developer/debugging-memory-issues
sidebarTitle: 'Debugging memory issues'
description: 'Queries to help you debug memory issues.'
keywords: ['memory issues']
diff --git a/concepts/features/performance/troubleshoot/performance-test.mdx b/core/concepts/features/performance/troubleshoot/performance-test.mdx
similarity index 100%
rename from concepts/features/performance/troubleshoot/performance-test.mdx
rename to core/concepts/features/performance/troubleshoot/performance-test.mdx
diff --git a/concepts/features/performance/troubleshoot/sampling-query-profiler.mdx b/core/concepts/features/performance/troubleshoot/sampling-query-profiler.mdx
similarity index 87%
rename from concepts/features/performance/troubleshoot/sampling-query-profiler.mdx
rename to core/concepts/features/performance/troubleshoot/sampling-query-profiler.mdx
index 99331117..5f2809cb 100644
--- a/concepts/features/performance/troubleshoot/sampling-query-profiler.mdx
+++ b/core/concepts/features/performance/troubleshoot/sampling-query-profiler.mdx
@@ -64,7 +64,7 @@ In self-managed deployments, to use the query profiler follow the steps below:
### Install ClickHouse with debug info {#debug-info}
Install the `clickhouse-common-static-dbg` package:
-1. Follow the instructions in step ["Set up the Debian repository"](/get-started/setup/self-managed/debian-ubuntu#setup-the-debian-repository)
+1. Follow the instructions in step ["Set up the Debian repository"](/core/get-started/setup/self-managed/debian-ubuntu#setup-the-debian-repository)
2. Run `sudo apt-get install clickhouse-server clickhouse-client clickhouse-common-static-dbg` to install ClickHouse compiled binary files with debug info
3. Run `sudo service clickhouse-server start` to start the server
4. Run `clickhouse-client`. The debug symbols from clickhouse-common-static-dbg will automatically be picked up by the server - you don't need to do anything special to enable them
@@ -72,7 +72,7 @@ Install the `clickhouse-common-static-dbg` package:
### Check server config {#server-config}
-Ensure that the [`trace_log`](/reference/settings/server-settings/settings#trace_log) section of your [server configuration file](/concepts/features/configuration/server-config/configuration-files) is set up. It is enabled by default:
+Ensure that the [`trace_log`](/core/reference/settings/server-settings/settings#trace_log) section of your [server configuration file](/core/concepts/features/configuration/server-config/configuration-files) is set up. It is enabled by default:
```xml
"p1: ${p1:CSV}, p2: ${p2:CSV}"
TemplateIgnoreSpaces --> "p1:${p1:CSV}, p2:${p2:CSV}"
@@ -129,7 +129,7 @@ FORMAT Template SETTINGS format_template_resultset = 'output.results',
```
### Exporting to HTML files {#exporting-to-html-files}
-Template-based results can also be exported to files using an [`INTO OUTFILE`](/reference/statements/select/into-outfile) clause. Let's generate HTML files based on given [resultset](/assets/html.results) and [row](/assets/html.row) formats:
+Template-based results can also be exported to files using an [`INTO OUTFILE`](/core/reference/statements/select/into-outfile) clause. Let's generate HTML files based on given [resultset](/assets/html.results) and [row](/assets/html.row) formats:
```sql
SELECT
@@ -146,7 +146,7 @@ SETTINGS format_template_resultset = 'html.results',
Template format can be used to generate all imaginable text format files, including XML. Just put a relevant template and do the export.
-Also consider using an [XML](/reference/formats/XML) format to get standard XML results including metadata:
+Also consider using an [XML](/core/reference/formats/XML) format to get standard XML results including metadata:
```sql
SELECT *
@@ -188,7 +188,7 @@ FORMAT XML
## Importing data based on regular expressions {#importing-data-based-on-regular-expressions}
-[Regexp](/reference/formats/Regexp) format addresses more sophisticated cases when input data needs to be parsed in a more complex way. Let's parse our [error.log](/assets/error.log) example file, but capture the file name and protocol this time to save them into separate columns. First, let's prepare a new table for that:
+[Regexp](/core/reference/formats/Regexp) format addresses more sophisticated cases when input data needs to be parsed in a more complex way. Let's parse our [error.log](/assets/error.log) example file, but capture the file name and protocol this time to save them into separate columns. First, let's prepare a new table for that:
```sql
CREATE TABLE error_log
@@ -227,7 +227,7 @@ SELECT * FROM error_log LIMIT 5
└─────────────────────┴─────────┴─────────────┴──────────────────────────────┴──────────┘
```
-By default, ClickHouse will raise an error in case of unmatched rows. If you want to skip unmatched rows instead, enable it using [format_regexp_skip_unmatched](/reference/settings/formats#format_regexp_skip_unmatched) option:
+By default, ClickHouse will raise an error in case of unmatched rows. If you want to skip unmatched rows instead, enable it using [format_regexp_skip_unmatched](/core/reference/settings/formats#format_regexp_skip_unmatched) option:
```sql
SET format_regexp_skip_unmatched = 1;
@@ -237,11 +237,11 @@ SET format_regexp_skip_unmatched = 1;
ClickHouse introduces support for many formats, both text, and binary, to cover various scenarios and platforms. Explore more formats and ways to work with them in the following articles:
-- [CSV and TSV formats](/integrations/connectors/data-ingestion/data-formats/csv-tsv)
-- [Parquet](/integrations/connectors/data-ingestion/data-formats/parquet)
-- [JSON formats](/integrations/connectors/data-ingestion/data-formats/json/intro)
+- [CSV and TSV formats](/core/guides/clickhouse/data-formats/csv-tsv)
+- [Parquet](/core/guides/clickhouse/data-formats/parquet)
+- [JSON formats](/core/guides/clickhouse/data-formats/json/intro)
- **Regex and templates**
-- [Native and binary formats](/integrations/connectors/data-ingestion/data-formats/binary)
-- [SQL formats](/integrations/connectors/data-ingestion/data-formats/sql)
+- [Native and binary formats](/core/guides/clickhouse/data-formats/binary)
+- [SQL formats](/core/guides/clickhouse/data-formats/sql)
And also check [clickhouse-local](https://clickhouse.com/blog/extracting-converting-querying-local-files-with-sql-clickhouse-local) - a portable full-featured tool to work on local/remote files without the need for Clickhouse server.
diff --git a/guides/cloud-oss/data-modelling/backfilling.mdx b/core/guides/clickhouse/data-modelling/backfilling.mdx
similarity index 84%
rename from guides/cloud-oss/data-modelling/backfilling.mdx
rename to core/guides/clickhouse/data-modelling/backfilling.mdx
index d3138966..a77900a6 100644
--- a/guides/cloud-oss/data-modelling/backfilling.mdx
+++ b/core/guides/clickhouse/data-modelling/backfilling.mdx
@@ -11,7 +11,7 @@ import { Image } from "/snippets/components/Image.jsx";
Whether new to ClickHouse or responsible for an existing deployment, you will invariably need to backfill tables with historical data. In some cases, this is relatively simple but can become more complex when materialized views need to be populated. This guide documents some processes for this task that you can apply to your use case.
-This guide assumes users are already familiar with the concept of [Incremental Materialized Views](/concepts/features/materialized-views/incremental-materialized-view) and [data loading using table functions such as s3 and gcs](/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse). We also recommend users read our guide on [optimizing insert performance from object storage](/integrations/connectors/data-ingestion/AWS/performance), the advice of which can be applied to inserts throughout this guide.
+This guide assumes users are already familiar with the concept of [Incremental Materialized Views](/core/concepts/features/materialized-views/incremental-materialized-view) and [data loading using table functions such as s3 and gcs](/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse). We also recommend users read our guide on [optimizing insert performance from object storage](/integrations/connectors/data-ingestion/AWS/performance), the advice of which can be applied to inserts throughout this guide.
## Example dataset {#example-dataset}
@@ -67,7 +67,7 @@ The full PyPI dataset, consisting of over 1 trillion rows, is available in our p
## Backfilling scenarios {#backfilling-scenarios}
-Backfilling is typically needed when a stream of data is being consumed from a point in time. This data is being inserted into ClickHouse tables with [incremental materialized views](/concepts/features/materialized-views/incremental-materialized-view), triggering on blocks as they're inserted. These views may be transforming the data prior to insert or computing aggregates and sending results to target tables for later use in downstream applications.
+Backfilling is typically needed when a stream of data is being consumed from a point in time. This data is being inserted into ClickHouse tables with [incremental materialized views](/core/concepts/features/materialized-views/incremental-materialized-view), triggering on blocks as they're inserted. These views may be transforming the data prior to insert or computing aggregates and sending results to target tables for later use in downstream applications.
We will attempt to cover the following scenarios:
@@ -76,7 +76,7 @@ We will attempt to cover the following scenarios:
We assume data will be backfilled from object storage. In all cases, we aim to avoid pauses in data insertion.
-We recommend backfilling historical data from object storage. Data should be exported to Parquet where possible for optimal read performance and compression (reduced network transfer). A file size of around 150MB is typically preferred, but ClickHouse supports over [70 file formats](/reference/formats) and is capable of handling files of all sizes.
+We recommend backfilling historical data from object storage. Data should be exported to Parquet where possible for optimal read performance and compression (reduced network transfer). A file size of around 150MB is typically preferred, but ClickHouse supports over [70 file formats](/core/reference/formats) and is capable of handling files of all sizes.
## Using duplicate tables and views {#using-duplicate-tables-and-views}
@@ -143,7 +143,7 @@ Peak memory usage: 682.38 KiB.
Suppose we wish to load another subset `{101..200}`. While we could insert directly into `pypi`, we can do this backfill in isolation by creating duplicate tables.
-Should the backfill fail, we haven't impacted our main tables and can simply [truncate](/concepts/operations/delete/truncate) our duplicate tables and repeat.
+Should the backfill fail, we haven't impacted our main tables and can simply [truncate](/core/concepts/features/operations/delete/truncate) our duplicate tables and repeat.
To create new copies of these views, we can use the `CREATE TABLE AS` clause with the suffix `_v2`:
@@ -189,9 +189,9 @@ FROM pypi_downloads_v2
Peak memory usage: 688.77 KiB.
```
-If we experienced a failure at any point during this second load, we could simply [truncate](/concepts/operations/delete/truncate) our `pypi_v2` and `pypi_downloads_v2` and repeat the data load.
+If we experienced a failure at any point during this second load, we could simply [truncate](/core/concepts/features/operations/delete/truncate) our `pypi_v2` and `pypi_downloads_v2` and repeat the data load.
-With our data load complete, we can move the data from our duplicate tables to the main tables using the [`ALTER TABLE MOVE PARTITION`](/reference/statements/alter/partition#move-partition-to-table) clause.
+With our data load complete, we can move the data from our duplicate tables to the main tables using the [`ALTER TABLE MOVE PARTITION`](/core/reference/statements/alter/partition#move-partition-to-table) clause.
```sql
ALTER TABLE pypi_v2 MOVE PARTITION () TO pypi
@@ -206,7 +206,7 @@ ALTER TABLE pypi_downloads_v2 MOVE PARTITION () TO pypi_downloads
**Partition names**
-The above `MOVE PARTITION` call uses the partition name `()`. This represents the single partition for this table (which isn't partitioned). For tables that are partitioned, you will need to invoke multiple `MOVE PARTITION` calls - one for each partition. The name of the current partitions can be established from the [`system.parts`](/reference/system-tables/parts) table e.g. `SELECT DISTINCT partition FROM system.parts WHERE (table = 'pypi_v2')`.
+The above `MOVE PARTITION` call uses the partition name `()`. This represents the single partition for this table (which isn't partitioned). For tables that are partitioned, you will need to invoke multiple `MOVE PARTITION` calls - one for each partition. The name of the current partitions can be established from the [`system.parts`](/core/reference/system-tables/parts) table e.g. `SELECT DISTINCT partition FROM system.parts WHERE (table = 'pypi_v2')`.
We can now confirm `pypi` and `pypi_downloads` contain the complete data. `pypi_downloads_v2` and `pypi_v2` can be safely dropped.
@@ -327,7 +327,7 @@ It isn't uncommon for new materialized views to need to be added to a setup for
**Avoid POPULATE**
-We don't recommend using the [`POPULATE`](/reference/statements/create/view#materialized-view) command for backfilling materialized views for anything other than small datasets where ingest is paused. This operator can miss rows inserted into its source table, with the materialized view created after the populate hash is finished. Furthermore, this populate runs against all data and is vulnerable to interruptions or memory limits on large datasets.
+We don't recommend using the [`POPULATE`](/core/reference/statements/create/view#materialized-view) command for backfilling materialized views for anything other than small datasets where ingest is paused. This operator can miss rows inserted into its source table, with the materialized view created after the populate hash is finished. Furthermore, this populate runs against all data and is vulnerable to interruptions or memory limits on large datasets.
### Timestamp or Monotonically increasing column available {#timestamp-or-monotonically-increasing-column-available}
@@ -397,7 +397,7 @@ Peak memory usage: 543.71 MiB.
```
-In the above example our target table is a [SummingMergeTree](/reference/engines/table-engines/mergetree-family/summingmergetree). In this case we can simply use our original aggregation query. For more complex use cases which exploit the [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree), you will use `-State` functions for the aggregates. An example of this can be found in this [integration guide](/integrations/connectors/data-ingestion/AWS/performance#be-aware-of-merges).
+In the above example our target table is a [SummingMergeTree](/core/reference/engines/table-engines/mergetree-family/summingmergetree). In this case we can simply use our original aggregation query. For more complex use cases which exploit the [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree), you will use `-State` functions for the aggregates. An example of this can be found in this [integration guide](/integrations/connectors/data-ingestion/AWS/performance#be-aware-of-merges).
In our case, this is a relatively lightweight aggregation that completes in under 3s and uses less than 600MiB of memory. For more complex or longer-running aggregations, you can make this process more resilient by using the earlier duplicate table approach i.e. create a shadow target table, e.g., `pypi_downloads_per_day_v2`, insert into this, and attach its resulting partitions to `pypi_downloads_per_day`.
@@ -407,7 +407,7 @@ Often materialized view's query can be more complex (not uncommon as otherwise u
In this case, users have several options:
1. Modify your query to backfill ranges e.g. `WHERE timestamp BETWEEN 2024-12-17 08:00:00 AND 2024-12-17 09:00:00`, `WHERE timestamp BETWEEN 2024-12-17 07:00:00 AND 2024-12-17 08:00:00` etc.
-2. Use a [Null table engine](/reference/engines/table-engines/special/null) to fill the materialized view. This replicates the typical incremental population of a materialized view, executing it's query over blocks of data (of configurable size).
+2. Use a [Null table engine](/core/reference/engines/table-engines/special/null) to fill the materialized view. This replicates the typical incremental population of a materialized view, executing it's query over blocks of data (of configurable size).
(1) represents the simplest approach is often sufficient. We don't include examples for brevity.
@@ -415,7 +415,7 @@ We explore (2) further below.
#### Using a Null table engine for filling materialized views {#using-a-null-table-engine-for-filling-materialized-views}
-The [Null table engine](/reference/engines/table-engines/special/null) provides a storage engine which doesn't persist data (think of it as the `/dev/null` of the table engine world). While this seems contradictory, materialized views will still execute on data inserted into this table engine. This allows materialized views to be constructed without persisting the original data - avoiding I/O and the associated storage.
+The [Null table engine](/core/reference/engines/table-engines/special/null) provides a storage engine which doesn't persist data (think of it as the `/dev/null` of the table engine world). While this seems contradictory, materialized views will still execute on data inserted into this table engine. This allows materialized views to be constructed without persisting the original data - avoiding I/O and the associated storage.
Importantly, any materialized views attached to the table engine still execute over blocks of data as its inserted - sending their results to a target table. These blocks are of a configurable size. While larger blocks can potentially be more efficient (and faster to process), they consume more resources (principally memory). Use of this table engine means we can build our materialized view incrementally i.e. a block at a time, avoiding the need to hold the entire aggregation in memory.
@@ -465,10 +465,10 @@ Notice our memory usage here is `639.47 MiB`.
Several factors will determine the performance and resources used in the above scenario. Before attempting to tune, we recommend readers understand the insert mechanics documented in detail in the [Using Threads for Reads](/integrations/connectors/data-ingestion/AWS/performance#using-threads-for-reads) section of the [Optimizing for S3 Insert and Read Performance guide](/integrations/connectors/data-ingestion/AWS/performance). In summary:
-- **Read Parallelism** - The number of threads used to read. Controlled through [`max_threads`](/reference/settings/session-settings#max_threads). In ClickHouse Cloud this is determined by the instance size with it defaulting to the number of vCPUs. Increasing this value may improve read performance at the expense of greater memory usage.
-- **Insert Parallelism** - The number of insert threads used to insert. Controlled through [`max_insert_threads`](/reference/settings/session-settings#max_insert_threads). **Note**: This value is capped by `max_threads`, so the effective insert parallelism is `min(max_insert_threads, max_threads)`. In ClickHouse Cloud this is determined by the instance size (between 2 and 4) and is set to 1 in OSS. Increasing this value may improve performance at the expense of greater memory usage.
-- **Insert Block Size** - data is processed in a loop where it is pulled, parsed, and formed into in-memory insert blocks based on the [partitioning key](/reference/engines/table-engines/mergetree-family/custom-partitioning-key). These blocks are sorted, optimized, compressed, and written to storage as new [data parts](/concepts/core-concepts/parts). The size of the insert block, controlled by settings [`min_insert_block_size_rows`](/reference/settings/session-settings#min_insert_block_size_rows) and [`min_insert_block_size_bytes`](/reference/settings/session-settings#min_insert_block_size_bytes) (uncompressed), impacts memory usage and disk I/O. Larger blocks use more memory but create fewer parts, reducing I/O and background merges. These settings represent minimum thresholds (whichever is reached first triggers a flush).
-- **Materialized view block size** - As well as the above mechanics for the main insert, prior to insertion into materialized views, blocks are also squashed for more efficient processing. The size of these blocks is determined by the settings [`min_insert_block_size_bytes_for_materialized_views`](/reference/settings/session-settings#min_insert_block_size_bytes_for_materialized_views) and [`min_insert_block_size_rows_for_materialized_views`](/reference/settings/session-settings#min_insert_block_size_rows_for_materialized_views). Larger blocks allow more efficient processing at the expense of greater memory usage. By default, these settings revert to the values of the source table settings [`min_insert_block_size_rows`](/reference/settings/session-settings#min_insert_block_size_rows) and [`min_insert_block_size_bytes`](/reference/settings/session-settings#min_insert_block_size_bytes), respectively.
+- **Read Parallelism** - The number of threads used to read. Controlled through [`max_threads`](/core/reference/settings/session-settings#max_threads). In ClickHouse Cloud this is determined by the instance size with it defaulting to the number of vCPUs. Increasing this value may improve read performance at the expense of greater memory usage.
+- **Insert Parallelism** - The number of insert threads used to insert. Controlled through [`max_insert_threads`](/core/reference/settings/session-settings#max_insert_threads). **Note**: This value is capped by `max_threads`, so the effective insert parallelism is `min(max_insert_threads, max_threads)`. In ClickHouse Cloud this is determined by the instance size (between 2 and 4) and is set to 1 in OSS. Increasing this value may improve performance at the expense of greater memory usage.
+- **Insert Block Size** - data is processed in a loop where it is pulled, parsed, and formed into in-memory insert blocks based on the [partitioning key](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key). These blocks are sorted, optimized, compressed, and written to storage as new [data parts](/core/concepts/core-concepts/parts). The size of the insert block, controlled by settings [`min_insert_block_size_rows`](/core/reference/settings/session-settings#min_insert_block_size_rows) and [`min_insert_block_size_bytes`](/core/reference/settings/session-settings#min_insert_block_size_bytes) (uncompressed), impacts memory usage and disk I/O. Larger blocks use more memory but create fewer parts, reducing I/O and background merges. These settings represent minimum thresholds (whichever is reached first triggers a flush).
+- **Materialized view block size** - As well as the above mechanics for the main insert, prior to insertion into materialized views, blocks are also squashed for more efficient processing. The size of these blocks is determined by the settings [`min_insert_block_size_bytes_for_materialized_views`](/core/reference/settings/session-settings#min_insert_block_size_bytes_for_materialized_views) and [`min_insert_block_size_rows_for_materialized_views`](/core/reference/settings/session-settings#min_insert_block_size_rows_for_materialized_views). Larger blocks allow more efficient processing at the expense of greater memory usage. By default, these settings revert to the values of the source table settings [`min_insert_block_size_rows`](/core/reference/settings/session-settings#min_insert_block_size_rows) and [`min_insert_block_size_bytes`](/core/reference/settings/session-settings#min_insert_block_size_bytes), respectively.
**Tip for trivial INSERT SELECT queries**: For simple `INSERT INTO t1 SELECT * FROM t2` queries without complex transformations, consider enabling `optimize_trivial_insert_select=1`. This setting (disabled by default since version 24.7) automatically adjusts the SELECT parallelism to match `max_insert_threads`, reducing resource usage and the number of parts created. This is particularly useful for bulk data migrations between tables.
@@ -531,7 +531,7 @@ The above processes rely on the user have a timestamp or monotonically increasin
1. Pause inserts into your main table.
2. Create a duplicate of your main target table using the `CREATE AS` syntax.
-3. Attach partitions from the original target table to the duplicate using [`ALTER TABLE ATTACH`](/reference/statements/alter/partition#attach-partitionpart). **Note:** This attach operation is different than the earlier used move. While relying on hard links, the data in the original table is preserved.
+3. Attach partitions from the original target table to the duplicate using [`ALTER TABLE ATTACH`](/core/reference/statements/alter/partition#attach-partitionpart). **Note:** This attach operation is different than the earlier used move. While relying on hard links, the data in the original table is preserved.
4. Create new materialized views.
5. Restart inserts. **Note:** Inserts will only update the target table, and not the duplicate, which will reference only the original data.
6. Backfill the materialized view, applying the same process used above for data with timestamps, using the duplicate table as the source.
diff --git a/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse.mdx b/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse.mdx
similarity index 98%
rename from guides/cloud-oss/data-modelling/compression/compression-in-clickhouse.mdx
rename to core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse.mdx
index 14956b1c..4d39a6a7 100644
--- a/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse.mdx
+++ b/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse.mdx
@@ -65,9 +65,9 @@ GROUP BY name
If you're seeing `compressed_size` or `uncompressed_size` values equal to `0`, this could be because the type of the
-parts are `compact` and not `wide` (see description for `part_type` in [`system.parts`](/reference/system-tables/parts)).
-The part format is controlled by settings [`min_bytes_for_wide_part`](/reference/settings/merge-tree-settings#min_bytes_for_wide_part)
-and [`min_rows_for_wide_part`](/reference/settings/merge-tree-settings#min_rows_for_wide_part) meaning that if the inserted
+parts are `compact` and not `wide` (see description for `part_type` in [`system.parts`](/core/reference/system-tables/parts)).
+The part format is controlled by settings [`min_bytes_for_wide_part`](/core/reference/settings/merge-tree-settings#min_bytes_for_wide_part)
+and [`min_rows_for_wide_part`](/core/reference/settings/merge-tree-settings#min_rows_for_wide_part) meaning that if the inserted
data results in a part which doesn't exceed the values of the aforementioned settings, the part will be compact rather
than wide and you won't see the values for `compressed_size` or `uncompressed_size`.
@@ -223,7 +223,7 @@ Recommendation | Reasoning
**`Gorilla` and `T64` for unknown patterns?** | If the data has an unknown pattern, it may be worth trying `Gorilla` and `T64`.
**`Gorilla` for gauge data** | `Gorilla` can be effective on floating point data, specifically that which represents gauge readings, i.e. random spikes.
-See [here](/reference/statements/create/table#column_compression_codec) for further options.
+See [here](/core/reference/statements/create/table#column_compression_codec) for further options.
Below we specify the `Delta` codec for the `Id`, `ViewCount` and `AnswerCount`, hypothesizing these will be linearly correlated with the ordering key and thus should benefit from Delta encoding.
diff --git a/guides/cloud-oss/data-modelling/compression/compression-modes.mdx b/core/guides/clickhouse/data-modelling/compression/compression-modes.mdx
similarity index 85%
rename from guides/cloud-oss/data-modelling/compression/compression-modes.mdx
rename to core/guides/clickhouse/data-modelling/compression/compression-modes.mdx
index 7444b932..6bf581da 100644
--- a/guides/cloud-oss/data-modelling/compression/compression-modes.mdx
+++ b/core/guides/clickhouse/data-modelling/compression/compression-modes.mdx
@@ -12,7 +12,7 @@ ClickHouse protocol supports **data blocks** compression with checksums.
Use `LZ4` if not sure what mode to pick.
``
-Learn more about the [column compression codecs](/reference/statements/create/table#column_compression_codec) available and specify them when creating your tables, or afterward.
+Learn more about the [column compression codecs](/core/reference/statements/create/table#column_compression_codec) available and specify them when creating your tables, or afterward.
## Modes {#modes}
@@ -35,7 +35,7 @@ From [Facebook benchmarks](https://facebook.github.io/zstd/#benchmarks):
| field | type | description |
|-----------------|---------|--------------------------------------------------|
-| checksum | uint128 | [Hash](/resources/contribute/native-protocol/hash) of (header + compressed data) |
+| checksum | uint128 | [Hash](/resources/develop-contribute/native-protocol/hash) of (header + compressed data) |
| raw_size | uint32 | Raw size without header |
| data_size | uint32 | Uncompressed data size |
| mode | byte | Compression mode |
@@ -45,7 +45,7 @@ From [Facebook benchmarks](https://facebook.github.io/zstd/#benchmarks):
Header is (raw_size + data_size + mode), raw size consists of len(header + compressed_data).
-Checksum is `hash(header + compressed_data)`, using [ClickHouse CityHash](/resources/contribute/native-protocol/hash).
+Checksum is `hash(header + compressed_data)`, using [ClickHouse CityHash](/resources/develop-contribute/native-protocol/hash).
## None mode {#none-mode}
diff --git a/guides/cloud-oss/data-modelling/denormalization.mdx b/core/guides/clickhouse/data-modelling/denormalization.mdx
similarity index 96%
rename from guides/cloud-oss/data-modelling/denormalization.mdx
rename to core/guides/clickhouse/data-modelling/denormalization.mdx
index 46c53471..dba1baaa 100644
--- a/guides/cloud-oss/data-modelling/denormalization.mdx
+++ b/core/guides/clickhouse/data-modelling/denormalization.mdx
@@ -123,7 +123,7 @@ LIMIT 5
└──────────┴──────────────────────────────────────────────┴───────┘
```
-The main observation here is that aggregated vote statistics for each post would be sufficient for most analysis - we don't need to denormalize all of the vote information. For example, the current `Score` column represents such a statistic i.e. total up votes minus down votes. Ideally, we would just be able to retrieve these statistics at query time with a simple lookup (see [dictionaries](/concepts/features/dictionaries)).
+The main observation here is that aggregated vote statistics for each post would be sufficient for most analysis - we don't need to denormalize all of the vote information. For example, the current `Score` column represents such a statistic i.e. total up votes minus down votes. Ideally, we would just be able to retrieve these statistics at query time with a simple lookup (see [dictionaries](/core/concepts/features/dictionaries)).
### Users and Badges {#users-and-badges}
@@ -362,9 +362,9 @@ We have shown above how ClickHouse can be used to perform this transformation on
Users have several options for orchestrating this in ClickHouse, assuming a periodic batch load process is acceptable:
-- **[Refreshable Materialized Views](/concepts/features/materialized-views/refreshable-materialized-view)** - Refreshable materialized views can be used to periodically schedule a query with the results sent to a target table. On query execution, the view ensures the target table is atomically updated. This provides a ClickHouse native means of scheduling this work.
-- **External tooling** - Utilizing tools such as [dbt](https://www.getdbt.com/) and [Airflow](https://airflow.apache.org/) to periodically schedule the transformation. The [ClickHouse integration for dbt](/integrations/connectors/data-ingestion/etl-tools/dbt) ensures this is performed atomically with a new version of the target table created and then atomically swapped with the version receiving queries (via the [EXCHANGE](/reference/statements/exchange) command).
+- **[Refreshable Materialized Views](/core/concepts/features/materialized-views/refreshable-materialized-view)** - Refreshable materialized views can be used to periodically schedule a query with the results sent to a target table. On query execution, the view ensures the target table is atomically updated. This provides a ClickHouse native means of scheduling this work.
+- **External tooling** - Utilizing tools such as [dbt](https://www.getdbt.com/) and [Airflow](https://airflow.apache.org/) to periodically schedule the transformation. The [ClickHouse integration for dbt](/integrations/connectors/data-ingestion/etl-tools/dbt) ensures this is performed atomically with a new version of the target table created and then atomically swapped with the version receiving queries (via the [EXCHANGE](/core/reference/statements/exchange) command).
### Streaming {#streaming}
-You may alternatively wish to perform this outside of ClickHouse, prior to insertion, using streaming technologies such as [Apache Flink](/integrations/connectors/data-ingestion/apache-flink). Alternatively, incremental [materialized views](/concepts/features/materialized-views/cascading-materialized-views) can be used to perform this process as data is inserted.
+You may alternatively wish to perform this outside of ClickHouse, prior to insertion, using streaming technologies such as [Apache Flink](/integrations/connectors/data-ingestion/apache-flink). Alternatively, incremental [materialized views](/core/concepts/features/materialized-views/cascading-materialized-views) can be used to perform this process as data is inserted.
diff --git a/get-started/oss/starter-guides/generating-test-data.mdx b/core/guides/clickhouse/data-modelling/generating-test-data.mdx
similarity index 95%
rename from get-started/oss/starter-guides/generating-test-data.mdx
rename to core/guides/clickhouse/data-modelling/generating-test-data.mdx
index 1380e98a..a258945f 100644
--- a/get-started/oss/starter-guides/generating-test-data.mdx
+++ b/core/guides/clickhouse/data-modelling/generating-test-data.mdx
@@ -1,7 +1,7 @@
---
sidebarTitle: 'Generating random test data'
title: 'Generating random test data in ClickHouse'
-slug: /guides/generating-test-data
+slug: /core/guides/generating-test-data
description: 'Learn about Generating Random Test Data in ClickHouse'
show_related_blogs: true
doc_type: 'guide'
@@ -9,7 +9,7 @@ keywords: ['random data', 'test data']
---
Generating random data is useful when testing new use cases or benchmarking your implementation.
-ClickHouse has a [wide range of functions for generating random data](/reference/functions/regular-functions/random-functions) that, in many cases, avoid the need for an external data generator.
+ClickHouse has a [wide range of functions for generating random data](/core/reference/functions/regular-functions/random-functions) that, in many cases, avoid the need for an external data generator.
This guide provides several examples of how to generate random datasets in ClickHouse with different randomness requirements.
@@ -146,7 +146,7 @@ Read the [Generating Random Data in ClickHouse](https://clickhouse.com/blog/gene
## Generating random tables {#generating-random-tables}
-The [`generateRandomStructure`](/reference/functions/regular-functions/other-functions#generateRandomStructure) function is particularly useful when combined with the [`generateRandom`](/reference/functions/table-functions/generate) table engine for testing, benchmarking, or creating mock data with arbitrary schemas.
+The [`generateRandomStructure`](/core/reference/functions/regular-functions/other-functions#generateRandomStructure) function is particularly useful when combined with the [`generateRandom`](/core/reference/functions/table-functions/generate) table engine for testing, benchmarking, or creating mock data with arbitrary schemas.
Let's start by just seeing what a random structure looks like using the `generateRandomStructure` function:
diff --git a/core/guides/clickhouse/data-modelling/index.mdx b/core/guides/clickhouse/data-modelling/index.mdx
new file mode 100644
index 00000000..ff7de4d3
--- /dev/null
+++ b/core/guides/clickhouse/data-modelling/index.mdx
@@ -0,0 +1,18 @@
+---
+slug: /data-modeling/overview
+title: 'Data modelling overview'
+description: 'Overview of Data Modelling'
+keywords: ['data modelling', 'schema design', 'dictionary', 'materialized view', 'data compression', 'denormalizing data']
+doc_type: 'landing-page'
+---
+
+This section is about data modeling in ClickHouse and contains the following topics:
+
+| Page | Description |
+|-----------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| [Schema Design](/core/guides/clickhouse/data-modelling/schema-design) | Discusses ClickHouse schema design for optimal performance, considering factors like queries, data updates, latency, and volume. |
+| [Dictionary](/core/concepts/features/dictionaries) | An explainer on how to define and use dictionaries to improve query performance and enrich data. |
+| [Materialized Views](/core/concepts/features/materialized-views) | Information on Materialized Views and Refreshable Materialized Views in ClickHouse. |
+| [Projections](/core/concepts/features/projections/projections)| Information on Projections in ClickHouse.|
+| [Data Compression](/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse) | Discusses various compression modes in ClickHouse and how to optimize data storage and query performance by choosing the right compression method for your specific data types and workloads. |
+| [Denormalizing Data](/core/guides/clickhouse/data-modelling/denormalization) | Discusses the denormalization approach used in ClickHouse which aims to improve query performance by storing related data in a single table. |
diff --git a/guides/cloud-oss/data-modelling/merge-table-function.mdx b/core/guides/clickhouse/data-modelling/merge-table-function.mdx
similarity index 94%
rename from guides/cloud-oss/data-modelling/merge-table-function.mdx
rename to core/guides/clickhouse/data-modelling/merge-table-function.mdx
index fd11e6ff..720d3222 100644
--- a/guides/cloud-oss/data-modelling/merge-table-function.mdx
+++ b/core/guides/clickhouse/data-modelling/merge-table-function.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/merge-table-function
+slug: /core/guides/developer/merge-table-function
sidebarTitle: 'Merge table function'
title: 'Merge table function'
description: 'Query multiple tables at the same time.'
@@ -7,8 +7,8 @@ doc_type: 'reference'
keywords: ['merge', 'table function', 'query patterns', 'table engine', 'data access']
---
-The [merge table function](/reference/functions/table-functions/merge) lets us query multiple tables in parallel.
-It does this by creating a temporary [Merge](/reference/engines/table-engines/special/merge) table and derives this table's structure by taking a union of their columns and by deriving common types.
+The [merge table function](/core/reference/functions/table-functions/merge) lets us query multiple tables in parallel.
+It does this by creating a temporary [Merge](/core/reference/engines/table-engines/special/merge) table and derives this table's structure by taking a union of their columns and by deriving common types.
@@ -132,7 +132,7 @@ AND multiIf(
);
```
-We use the [`variantType`](/reference/functions/regular-functions/other-functions#variantType) function to check the type of `winner_seed` for each row and then [`variantElement`](/reference/functions/regular-functions/other-functions#variantElement) to extract the underlying value.
+We use the [`variantType`](/core/reference/functions/regular-functions/other-functions#variantType) function to check the type of `winner_seed` for each row and then [`variantElement`](/core/reference/functions/regular-functions/other-functions#variantElement) to extract the underlying value.
When the type is `String`, we cast to a number and then do the comparison.
The result of running the query is shown below:
diff --git a/guides/cloud-oss/data-modelling/schema-design.mdx b/core/guides/clickhouse/data-modelling/schema-design.mdx
similarity index 94%
rename from guides/cloud-oss/data-modelling/schema-design.mdx
rename to core/guides/clickhouse/data-modelling/schema-design.mdx
index 77040bb2..cf5de438 100644
--- a/guides/cloud-oss/data-modelling/schema-design.mdx
+++ b/core/guides/clickhouse/data-modelling/schema-design.mdx
@@ -30,7 +30,7 @@ Since the `posts` table will be the target for most analytics queries, we focus
> Loading data from S3 in Parquet format represents the most common and preferred way to load data into ClickHouse. ClickHouse is optimized for processing Parquet and can potentially read and insert 10s of millions of rows from S3 per second.
-ClickHouse provides a schema inference capability to automatically identify the types for a dataset. This is supported for all data formats, including Parquet. We can exploit this feature to identify the ClickHouse types for the data via s3 table function and[`DESCRIBE`](/reference/statements/describe-table) command. Note below we use the glob pattern `*.parquet` to read all files in the `stackoverflow/parquet/posts` folder.
+ClickHouse provides a schema inference capability to automatically identify the types for a dataset. This is supported for all data formats, including Parquet. We can exploit this feature to identify the ClickHouse types for the data via s3 table function and[`DESCRIBE`](/core/reference/statements/describe-table) command. Note below we use the glob pattern `*.parquet` to read all files in the `stackoverflow/parquet/posts` folder.
```sql
DESCRIBE TABLE s3('https://datasets-documentation.s3.eu-west-3.amazonaws.com/stackoverflow/parquet/posts/*.parquet')
@@ -62,7 +62,7 @@ SETTINGS describe_compact_output = 1
└───────────────────────┴────────────────────────────────┘
```
-> The [s3 table function](/reference/functions/table-functions/s3) allows data in S3 to be queried in-place from ClickHouse. This function is compatible with all of the file formats ClickHouse supports.
+> The [s3 table function](/core/reference/functions/table-functions/s3) allows data in S3 to be queried in-place from ClickHouse. This function is compatible with all of the file formats ClickHouse supports.
This provides us with an initial non-optimized schema. By default, ClickHouse maps these to equivalent Nullable types. We can create a ClickHouse table using these types with a simple `CREATE EMPTY AS SELECT` command.
@@ -122,7 +122,7 @@ INSERT INTO posts SELECT * FROM s3('https://datasets-documentation.s3.eu-west-3.
0 rows in set. Elapsed: 148.140 sec. Processed 59.82 million rows, 38.07 GB (403.80 thousand rows/s., 257.00 MB/s.)
```
-> The above query loads 60m rows. While small for ClickHouse, users with slower internet connections may wish to load a subset of data. This can be achieved by simply specifying the years they wish to load via a glob pattern e.g. `https://datasets-documentation.s3.eu-west-3.amazonaws.com/stackoverflow/parquet/posts/2008.parquet` or `https://datasets-documentation.s3.eu-west-3.amazonaws.com/stackoverflow/parquet/posts/{2008, 2009}.parquet`. See [here](/reference/functions/table-functions/file#globs-in-path) for how glob patterns can be used to target subsets of files.
+> The above query loads 60m rows. While small for ClickHouse, users with slower internet connections may wish to load a subset of data. This can be achieved by simply specifying the years they wish to load via a glob pattern e.g. `https://datasets-documentation.s3.eu-west-3.amazonaws.com/stackoverflow/parquet/posts/2008.parquet` or `https://datasets-documentation.s3.eu-west-3.amazonaws.com/stackoverflow/parquet/posts/{2008, 2009}.parquet`. See [here](/core/reference/functions/table-functions/file#globs-in-path) for how glob patterns can be used to target subsets of files.
## Optimizing Types {#optimizing-types}
@@ -323,7 +323,7 @@ LIMIT 3
10 rows in set. Elapsed: 0.020 sec. Processed 290.09 thousand rows, 21.03 MB (14.65 million rows/s., 1.06 GB/s.)
```
-For users interested in the compression improvements achieved by using specific types and appropriate ordering keys, see [Compression in ClickHouse](/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse). If you need to further improve compression we also recommend the section [Choosing the right column compression codec](/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse#choosing-the-right-column-compression-codec).
+For users interested in the compression improvements achieved by using specific types and appropriate ordering keys, see [Compression in ClickHouse](/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse). If you need to further improve compression we also recommend the section [Choosing the right column compression codec](/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse#choosing-the-right-column-compression-codec).
## Next: Data Modeling Techniques {#next-data-modeling-techniques}
@@ -339,9 +339,9 @@ The following approaches all aim to minimize the need to use JOINs to optimize r
In order to minimize the use of Joins at query time, users have several tools/approaches:
-- [**Denormalizing data**](/guides/cloud-oss/data-modelling/denormalization) - Denormalize data by combining tables and using complex types for non 1:1 relationships. This often involves moving any joins from query time to insert time.
-- [**Dictionaries**](/concepts/features/dictionaries) - A ClickHouse specific feature for handling direct joins and key value lookups.
-- [**Incremental Materialized Views**](/concepts/features/materialized-views/incremental-materialized-view) - A ClickHouse feature for shifting the cost of a computation from query time to insert time, including the ability to incrementally compute aggregate values.
-- [**Refreshable Materialized Views**](/concepts/features/materialized-views/refreshable-materialized-view) - Similar to materialized views used in other database products, this allows the results of a query to be periodically computed and the result cached.
+- [**Denormalizing data**](/core/guides/clickhouse/data-modelling/denormalization) - Denormalize data by combining tables and using complex types for non 1:1 relationships. This often involves moving any joins from query time to insert time.
+- [**Dictionaries**](/core/concepts/features/dictionaries) - A ClickHouse specific feature for handling direct joins and key value lookups.
+- [**Incremental Materialized Views**](/core/concepts/features/materialized-views/incremental-materialized-view) - A ClickHouse feature for shifting the cost of a computation from query time to insert time, including the ability to incrementally compute aggregate values.
+- [**Refreshable Materialized Views**](/core/concepts/features/materialized-views/refreshable-materialized-view) - Similar to materialized views used in other database products, this allows the results of a query to be periodically computed and the result cached.
We explore each of these approaches in each guide, highlighting when each is appropriate with an example showing how it can be applied to solving questions for the Stack Overflow dataset.
diff --git a/guides/cloud-oss/data-modelling/sparse-primary-indexes.mdx b/core/guides/clickhouse/data-modelling/sparse-primary-indexes.mdx
similarity index 89%
rename from guides/cloud-oss/data-modelling/sparse-primary-indexes.mdx
rename to core/guides/clickhouse/data-modelling/sparse-primary-indexes.mdx
index 909316e1..9eeac48a 100644
--- a/guides/cloud-oss/data-modelling/sparse-primary-indexes.mdx
+++ b/core/guides/clickhouse/data-modelling/sparse-primary-indexes.mdx
@@ -2,7 +2,7 @@
sidebarTitle: 'Primary indexes'
description: 'In this guide we''re going to do a deep dive into ClickHouse indexing.'
title: 'A practical introduction to primary indexes in ClickHouse'
-slug: /guides/best-practices/sparse-primary-indexes
+slug: /core/guides/best-practices/sparse-primary-indexes
show_related_blogs: true
doc_type: 'guide'
keywords: ['primary index', 'indexing', 'performance', 'query optimization', 'best practices']
@@ -18,12 +18,12 @@ In this guide we're going to do a deep dive into ClickHouse indexing. We will il
- [what some of the best practices are for indexing in ClickHouse](#using-multiple-primary-indexes)
You can optionally execute all ClickHouse SQL statements and queries given in this guide by yourself on your own machine.
-For installation of ClickHouse and getting started instructions, see the [Quick Start](/get-started/setup/overview).
+For installation of ClickHouse and getting started instructions, see the [Quick Start](/core/get-started/setup/install).
This guide is focusing on ClickHouse sparse primary indexes.
-For ClickHouse [secondary data skipping indexes](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes), see the [Tutorial](/concepts/features/performance/skip-indexes/skipping-indexes).
+For ClickHouse [secondary data skipping indexes](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes), see the [Tutorial](/core/concepts/features/performance/skip-indexes/skipping-indexes).
### Data set {#data-set}
@@ -60,7 +60,7 @@ PRIMARY KEY tuple();
```
Next insert a subset of the hits data set into the table with the following SQL insert statement.
-This uses the [URL table function](/reference/functions/table-functions/url) in order to load a subset of the full dataset hosted remotely at clickhouse.com:
+This uses the [URL table function](/core/reference/functions/table-functions/url) in order to load a subset of the full dataset hosted remotely at clickhouse.com:
```sql
INSERT INTO hits_NoPrimaryKey SELECT
@@ -79,7 +79,7 @@ Ok.
ClickHouse client's result output shows us that the statement above inserted 8.87 million rows into the table.
-Lastly, in order to simplify the discussions later on in this guide and to make the diagrams and results reproducible, we [optimize](/reference/statements/optimize) the table using the FINAL keyword:
+Lastly, in order to simplify the discussions later on in this guide and to make the diagrams and results reproducible, we [optimize](/core/reference/statements/optimize) the table using the FINAL keyword:
```sql
OPTIMIZE TABLE hits_NoPrimaryKey FINAL;
@@ -130,7 +130,7 @@ To make this (way) more efficient and (much) faster, we need to use a table with
In traditional relational database management systems, the primary index would contain one entry per table row. This would result in the primary index containing 8.87 million entries for our data set. Such an index allows the fast location of specific rows, resulting in high efficiency for lookup queries and point updates. Searching an entry in a `B(+)-Tree` data structure has an average time complexity of `O(log n)`; more precisely, `log_b n = log_2 n / log_2 b` where `b` is the branching factor of the `B(+)-Tree` and `n` is the number of indexed rows. Because `b` is typically between several hundred and several thousand, `B(+)-Trees` are very shallow structures, and few disk-seeks are required to locate records. With 8.87 million rows and a branching factor of 1000, 2.3 disk seeks are needed on average. This capability comes at a cost: additional disk and memory overheads, higher insertion costs when adding new rows to the table and entries to the index, and sometimes rebalancing of the B-Tree.
-Considering the challenges associated with B-Tree indexes, table engines in ClickHouse utilise a different approach. The ClickHouse [MergeTree Engine Family](/reference/engines/table-engines/mergetree-family) has been designed and optimized to handle massive data volumes. These tables are designed to receive millions of row inserts per second and store very large (100s of Petabytes) volumes of data. Data is quickly written to a table [part by part](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage), with rules applied for merging the parts in the background. In ClickHouse each part has its own primary index. When parts are merged, then the merged part's primary indexes are also merged. At the very large scale that ClickHouse is designed for, it is paramount to be very disk and memory efficient. Therefore, instead of indexing every row, the primary index for a part has one index entry (known as a 'mark') per group of rows (called 'granule') - this technique is called **sparse index**.
+Considering the challenges associated with B-Tree indexes, table engines in ClickHouse utilise a different approach. The ClickHouse [MergeTree Engine Family](/core/reference/engines/table-engines/mergetree-family) has been designed and optimized to handle massive data volumes. These tables are designed to receive millions of row inserts per second and store very large (100s of Petabytes) volumes of data. Data is quickly written to a table [part by part](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage), with rules applied for merging the parts in the background. In ClickHouse each part has its own primary index. When parts are merged, then the merged part's primary indexes are also merged. At the very large scale that ClickHouse is designed for, it is paramount to be very disk and memory efficient. Therefore, instead of indexing every row, the primary index for a part has one index entry (known as a 'mark') per group of rows (called 'granule') - this technique is called **sparse index**.
Sparse indexing is possible because ClickHouse is storing the rows for a part on disk ordered by the primary key columns. Instead of directly locating single rows (like a B-Tree based index), the sparse primary index allows it to quickly (via a binary search over index entries) identify groups of rows that could possibly match the query. The located groups of potentially matching rows (granules) are then in parallel streamed into the ClickHouse engine in order to find the matches. This index design allows for the primary index to be small (it can, and must, completely fit into the main memory), whilst still significantly speeding up query execution times: especially for range queries that are typical in data analytics use cases.
@@ -250,7 +250,7 @@ bytes_on_disk: 207.07 MiB
The output of the ClickHouse client shows:
-- The table's data is stored in [wide format](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage) in a specific directory on disk meaning that there will be one data file (and one mark file) per table column inside that directory.
+- The table's data is stored in [wide format](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage) in a specific directory on disk meaning that there will be one data file (and one mark file) per table column inside that directory.
- The table has 8.87 million rows.
- The uncompressed data size of all rows together is 733.28 MB.
- The compressed size on disk of all rows together is 206.94 MB.
@@ -260,8 +260,8 @@ The output of the ClickHouse client shows:
### Data is stored on disk ordered by primary key columns {#data-is-stored-on-disk-ordered-by-primary-key-columns}
Our table that we created above has
-- a compound [primary key](/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries) `(UserID, URL)` and
-- a compound [sorting key](/reference/engines/table-engines/mergetree-family/mergetree#choosing-a-primary-key-that-differs-from-the-sorting-key) `(UserID, URL, EventTime)`.
+- a compound [primary key](/core/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries) `(UserID, URL)` and
+- a compound [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree#choosing-a-primary-key-that-differs-from-the-sorting-key) `(UserID, URL, EventTime)`.
- If we would have specified only the sorting key, then the primary key would be implicitly defined to be equal to the sorting key.
@@ -279,8 +279,8 @@ The inserted rows are stored on disk in lexicographical order (ascending) by the
ClickHouse allows inserting multiple rows with identical primary key column values. In this case (see row 1 and row 2 in the diagram below), the final order is determined by the specified sorting key and therefore the value of the `EventTime` column.
-ClickHouse is a column-oriented database management system. As shown in the diagram below
-- for the on disk representation, there is a single data file (*.bin) per table column where all the values for that column are stored in a compressed format, and
+ClickHouse is a column-oriented database management system. As shown in the diagram below
+- for the on disk representation, there is a single data file (*.bin) per table column where all the values for that column are stored in a compressed format, and
- the 8.87 million rows are stored on disk in lexicographic ascending order by the primary key columns (and the additional sort key columns) i.e. in this case
- first by `UserID`,
- then by `URL`,
@@ -319,7 +319,7 @@ The first (based on physical order on disk) 8192 rows (their column values) logi
Therefore all granules (except the last one) of our example table have the same size.
-- For tables with adaptive index granularity (index granularity is adaptive by [default](/reference/settings/merge-tree-settings#index_granularity_bytes) the size of some granules can be less than 8192 rows depending on the row data sizes.
+- For tables with adaptive index granularity (index granularity is adaptive by [default](/core/reference/settings/merge-tree-settings#index_granularity_bytes) the size of some granules can be less than 8192 rows depending on the row data sizes.
- We marked some column values from our primary key columns (`UserID`, `URL`) in orange.
These orange-marked column values are the primary key column values of each first row of each granule.
@@ -353,9 +353,9 @@ In total the index has 1083 entries for our table with 8.87 million rows and 108
-On a self-managed ClickHouse cluster we can use the file table function for inspecting the content of the primary index of our example table.
+On a self-managed ClickHouse cluster we can use the file table function for inspecting the content of the primary index of our example table.
-For that we first need to copy the primary index file into the user_files_path of a node from the running cluster:
+For that we first need to copy the primary index file into the user_files_path of a node from the running cluster:
Step 1: Get part-path that contains the primary index file
`
@@ -468,7 +468,7 @@ Processed 8.19 thousand rows,
The output for the ClickHouse client is now showing that instead of doing a full table scan, only 8.19 thousand rows were streamed into ClickHouse.
-If trace logging is enabled then the ClickHouse server log file shows that ClickHouse was running a binary search over the 1083 UserID index marks, in order to identify granules that possibly can contain rows with a UserID column value of `749927693`. This requires 19 steps with an average time complexity of `O(log2 n)`:
+If trace logging is enabled then the ClickHouse server log file shows that ClickHouse was running a binary search over the 1083 UserID index marks, in order to identify granules that possibly can contain rows with a UserID column value of `749927693`. This requires 19 steps with an average time complexity of `O(log2 n)`:
```response highlight={2,7}
...Executor): Key condition: (column 0 in [749927693, 749927693])
...Executor): Running binary search on index range for part all_1_9_2 (1083 marks)
@@ -489,7 +489,7 @@ Mark 176 was identified (the 'found left boundary mark' is inclusive, the 'found
-We can also reproduce this by using the EXPLAIN clause in our example query:
+We can also reproduce this by using the EXPLAIN clause in our example query:
```sql
EXPLAIN indexes = 1
SELECT URL, count(URL) AS Count
@@ -575,7 +575,7 @@ Once ClickHouse has identified and selected the index mark for a granule that ca
Each mark file entry for a specific column is storing two locations in the form of offsets:
-- The first offset ('block_offset' in the diagram above) is locating the block in the compressed column data file that contains the compressed version of the selected granule. This compressed block potentially contains a few compressed granules. The located compressed file block is uncompressed into the main memory on read.
+- The first offset ('block_offset' in the diagram above) is locating the block in the compressed column data file that contains the compressed version of the selected granule. This compressed block potentially contains a few compressed granules. The located compressed file block is uncompressed into the main memory on read.
- The second offset ('granule_offset' in the diagram above) from the mark-file provides the location of the granule within the uncompressed block data.
@@ -583,13 +583,13 @@ All the 8192 rows belonging to the located uncompressed granule are then streame
-- For tables with [wide format](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage) and without [adaptive index granularity](/resources/changelogs/oss/2019#experimental-features-1), ClickHouse uses `.mrk` mark files as visualised above, that contain entries with two 8 byte long addresses per entry. These entries are physical locations of granules that all have the same size.
+- For tables with [wide format](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage) and without [adaptive index granularity](/resources/changelogs/oss/2019#experimental-features-1), ClickHouse uses `.mrk` mark files as visualised above, that contain entries with two 8 byte long addresses per entry. These entries are physical locations of granules that all have the same size.
- Index granularity is adaptive by [default](/reference/settings/merge-tree-settings#index_granularity_bytes), but for our example table we disabled adaptive index granularity (in order to simplify the discussions in this guide, as well as make the diagrams and results reproducible). Our table is using wide format because the size of the data is larger than [min_bytes_for_wide_part](/reference/settings/merge-tree-settings#min_bytes_for_wide_part) (which is 10 MB by default for self-managed clusters).
+ Index granularity is adaptive by [default](/core/reference/settings/merge-tree-settings#index_granularity_bytes), but for our example table we disabled adaptive index granularity (in order to simplify the discussions in this guide, as well as make the diagrams and results reproducible). Our table is using wide format because the size of the data is larger than [min_bytes_for_wide_part](/core/reference/settings/merge-tree-settings#min_bytes_for_wide_part) (which is 10 MB by default for self-managed clusters).
- For tables with wide format and with adaptive index granularity, ClickHouse uses `.mrk2` mark files, that contain similar entries to `.mrk` mark files but with an additional third value per entry: the number of rows of the granule that the current entry is associated with.
-- For tables with [compact format](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage), ClickHouse uses `.mrk3` mark files.
+- For tables with [compact format](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage), ClickHouse uses `.mrk3` mark files.
@@ -684,7 +684,7 @@ Processed 8.81 million rows,
The client output indicates that ClickHouse almost executed a full table scan despite the [URL column being part of the compound primary key](#a-table-with-a-primary-key)! ClickHouse reads 8.81 million rows from the 8.87 million rows of the table.
-If [trace_logging](/reference/settings/server-settings/settings#logger) is enabled then the ClickHouse server log file shows that ClickHouse used a generic exclusion search over the 1083 URL index marks in order to identify those granules that possibly can contain rows with a URL column value of "http://public_search":
+If [trace_logging](/core/reference/settings/server-settings/settings#logger) is enabled then the ClickHouse server log file shows that ClickHouse used a generic exclusion search over the 1083 URL index marks in order to identify those granules that possibly can contain rows with a URL column value of "http://public_search":
```response highlight={3,6}
...Executor): Key condition: (column 1 in ['http://public_search',
'http://public_search'])
@@ -760,10 +760,10 @@ In our sample data set both key columns (UserID, URL) have similar high cardinal
### Note about data skipping index {#note-about-data-skipping-index}
-Because of the similarly high cardinality of UserID and URL, our [query filtering on URL](/guides/cloud-oss/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient) also wouldn't benefit much from creating a [secondary data skipping index](/concepts/features/performance/skip-indexes/skipping-indexes) on the URL column
+Because of the similarly high cardinality of UserID and URL, our [query filtering on URL](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient) also wouldn't benefit much from creating a [secondary data skipping index](/core/concepts/features/performance/skip-indexes/skipping-indexes) on the URL column
of our [table with compound primary key (UserID, URL)](#a-table-with-a-primary-key).
-For example this two statements create and populate a [minmax](/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries) data skipping index on the URL column of our table:
+For example this two statements create and populate a [minmax](/core/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries) data skipping index on the URL column of our table:
```sql
ALTER TABLE hits_UserID_URL ADD INDEX url_skipping_index URL TYPE minmax GRANULARITY 4;
ALTER TABLE hits_UserID_URL MATERIALIZE INDEX url_skipping_index;
@@ -778,7 +778,7 @@ The second index entry ('mark 1') is storing the minimum and maximum URL values
(ClickHouse also created a special [mark file](#mark-files-are-used-for-locating-granules) for to the data skipping index for [locating](#mark-files-are-used-for-locating-granules) the groups of granules associated with the index marks.)
-Because of the similarly high cardinality of UserID and URL, this secondary data skipping index can't help with excluding granules from being selected when our [query filtering on URL](/guides/cloud-oss/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient) is executed.
+Because of the similarly high cardinality of UserID and URL, this secondary data skipping index can't help with excluding granules from being selected when our [query filtering on URL](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient) is executed.
The specific URL value that the query is looking for (i.e. 'http://public_search') very likely is between the minimum and maximum value stored by the index for each group of granules resulting in ClickHouse being forced to select the group of granules (because they might contain rows matching the query).
@@ -898,9 +898,9 @@ Processed 319.49 thousand rows,
11.38 MB (18.41 million rows/s., 655.75 MB/s.)
```
-Now, instead of [almost doing a full table scan](/guides/cloud-oss/data-modelling/sparse-primary-indexes#efficient-filtering-on-secondary-key-columns), ClickHouse executed that query much more effectively.
+Now, instead of [almost doing a full table scan](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#efficient-filtering-on-secondary-key-columns), ClickHouse executed that query much more effectively.
-With the primary index from the [original table](#a-table-with-a-primary-key) where UserID was the first, and URL the second key column, ClickHouse used a [generic exclusion search](/guides/cloud-oss/data-modelling/sparse-primary-indexes#generic-exclusion-search-algorithm) over the index marks for executing that query and that wasn't very effective because of the similarly high cardinality of UserID and URL.
+With the primary index from the [original table](#a-table-with-a-primary-key) where UserID was the first, and URL the second key column, ClickHouse used a [generic exclusion search](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#generic-exclusion-search-algorithm) over the index marks for executing that query and that wasn't very effective because of the similarly high cardinality of UserID and URL.
With URL as the first column in the primary index, ClickHouse is now running binary search over the index marks.
The corresponding trace log in the ClickHouse server log file confirms that:
@@ -919,7 +919,7 @@ ClickHouse selected only 39 index marks, instead of 1076 when generic exclusion
Note that the additional table is optimized for speeding up the execution of our example query filtering on URLs.
-Similar to the [bad performance](/guides/cloud-oss/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient) of that query with our [original table](#a-table-with-a-primary-key), our [example query filtering on `UserIDs`](#the-primary-index-is-used-for-selecting-granules) won't run very effectively with the new additional table, because UserID is now the second key column in the primary index of that table and therefore ClickHouse will use generic exclusion search for granule selection, which is [not very effective for similarly high cardinality](/guides/cloud-oss/data-modelling/sparse-primary-indexes#generic-exclusion-search-algorithm) of UserID and URL.
+Similar to the [bad performance](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient) of that query with our [original table](#a-table-with-a-primary-key), our [example query filtering on `UserIDs`](#the-primary-index-is-used-for-selecting-granules) won't run very effectively with the new additional table, because UserID is now the second key column in the primary index of that table and therefore ClickHouse will use generic exclusion search for granule selection, which is [not very effective for similarly high cardinality](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#generic-exclusion-search-algorithm) of UserID and URL.
Open the details box for specifics.
@@ -971,7 +971,7 @@ We now have two tables. Optimized for speeding up queries filtering on `UserIDs`
### Option 2: Materialized Views {#option-2-materialized-views}
-Create a [materialized view](/reference/statements/create/view) on our existing table.
+Create a [materialized view](/core/reference/statements/create/view) on our existing table.
```sql
CREATE MATERIALIZED VIEW mv_hits_URL_UserID
ENGINE = MergeTree()
@@ -993,10 +993,10 @@ Ok.
- we switch the order of the key columns (compared to our [original table](#a-table-with-a-primary-key) ) in the view's primary key
- the materialized view is backed by an **implicitly created table** whose row order and primary index are based on the given primary key definition
- the implicitly created table is listed by the `SHOW TABLES` query and has a name starting with `.inner`
-- it is also possible to first explicitly create the backing table for a materialized view and then the view can target that table via the `TO [db].[table]` [clause](/reference/statements/create/view)
+- it is also possible to first explicitly create the backing table for a materialized view and then the view can target that table via the `TO [db].[table]` [clause](/core/reference/statements/create/view)
- we use the `POPULATE` keyword in order to immediately populate the implicitly created table with all 8.87 million rows from the source table [hits_UserID_URL](#a-table-with-a-primary-key)
- if new rows are inserted into the source table hits_UserID_URL, then that rows are automatically also inserted into the implicitly created table
-- Effectively the implicitly created table has the same row order and primary index as the [secondary table that we created explicitly](/guides/cloud-oss/data-modelling/sparse-primary-indexes#option-1-secondary-tables):
+- Effectively the implicitly created table has the same row order and primary index as the [secondary table that we created explicitly](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#option-1-secondary-tables):
@@ -1036,7 +1036,7 @@ Processed 335.87 thousand rows,
13.54 MB (12.91 million rows/s., 520.38 MB/s.)
```
-Because effectively the implicitly created table (and its primary index) backing the materialized view is identical to the [secondary table that we created explicitly](/guides/cloud-oss/data-modelling/sparse-primary-indexes#option-1-secondary-tables), the query is executed in the same effective way as with the explicitly created table.
+Because effectively the implicitly created table (and its primary index) backing the materialized view is identical to the [secondary table that we created explicitly](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#option-1-secondary-tables), the query is executed in the same effective way as with the explicitly created table.
The corresponding trace log in the ClickHouse server log file confirms that ClickHouse is running binary search over the index marks:
@@ -1075,7 +1075,7 @@ ALTER TABLE hits_UserID_URL
- if new rows are inserted into the source table hits_UserID_URL, then that rows are automatically also inserted into the hidden table
- a query is always (syntactically) targeting the source table hits_UserID_URL, but if the row order and primary index of the hidden table allows a more effective query execution, then that hidden table will be used instead
- please note that projections don't make queries that use ORDER BY more efficient, even if the ORDER BY matches the projection's ORDER BY statement (see https://github.com/ClickHouse/ClickHouse/issues/47333)
-- Effectively the implicitly created hidden table has the same row order and primary index as the [secondary table that we created explicitly](/guides/cloud-oss/data-modelling/sparse-primary-indexes#option-1-secondary-tables):
+- Effectively the implicitly created hidden table has the same row order and primary index as the [secondary table that we created explicitly](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#option-1-secondary-tables):
@@ -1115,7 +1115,7 @@ Processed 319.49 thousand rows, 1
1.38 MB (11.05 million rows/s., 393.58 MB/s.)
```
-Because effectively the hidden table (and its primary index) created by the projection is identical to the [secondary table that we created explicitly](/guides/cloud-oss/data-modelling/sparse-primary-indexes#option-1-secondary-tables), the query is executed in the same effective way as with the explicitly created table.
+Because effectively the hidden table (and its primary index) created by the projection is identical to the [secondary table that we created explicitly](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#option-1-secondary-tables), the query is executed in the same effective way as with the explicitly created table.
The corresponding trace log in the ClickHouse server log file confirms that ClickHouse is running binary search over the index marks:
@@ -1133,16 +1133,16 @@ The corresponding trace log in the ClickHouse server log file confirms that Clic
### Summary {#summary}
-The primary index of our [table with compound primary key (UserID, URL)](#a-table-with-a-primary-key) was very useful for speeding up a [query filtering on UserID](#the-primary-index-is-used-for-selecting-granules). But that index isn't providing significant help with speeding up a [query filtering on URL](/guides/cloud-oss/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient), despite the URL column being part of the compound primary key.
+The primary index of our [table with compound primary key (UserID, URL)](#a-table-with-a-primary-key) was very useful for speeding up a [query filtering on UserID](#the-primary-index-is-used-for-selecting-granules). But that index isn't providing significant help with speeding up a [query filtering on URL](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient), despite the URL column being part of the compound primary key.
And vice versa:
-The primary index of our [table with compound primary key (URL, UserID)](/guides/cloud-oss/data-modelling/sparse-primary-indexes#option-1-secondary-tables) was speeding up a [query filtering on URL](/guides/cloud-oss/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient), but didn't provide much support for a [query filtering on UserID](#the-primary-index-is-used-for-selecting-granules).
+The primary index of our [table with compound primary key (URL, UserID)](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#option-1-secondary-tables) was speeding up a [query filtering on URL](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient), but didn't provide much support for a [query filtering on UserID](#the-primary-index-is-used-for-selecting-granules).
Because of the similarly high cardinality of the primary key columns UserID and URL, a query that filters on the second key column [doesn't benefit much from the second key column being in the index](#generic-exclusion-search-algorithm).
-Therefore it makes sense to remove the second key column from the primary index (resulting in less memory consumption of the index) and to [use multiple primary indexes](/guides/cloud-oss/data-modelling/sparse-primary-indexes#using-multiple-primary-indexes) instead.
+Therefore it makes sense to remove the second key column from the primary index (resulting in less memory consumption of the index) and to [use multiple primary indexes](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#using-multiple-primary-indexes) instead.
-However if the key columns in a compound primary key have big differences in cardinality, then it is [beneficial for queries](/guides/cloud-oss/data-modelling/sparse-primary-indexes#generic-exclusion-search-algorithm) to order the primary key columns by cardinality in ascending order.
+However if the key columns in a compound primary key have big differences in cardinality, then it is [beneficial for queries](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#generic-exclusion-search-algorithm) to order the primary key columns by cardinality in ascending order.
The higher the cardinality difference between the key columns is, the more the order of those columns in the key matters. We will demonstrate that in the next section.
@@ -1161,7 +1161,7 @@ We will use a compound primary key containing all three aforementioned columns t
- how much (percentage of) traffic to a specific URL is from bots or
- how confident we're that a specific user is (not) a bot (what percentage of traffic from that user is (not) assumed to be bot traffic)
-We use this query for calculating the cardinalities of the three columns that we want to use as key columns in a compound primary key (note that we're using the [URL table function](/reference/functions/table-functions/url) for querying TSV data ad hoc without having to create a local table). Run this query in `clickhouse client`:
+We use this query for calculating the cardinalities of the three columns that we want to use as key columns in a compound primary key (note that we're using the [URL table function](/core/reference/functions/table-functions/url) for querying TSV data ad hoc without having to create a local table). Run this query in `clickhouse client`:
```sql
SELECT
formatReadableQuantity(uniq(URL)) AS cardinality_URL,
@@ -1248,7 +1248,7 @@ The response is:
When a query is filtering on at least one column that is part of a compound key, and is the first key column, [then ClickHouse is running the binary search algorithm over the key column's index marks](#the-primary-index-is-used-for-selecting-granules).
-When a query is filtering (only) on a column that is part of a compound key, but isn't the first key column, [then ClickHouse is using the generic exclusion search algorithm over the key column's index marks](/guides/cloud-oss/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient).
+When a query is filtering (only) on a column that is part of a compound key, but isn't the first key column, [then ClickHouse is using the generic exclusion search algorithm over the key column's index marks](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#secondary-key-columns-can-not-be-inefficient).
For the second case the ordering of the key columns in the compound primary key is significant for the effectiveness of the [generic exclusion search algorithm](https://github.com/ClickHouse/ClickHouse/blob/22.3/src/Storages/MergeTree/MergeTreeDataSelectExecutor.cpp#L1444).
@@ -1316,7 +1316,7 @@ This is the response:
```
We can see that the compression ratio for the `UserID` column is significantly higher for the table where we ordered the key columns `(IsRobot, UserID, URL)` by cardinality in ascending order.
-Although in both tables exactly the same data is stored (we inserted the same 8.87 million rows into both tables), the order of the key columns in the compound primary key has a significant influence on how much disk space the compressed data in the table's [column data files](#data-is-stored-on-disk-ordered-by-primary-key-columns) requires:
+Although in both tables exactly the same data is stored (we inserted the same 8.87 million rows into both tables), the order of the key columns in the compound primary key has a significant influence on how much disk space the compressed data in the table's [column data files](#data-is-stored-on-disk-ordered-by-primary-key-columns) requires:
- in the table `hits_URL_UserID_IsRobot` with the compound primary key `(URL, UserID, IsRobot)` where we order the key columns by cardinality in descending order, the `UserID.bin` data file takes **11.24 MiB** of disk space
- in the table `hits_IsRobot_UserID_URL` with the compound primary key `(IsRobot, UserID, URL)` where we order the key columns by cardinality in ascending order, the `UserID.bin` data file takes only **877.47 KiB** of disk space
diff --git a/guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements.mdx b/core/guides/clickhouse/data-modelling/stored-procedures-and-prepared-statements.mdx
similarity index 93%
rename from guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements.mdx
rename to core/guides/clickhouse/data-modelling/stored-procedures-and-prepared-statements.mdx
index 40a0c3a0..5a3695d9 100644
--- a/guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements.mdx
+++ b/core/guides/clickhouse/data-modelling/stored-procedures-and-prepared-statements.mdx
@@ -2,7 +2,7 @@
sidebarTitle: 'Stored procedures & query parameters'
keywords: ['clickhouse', 'stored procedures', 'prepared statements', 'query parameters', 'UDF', 'parameterized views']
description: 'Guide on stored procedures, prepared statements, and query parameters in ClickHouse'
-slug: /guides/developer/stored-procedures-and-prepared-statements
+slug: /core/guides/developer/stored-procedures-and-prepared-statements
title: 'Stored procedures and query parameters'
doc_type: 'guide'
---
@@ -99,7 +99,7 @@ SELECT format_phone('5551234567');
- Can't modify data (`INSERT`/`UPDATE`/`DELETE`)
- Recursive functions not allowed
-See [`CREATE FUNCTION`](/reference/statements/create/function) for complete syntax.
+See [`CREATE FUNCTION`](/core/reference/statements/create/function) for complete syntax.
#### Executable UDFs {#executable-udfs}
@@ -131,7 +131,7 @@ FROM customer_reviews;
Executable UDFs can implement arbitrary logic in any language (Python, Node.js, Go, etc.).
-See [Executable UDFs](/reference/functions/regular-functions/udf) for details.
+See [Executable UDFs](/core/reference/functions/regular-functions/udf) for details.
### Parameterized views {#parameterized-views}
@@ -229,7 +229,7 @@ SELECT * FROM top_products_by_category(
);
```
-See the [Parameterized Views](/reference/statements/create/view#parameterized-view) section for more information.
+See the [Parameterized Views](/core/reference/statements/create/view#parameterized-view) section for more information.
### Materialized views {#materialized-views}
@@ -308,7 +308,7 @@ SELECT * FROM monthly_sales_report
WHERE month = toStartOfMonth(today());
```
-See [Cascading Materialized Views](/concepts/features/materialized-views/cascading-materialized-views) for advanced patterns.
+See [Cascading Materialized Views](/core/concepts/features/materialized-views/cascading-materialized-views) for advanced patterns.
### External orchestration {#external-orchestration}
@@ -403,7 +403,7 @@ SELECT @status, @points;
**Query parameters**
The example below uses query parameters in ClickHouse.
-Skip ahead to ["Alternatives to prepared statements in ClickHouse"](/guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements#alternatives-to-prepared-statements-in-clickhouse)
+Skip ahead to ["Alternatives to prepared statements in ClickHouse"](/core/guides/clickhouse/data-modelling/stored-procedures-and-prepared-statements#alternatives-to-prepared-statements-in-clickhouse)
if you're not yet familiar with query parameters in ClickHouse.
@@ -555,7 +555,7 @@ print(f"Status: {status}, Loyalty Points: {points}")
1. **Control flow** - MySQL stored procedure uses `IF/ELSE`, `WHILE` loops. In ClickHouse, implement this logic in your application code (Python, Java, etc.)
2. **Transactions** - MySQL supports `BEGIN/COMMIT/ROLLBACK` for ACID transactions. ClickHouse is an analytical database optimized for append-only workloads, not transactional updates
-3. **Updates** - MySQL uses `UPDATE` statements. ClickHouse prefers `INSERT` with [ReplacingMergeTree](/reference/engines/table-engines/mergetree-family/replacingmergetree) or [CollapsingMergeTree](/reference/engines/table-engines/mergetree-family/collapsingmergetree) for mutable data
+3. **Updates** - MySQL uses `UPDATE` statements. ClickHouse prefers `INSERT` with [ReplacingMergeTree](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) or [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) for mutable data
4. **Variables and state** - MySQL stored procedures can declare variables (`DECLARE v_discount`). With ClickHouse, manage state in your application code
5. **Error handling** - MySQL supports `SIGNAL` and exception handlers. In application code, use your language's native error handling (try/catch)
@@ -854,7 +854,7 @@ def get_user_orders(user_id: int, start_date: str):
### MySQL protocol prepared statements {#mysql-protocol-prepared-statements}
-ClickHouse's [MySQL interface](/integrations/connectors/data-integrations/drivers-and-interfaces/mysql) includes minimal support for prepared statements (`COM_STMT_PREPARE`, `COM_STMT_EXECUTE`, `COM_STMT_CLOSE`), primarily to enable connectivity with tools like Tableau Online that wrap queries in prepared statements.
+ClickHouse's [MySQL interface](/core/concepts/features/interfaces/mysql) includes minimal support for prepared statements (`COM_STMT_PREPARE`, `COM_STMT_EXECUTE`, `COM_STMT_CLOSE`), primarily to enable connectivity with tools like Tableau Online that wrap queries in prepared statements.
**Key limitations:**
@@ -880,7 +880,7 @@ SELECT * FROM users WHERE id = {user_id: UInt64};
```
-For more details, see the [MySQL Interface documentation](/integrations/connectors/data-integrations/drivers-and-interfaces/mysql) and the [blog post on MySQL support](https://clickhouse.com/blog/mysql-support-in-clickhouse-the-journey).
+For more details, see the [MySQL Interface documentation](/core/concepts/features/interfaces/mysql) and the [blog post on MySQL support](https://clickhouse.com/blog/mysql-support-in-clickhouse-the-journey).
## Summary {#summary}
@@ -905,8 +905,8 @@ Query parameters can be used for:
## Related documentation {#related-documentation}
-- [`CREATE FUNCTION`](/reference/statements/create/function) - User-Defined Functions
-- [`CREATE VIEW`](/reference/statements/create/view) - Views including parameterized and materialized
-- [SQL Syntax - Query Parameters](/reference/syntax#defining-and-using-query-parameters) - Complete parameter syntax
-- [Cascading Materialized Views](/concepts/features/materialized-views/cascading-materialized-views) - Advanced materialized view patterns
-- [Executable UDFs](/reference/functions/regular-functions/udf) - External function execution
+- [`CREATE FUNCTION`](/core/reference/statements/create/function) - User-Defined Functions
+- [`CREATE VIEW`](/core/reference/statements/create/view) - Views including parameterized and materialized
+- [SQL Syntax - Query Parameters](/core/reference/syntax#defining-and-using-query-parameters) - Complete parameter syntax
+- [Cascading Materialized Views](/core/concepts/features/materialized-views/cascading-materialized-views) - Advanced materialized view patterns
+- [Executable UDFs](/core/reference/functions/regular-functions/udf) - External function execution
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/anyIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/anyIf.mdx
similarity index 79%
rename from guides/cloud-oss/examples/aggregate-function-combinators/anyIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/anyIf.mdx
index 61215157..5df9ae18 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/anyIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/anyIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`If`](/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`any`](/reference/functions/aggregate-functions/reference/any)
+The [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`any`](/core/reference/functions/aggregate-functions/reference/any)
aggregate function to select the first encountered element from a given column
that matches the given condition.
@@ -53,5 +53,5 @@ FROM sales;
```
## See also {#see-also}
-- [`any`](/reference/functions/aggregate-functions/reference/any)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`any`](/core/reference/functions/aggregate-functions/reference/any)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/argMaxIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/argMaxIf.mdx
similarity index 78%
rename from guides/cloud-oss/examples/aggregate-function-combinators/argMaxIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/argMaxIf.mdx
index d8349654..51777505 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/argMaxIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/argMaxIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`If`](/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`argMax`](/reference/functions/aggregate-functions/reference/argMax)
+The [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`argMax`](/core/reference/functions/aggregate-functions/reference/argMax)
function to find the value of `arg` that corresponds to the maximum value of `val` for rows where the condition is true,
using the `argMaxIf` aggregate combinator function.
@@ -54,7 +54,7 @@ among the popular products.
```
## See also {#see-also}
-- [`argMax`](/reference/functions/aggregate-functions/reference/argMax)
-- [`argMin`](/reference/functions/aggregate-functions/reference/argMin)
-- [`argMinIf`](/guides/cloud-oss/examples/aggregate-function-combinators/argMinIf)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`argMax`](/core/reference/functions/aggregate-functions/reference/argMax)
+- [`argMin`](/core/reference/functions/aggregate-functions/reference/argMin)
+- [`argMinIf`](/core/guides/clickhouse/examples/aggregate-function-combinators/argMinIf)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/argMinIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/argMinIf.mdx
similarity index 80%
rename from guides/cloud-oss/examples/aggregate-function-combinators/argMinIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/argMinIf.mdx
index 6cee98af..f9457d53 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/argMinIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/argMinIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`If`](/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`argMin`](/reference/functions/aggregate-functions/reference/argMin)
+The [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`argMin`](/core/reference/functions/aggregate-functions/reference/argMin)
function to find the value of `arg` that corresponds to the minimum value of `val` for rows where the condition is true,
using the `argMinIf` aggregate combinator function.
@@ -59,7 +59,7 @@ but only considering rows where `in_stock = 1`. For example:
```
## See also {#see-also}
-- [`argMin`](/reference/functions/aggregate-functions/reference/argMin)
-- [`argMax`](/reference/functions/aggregate-functions/reference/argMax)
-- [`argMaxIf`](/guides/cloud-oss/examples/aggregate-function-combinators/argMaxIf)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`argMin`](/core/reference/functions/aggregate-functions/reference/argMin)
+- [`argMax`](/core/reference/functions/aggregate-functions/reference/argMax)
+- [`argMaxIf`](/core/guides/clickhouse/examples/aggregate-function-combinators/argMaxIf)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/avgIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/avgIf.mdx
similarity index 80%
rename from guides/cloud-oss/examples/aggregate-function-combinators/avgIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/avgIf.mdx
index 8e216a1b..5677d040 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/avgIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/avgIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`If`](/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`avg`](/reference/functions/aggregate-functions/reference/avg)
+The [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
function to calculate the arithmetic mean of values for rows where the condition is true,
using the `avgIf` aggregate combinator function.
@@ -49,5 +49,5 @@ In this case, it will average the amounts: 100.50, 200.75, 300.00, and 175.25.
```
## See also {#see-also}
-- [`avg`](/reference/functions/aggregate-functions/reference/avg)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/avgMap.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/avgMap.mdx
similarity index 86%
rename from guides/cloud-oss/examples/aggregate-function-combinators/avgMap.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/avgMap.mdx
index 3fe69e46..126daf81 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/avgMap.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/avgMap.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`Map`](/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`avg`](/reference/functions/aggregate-functions/reference/avg)
+The [`Map`](/core/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
function to calculate the arithmetic mean of values in a Map according to each key, using the `avgMap`
aggregate combinator function.
@@ -61,5 +61,5 @@ The `avgMap` function will calculate the average count for each status code with
```
## See also {#see-also}
-- [`avg`](/reference/functions/aggregate-functions/reference/avg)
-- [`Map combinator`](/reference/functions/aggregate-functions/combinators#-map)
+- [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
+- [`Map combinator`](/core/reference/functions/aggregate-functions/combinators#-map)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/avgMerge.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/avgMerge.mdx
similarity index 50%
rename from guides/cloud-oss/examples/aggregate-function-combinators/avgMerge.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/avgMerge.mdx
index fe235f1f..f3f0bc05 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/avgMerge.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/avgMerge.mdx
@@ -9,17 +9,17 @@ doc_type: 'reference'
## Description {#description}
-The [`Merge`](/reference/functions/aggregate-functions/combinators#-state) combinator
-can be applied to the [`avg`](/reference/functions/aggregate-functions/reference/avg)
+The [`Merge`](/core/reference/functions/aggregate-functions/combinators#-state) combinator
+can be applied to the [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
function to produce a final result by combining partial aggregate states.
## Example usage {#example-usage}
The `Merge` combinator is closely related to the `State` combinator. Refer to
-["avgState example usage"](/guides/cloud-oss/examples/aggregate-function-combinators/avgState#example-usage)
+["avgState example usage"](/core/guides/clickhouse/examples/aggregate-function-combinators/avgState#example-usage)
for an example of both `avgMerge` and `avgState`.
## See also {#see-also}
-- [`avg`](/reference/functions/aggregate-functions/reference/avg)
-- [`Merge`](/reference/functions/aggregate-functions/combinators#-merge)
-- [`MergeState`](/reference/functions/aggregate-functions/combinators#-mergestate)
+- [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
+- [`Merge`](/core/reference/functions/aggregate-functions/combinators#-merge)
+- [`MergeState`](/core/reference/functions/aggregate-functions/combinators#-mergestate)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/avgMergeState.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/avgMergeState.mdx
similarity index 92%
rename from guides/cloud-oss/examples/aggregate-function-combinators/avgMergeState.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/avgMergeState.mdx
index 4c002fd4..12d78c99 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/avgMergeState.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/avgMergeState.mdx
@@ -11,8 +11,8 @@ doc_type: 'reference'
## Description {#description}
-The [`MergeState`](/reference/functions/aggregate-functions/combinators#-state) combinator
-can be applied to the [`avg`](/reference/functions/aggregate-functions/reference/avg)
+The [`MergeState`](/core/reference/functions/aggregate-functions/combinators#-state) combinator
+can be applied to the [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
function to merge partial aggregate states of type `AverageFunction(avg, T)` and
return a new intermediate aggregation state.
@@ -207,7 +207,7 @@ ORDER BY datacenter;
```
## See also {#see-also}
-- [`avg`](/reference/functions/aggregate-functions/reference/avg)
-- [`AggregateFunction`](/reference/data-types/aggregatefunction)
-- [`Merge`](/reference/functions/aggregate-functions/combinators#-merge)
-- [`MergeState`](/reference/functions/aggregate-functions/combinators#-mergestate)
+- [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
+- [`AggregateFunction`](/core/reference/data-types/aggregatefunction)
+- [`Merge`](/core/reference/functions/aggregate-functions/combinators#-merge)
+- [`MergeState`](/core/reference/functions/aggregate-functions/combinators#-mergestate)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/avgResample.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/avgResample.mdx
similarity index 81%
rename from guides/cloud-oss/examples/aggregate-function-combinators/avgResample.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/avgResample.mdx
index d111ab98..4014451f 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/avgResample.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/avgResample.mdx
@@ -9,8 +9,8 @@ doc_type: 'reference'
## Description {#description}
-The [`Resample`](/reference/functions/aggregate-functions/combinators#-resample)
-combinator can be applied to the [`count`](/reference/functions/aggregate-functions/reference/count)
+The [`Resample`](/core/reference/functions/aggregate-functions/combinators#-resample)
+combinator can be applied to the [`count`](/core/reference/functions/aggregate-functions/reference/count)
aggregate function to count values of a specified key column in a fixed number
of intervals (`N`).
@@ -63,5 +63,5 @@ FROM avg_wage;
```
## See also {#see-also}
-- [`count`](/reference/functions/aggregate-functions/reference/count)
-- [`Resample combinator`](/reference/functions/aggregate-functions/combinators#-resample)
+- [`count`](/core/reference/functions/aggregate-functions/reference/count)
+- [`Resample combinator`](/core/reference/functions/aggregate-functions/combinators#-resample)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/avgState.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/avgState.mdx
similarity index 93%
rename from guides/cloud-oss/examples/aggregate-function-combinators/avgState.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/avgState.mdx
index 91b8ea2e..d975ab83 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/avgState.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/avgState.mdx
@@ -9,8 +9,8 @@ doc_type: 'reference'
## Description {#description}
-The [`State`](/reference/functions/aggregate-functions/combinators#-state) combinator
-can be applied to the [`avg`](/reference/functions/aggregate-functions/reference/avg)
+The [`State`](/core/reference/functions/aggregate-functions/combinators#-state) combinator
+can be applied to the [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
function to produce an intermediate state of `AggregateFunction(avg, T)` type where
`T` is the specified type for the average.
@@ -141,5 +141,5 @@ Now we see the correct averages:
```
## See also {#see-also}
-- [`avg`](/reference/functions/aggregate-functions/reference/avg)
-- [`State`](/reference/functions/aggregate-functions/combinators#-state)
+- [`avg`](/core/reference/functions/aggregate-functions/reference/avg)
+- [`State`](/core/reference/functions/aggregate-functions/combinators#-state)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/countIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/countIf.mdx
similarity index 81%
rename from guides/cloud-oss/examples/aggregate-function-combinators/countIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/countIf.mdx
index cb32594b..6762bb14 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/countIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/countIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`If`](/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`count`](/reference/functions/aggregate-functions/reference/count)
+The [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`count`](/core/reference/functions/aggregate-functions/reference/count)
function to count the number of rows where the condition is true,
using the `countIf` aggregate combinator function.
@@ -51,5 +51,5 @@ The `countIf` function will count only the rows where `is_successful = 1` for ea
```
## See also {#see-also}
-- [`count`](/reference/functions/aggregate-functions/reference/count)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`count`](/core/reference/functions/aggregate-functions/reference/count)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/countResample.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/countResample.mdx
similarity index 79%
rename from guides/cloud-oss/examples/aggregate-function-combinators/countResample.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/countResample.mdx
index 94a667d1..ba239892 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/countResample.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/countResample.mdx
@@ -9,8 +9,8 @@ doc_type: 'reference'
## Description {#description}
-The [`Resample`](/reference/functions/aggregate-functions/combinators#-resample)
-combinator can be applied to the [`count`](/reference/functions/aggregate-functions/reference/count)
+The [`Resample`](/core/reference/functions/aggregate-functions/combinators#-resample)
+combinator can be applied to the [`count`](/core/reference/functions/aggregate-functions/reference/count)
aggregate function to count values of a specified key column in a fixed number
of intervals (`N`).
@@ -56,5 +56,5 @@ SELECT countResample(30, 75, 30)(name, age) AS amount FROM employee_data
```
## See also {#see-also}
-- [`count`](/reference/functions/aggregate-functions/reference/count)
-- [`Resample combinator`](/reference/functions/aggregate-functions/combinators#-resample)
+- [`count`](/core/reference/functions/aggregate-functions/reference/count)
+- [`Resample combinator`](/core/reference/functions/aggregate-functions/combinators#-resample)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/groupArrayDistinct.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayDistinct.mdx
similarity index 73%
rename from guides/cloud-oss/examples/aggregate-function-combinators/groupArrayDistinct.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayDistinct.mdx
index d062a6f9..8e7be59d 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/groupArrayDistinct.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayDistinct.mdx
@@ -11,8 +11,8 @@ import { RunnableCode } from "/snippets/components/RunnableCode/RunnableCode.jsx
## Description {#description}
-The [`groupArrayDistinct`](/reference/functions/aggregate-functions/combinators#-foreach) combinator
-can be applied to the [`groupArray`](/reference/functions/aggregate-functions/reference/sum) aggregate function to create an array
+The [`groupArrayDistinct`](/core/reference/functions/aggregate-functions/combinators#-foreach) combinator
+can be applied to the [`groupArray`](/core/reference/functions/aggregate-functions/reference/sum) aggregate function to create an array
of distinct argument values.
## Example usage {#example-usage}
@@ -37,5 +37,5 @@ LIMIT 20;
```
## See also {#see-also}
-- [`groupArray`](/reference/functions/aggregate-functions/reference/groupArray)
-- [`Distinct combinator`](/reference/functions/aggregate-functions/combinators#-distinct)
+- [`groupArray`](/core/reference/functions/aggregate-functions/reference/groupArray)
+- [`Distinct combinator`](/core/reference/functions/aggregate-functions/combinators#-distinct)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/groupArrayResample.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayResample.mdx
similarity index 84%
rename from guides/cloud-oss/examples/aggregate-function-combinators/groupArrayResample.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayResample.mdx
index 113e6608..c528f8b8 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/groupArrayResample.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayResample.mdx
@@ -9,8 +9,8 @@ doc_type: 'reference'
## Description {#description}
-The [`Resample`](/reference/functions/aggregate-functions/combinators#-resample)
-combinator can be applied to the [`groupArray`](/reference/functions/aggregate-functions/reference/sum) aggregate function to
+The [`Resample`](/core/reference/functions/aggregate-functions/combinators#-resample)
+combinator can be applied to the [`groupArray`](/core/reference/functions/aggregate-functions/reference/sum) aggregate function to
divide the range of a specified key column into a fixed number of intervals (`N`)
and construct the resulting array by selecting one representative value
(corresponding to the minimum key) from the data points falling into each interval.
@@ -60,5 +60,5 @@ SELECT groupArrayResample(30, 75, 30)(name, age) FROM employee_data
```
## See also {#see-also}
-- [`groupArray`](/reference/functions/aggregate-functions/reference/groupArray)
-- [`Resample combinator`](/reference/functions/aggregate-functions/combinators#-resample)
+- [`groupArray`](/core/reference/functions/aggregate-functions/reference/groupArray)
+- [`Resample combinator`](/core/reference/functions/aggregate-functions/combinators#-resample)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/maxMap.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/maxMap.mdx
similarity index 86%
rename from guides/cloud-oss/examples/aggregate-function-combinators/maxMap.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/maxMap.mdx
index 705e0da6..01a323d3 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/maxMap.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/maxMap.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`Map`](/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`max`](/reference/functions/aggregate-functions/reference/max)
+The [`Map`](/core/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`max`](/core/reference/functions/aggregate-functions/reference/max)
function to calculate the maximum value in a Map according to each key, using the `maxMap`
aggregate combinator function.
@@ -61,5 +61,5 @@ The `maxMap` function will find the maximum count for each status code within ea
```
## See also {#see-also}
-- [`max`](/reference/functions/aggregate-functions/reference/max)
-- [`Map combinator`](/reference/functions/aggregate-functions/combinators#-map)
+- [`max`](/core/reference/functions/aggregate-functions/reference/max)
+- [`Map combinator`](/core/reference/functions/aggregate-functions/combinators#-map)
diff --git a/core/guides/clickhouse/examples/aggregate-function-combinators/maxSimpleState.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/maxSimpleState.mdx
new file mode 100644
index 00000000..b3e24eb3
--- /dev/null
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/maxSimpleState.mdx
@@ -0,0 +1,24 @@
+---
+slug: '/examples/aggregate-function-combinators/maxSimpleState'
+title: 'maxSimpleState'
+description: 'Example of using the maxSimpleState combinator'
+keywords: ['max', 'state', 'simple', 'combinator', 'examples', 'maxSimpleState']
+sidebarTitle: 'maxSimpleState'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+The [`SimpleState`](/core/reference/functions/aggregate-functions/combinators#-simplestate) combinator can be applied to the [`max`](/core/reference/functions/aggregate-functions/reference/max)
+function to return the maximum value across all input values. It returns the
+result with type `SimpleAggregateState`.
+
+## Example usage {#example-usage}
+
+The example given in [`minSimpleState`](/core/guides/clickhouse/examples/aggregate-function-combinators/minSimpleState#example-usage)
+demonstrates a usage of both `maxSimpleState` and `minSimpleState`.
+
+## See also {#see-also}
+- [`max`](/core/reference/functions/aggregate-functions/reference/max)
+- [`SimpleState combinator`](/core/reference/functions/aggregate-functions/combinators#-simplestate)
+- [`SimpleAggregateFunction type`](/core/reference/data-types/simpleaggregatefunction)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/minMap.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/minMap.mdx
similarity index 86%
rename from guides/cloud-oss/examples/aggregate-function-combinators/minMap.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/minMap.mdx
index 758ba0b1..2a8f74b2 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/minMap.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/minMap.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`Map`](/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`min`](/reference/functions/aggregate-functions/reference/min)
+The [`Map`](/core/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`min`](/core/reference/functions/aggregate-functions/reference/min)
function to calculate the minimum value in a Map according to each key, using the `minMap`
aggregate combinator function.
@@ -61,5 +61,5 @@ The `minMap` function will find the minimum count for each status code within ea
```
## See also {#see-also}
-- [`min`](/reference/functions/aggregate-functions/reference/min)
-- [`Map combinator`](/reference/functions/aggregate-functions/combinators#-map)
+- [`min`](/core/reference/functions/aggregate-functions/reference/min)
+- [`Map combinator`](/core/reference/functions/aggregate-functions/combinators#-map)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/minSimpleState.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/minSimpleState.mdx
similarity index 90%
rename from guides/cloud-oss/examples/aggregate-function-combinators/minSimpleState.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/minSimpleState.mdx
index 4e23fde8..8541d50e 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/minSimpleState.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/minSimpleState.mdx
@@ -9,9 +9,9 @@ doc_type: 'reference'
## Description {#description}
-The [`SimpleState`](/reference/functions/aggregate-functions/combinators#-simplestate) combinator can be applied to the [`min`](/reference/functions/aggregate-functions/reference/min)
+The [`SimpleState`](/core/reference/functions/aggregate-functions/combinators#-simplestate) combinator can be applied to the [`min`](/core/reference/functions/aggregate-functions/reference/min)
function to return the minimum value across all input values. It returns the
-result with type [`SimpleAggregateFunction`](/reference/data-types/simpleaggregatefunction).
+result with type [`SimpleAggregateFunction`](/core/reference/data-types/simpleaggregatefunction).
## Example usage {#example-usage}
@@ -163,6 +163,6 @@ partial aggregation states.
## See also {#see-also}
-- [`min`](/reference/functions/aggregate-functions/reference/min)
-- [`SimpleState combinator`](/reference/functions/aggregate-functions/combinators#-simplestate)
-- [`SimpleAggregateFunction type`](/reference/data-types/simpleaggregatefunction)
+- [`min`](/core/reference/functions/aggregate-functions/reference/min)
+- [`SimpleState combinator`](/core/reference/functions/aggregate-functions/combinators#-simplestate)
+- [`SimpleAggregateFunction type`](/core/reference/data-types/simpleaggregatefunction)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx
similarity index 84%
rename from guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx
index 70f208a0..226eeaea 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingArrayIf.mdx
@@ -9,8 +9,8 @@ doc_type: 'reference'
## Description {#description}
-The [`Array`](/reference/functions/aggregate-functions/combinators#-array) and [`If`](/reference/functions/aggregate-functions/combinators#-if)
-combinator can be applied to the [`quantilesTiming`](/reference/functions/aggregate-functions/reference/quantileTiming)
+The [`Array`](/core/reference/functions/aggregate-functions/combinators#-array) and [`If`](/core/reference/functions/aggregate-functions/combinators#-if)
+combinator can be applied to the [`quantilesTiming`](/core/reference/functions/aggregate-functions/reference/quantileTiming)
function to calculate quantiles of timing values in arrays for rows where the condition is true,
using the `quantilesTimingArrayIf` aggregate combinator function.
@@ -58,5 +58,5 @@ The returned array contains the following quantiles in order:
```
## See also {#see-also}
-- [`quantilesTiming`](/reference/functions/aggregate-functions/reference/quantileTiming)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`quantilesTiming`](/core/reference/functions/aggregate-functions/reference/quantileTiming)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingIf.mdx
similarity index 87%
rename from guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingIf.mdx
index c95f9a57..a91c4167 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`If`](/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`quantilesTiming`](/reference/functions/aggregate-functions/reference/quantileTiming)
+The [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`quantilesTiming`](/core/reference/functions/aggregate-functions/reference/quantileTiming)
function to calculate quantiles of timing values for rows where the condition is true,
using the `quantilesTimingIf` aggregate combinator function.
@@ -78,5 +78,5 @@ The returned array contains the following quantiles in order:
```
## See also {#see-also}
-- [`quantilesTiming`](/reference/functions/aggregate-functions/reference/quantileTiming)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`quantilesTiming`](/core/reference/functions/aggregate-functions/reference/quantileTiming)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/sumArray.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/sumArray.mdx
similarity index 74%
rename from guides/cloud-oss/examples/aggregate-function-combinators/sumArray.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/sumArray.mdx
index c0720651..de0a06be 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/sumArray.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/sumArray.mdx
@@ -9,8 +9,8 @@ doc_type: 'reference'
## Description {#description}
-The [`Array`](/reference/functions/aggregate-functions/combinators#-array) combinator
-can be applied to the [`sum`](/reference/functions/aggregate-functions/reference/sum)
+The [`Array`](/core/reference/functions/aggregate-functions/combinators#-array) combinator
+can be applied to the [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
function to calculate the sum of all elements in an array, using the `sumArray`
aggregate combinator function.
@@ -49,7 +49,7 @@ For example, on `2024-01-01`, it sums `100 + 200 + 150 = 450`. This gives the
same result as `arraySum`.
## See also {#see-also}
-- [`sum`](/reference/functions/aggregate-functions/reference/sum)
-- [`arraySum`](/reference/functions/regular-functions/array-functions#arraySum)
-- [`Array combinator`](/reference/functions/aggregate-functions/combinators#-array)
-- [`sumMap`](/guides/cloud-oss/examples/aggregate-function-combinators/sumMap)
+- [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
+- [`arraySum`](/core/reference/functions/regular-functions/array-functions#arraySum)
+- [`Array combinator`](/core/reference/functions/aggregate-functions/combinators#-array)
+- [`sumMap`](/core/guides/clickhouse/examples/aggregate-function-combinators/sumMap)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/sumForEach.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/sumForEach.mdx
similarity index 79%
rename from guides/cloud-oss/examples/aggregate-function-combinators/sumForEach.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/sumForEach.mdx
index 7486e058..8a7a56db 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/sumForEach.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/sumForEach.mdx
@@ -11,8 +11,8 @@ import { RunnableCode } from "/snippets/components/RunnableCode/RunnableCode.jsx
## Description {#description}
-The [`ForEach`](/reference/functions/aggregate-functions/combinators#-foreach) combinator
-can be applied to the [`sum`](/reference/functions/aggregate-functions/reference/sum) aggregate function to turn it from an aggregate
+The [`ForEach`](/core/reference/functions/aggregate-functions/combinators#-foreach) combinator
+can be applied to the [`sum`](/core/reference/functions/aggregate-functions/reference/sum) aggregate function to turn it from an aggregate
function which operates on row values to an aggregate function which operates on
array columns, applying the aggregate to each element in the array across rows.
@@ -47,5 +47,5 @@ ORDER BY hour_of_day;
```
## See also {#see-also}
-- [`sum`](/reference/functions/aggregate-functions/reference/sum)
-- [`ForEach` combinator](/reference/functions/aggregate-functions/combinators#-foreach)
+- [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
+- [`ForEach` combinator](/core/reference/functions/aggregate-functions/combinators#-foreach)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/sumIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/sumIf.mdx
similarity index 95%
rename from guides/cloud-oss/examples/aggregate-function-combinators/sumIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/sumIf.mdx
index ed7918ab..363f2948 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/sumIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/sumIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`If`](/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`sum`](/reference/functions/aggregate-functions/reference/sum)
+The [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinator can be applied to the [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
function to calculate the sum of values for rows where the condition is true,
using the `sumIf` aggregate combinator function.
@@ -121,5 +121,5 @@ ORDER BY month;
```
## See also {#see-also}
-- [`sum`](/reference/functions/aggregate-functions/reference/sum)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/sumMap.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/sumMap.mdx
similarity index 86%
rename from guides/cloud-oss/examples/aggregate-function-combinators/sumMap.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/sumMap.mdx
index 6fd449a3..8641d757 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/sumMap.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/sumMap.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`Map`](/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`sum`](/reference/functions/aggregate-functions/reference/sum)
+The [`Map`](/core/reference/functions/aggregate-functions/combinators#-map) combinator can be applied to the [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
function to calculate the sum of values in a Map according to each key, using the `sumMap`
aggregate combinator function.
@@ -61,5 +61,5 @@ The `sumMap` function will calculate the total count for each status code within
```
## See also {#see-also}
-- [`sum`](/reference/functions/aggregate-functions/reference/sum)
-- [`Map combinator`](/reference/functions/aggregate-functions/combinators#-map)
+- [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
+- [`Map combinator`](/core/reference/functions/aggregate-functions/combinators#-map)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/sumSimpleState.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/sumSimpleState.mdx
similarity index 84%
rename from guides/cloud-oss/examples/aggregate-function-combinators/sumSimpleState.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/sumSimpleState.mdx
index b3fb7fd8..7d75be28 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/sumSimpleState.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/sumSimpleState.mdx
@@ -9,9 +9,9 @@ doc_type: 'reference'
## Description {#description}
-The [`SimpleState`](/reference/functions/aggregate-functions/combinators#-simplestate) combinator can be applied to the [`sum`](/reference/functions/aggregate-functions/reference/sum)
+The [`SimpleState`](/core/reference/functions/aggregate-functions/combinators#-simplestate) combinator can be applied to the [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
function to return the sum across all input values. It returns the result with
-type [`SimpleAggregateFunction`](/reference/data-types/simpleaggregatefunction).
+type [`SimpleAggregateFunction`](/core/reference/data-types/simpleaggregatefunction).
## Example usage {#example-usage}
@@ -100,6 +100,6 @@ ORDER BY post_id ASC;
```
## See also {#see-also}
-- [`sum`](/reference/functions/aggregate-functions/reference/sum)
-- [`SimpleState combinator`](/reference/functions/aggregate-functions/combinators#-simplestate)
-- [`SimpleAggregateFunction type`](/reference/data-types/simpleaggregatefunction)
+- [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
+- [`SimpleState combinator`](/core/reference/functions/aggregate-functions/combinators#-simplestate)
+- [`SimpleAggregateFunction type`](/core/reference/data-types/simpleaggregatefunction)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/uniqArray.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/uniqArray.mdx
similarity index 80%
rename from guides/cloud-oss/examples/aggregate-function-combinators/uniqArray.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/uniqArray.mdx
index 46369909..3ac5a1f7 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/uniqArray.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/uniqArray.mdx
@@ -9,8 +9,8 @@ doc_type: 'reference'
## Description {#description}
-The [`Array`](/reference/functions/aggregate-functions/combinators#-array) combinator
-can be applied to the [`uniq`](/reference/functions/aggregate-functions/reference/uniq)
+The [`Array`](/core/reference/functions/aggregate-functions/combinators#-array) combinator
+can be applied to the [`uniq`](/core/reference/functions/aggregate-functions/reference/uniq)
function to calculate the approximate number of unique elements across all arrays,
using the `uniqArray` aggregate combinator function.
@@ -54,7 +54,7 @@ In this example:
```
## See also {#see-also}
-- [`uniq`](/reference/functions/aggregate-functions/reference/uniq)
-- [`arrayJoin`](/reference/functions/regular-functions/array-join)
-- [`Array combinator`](/reference/functions/aggregate-functions/combinators#-array)
-- [`uniqCombined`](/reference/functions/aggregate-functions/reference/uniqCombined)
+- [`uniq`](/core/reference/functions/aggregate-functions/reference/uniq)
+- [`arrayJoin`](/core/reference/functions/regular-functions/array-join)
+- [`Array combinator`](/core/reference/functions/aggregate-functions/combinators#-array)
+- [`uniqCombined`](/core/reference/functions/aggregate-functions/reference/uniqCombined)
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/uniqArrayIf.mdx b/core/guides/clickhouse/examples/aggregate-function-combinators/uniqArrayIf.mdx
similarity index 84%
rename from guides/cloud-oss/examples/aggregate-function-combinators/uniqArrayIf.mdx
rename to core/guides/clickhouse/examples/aggregate-function-combinators/uniqArrayIf.mdx
index f0205f95..9c8bff9d 100644
--- a/guides/cloud-oss/examples/aggregate-function-combinators/uniqArrayIf.mdx
+++ b/core/guides/clickhouse/examples/aggregate-function-combinators/uniqArrayIf.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The [`Array`](/reference/functions/aggregate-functions/combinators#-array) and [`If`](/reference/functions/aggregate-functions/combinators#-if) combinators can be applied to the [`uniq`](/reference/functions/aggregate-functions/reference/uniq)
+The [`Array`](/core/reference/functions/aggregate-functions/combinators#-array) and [`If`](/core/reference/functions/aggregate-functions/combinators#-if) combinators can be applied to the [`uniq`](/core/reference/functions/aggregate-functions/reference/uniq)
function to count the number of unique values in arrays for rows where the
condition is true, using the `uniqArrayIf` aggregate combinator function.
@@ -77,6 +77,6 @@ total_unique_products: 7
```
## See also {#see-also}
-- [`uniq`](/reference/functions/aggregate-functions/reference/uniq)
-- [`Array combinator`](/reference/functions/aggregate-functions/combinators#-array)
-- [`If combinator`](/reference/functions/aggregate-functions/combinators#-if)
+- [`uniq`](/core/reference/functions/aggregate-functions/reference/uniq)
+- [`Array combinator`](/core/reference/functions/aggregate-functions/combinators#-array)
+- [`If combinator`](/core/reference/functions/aggregate-functions/combinators#-if)
diff --git a/core/guides/clickhouse/index.mdx b/core/guides/clickhouse/index.mdx
new file mode 100644
index 00000000..03d24c0f
--- /dev/null
+++ b/core/guides/clickhouse/index.mdx
@@ -0,0 +1,34 @@
+---
+slug: /core/guides/developer/overview
+title: 'ClickHouse guides'
+sidebarTitle: 'Overview'
+description: 'Guides for working with ClickHouse — data modelling, performance, examples, OSS deployment, and more.'
+keywords: ['ClickHouse guides', 'developer guides', 'data modelling', 'performance', 'deployment', 'OSS']
+doc_type: 'landing-page'
+---
+
+Pick an area to dive into.
+
+
+
+ Working with CSV, Parquet, Arrow, Avro, JSON, SQL, binary, and template/regex formats.
+
+
+ Schema design, primary indexes, denormalization, backfilling, compression, and working with arrays/joins.
+
+
+ Query optimization, the analyzer, and techniques for understanding query execution.
+
+
+ Worked examples of every aggregate-function combinator (`-If`, `-Map`, `-Array`, `-State`, `-Merge`, `-Resample`, etc.).
+
+
+ Upgrade procedure for self-managed ClickHouse deployments.
+
+
+ Sizing, hardware recommendations, and operational tips for running ClickHouse OSS.
+
+
+ Replication, sharding, Keeper, monitoring, and end-to-end deployment examples.
+
+
\ No newline at end of file
diff --git a/guides/cloud-oss/performance-and-monitoring/analyzer.mdx b/core/guides/clickhouse/performance-and-monitoring/analyzer.mdx
similarity index 98%
rename from guides/cloud-oss/performance-and-monitoring/analyzer.mdx
rename to core/guides/clickhouse/performance-and-monitoring/analyzer.mdx
index d1902a5d..6a69b00d 100644
--- a/guides/cloud-oss/performance-and-monitoring/analyzer.mdx
+++ b/core/guides/clickhouse/performance-and-monitoring/analyzer.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
---
In ClickHouse version `24.3`, the new query analyzer was enabled by default.
-You can read more details about how it works [here](/guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer#analyzer).
+You can read more details about how it works [here](/core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer#analyzer).
## Known incompatibilities {#known-incompatibilities}
diff --git a/guides/cloud-oss/performance-and-monitoring/dynamic-column-selection.mdx b/core/guides/clickhouse/performance-and-monitoring/dynamic-column-selection.mdx
similarity index 90%
rename from guides/cloud-oss/performance-and-monitoring/dynamic-column-selection.mdx
rename to core/guides/clickhouse/performance-and-monitoring/dynamic-column-selection.mdx
index 11fa1367..ead0afcd 100644
--- a/guides/cloud-oss/performance-and-monitoring/dynamic-column-selection.mdx
+++ b/core/guides/clickhouse/performance-and-monitoring/dynamic-column-selection.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/dynamic-column-selection
+slug: /core/guides/developer/dynamic-column-selection
sidebarTitle: 'Dynamic column selection'
title: 'Dynamic column selection'
description: 'Use alternative query languages in ClickHouse'
@@ -7,9 +7,9 @@ doc_type: 'guide'
keywords: ['dynamic column selection', 'regular expressions', 'APPLY modifier', 'advanced queries', 'developer guide']
---
-[Dynamic column selection](/reference/statements/select#dynamic-column-selection) is a powerful but underutilized ClickHouse feature that allows you to select columns using regular expressions instead of naming each column individually. You can also apply functions to matching columns using the `APPLY` modifier, making it incredibly useful for data analysis and transformation tasks.
+[Dynamic column selection](/core/reference/statements/select#dynamic-column-selection) is a powerful but underutilized ClickHouse feature that allows you to select columns using regular expressions instead of naming each column individually. You can also apply functions to matching columns using the `APPLY` modifier, making it incredibly useful for data analysis and transformation tasks.
-We're going to learn how to use this feature with help from the [New York taxis dataset](/get-started/sample-datasets/nyc-taxi), which you can also find in the [ClickHouse SQL playground](https://sql.clickhouse.com?query=LS0gRGF0YXNldCBjb250YWluaW5nIHRheGkgcmlkZSBkYXRhIGluIE5ZQyBmcm9tIDIwMDkuIE1vcmUgaW5mbyBoZXJlOiBodHRwczovL2NsaWNraG91c2UuY29tL2RvY3MvZW4vZ2V0dGluZy1zdGFydGVkL2V4YW1wbGUtZGF0YXNldHMvbnljLXRheGkKU0VMRUNUICogRlJPTSBueWNfdGF4aS50cmlwcyBMSU1JVCAxMDA).
+We're going to learn how to use this feature with help from the [New York taxis dataset](/core/get-started/sample-datasets/nyc-taxi), which you can also find in the [ClickHouse SQL playground](https://sql.clickhouse.com?query=LS0gRGF0YXNldCBjb250YWluaW5nIHRheGkgcmlkZSBkYXRhIGluIE5ZQyBmcm9tIDIwMDkuIE1vcmUgaW5mbyBoZXJlOiBodHRwczovL2NsaWNraG91c2UuY29tL2RvY3MvZW4vZ2V0dGluZy1zdGFydGVkL2V4YW1wbGUtZGF0YXNldHMvbnljLXRheGkKU0VMRUNUICogRlJPTSBueWNfdGF4aS50cmlwcyBMSU1JVCAxMDA).
@@ -90,7 +90,7 @@ LIMIT 5;
## Apply functions to all columns {#applying-functions}
-We can also use the [`APPLY`](/reference/statements/select) modifier to apply functions across every column.
+We can also use the [`APPLY`](/core/reference/statements/select) modifier to apply functions across every column.
For example, if we wanted to find the maximum value of each of those columns, we could run the following query:
```sql
@@ -153,7 +153,7 @@ FROM nyc_taxi.trips;
## Replacing columns {#replacing-columns}
-So far so good. But let’s say we want to adjust one of the values, while leaving the other ones as they're. For example, maybe we want to double the total amount and divide the MTA tax by 1.1. We can do that by using the [`REPLACE`](/reference/statements/select) modifier, which will replace a column while leaving the other ones as they're.
+So far so good. But let’s say we want to adjust one of the values, while leaving the other ones as they're. For example, maybe we want to double the total amount and divide the MTA tax by 1.1. We can do that by using the [`REPLACE`](/core/reference/statements/select) modifier, which will replace a column while leaving the other ones as they're.
```sql
FROM nyc_taxi.trips
@@ -177,7 +177,7 @@ SELECT
## Excluding columns {#excluding-columns}
-We can also choose to exclude a field by using the [`EXCEPT`](/reference/statements/select) modifier. For example, to remove the `tolls_amount` column, we would write the following query:
+We can also choose to exclude a field by using the [`EXCEPT`](/core/reference/statements/select) modifier. For example, to remove the `tolls_amount` column, we would write the following query:
```sql
FROM nyc_taxi.trips
diff --git a/guides/cloud-oss/performance-and-monitoring/query-optimization.mdx b/core/guides/clickhouse/performance-and-monitoring/query-optimization.mdx
similarity index 89%
rename from guides/cloud-oss/performance-and-monitoring/query-optimization.mdx
rename to core/guides/clickhouse/performance-and-monitoring/query-optimization.mdx
index 9c119171..40a8e37b 100644
--- a/guides/cloud-oss/performance-and-monitoring/query-optimization.mdx
+++ b/core/guides/clickhouse/performance-and-monitoring/query-optimization.mdx
@@ -11,11 +11,11 @@ import { Image } from "/snippets/components/Image.jsx";
# A simple guide for query optimization
-This section aims to illustrate through common scenarios how to use different performance and optimization techniques, such as [analyzer](/guides/cloud-oss/performance-and-monitoring/analyzer), [query profiling](/concepts/features/performance/troubleshoot/sampling-query-profiler) or [avoid nullable Columns](/concepts/best-practices/avoidnullablecolumns), in order to improve your ClickHouse query performances.
+This section aims to illustrate through common scenarios how to use different performance and optimization techniques, such as [analyzer](/core/guides/clickhouse/performance-and-monitoring/analyzer), [query profiling](/core/concepts/features/performance/troubleshoot/sampling-query-profiler) or [avoid nullable Columns](/core/concepts/best-practices/avoidnullablecolumns), in order to improve your ClickHouse query performances.
## Understand query performance {#understand-query-performance}
-The best moment to think about performance optimization is when you're setting up your [data schema](/guides/cloud-oss/data-modelling/schema-design) before ingesting data into ClickHouse for the first time.
+The best moment to think about performance optimization is when you're setting up your [data schema](/core/guides/clickhouse/data-modelling/schema-design) before ingesting data into ClickHouse for the first time.
But let's be honest; it is difficult to predict how much your data will grow or what types of queries will be executed.
@@ -29,7 +29,7 @@ In this section, we will look at those tools and how to use them.
To understand query performance, let's look at what happens in ClickHouse when a query is executed.
-The following part is deliberately simplified and takes some shortcuts; the idea here isn't to drown you with details but to get you up to speed with the basic concepts. For more information you can read about [query analyzer](/guides/cloud-oss/performance-and-monitoring/analyzer).
+The following part is deliberately simplified and takes some shortcuts; the idea here isn't to drown you with details but to get you up to speed with the basic concepts. For more information you can read about [query analyzer](/core/guides/clickhouse/performance-and-monitoring/analyzer).
From a very high-level standpoint, when ClickHouse executes a query, the following happens:
@@ -49,7 +49,7 @@ The data is read and processed in parallel. This is the stage where ClickHouse a
The results are merged, sorted, and formatted into a final result before being sent to the client.
-In reality, many [optimizations](/get-started/about/why-clickhouse-is-so-fast) are taking place, and we will discuss them a bit more in this guide, but for now, those main concepts give us a good understanding of what is happening behind the scenes when ClickHouse executes a query.
+In reality, many [optimizations](/core/get-started/about/why-clickhouse-is-so-fast) are taking place, and we will discuss them a bit more in this guide, but for now, those main concepts give us a good understanding of what is happening behind the scenes when ClickHouse executes a query.
With this high-level understanding, let's examine the tooling ClickHouse provides and how we can use it to track the metrics that affect query performance.
@@ -107,7 +107,7 @@ ORDER BY tuple()
### Query logs {#query-logs}
-By default, ClickHouse collects and logs information about each executed query in the [query logs](/reference/system-tables/query_log). This data is stored in the table `system.query_log`.
+By default, ClickHouse collects and logs information about each executed query in the [query logs](/core/reference/system-tables/query_log). This data is stored in the table `system.query_log`.
For each executed query, ClickHouse logs statistics such as query execution time, number of rows read, and resource usage, such as CPU, memory usage, or filesystem cache hits.
@@ -324,9 +324,9 @@ The table contains 329.04 million rows, therefore each query is doing a full sca
### Explain statement {#explain-statement}
-Now that we have some long-running queries, let's understand how they're executed. For this, ClickHouse supports the [EXPLAIN statement command](/reference/statements/explain). It is a very useful tool that provides a very detailed view of all the query execution stages without actually running the query. While it can be overwhelming to look at for a non-ClickHouse expert, it remains an essential tool for gaining insight into how your query is executed.
+Now that we have some long-running queries, let's understand how they're executed. For this, ClickHouse supports the [EXPLAIN statement command](/core/reference/statements/explain). It is a very useful tool that provides a very detailed view of all the query execution stages without actually running the query. While it can be overwhelming to look at for a non-ClickHouse expert, it remains an essential tool for gaining insight into how your query is executed.
-The documentation provides a detailed [guide](/guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer) on what the EXPLAIN statement is and how to use it to analyze your query execution. Rather than repeating what is in this guide, let's focus on a few commands that will help us find bottlenecks in query execution performance.
+The documentation provides a detailed [guide](/core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer) on what the EXPLAIN statement is and how to use it to analyze your query execution. Rather than repeating what is in this guide, let's focus on a few commands that will help us find bottlenecks in query execution performance.
**Explain indexes = 1**
@@ -404,7 +404,7 @@ Query optimization requires structure. I'm not talking about advanced benchmarki
Start by identifying your slow queries from query logs, then investigate potential improvements in isolation. When testing the query, make sure you disable the filesystem cache.
-> ClickHouse leverages [caching](/concepts/features/performance/caches/caches) to speed up query performance at different stages. This is good for query performance, but during troubleshooting, it could hide potential I/O bottlenecks or poor table schema. For this reason, I suggest turning off the filesystem cache during testing. Make sure to have it enabled in production setup.
+> ClickHouse leverages [caching](/core/concepts/features/performance/caches/caches) to speed up query performance at different stages. This is good for query performance, but during troubleshooting, it could hide potential I/O bottlenecks or poor table schema. For this reason, I suggest turning off the filesystem cache during testing. Make sure to have it enabled in production setup.
Once you have identified potential optimizations, it is recommended that you implement them one by one to better track how they affect performance. Below is a diagram describing the general approach.
@@ -418,11 +418,11 @@ Now that we have our framework to test, we can start optimizing.
The best place to start is to look at how the data is stored. As for any database, the less data we read, the faster the query will be executed.
-Depending on how you ingested your data, you might have leveraged ClickHouse [capabilities](/integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference) to infer the table schema based on the ingested data. While this is very practical to get started, if you want to optimize your query performance, you'll need to review the data schema to best fit your use case.
+Depending on how you ingested your data, you might have leveraged ClickHouse [capabilities](/core/concepts/features/interfaces/schema-inference) to infer the table schema based on the ingested data. While this is very practical to get started, if you want to optimize your query performance, you'll need to review the data schema to best fit your use case.
### Nullable {#nullable}
-As described in the [best practices documentation](/concepts/best-practices/select-data-type#avoid-nullable-columns), avoid nullable columns wherever possible. It is tempting to use them often, as they make the data ingestion mechanism more flexible, but they negatively affect performance as an additional column has to be processed every time.
+As described in the [best practices documentation](/core/concepts/best-practices/select-data-type#avoid-nullable-columns), avoid nullable columns wherever possible. It is tempting to use them often, as they make the data ingestion mechanism more flexible, but they negatively affect performance as an additional column has to be processed every time.
Running an SQL query that counts the rows with a NULL value can easily reveal the columns in your tables that actually need a Nullable value.
@@ -468,7 +468,7 @@ We have only two columns with null values: `mta_tax` and `payment_type`. The res
### Low cardinality {#low-cardinality}
-An easy optimization to apply to Strings is to make best use of the LowCardinality data type. As described in the low cardinality [documentation](/reference/data-types/lowcardinality), ClickHouse applies dictionary coding to LowCardinality-columns, which significantly increases query performance.
+An easy optimization to apply to Strings is to make best use of the LowCardinality data type. As described in the low cardinality [documentation](/core/reference/data-types/lowcardinality), ClickHouse applies dictionary coding to LowCardinality-columns, which significantly increases query performance.
An easy rule of thumb for determining which columns are good candidates for LowCardinality is that any column with less than 10,000 unique values is a perfect candidate.
@@ -587,7 +587,7 @@ The new table is considerably smaller than the previous one. We see a reduction
Primary keys in ClickHouse work differently than in most traditional database systems. In those systems, primary keys enforce uniqueness and data integrity. Any attempt to insert duplicate primary key values is rejected, and a B-tree or hash-based index is usually created for fast lookup.
-In ClickHouse, the primary key's [objective](/guides/cloud-oss/data-modelling/sparse-primary-indexes#a-table-with-a-primary-key) is different; it doesn't enforce uniqueness or help with data integrity. Instead, it is designed to optimize query performance. The primary key defines the order in which the data is stored on disk and is implemented as a sparse index that stores pointers to the first row of each granule.
+In ClickHouse, the primary key's [objective](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#a-table-with-a-primary-key) is different; it doesn't enforce uniqueness or help with data integrity. Instead, it is designed to optimize query performance. The primary key defines the order in which the data is stored on disk and is implemented as a sparse index that stores pointers to the first row of each granule.
> Granules in ClickHouse are the smallest units of data read during query execution. They contain up to a fixed number of rows, determined by index_granularity, with a default value of 8192 rows. Granules are stored contiguously and sorted by the primary key.
@@ -781,6 +781,6 @@ Thanks to the primary key, only a subset of the table granules has been selected
## Next steps {#next-steps}
-Hopefully this guide gets a good understanding on how to investigate slow queries with ClickHouse and how to make them faster. To explore more on this topic, you can read more about [query analyzer](/guides/cloud-oss/performance-and-monitoring/analyzer) and [profiling](/concepts/features/performance/troubleshoot/sampling-query-profiler) to understand better how exactly ClickHouse is executing your query.
+Hopefully this guide gets a good understanding on how to investigate slow queries with ClickHouse and how to make them faster. To explore more on this topic, you can read more about [query analyzer](/core/guides/clickhouse/performance-and-monitoring/analyzer) and [profiling](/core/concepts/features/performance/troubleshoot/sampling-query-profiler) to understand better how exactly ClickHouse is executing your query.
-As you get more familiar with ClickHouse specificities, I would recommend to read about [partitioning keys](/concepts/best-practices/partitioning-keys) and [data skipping indexes](/concepts/features/performance/skip-indexes/skipping-indexes) to learn about more advanced techniques you can use to accelerate your queries.
+As you get more familiar with ClickHouse specificities, I would recommend to read about [partitioning keys](/core/concepts/best-practices/partitioning-keys) and [data skipping indexes](/core/concepts/features/performance/skip-indexes/skipping-indexes) to learn about more advanced techniques you can use to accelerate your queries.
diff --git a/guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx b/core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx
similarity index 98%
rename from guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx
rename to core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx
index 9b96ec25..f3e647a2 100644
--- a/guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx
+++ b/core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/understanding-query-execution-with-the-analyzer
+slug: /core/guides/developer/understanding-query-execution-with-the-analyzer
sidebarTitle: 'Understanding query execution with the analyzer'
title: 'Understanding query execution with the analyzer'
description: 'Describes how you can use the analyzer to understand how ClickHouse executes your queries'
@@ -69,7 +69,7 @@ Each node has corresponding children and the overall tree represents the overall
ClickHouse currently has two architectures for the Analyzer. You can use the old architecture by setting: `enable_analyzer=0`. The new architecture is enabled by default. We're going to describe only the new architecture here, given the old one is going to be deprecated once the new analyzer is generally available.
-The new architecture should provide us with a better framework to improve ClickHouse's performance. However, given it is a fundamental component of the query processing steps, it also might have a negative impact on some queries and there are [known incompatibilities](/guides/cloud-oss/performance-and-monitoring/analyzer#known-incompatibilities). You can revert back to the old analyzer by changing the `enable_analyzer` setting at the query or user level.
+The new architecture should provide us with a better framework to improve ClickHouse's performance. However, given it is a fundamental component of the query processing steps, it also might have a negative impact on some queries and there are [known incompatibilities](/core/guides/clickhouse/performance-and-monitoring/analyzer#known-incompatibilities). You can revert back to the old analyzer by changing the `enable_analyzer` setting at the query or user level.
The analyzer is an important step of the query execution. It takes an AST and transforms it into a query tree. The main benefit of a query tree over an AST is that a lot of the components will be resolved, like the storage for instance. We also know from which table to read, aliases are also resolved, and the tree knows the different data types used. With all these benefits, the analyzer can apply optimizations. The way these optimizations work is via "passes". Every pass is going to look for different optimizations. You can see all the passes [here](https://github.com/ClickHouse/ClickHouse/blob/76578ebf92af3be917cd2e0e17fea2965716d958/src/Analyzer/QueryTreePassManager.cpp#L249), let's see it in practice with our previous query:
diff --git a/guides/cloud-oss/working-with-arrays.mdx b/core/guides/clickhouse/working-with-arrays.mdx
similarity index 88%
rename from guides/cloud-oss/working-with-arrays.mdx
rename to core/guides/clickhouse/working-with-arrays.mdx
index 7fa9d198..1ef041a3 100644
--- a/guides/cloud-oss/working-with-arrays.mdx
+++ b/core/guides/clickhouse/working-with-arrays.mdx
@@ -3,20 +3,20 @@ title: 'Working with arrays in ClickHouse'
description: 'Starter guide on how to use arrays in ClickHouse'
keywords: ['Arrays']
sidebarTitle: 'Working with arrays in ClickHouse'
-slug: /guides/working-with-arrays
+slug: /core/guides/working-with-arrays
doc_type: 'guide'
---
import { RunnableCode } from "/snippets/components/RunnableCode/RunnableCode.jsx";
-> In this guide, you'll learn how to use arrays in ClickHouse along with some of the most commonly used [array functions](/reference/functions/regular-functions/array-functions).
+> In this guide, you'll learn how to use arrays in ClickHouse along with some of the most commonly used [array functions](/core/reference/functions/regular-functions/array-functions).
## Introduction to arrays {#array-basics}
An array is an in-memory data structure which groups together values.
We call these _elements_ of the array, and each element can be referred to by an index, which indicates the position of the element in this grouping.
-Arrays in ClickHouse can be formed using the [`array`](/reference/data-types/array) function:
+Arrays in ClickHouse can be formed using the [`array`](/core/reference/data-types/array) function:
```sql
array(T)
@@ -48,7 +48,7 @@ SELECT array('hello', 'world') AS string_array
└───────────────────┘
```
-Or an array of nested types such as [tuples](/reference/data-types/tuple):
+Or an array of nested types such as [tuples](/core/reference/data-types/tuple):
```sql
SELECT array(tuple(1, 2), tuple(3, 4))
@@ -85,7 +85,7 @@ SELECT [1::UInt8, 2.5::Float32, 3::UInt8] AS mixed_array, toTypeName([1, 2.5, 3]
You can use the `use_variant_as_common_type` setting to change the default behavior described above.
-This allows you to use the [Variant](/reference/data-types/variant) type as a result type for `if`/`multiIf`/`array`/`map` functions when there is no common type for argument types.
+This allows you to use the [Variant](/core/reference/data-types/variant) type as a result type for `if`/`multiIf`/`array`/`map` functions when there is no common type for argument types.
For example:
@@ -178,7 +178,7 @@ SELECT length(string_array);
└──────────────────────┘
```
-You can also use the [`arrayEnumerate`](/reference/functions/regular-functions/array-functions#arrayEnumerate) function to return an array of indexes of the elements:
+You can also use the [`arrayEnumerate`](/core/reference/functions/regular-functions/array-functions#arrayEnumerate) function to return an array of indexes of the elements:
```sql
WITH array('learning', 'ClickHouse', 'arrays') AS string_array
@@ -200,7 +200,7 @@ SELECT indexOf([4, 2, 8, 8, 9], 8);
```
Notice that this function will return the first index it encounters if there are multiple identical values in the array.
-If your array elements are sorted in ascending order then you can use the [`indexOfAssumeSorted`](/reference/functions/regular-functions/array-functions#indexOfAssumeSorted) function.
+If your array elements are sorted in ascending order then you can use the [`indexOfAssumeSorted`](/core/reference/functions/regular-functions/array-functions#indexOfAssumeSorted) function.
The functions `has`, `hasAll` and `hasAny` are useful for determining whether an array contains a given value.
Consider the following example:
@@ -231,7 +231,7 @@ hasAll_false: 0
So far, the examples have been pretty simple.
The utility of arrays really shows itself when used on a real-world dataset.
-We will be using the [ontime dataset](/get-started/sample-datasets/ontime), which contains flight data from the Bureau of Transportation Statistics.
+We will be using the [ontime dataset](/core/get-started/sample-datasets/ontime), which contains flight data from the Bureau of Transportation Statistics.
You can find this dataset on the [SQL playground](https://sql.clickhouse.com/?query_id=M4FSVBVMSHY98NKCQP8N4K).
We've selected this dataset as arrays are often well suited to working with time-series data and can assist in simplifying
@@ -269,7 +269,7 @@ Let's take a look at the top 10 busiest airports in the US on a particular day c
We're interested in understanding how many flights depart from each airport.
Our data contains one row per flight, but it would be convenient if we could group the data by the origin airport and roll the destinations into an array.
-To achieve this we can use the [`groupArray`](/reference/functions/aggregate-functions/reference/groupArray) aggregate function, which takes values of the specified column from each row and groups them in an array.
+To achieve this we can use the [`groupArray`](/core/reference/functions/aggregate-functions/reference/groupArray) aggregate function, which takes values of the specified column from each row and groups them in an array.
Run the query below to see how it works:
@@ -285,7 +285,7 @@ GROUP BY FlightDate, Origin
ORDER BY length(Destinations)
```
-The [`toStringCutToZero`](/reference/functions/regular-functions/type-conversion-functions#toStringCutToZero) in the query above is used to remove null characters which appear after some of the airport's 3 letter designation.
+The [`toStringCutToZero`](/core/reference/functions/regular-functions/type-conversion-functions#toStringCutToZero) in the query above is used to remove null characters which appear after some of the airport's 3 letter designation.
With the data in this format, we can easily find the order of the busiest airports by finding the length of the rolled up "Destinations" arrays:
@@ -316,8 +316,8 @@ ORDER BY outward_flights DESC
We saw in the previous query that Denver International Airport was the airport with the most outward flights for our particular chosen day.
Let's take a look at how many of those flights were on-time, delayed by 15-30 minutes or delayed by more than 30 minutes.
-Many of the array functions in ClickHouse are so-called ["higher-order functions"](/reference/functions/regular-functions/overview#higher-order-functions) and accept a lambda function as the first parameter.
-The [`arrayMap`](/reference/functions/regular-functions/array-functions#arrayMap) function is an example of one such higher-order function and returns a new array from the provided array by applying a lambda function to each element of the original array.
+Many of the array functions in ClickHouse are so-called ["higher-order functions"](/core/reference/functions/regular-functions/overview#higher-order-functions) and accept a lambda function as the first parameter.
+The [`arrayMap`](/core/reference/functions/regular-functions/array-functions#arrayMap) function is an example of one such higher-order function and returns a new array from the provided array by applying a lambda function to each element of the original array.
Run the query below which uses the `arrayMap` function to see which flights were delayed or on-time.
For pairs of origin/destinations, it shows the tail number and status for every flight:
@@ -343,7 +343,7 @@ GROUP BY ALL
In the above query, the `arrayMap` function takes a single-element array `[DepDelayMinutes]` and applies the lambda function `d -> if(d >= 30, 'DELAYED', if(d >= 15, 'WARNING', 'ON-TIME'` to categorize it.
Then the first element of the resulting array is extracted with `[DepDelayMinutes][1]`.
-The [`arrayZip`](/reference/functions/regular-functions/array-functions#arrayZip) function combines the `Tail_Number` array and the `statuses` array into a single array.
+The [`arrayZip`](/core/reference/functions/regular-functions/array-functions#arrayZip) function combines the `Tail_Number` array and the `statuses` array into a single array.
### arrayFilter {#arrayfilter}
@@ -362,7 +362,7 @@ GROUP BY Origin, OriginCityName
ORDER BY num_delays_30_min_or_more DESC
```
-In the query above we pass a lambda function as the first argument to the [`arrayFilter`](/reference/functions/regular-functions/array-functions#arrayFilter) function.
+In the query above we pass a lambda function as the first argument to the [`arrayFilter`](/core/reference/functions/regular-functions/array-functions#arrayFilter) function.
This lambda function itself takes the delay in minutes (d) and returns `1` if the condition is met, else `0`.
```sql
@@ -371,7 +371,7 @@ d -> d >= 30
### arraySort and arrayIntersect {#arraysort-and-arrayintersect}
-Next, we'll figure out which pairs of major US airports serve the most common destinations with the help of the [`arraySort`](/reference/functions/regular-functions/array-functions#arraySort) and [`arrayIntersect`](/reference/functions/regular-functions/array-functions#arrayIntersect) functions.
+Next, we'll figure out which pairs of major US airports serve the most common destinations with the help of the [`arraySort`](/core/reference/functions/regular-functions/array-functions#arraySort) and [`arrayIntersect`](/core/reference/functions/regular-functions/array-functions#arrayIntersect) functions.
`arraySort` takes an array and sorts the elements in ascending order by default, although you can also pass a lambda function to it to define the sorting order.
`arrayIntersect` takes multiple arrays and returns an array which contains elements present in all the arrays.
@@ -505,7 +505,7 @@ ORDER BY flightsDelayed DESC
Congratulations! You've learned how to work with arrays in ClickHouse, from basic array creation and indexing to powerful functions like `groupArray`, `arrayFilter`, `arrayMap`, `arrayReduce`, and `arrayJoin`.
To continue your learning journey, explore the complete array functions reference to discover additional functions like `arrayFlatten`, `arrayReverse`, and `arrayDistinct`.
-You might also want to learn about related data structures such as [`tuples`](/reference/data-types/tuple#creating-tuples), [JSON](/reference/data-types/newjson), and [Map](/reference/data-types/map) types which work well alongside arrays.
+You might also want to learn about related data structures such as [`tuples`](/core/reference/data-types/tuple#creating-tuples), [JSON](/core/reference/data-types/newjson), and [Map](/core/reference/data-types/map) types which work well alongside arrays.
Practice applying these concepts to your own datasets, and experiment with different queries on the SQL playground or other example datasets.
Arrays are a fundamental feature in ClickHouse that enable, efficient analytical queries - as you become more comfortable with array functions, you'll find they can dramatically simplify complex aggregations and time-series analysis.
diff --git a/guides/cloud-oss/working-with-joins.mdx b/core/guides/clickhouse/working-with-joins.mdx
similarity index 94%
rename from guides/cloud-oss/working-with-joins.mdx
rename to core/guides/clickhouse/working-with-joins.mdx
index 0325aa39..d836546d 100644
--- a/guides/cloud-oss/working-with-joins.mdx
+++ b/core/guides/clickhouse/working-with-joins.mdx
@@ -3,7 +3,7 @@ title: 'Working with JOINs in ClickHouse'
description: 'Starter guide on how to use JOINs in ClickHouse'
keywords: ['JOINs', 'SQL', 'INNER JOIN', 'OUTER JOIN', 'CROSS JOIN', 'SEMI JOIN', 'ANTI JOIN', 'ANY JOIN', 'ASOF JOIN']
sidebarTitle: 'Working with JOINs in ClickHouse'
-slug: /guides/working-with-joins
+slug: /core/guides/working-with-joins
doc_type: 'guide'
---
@@ -90,7 +90,7 @@ The behavior of the `INNER JOIN` can be extended or changed, by using one of the
## (LEFT / RIGHT / FULL) OUTER JOIN {#left--right--full-outer-join}
-The `LEFT OUTER JOIN` behaves like `INNER JOIN`; plus, for non-matching left table rows, ClickHouse returns [default values](/reference/statements/create/table#default_values) for the right table’s columns.
+The `LEFT OUTER JOIN` behaves like `INNER JOIN`; plus, for non-matching left table rows, ClickHouse returns [default values](/core/reference/statements/create/table#default_values) for the right table’s columns.
A `RIGHT OUTER JOIN` query is similar and also returns values from non-matching rows from the right table together with default values for the columns of the left table.
@@ -99,7 +99,7 @@ A `FULL OUTER JOIN` query combines the `LEFT` and `RIGHT OUTER JOIN` and returns
-ClickHouse can be [configured](/reference/settings/session-settings#join_use_nulls) to return [NULL](/reference/syntax#null)s instead of default values (however, for [performance reasons](/reference/data-types/nullable#storage-features), that is less recommended).
+ClickHouse can be [configured](/core/reference/settings/session-settings#join_use_nulls) to return [NULL](/core/reference/syntax#null)s instead of default values (however, for [performance reasons](/core/reference/data-types/nullable#storage-features), that is less recommended).
This query finds all movies that have no genre by querying for all rows from the `movies` table that don’t have matches in the `genres` table, and therefore get (at query time) the default value 0 for the `movie_id` column:
@@ -189,7 +189,7 @@ An alternative syntax for `CROSS JOIN` specifies multiple tables in the `FROM` c
ClickHouse is [rewriting](https://github.com/ClickHouse/ClickHouse/blob/23.2/src/Core/Settings.h#L896) a `CROSS JOIN` to an `INNER JOIN` if there are joining expressions in the `WHERE` section of the query.
-You can check that for the example query via [EXPLAIN SYNTAX](/reference/statements/explain#explain-syntax) (that returns the syntactically optimized version into which a query gets rewritten before being [executed](https://youtu.be/hP6G2Nlz_cA)):
+You can check that for the example query via [EXPLAIN SYNTAX](/core/reference/statements/explain#explain-syntax) (that returns the syntactically optimized version into which a query gets rewritten before being [executed](https://youtu.be/hP6G2Nlz_cA)):
```sql
EXPLAIN SYNTAX
@@ -222,7 +222,7 @@ LIMIT 10;
└─────────────────────────────────────────────┘
```
-The `INNER JOIN` clause in the syntactically optimized `CROSS JOIN` query version contains the `ALL` keyword, that got explicitly added in order to keep the cartesian product semantics of the `CROSS JOIN` even when being rewritten into an `INNER JOIN`, for which the cartesian product can be [disabled](/reference/settings/session-settings#join_default_strictness).
+The `INNER JOIN` clause in the syntactically optimized `CROSS JOIN` query version contains the `ALL` keyword, that got explicitly added in order to keep the cartesian product semantics of the `CROSS JOIN` even when being rewritten into an `INNER JOIN`, for which the cartesian product can be [disabled](/core/reference/settings/session-settings#join_default_strictness).
```sql
ALL
@@ -314,7 +314,7 @@ And the `INNER ANY JOIN` is the `INNER JOIN` with a disabled cartesian product.
-The following example demonstrates the `LEFT ANY JOIN` with an abstract example using two temporary tables (`left_table` and `right_table`) constructed with the [values](https://github.com/ClickHouse/ClickHouse/blob/23.2/src/TableFunctions/TableFunctionValues.h) [table function](/reference/functions/table-functions):
+The following example demonstrates the `LEFT ANY JOIN` with an abstract example using two temporary tables (`left_table` and `right_table`) constructed with the [values](https://github.com/ClickHouse/ClickHouse/blob/23.2/src/TableFunctions/TableFunctionValues.h) [table function](/core/reference/functions/table-functions):
```sql
WITH
@@ -438,4 +438,4 @@ The `ON` clause of the `ASOF JOIN` is required and specifies an exact match cond
## Summary {#summary}
This guide shows how ClickHouse supports all standard SQL JOIN types, plus specialized joins to power analytical queries.
-See the documentation for the [JOIN](/reference/statements/select/join) statement for more details on JOINs.
+See the documentation for the [JOIN](/core/reference/statements/select/join) statement for more details on JOINs.
diff --git a/core/guides/navigation.json b/core/guides/navigation.json
new file mode 100644
index 00000000..722a8c6c
--- /dev/null
+++ b/core/guides/navigation.json
@@ -0,0 +1,271 @@
+{
+ "item": "Guides",
+ "icon": "/images/icons/icon-guides.svg",
+ "groups": [
+ {
+ "group": "ClickHouse guides",
+ "root": "core/guides/clickhouse/index",
+ "pages": [
+ {
+ "group": "Data formats",
+ "root": "core/guides/clickhouse/data-formats/intro",
+ "pages": [
+ "core/guides/clickhouse/data-formats/csv-tsv",
+ "core/guides/clickhouse/data-formats/parquet",
+ "core/guides/clickhouse/data-formats/arrow-avro-orc",
+ "core/guides/clickhouse/data-formats/binary",
+ "core/guides/clickhouse/data-formats/sql",
+ "core/guides/clickhouse/data-formats/templates-regex",
+ {
+ "group": "JSON",
+ "root": "core/guides/clickhouse/data-formats/json/intro",
+ "pages": [
+ "core/guides/clickhouse/data-formats/json/loading",
+ "core/guides/clickhouse/data-formats/json/inference",
+ "core/guides/clickhouse/data-formats/json/schema",
+ "core/guides/clickhouse/data-formats/json/formats",
+ "core/guides/clickhouse/data-formats/json/exporting",
+ "core/guides/clickhouse/data-formats/json/other"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Data modelling",
+ "root": "core/guides/clickhouse/data-modelling/index",
+ "pages": [
+ "core/guides/clickhouse/data-modelling/schema-design",
+ "core/guides/clickhouse/data-modelling/sparse-primary-indexes",
+ "core/guides/clickhouse/data-modelling/denormalization",
+ "core/guides/clickhouse/data-modelling/backfilling",
+ "core/guides/clickhouse/data-modelling/merge-table-function",
+ "core/guides/clickhouse/data-modelling/stored-procedures-and-prepared-statements",
+ "core/guides/clickhouse/data-modelling/generating-test-data",
+ {
+ "group": "Compression",
+ "expanded": false,
+ "pages": [
+ "core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse",
+ "core/guides/clickhouse/data-modelling/compression/compression-modes"
+ ]
+ },
+ "core/guides/clickhouse/working-with-arrays",
+ "core/guides/clickhouse/working-with-joins"
+ ]
+ },
+ {
+ "group": "Performance & monitoring",
+ "pages": [
+ "core/guides/clickhouse/performance-and-monitoring/query-optimization",
+ "core/guides/clickhouse/performance-and-monitoring/analyzer",
+ "core/guides/clickhouse/performance-and-monitoring/understanding-query-execution-with-the-analyzer",
+ "core/guides/clickhouse/performance-and-monitoring/dynamic-column-selection"
+ ]
+ },
+ {
+ "group": "Aggregate combinator examples",
+ "expanded": false,
+ "pages": [
+ "core/guides/clickhouse/examples/aggregate-function-combinators/anyIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/argMaxIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/argMinIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/avgIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/avgMap",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/avgMerge",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/avgMergeState",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/avgResample",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/avgState",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/countIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/countResample",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayDistinct",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/groupArrayResample",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/maxMap",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/maxSimpleState",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/minMap",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/minSimpleState",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingArrayIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/quantilesTimingIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/sumArray",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/sumForEach",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/sumIf",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/sumMap",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/sumSimpleState",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/uniqArray",
+ "core/guides/clickhouse/examples/aggregate-function-combinators/uniqArrayIf"
+ ]
+ },
+ "core/guides/oss/update",
+ {
+ "group": "OSS best practices",
+ "pages": [
+ "core/guides/oss/best-practices/sizing-and-hardware-recommendations",
+ "core/guides/oss/best-practices/tips"
+ ]
+ },
+ {
+ "group": "Deployment and scaling",
+ "expanded": false,
+ "root": "core/guides/oss/deployment-and-scaling/index",
+ "pages": [
+ "core/guides/oss/deployment-and-scaling/terminology",
+ "core/guides/oss/deployment-and-scaling/shards",
+ "core/guides/oss/deployment-and-scaling/scaling-clusters",
+ "core/guides/oss/deployment-and-scaling/separation-storage-compute",
+ "core/guides/oss/deployment-and-scaling/cluster-discovery",
+ {
+ "group": "Keeper",
+ "expanded": false,
+ "pages": [
+ "core/guides/oss/deployment-and-scaling/keeper/index",
+ "core/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper"
+ ]
+ },
+ {
+ "group": "Monitoring",
+ "expanded": false,
+ "pages": [
+ "core/guides/oss/deployment-and-scaling/monitoring/monitoring",
+ "core/guides/oss/deployment-and-scaling/monitoring/opentelemetry"
+ ]
+ },
+ {
+ "group": "Examples",
+ "expanded": false,
+ "pages": [
+ "core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas",
+ "core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica",
+ "core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas"
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Use case guides",
+ "root": "core/guides/use-cases/index",
+ "expandable": true,
+ "expanded": false,
+ "pages": [
+ {
+ "group": "Real-time analytics",
+ "pages": [
+ {
+ "group": "Time series",
+ "expanded": false,
+ "pages": [
+ "core/guides/use-cases/real-time-analytics/time-series/index",
+ "core/guides/use-cases/real-time-analytics/time-series/date-time-data-types",
+ "core/guides/use-cases/real-time-analytics/time-series/basic-operations",
+ "core/guides/use-cases/real-time-analytics/time-series/analysis-functions",
+ "core/guides/use-cases/real-time-analytics/time-series/storage-efficiency",
+ "core/guides/use-cases/real-time-analytics/time-series/query-performance",
+ "core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup",
+ "core/guides/use-cases/real-time-analytics/time-series/time-series-filling-gaps"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Observability",
+ "root": "core/guides/use-cases/observability/index",
+ "pages": [
+ "core/guides/use-cases/observability/cloud-monitoring",
+ "core/guides/use-cases/observability/self-managed-monitoring",
+ {
+ "group": "Build your own",
+ "pages": [
+ "core/guides/use-cases/observability/build-your-own/index",
+ "core/guides/use-cases/observability/build-your-own/introduction",
+ "core/guides/use-cases/observability/build-your-own/schema-design",
+ "core/guides/use-cases/observability/build-your-own/integrating-opentelemetry",
+ "core/guides/use-cases/observability/build-your-own/managing-data",
+ "core/guides/use-cases/observability/build-your-own/grafana",
+ "core/guides/use-cases/observability/build-your-own/demo-application"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Data warehousing",
+ "root": "core/guides/use-cases/data-warehousing/index",
+ "pages": [
+ {
+ "group": "Getting started",
+ "root": "core/guides/use-cases/data-warehousing/getting-started/overview",
+ "pages": [
+ "core/guides/use-cases/data-warehousing/getting-started/querying-directly",
+ "core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs",
+ "core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics",
+ "core/guides/use-cases/data-warehousing/getting-started/writing-data"
+ ]
+ },
+ {
+ "group": "Catalogs",
+ "root": "core/guides/use-cases/data-warehousing/reference/index",
+ "pages": [
+ "core/guides/use-cases/data-warehousing/glue-catalog",
+ "core/guides/use-cases/data-warehousing/lakekeeper-catalog",
+ "core/guides/use-cases/data-warehousing/nessie-catalog",
+ "core/guides/use-cases/data-warehousing/onelake-catalog",
+ "core/guides/use-cases/data-warehousing/polaris-catalog",
+ "core/guides/use-cases/data-warehousing/rest-catalog",
+ "core/guides/use-cases/data-warehousing/unity-catalog",
+ "core/guides/use-cases/data-warehousing/biglake-catalog"
+ ]
+ },
+ "core/guides/use-cases/data-warehousing/support-matrix"
+ ]
+ },
+ {
+ "group": "AI/ML",
+ "root": "core/guides/use-cases/ai-ml/index",
+ "pages": [
+ "core/guides/use-cases/ai-ml/vector-search",
+ "core/guides/use-cases/ai-ml/ai-powered-sql-generation",
+ {
+ "group": "Data exploration",
+ "pages": [
+ "core/guides/use-cases/ai-ml/data-exploration/jupyter-notebook",
+ "core/guides/use-cases/ai-ml/data-exploration/marimo-notebook"
+ ]
+ },
+ {
+ "group": "MCP",
+ "pages": [
+ "core/guides/use-cases/ai-ml/MCP/index",
+ "core/guides/use-cases/ai-ml/MCP/claude-desktop",
+ "core/guides/use-cases/ai-ml/MCP/librechat",
+ "core/guides/use-cases/ai-ml/MCP/anythingllm",
+ "core/guides/use-cases/ai-ml/MCP/open-webui",
+ "core/guides/use-cases/ai-ml/MCP/ollama",
+ "core/guides/use-cases/ai-ml/MCP/janai",
+ {
+ "group": "AI agent libraries",
+ "pages": [
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/index",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/streamlit",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/langchain",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/llamaindex",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/pydantic-ai",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/slackbot",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/copilotkit",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/crewai",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/dspy",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/mcp-agent",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/upsonic",
+ "core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/openai-agents"
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/guides/oss/best-practices/sizing-and-hardware-recommendations.mdx b/core/guides/oss/best-practices/sizing-and-hardware-recommendations.mdx
similarity index 90%
rename from guides/oss/best-practices/sizing-and-hardware-recommendations.mdx
rename to core/guides/oss/best-practices/sizing-and-hardware-recommendations.mdx
index c3452366..5dfcfc23 100644
--- a/guides/oss/best-practices/sizing-and-hardware-recommendations.mdx
+++ b/core/guides/oss/best-practices/sizing-and-hardware-recommendations.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/sizing-and-hardware-recommendations
+slug: /core/guides/sizing-and-hardware-recommendations
sidebarTitle: 'Sizing and hardware recommendations'
title: 'Sizing and hardware recommendations'
description: 'This guide discusses our general recommendations regarding hardware, compute, memory, and disk configurations for open-source users.'
@@ -30,7 +30,7 @@ To maximize performance, we recommend directly attaching [provisioned IOPS SSD v
For lower costs, you can use [general purpose SSD EBS volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/general-purpose.html).
-You can also implement a tiered storage using SSDs and HDDs in a [hot/warm/cold architecture](/concepts/operations/delete/ttl#implementing-a-hotwarmcold-architecture). Alternatively, [AWS S3](https://aws.amazon.com/s3/) for storage is also possible to separate compute and storage. Please see our guide for using open-source ClickHouse with separation of compute and storage [here](/guides/oss/deployment-and-scaling/separation-storage-compute). Separation of compute and storage is available by default in ClickHouse Cloud.
+You can also implement a tiered storage using SSDs and HDDs in a [hot/warm/cold architecture](/core/concepts/features/operations/delete/ttl#implementing-a-hotwarmcold-architecture). Alternatively, [AWS S3](https://aws.amazon.com/s3/) for storage is also possible to separate compute and storage. Please see our guide for using open-source ClickHouse with separation of compute and storage [here](/core/guides/oss/deployment-and-scaling/separation-storage-compute). Separation of compute and storage is available by default in ClickHouse Cloud.
## CPU {#cpu}
@@ -64,7 +64,7 @@ The number of CPUs you should use depends on your workload. However, we generall
- **[R-type](https://aws.amazon.com/ec2/instance-types/#Memory_Optimized) (data warehousing use cases):** 8 GB:1 memory-to-CPU-core ratio
- **[C-type](https://aws.amazon.com/ec2/instance-types/#Compute_Optimized) (compute-optimized use cases):** 2 GB:1 memory-to-CPU-core ratio
-As an example, when using M-type CPUs, we recommend provisioning 100GB of memory per 25 CPU cores. To determine the amount of memory appropriate for your application, profiling your memory usage is necessary. You can read [this guide on debugging memory issues](/concepts/features/performance/troubleshoot/debugging-memory-issues) or use the [built-in observability dashboard](/guides/oss/deployment-and-scaling/monitoring/monitoring) to monitor ClickHouse.
+As an example, when using M-type CPUs, we recommend provisioning 100GB of memory per 25 CPU cores. To determine the amount of memory appropriate for your application, profiling your memory usage is necessary. You can read [this guide on debugging memory issues](/core/concepts/features/performance/troubleshoot/debugging-memory-issues) or use the [built-in observability dashboard](/core/guides/oss/deployment-and-scaling/monitoring/monitoring) to monitor ClickHouse.
## Memory {#memory}
@@ -75,7 +75,7 @@ The required volume of RAM generally depends on:
- The amount of data that is processed in queries.
In general, however, the more memory you have, the faster your queries will run.
-If your use case is sensitive to price, lower amounts of memory will work as it is possible to enable settings ([`max_bytes_before_external_group_by`](/reference/settings/session-settings#max_bytes_before_external_group_by) and [`max_bytes_before_external_sort`](/reference/settings/session-settings#max_bytes_before_external_sort)) to allow spilling data to disk, but note that this may significantly affect query performance.
+If your use case is sensitive to price, lower amounts of memory will work as it is possible to enable settings ([`max_bytes_before_external_group_by`](/core/reference/settings/session-settings#max_bytes_before_external_group_by) and [`max_bytes_before_external_sort`](/core/reference/settings/session-settings#max_bytes_before_external_sort)) to allow spilling data to disk, but note that this may significantly affect query performance.
### What should the memory-to-storage ratio be? {#what-should-the-memory-to-storage-ratio-be}
diff --git a/guides/oss/best-practices/tips.mdx b/core/guides/oss/best-practices/tips.mdx
similarity index 99%
rename from guides/oss/best-practices/tips.mdx
rename to core/guides/oss/best-practices/tips.mdx
index 8a0a181d..36a2738f 100644
--- a/guides/oss/best-practices/tips.mdx
+++ b/core/guides/oss/best-practices/tips.mdx
@@ -155,7 +155,7 @@ Otherwise you may get `Illegal instruction` crashes when hypervisor is run on ol
## ClickHouse Keeper and ZooKeeper {#zookeeper}
-ClickHouse Keeper is recommended to replace ZooKeeper for ClickHouse clusters. See the documentation for [ClickHouse Keeper](/guides/oss/deployment-and-scaling/keeper)
+ClickHouse Keeper is recommended to replace ZooKeeper for ClickHouse clusters. See the documentation for [ClickHouse Keeper](/core/guides/oss/deployment-and-scaling/keeper)
If you would like to continue using ZooKeeper then it is best to use a fresh version of ZooKeeper – 3.4.9 or later. The version in stable Linux distributions may be outdated.
diff --git a/guides/oss/deployment-and-scaling/cluster-discovery.mdx b/core/guides/oss/deployment-and-scaling/cluster-discovery.mdx
similarity index 98%
rename from guides/oss/deployment-and-scaling/cluster-discovery.mdx
rename to core/guides/oss/deployment-and-scaling/cluster-discovery.mdx
index 04eef1ed..85162bea 100644
--- a/guides/oss/deployment-and-scaling/cluster-discovery.mdx
+++ b/core/guides/oss/deployment-and-scaling/cluster-discovery.mdx
@@ -219,4 +219,4 @@ SELECT hostname(), database, table FROM clusterAllReplicas(default, system.table
└──────────────┴──────────┴─────────────┘
```
-If you need to have tables replicated on all the nodes, you may use the [Replicated](/reference/engines/database-engines/replicated) database engine in alternative to cluster discovery.
+If you need to have tables replicated on all the nodes, you may use the [Replicated](/core/reference/engines/database-engines/replicated) database engine in alternative to cluster discovery.
diff --git a/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx b/core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx
similarity index 98%
rename from guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx
rename to core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx
index 12edd0f4..5e9e3847 100644
--- a/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx
+++ b/core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas.mdx
@@ -32,8 +32,8 @@ The architecture of the cluster you will be setting up is shown below:
## Prerequisites {#pre-requisites}
-- You've set up a [local ClickHouse server](/get-started/setup/self-managed/install) before
-- You're familiar with basic configuration concepts of ClickHouse such as [configuration files](/concepts/features/configuration/server-config/configuration-files)
+- You've set up a [local ClickHouse server](/core/get-started/setup/install) before
+- You're familiar with basic configuration concepts of ClickHouse such as [configuration files](/core/concepts/features/configuration/server-config/configuration-files)
- You have docker installed on your machine
@@ -479,7 +479,7 @@ In the next step, you will create a table in the cluster.
## Create a database {#creating-a-database}
Now that you have verified the cluster is correctly setup and is running, you
-will be recreating the same table as the one used in the [UK property prices](/get-started/sample-datasets/uk-price-paid)
+will be recreating the same table as the one used in the [UK property prices](/core/get-started/sample-datasets/uk-price-paid)
example dataset tutorial. It consists of around 30 million rows of prices paid
for real-estate property in England and Wales since 1995.
@@ -563,14 +563,14 @@ ORDER BY (postcode1, postcode2, addr1, addr2);
```
Notice that it is identical to the query used in the original `CREATE` statement of the
-[UK property prices](/get-started/sample-datasets/uk-price-paid) example dataset tutorial,
+[UK property prices](/core/get-started/sample-datasets/uk-price-paid) example dataset tutorial,
except for the `ON CLUSTER` clause and use of the `ReplicatedMergeTree` engine.
The `ON CLUSTER` clause is designed for distributed execution of DDL (Data Definition Language)
queries such as `CREATE`, `DROP`, `ALTER`, and `RENAME`, ensuring that these
schema changes are applied across all nodes in a cluster.
-The [`ReplicatedMergeTree`](/reference/engines/table-engines/mergetree-family/replication#converting-from-mergetree-to-replicatedmergetree)
+The [`ReplicatedMergeTree`](/core/reference/engines/table-engines/mergetree-family/replication#converting-from-mergetree-to-replicatedmergetree)
engine works just as the ordinary `MergeTree` table engine, but it will also replicate the data.
You can run the query below from either `clickhouse-01` or `clickhouse-02` client
diff --git a/guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx b/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx
similarity index 97%
rename from guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx
rename to core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx
index 8e4328c9..84950b8d 100644
--- a/guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx
+++ b/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica.mdx
@@ -31,8 +31,8 @@ The architecture of the cluster you will be setting up is shown below:
## Prerequisites {#pre-requisites}
-- You've set up a [local ClickHouse server](/get-started/setup/self-managed/install) before
-- You're familiar with basic configuration concepts of ClickHouse such as [configuration files](/concepts/features/configuration/server-config/configuration-files)
+- You've set up a [local ClickHouse server](/core/get-started/setup/install) before
+- You're familiar with basic configuration concepts of ClickHouse such as [configuration files](/core/concepts/features/configuration/server-config/configuration-files)
- You have docker installed on your machine
@@ -497,7 +497,7 @@ In the next step, you will create a table in the cluster.
## Create a database {#creating-a-database}
Now that you have verified the cluster is correctly setup and is running, you
-will be recreating the same table as the one used in the [UK property prices](/get-started/sample-datasets/uk-price-paid)
+will be recreating the same table as the one used in the [UK property prices](/core/get-started/sample-datasets/uk-price-paid)
example dataset tutorial. It consists of around 30 million rows of prices paid
for real-estate property in England and Wales since 1995.
@@ -581,7 +581,7 @@ ORDER BY (postcode1, postcode2, addr1, addr2);
```
Notice that it is identical to the query used in the original `CREATE` statement of the
-[UK property prices](/get-started/sample-datasets/uk-price-paid) example dataset tutorial,
+[UK property prices](/core/get-started/sample-datasets/uk-price-paid) example dataset tutorial,
except for the `ON CLUSTER` clause.
The `ON CLUSTER` clause is designed for distributed execution of DDL (Data Definition Language)
@@ -652,7 +652,7 @@ across all the shards, combining the data from both shards when we run select qu
on it or inserting data to both shards when we run insert queries.
In ClickHouse this interface is called a **distributed table**, which we create using
-the [`Distributed`](/reference/engines/table-engines/special/distributed) table engine. Let's take a look at how it works.
+the [`Distributed`](/core/reference/engines/table-engines/special/distributed) table engine. Let's take a look at how it works.
## Create a distributed table {#create-distributed-table}
@@ -811,7 +811,7 @@ Code: 198. DB::NetException: Not found address of host: clickhouse-01: (clickhou
Unfortunately, our cluster isn't fault-tolerant. If one of the hosts fails, the
cluster is considered unhealthy and the query fails compared to the replicated
-table we saw in the [previous example](/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas) for which
+table we saw in the [previous example](/core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas) for which
we were able to insert data even when one of the hosts failed.
@@ -826,6 +826,6 @@ utilization and reduces I/O per host.
The main disadvantage of this cluster topology is, of course, that losing one of
the hosts renders us unable to serve queries.
-In the [next example](/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas), we'll look at how to
+In the [next example](/core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas), we'll look at how to
set up a cluster with two shards and two replicas offering both scalability and
fault tolerance.
diff --git a/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx b/core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx
similarity index 97%
rename from guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx
rename to core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx
index 31cd346f..14f32fca 100644
--- a/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx
+++ b/core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas.mdx
@@ -31,8 +31,8 @@ The architecture of the cluster you will be setting up is shown below:
## Prerequisites {#prerequisites}
-- You've set up a [local ClickHouse server](/get-started/setup/self-managed/install) before
-- You're familiar with basic configuration concepts of ClickHouse such as [configuration files](/concepts/features/configuration/server-config/configuration-files)
+- You've set up a [local ClickHouse server](/core/get-started/setup/install) before
+- You're familiar with basic configuration concepts of ClickHouse such as [configuration files](/core/concepts/features/configuration/server-config/configuration-files)
- You have docker installed on your machine
@@ -529,7 +529,7 @@ In the next step, you will create a table in the cluster.
## Create a database {#creating-a-database}
Now that you have verified the cluster is correctly setup and is running, you
-will be recreating the same table as the one used in the [UK property prices](/get-started/sample-datasets/uk-price-paid)
+will be recreating the same table as the one used in the [UK property prices](/core/get-started/sample-datasets/uk-price-paid)
example dataset tutorial. It consists of around 30 million rows of prices paid
for real-estate property in England and Wales since 1995.
@@ -616,14 +616,14 @@ ORDER BY (postcode1, postcode2, addr1, addr2);
```
Notice that it is identical to the query used in the original `CREATE` statement of the
-[UK property prices](/get-started/sample-datasets/uk-price-paid) example dataset tutorial,
+[UK property prices](/core/get-started/sample-datasets/uk-price-paid) example dataset tutorial,
except for the `ON CLUSTER` clause and use of the `ReplicatedMergeTree` engine.
The `ON CLUSTER` clause is designed for distributed execution of DDL (Data Definition Language)
queries such as `CREATE`, `DROP`, `ALTER`, and `RENAME`, ensuring that these
schema changes are applied across all nodes in a cluster.
-The [`ReplicatedMergeTree`](/reference/engines/table-engines/mergetree-family/replication#converting-from-mergetree-to-replicatedmergetree)
+The [`ReplicatedMergeTree`](/core/reference/engines/table-engines/mergetree-family/replication#converting-from-mergetree-to-replicatedmergetree)
engine works just as the ordinary `MergeTree` table engine, but it will also replicate the data.
It requires two parameters to be specified:
@@ -662,8 +662,8 @@ SHOW TABLES IN uk;
To insert data into the table, `ON CLUSTER` can't be used as it does
not apply to DML (Data Manipulation Language) queries such as `INSERT`, `UPDATE`,
and `DELETE`. To insert data, it is necessary to make use of the
-[`Distributed`](/reference/engines/table-engines/special/distributed) table engine.
-As you learned in the [guide](/guides/oss/deployment-and-scaling/examples/2-shards-1-replica) for setting up a cluster with 2 shards and 1 replica, distributed tables are tables which have access to shards located on different
+[`Distributed`](/core/reference/engines/table-engines/special/distributed) table engine.
+As you learned in the [guide](/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica) for setting up a cluster with 2 shards and 1 replica, distributed tables are tables which have access to shards located on different
hosts and are defined using the `Distributed` table engine.
The distributed table acts as the interface across all the shards in the cluster.
diff --git a/guides/oss/deployment-and-scaling/index.mdx b/core/guides/oss/deployment-and-scaling/index.mdx
similarity index 52%
rename from guides/oss/deployment-and-scaling/index.mdx
rename to core/guides/oss/deployment-and-scaling/index.mdx
index a0e72672..a7f03436 100644
--- a/guides/oss/deployment-and-scaling/index.mdx
+++ b/core/guides/oss/deployment-and-scaling/index.mdx
@@ -10,7 +10,7 @@ This section covers the following topics:
| Topic |
|------------------------------------------------------------------|
-| [Introduction](/guides/oss/deployment-and-scaling/terminology) |
-| [Scaling Out](/guides/oss/deployment-and-scaling/examples/2-shards-1-replica) |
-| [Replication for fault tolerance](/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas) |
-| [Cluster deployment](/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas) |
+| [Introduction](/core/guides/oss/deployment-and-scaling/terminology) |
+| [Scaling Out](/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica) |
+| [Replication for fault tolerance](/core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas) |
+| [Cluster deployment](/core/guides/oss/deployment-and-scaling/examples/2-shards-2-replicas) |
diff --git a/guides/oss/deployment-and-scaling/keeper/index.mdx b/core/guides/oss/deployment-and-scaling/keeper/index.mdx
similarity index 98%
rename from guides/oss/deployment-and-scaling/keeper/index.mdx
rename to core/guides/oss/deployment-and-scaling/keeper/index.mdx
index 7d5a9dfb..0590cc82 100644
--- a/guides/oss/deployment-and-scaling/keeper/index.mdx
+++ b/core/guides/oss/deployment-and-scaling/keeper/index.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/sre/keeper/clickhouse-keeper
+slug: /core/guides/sre/keeper/clickhouse-keeper
sidebarTitle: 'Configuring ClickHouse Keeper'
keywords: ['Keeper', 'ZooKeeper', 'clickhouse-keeper']
@@ -12,7 +12,7 @@ import SelfManaged from '/snippets/_self_managed_only_automated.mdx';
-ClickHouse Keeper provides the coordination system for data [replication](/reference/engines/table-engines/mergetree-family/replication) and [distributed DDL](/reference/statements/distributed-ddl) queries execution. ClickHouse Keeper is compatible with ZooKeeper.
+ClickHouse Keeper provides the coordination system for data [replication](/core/reference/engines/table-engines/mergetree-family/replication) and [distributed DDL](/core/reference/statements/distributed-ddl) queries execution. ClickHouse Keeper is compatible with ZooKeeper.
### Implementation details {#implementation-details}
@@ -485,7 +485,7 @@ Record comparison metrics before migration so you can verify consistency afterwa
4. Optional, but recommended: find the ZooKeeper leader node, start and stop it again. This forces ZooKeeper to write a consistent snapshot to disk before conversion.
-5. Run `clickhouse-keeper-converter` on the leader node. If you have the full ClickHouse binary installed, use the `keeper-converter` subcommand instead (`clickhouse keeper-converter`). If neither is available, [download the binary](/get-started/oss/oss#install-clickhouse).
+5. Run `clickhouse-keeper-converter` on the leader node. If you have the full ClickHouse binary installed, use the `keeper-converter` subcommand instead (`clickhouse keeper-converter`). If neither is available, [download the binary](/core/get-started/setup/self-managed/quick-install#install-clickhouse).
```bash
clickhouse-keeper-converter \
@@ -569,7 +569,7 @@ After making sure that the above things are true, you need to do the following:
## Using disks with Keeper {#using-disks-with-keeper}
-Keeper supports a subset of [external disks](/concepts/features/configuration/server-config/storing-data) for storing snapshots, log files, and the state file.
+Keeper supports a subset of [external disks](/core/concepts/features/configuration/server-config/storing-data) for storing snapshots, log files, and the state file.
Supported types of disks are:
- s3_plain
@@ -699,9 +699,9 @@ Settings:
- `endpoint` – HTTP endpoint for scraping metrics by the Prometheus server. Start from '/'.
- `port` – Port for `endpoint`.
-- `metrics` – Flag that sets to expose metrics from the [system.metrics](/reference/system-tables/metrics) table.
-- `events` – Flag that sets to expose metrics from the [system.events](/reference/system-tables/events) table.
-- `asynchronous_metrics` – Flag that sets to expose current metrics values from the [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) table.
+- `metrics` – Flag that sets to expose metrics from the [system.metrics](/core/reference/system-tables/metrics) table.
+- `events` – Flag that sets to expose metrics from the [system.events](/core/reference/system-tables/events) table.
+- `asynchronous_metrics` – Flag that sets to expose current metrics values from the [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) table.
**Example**
@@ -733,7 +733,7 @@ This guide provides simple and minimal settings to configure ClickHouse Keeper w
### 1. Configure nodes with Keeper settings {#1-configure-nodes-with-keeper-settings}
-1. Install 3 ClickHouse instances on 3 hosts (`chnode1`, `chnode2`, `chnode3`). (View the [Quick Start](/get-started/setup/self-managed/install) for details on installing ClickHouse.)
+1. Install 3 ClickHouse instances on 3 hosts (`chnode1`, `chnode2`, `chnode3`). (View the [Quick Start](/core/get-started/setup/install) for details on installing ClickHouse.)
2. On each node, add the following entry to allow external communication through the network interface.
```xml
diff --git a/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper.mdx b/core/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper.mdx
similarity index 100%
rename from guides/oss/deployment-and-scaling/keeper/ssl-zookeeper.mdx
rename to core/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper.mdx
diff --git a/guides/oss/deployment-and-scaling/monitoring/monitoring.mdx b/core/guides/oss/deployment-and-scaling/monitoring/monitoring.mdx
similarity index 62%
rename from guides/oss/deployment-and-scaling/monitoring/monitoring.mdx
rename to core/guides/oss/deployment-and-scaling/monitoring/monitoring.mdx
index f04e3a6b..e8247722 100644
--- a/guides/oss/deployment-and-scaling/monitoring/monitoring.mdx
+++ b/core/guides/oss/deployment-and-scaling/monitoring/monitoring.mdx
@@ -54,19 +54,19 @@ This data is collected in the `system.asynchronous_metric_log` table.
ClickHouse server has embedded instruments for self-state monitoring.
-To track server events use server logs. See the [logger](/reference/settings/server-settings/settings#logger) section of the configuration file.
+To track server events use server logs. See the [logger](/core/reference/settings/server-settings/settings#logger) section of the configuration file.
ClickHouse collects:
- Different metrics of how the server uses computational resources.
- Common statistics on query processing.
-You can find metrics in the [system.metrics](/reference/system-tables/metrics), [system.events](/reference/system-tables/events), and [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) tables.
+You can find metrics in the [system.metrics](/core/reference/system-tables/metrics), [system.events](/core/reference/system-tables/events), and [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) tables.
-You can configure ClickHouse to export metrics to [Graphite](https://github.com/graphite-project). See the [Graphite section](/reference/settings/server-settings/settings#graphite) in the ClickHouse server configuration file. Before configuring export of metrics, you should set up Graphite by following their official [guide](https://graphite.readthedocs.io/en/latest/install.html).
+You can configure ClickHouse to export metrics to [Graphite](https://github.com/graphite-project). See the [Graphite section](/core/reference/settings/server-settings/settings#graphite) in the ClickHouse server configuration file. Before configuring export of metrics, you should set up Graphite by following their official [guide](https://graphite.readthedocs.io/en/latest/install.html).
-You can configure ClickHouse to export metrics to [Prometheus](https://prometheus.io). See the [Prometheus section](/reference/settings/server-settings/settings#prometheus) in the ClickHouse server configuration file. Before configuring export of metrics, you should set up Prometheus by following their official [guide](https://prometheus.io/docs/prometheus/latest/installation/).
+You can configure ClickHouse to export metrics to [Prometheus](https://prometheus.io). See the [Prometheus section](/core/reference/settings/server-settings/settings#prometheus) in the ClickHouse server configuration file. Before configuring export of metrics, you should set up Prometheus by following their official [guide](https://prometheus.io/docs/prometheus/latest/installation/).
Additionally, you can monitor server availability through the HTTP API. Send the `HTTP GET` request to `/ping`. If the server is available, it responds with `200 OK`.
-To monitor servers in a cluster configuration, you should set the [max_replica_delay_for_distributed_queries](/reference/settings/session-settings#max_replica_delay_for_distributed_queries) parameter and use the HTTP resource `/replicas_status`. A request to `/replicas_status` returns `200 OK` if the replica is available and is not delayed behind the other replicas. If a replica is delayed, it returns `503 HTTP_SERVICE_UNAVAILABLE` with information about the gap.
+To monitor servers in a cluster configuration, you should set the [max_replica_delay_for_distributed_queries](/core/reference/settings/session-settings#max_replica_delay_for_distributed_queries) parameter and use the HTTP resource `/replicas_status`. A request to `/replicas_status` returns `200 OK` if the replica is available and is not delayed behind the other replicas. If a replica is delayed, it returns `503 HTTP_SERVICE_UNAVAILABLE` with information about the gap.
diff --git a/guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx b/core/guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx
similarity index 79%
rename from guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx
rename to core/guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx
index 0aab0573..ee70fc54 100644
--- a/guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx
+++ b/core/guides/oss/deployment-and-scaling/monitoring/opentelemetry.mdx
@@ -13,19 +13,19 @@ doc_type: 'guide'
ClickHouse accepts trace context HTTP headers, as described by the [W3C recommendation](https://www.w3.org/TR/trace-context/). It also accepts trace context over a native protocol that is used for communication between ClickHouse servers or between the client and server. For manual testing, trace context headers conforming to the Trace Context recommendation can be supplied to `clickhouse-client` using `--opentelemetry-traceparent` and `--opentelemetry-tracestate` flags.
-If no parent trace context is supplied or the provided trace context does not comply with W3C standard above, ClickHouse can start a new trace, with probability controlled by the [opentelemetry_start_trace_probability](/reference/settings/session-settings#opentelemetry_start_trace_probability) setting.
+If no parent trace context is supplied or the provided trace context does not comply with W3C standard above, ClickHouse can start a new trace, with probability controlled by the [opentelemetry_start_trace_probability](/core/reference/settings/session-settings#opentelemetry_start_trace_probability) setting.
## Propagating the trace context {#propagating-the-trace-context}
The trace context is propagated to downstream services in the following cases:
-* Queries to remote ClickHouse servers, such as when using [Distributed](/reference/engines/table-engines/special/distributed) table engine.
+* Queries to remote ClickHouse servers, such as when using [Distributed](/core/reference/engines/table-engines/special/distributed) table engine.
-* [url](/reference/functions/table-functions/url) table function. Trace context information is sent in HTTP headers.
+* [url](/core/reference/functions/table-functions/url) table function. Trace context information is sent in HTTP headers.
## Tracing ClickHouse Keeper Requests {#tracing-clickhouse-keeper-requests}
-ClickHouse supports OpenTelemetry tracing for [ClickHouse Keeper](/guides/oss/deployment-and-scaling/keeper) requests (ZooKeeper-compatible coordination service). This feature provides detailed visibility into the lifecycle of Keeper operations, from client request submission through server-side processing.
+ClickHouse supports OpenTelemetry tracing for [ClickHouse Keeper](/core/guides/oss/deployment-and-scaling/keeper) requests (ZooKeeper-compatible coordination service). This feature provides detailed visibility into the lifecycle of Keeper operations, from client request submission through server-side processing.
### Enabling Keeper Tracing {#enabling-keeper-tracing}
@@ -76,21 +76,21 @@ To manage tracing overhead, Keeper implements dynamic sampling. Sampling rate au
ClickHouse creates `trace spans` for each query and some of the query execution stages, such as query planning or distributed queries.
-To be useful, the tracing information has to be exported to a monitoring system that supports OpenTelemetry, such as [Jaeger](https://jaegertracing.io/) or [Prometheus](https://prometheus.io/). ClickHouse avoids a dependency on a particular monitoring system, instead only providing the tracing data through a system table. OpenTelemetry trace span information [required by the standard](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/overview.md#span) is stored in the [system.opentelemetry_span_log](/reference/system-tables/opentelemetry_span_log) table.
+To be useful, the tracing information has to be exported to a monitoring system that supports OpenTelemetry, such as [Jaeger](https://jaegertracing.io/) or [Prometheus](https://prometheus.io/). ClickHouse avoids a dependency on a particular monitoring system, instead only providing the tracing data through a system table. OpenTelemetry trace span information [required by the standard](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/overview.md#span) is stored in the [system.opentelemetry_span_log](/core/reference/system-tables/opentelemetry_span_log) table.
The table must be enabled in the server configuration, see the `opentelemetry_span_log` element in the default config file `config.xml`. It is enabled by default.
-The tags or attributes are saved as two parallel arrays, containing the keys and values. Use [ARRAY JOIN](/reference/statements/select/array-join) to work with them.
+The tags or attributes are saved as two parallel arrays, containing the keys and values. Use [ARRAY JOIN](/core/reference/statements/select/array-join) to work with them.
## Log-query-settings {#log-query-settings}
-Setting [log_query_settings](/reference/settings/session-settings) allows log changes to query settings during query execution. When enabled, any modifications made to query settings will be recorded in the OpenTelemetry span log. This feature is particularly useful in production environments for tracking configuration changes that may affect query performance.
+Setting [log_query_settings](/core/reference/settings/session-settings) allows log changes to query settings during query execution. When enabled, any modifications made to query settings will be recorded in the OpenTelemetry span log. This feature is particularly useful in production environments for tracking configuration changes that may affect query performance.
## Integration with monitoring systems {#integration-with-monitoring-systems}
At the moment, there is no ready tool that can export the tracing data from ClickHouse to a monitoring system.
-For testing, it is possible to setup the export using a materialized view with the [URL](/reference/engines/table-engines/special/url) engine over the [system.opentelemetry_span_log](/reference/system-tables/opentelemetry_span_log) table, which would push the arriving log data to an HTTP endpoint of a trace collector. For example, to push the minimal span data to a Zipkin instance running at `http://localhost:9411`, in Zipkin v2 JSON format:
+For testing, it is possible to setup the export using a materialized view with the [URL](/core/reference/engines/table-engines/special/url) engine over the [system.opentelemetry_span_log](/core/reference/system-tables/opentelemetry_span_log) table, which would push the arriving log data to an HTTP endpoint of a trace collector. For example, to push the minimal span data to a Zipkin instance running at `http://localhost:9411`, in Zipkin v2 JSON format:
```sql
CREATE MATERIALIZED VIEW default.zipkin_spans
diff --git a/guides/oss/deployment-and-scaling/scaling-clusters.mdx b/core/guides/oss/deployment-and-scaling/scaling-clusters.mdx
similarity index 57%
rename from guides/oss/deployment-and-scaling/scaling-clusters.mdx
rename to core/guides/oss/deployment-and-scaling/scaling-clusters.mdx
index 7a8ca169..1484d5c5 100644
--- a/guides/oss/deployment-and-scaling/scaling-clusters.mdx
+++ b/core/guides/oss/deployment-and-scaling/scaling-clusters.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/sre/scaling-clusters
+slug: /core/guides/sre/scaling-clusters
sidebarTitle: 'Rebalancing shards'
description: 'ClickHouse doesn''t support automatic shard rebalancing, so we provide some best practices for how to rebalance shards.'
title: 'Rebalancing Data'
@@ -9,10 +9,10 @@ keywords: ['scaling', 'clusters', 'horizontal scaling', 'capacity planning', 'pe
ClickHouse doesn't support automatic shard rebalancing. However, there are ways to rebalance shards in order of preference:
-1. Adjust the shard for the [distributed table](/reference/engines/table-engines/special/distributed), allowing writes to be biased to the new shard. This potentially will cause load imbalances and hot spots on the cluster but can be viable in most scenarios where write throughput isn't extremely high. It doesn't require the user to change their write target i.e. It can remain as the distributed table. This doesn't assist with rebalancing existing data.
+1. Adjust the shard for the [distributed table](/core/reference/engines/table-engines/special/distributed), allowing writes to be biased to the new shard. This potentially will cause load imbalances and hot spots on the cluster but can be viable in most scenarios where write throughput isn't extremely high. It doesn't require the user to change their write target i.e. It can remain as the distributed table. This doesn't assist with rebalancing existing data.
2. As an alternative to (1), modify the existing cluster and write exclusively to the new shard until the cluster is balanced - manually weighting writes. This has the same limitations as (1).
3. If you need to rebalance existing data and you have partitioned your data, consider detaching partitions and manually relocating them to another node before reattaching to the new shard. This is more manual than subsequent techniques but may be faster and less resource-intensive. This is a manual operation and thus needs to consider the rebalancing of the data.
-4. Export the data from the source cluster to the new cluster via an [INSERT FROM SELECT](/reference/statements/insert-into#inserting-the-results-of-select). This won't be performant on very large datasets and will potentially incur significant IO on the source cluster and use considerable network resources. This represents a last resort.
+4. Export the data from the source cluster to the new cluster via an [INSERT FROM SELECT](/core/reference/statements/insert-into#inserting-the-results-of-select). This won't be performant on very large datasets and will potentially incur significant IO on the source cluster and use considerable network resources. This represents a last resort.
diff --git a/guides/oss/deployment-and-scaling/separation-storage-compute.mdx b/core/guides/oss/deployment-and-scaling/separation-storage-compute.mdx
similarity index 97%
rename from guides/oss/deployment-and-scaling/separation-storage-compute.mdx
rename to core/guides/oss/deployment-and-scaling/separation-storage-compute.mdx
index 294c4872..3919bacf 100644
--- a/guides/oss/deployment-and-scaling/separation-storage-compute.mdx
+++ b/core/guides/oss/deployment-and-scaling/separation-storage-compute.mdx
@@ -1,6 +1,6 @@
---
sidebarTitle: 'Separation of storage and compute'
-slug: /guides/separation-storage-compute
+slug: /core/guides/separation-storage-compute
title: 'Separation of storage and compute'
description: 'This guide explores how you can use ClickHouse and S3 to implement an architecture with separated storage and compute.'
doc_type: 'guide'
@@ -68,7 +68,7 @@ Copy the following XML in to the newly created file, replacing `BUCKET`, `ACCESS
```
-If you need to further specify settings for the S3 disk, for example to specify a `region` or send a custom HTTP `header`, you can find the list of relevant settings [here](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3).
+If you need to further specify settings for the S3 disk, for example to specify a `region` or send a custom HTTP `header`, you can find the list of relevant settings [here](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3).
You can also replace `access_key_id` and `secret_access_key` with the following, which will attempt to obtain credentials from environment variables and Amazon EC2 metadata:
diff --git a/guides/oss/deployment-and-scaling/shards.mdx b/core/guides/oss/deployment-and-scaling/shards.mdx
similarity index 74%
rename from guides/oss/deployment-and-scaling/shards.mdx
rename to core/guides/oss/deployment-and-scaling/shards.mdx
index 3fc6eac0..24288df2 100644
--- a/guides/oss/deployment-and-scaling/shards.mdx
+++ b/core/guides/oss/deployment-and-scaling/shards.mdx
@@ -14,7 +14,7 @@ This topic doesn't apply to ClickHouse Cloud, where [Parallel Replicas](/product
## What are table shards in ClickHouse? {#what-are-table-shards-in-clickhouse}
-In traditional [shared-nothing](https://en.wikipedia.org/wiki/Shared-nothing_architecture) ClickHouse clusters, sharding is used when ① the data is too large for a single server or ② a single server is too slow for processing the data. The next figure illustrates case ①, where the [uk_price_paid_simple](/concepts/core-concepts/parts) table exceeds a single machine's capacity:
+In traditional [shared-nothing](https://en.wikipedia.org/wiki/Shared-nothing_architecture) ClickHouse clusters, sharding is used when ① the data is too large for a single server or ② a single server is too slow for processing the data. The next figure illustrates case ①, where the [uk_price_paid_simple](/core/concepts/core-concepts/parts) table exceeds a single machine's capacity:
@@ -26,10 +26,10 @@ In such a case the data can be split over multiple ClickHouse servers in the for
-Each shard holds a subset of the data and functions as a regular ClickHouse table that can be queried independently. However, queries will only process that subset, which may be a valid use case depending on data distribution. Typically, a [distributed table](/reference/engines/table-engines/special/distributed) (often per server) provides a unified view of the full dataset. It doesn't store data itself but forwards **SELECT** queries to all shards, assembles the results, and routes **INSERTS** to distribute data evenly.
+Each shard holds a subset of the data and functions as a regular ClickHouse table that can be queried independently. However, queries will only process that subset, which may be a valid use case depending on data distribution. Typically, a [distributed table](/core/reference/engines/table-engines/special/distributed) (often per server) provides a unified view of the full dataset. It doesn't store data itself but forwards **SELECT** queries to all shards, assembles the results, and routes **INSERTS** to distribute data evenly.
## Distributed table creation {#distributed-table-creation}
-To illustrate **SELECT** query forwarding and **INSERT** routing, we consider the [What are table parts](/concepts/core-concepts/parts) example table split across two shards on two ClickHouse servers. First, we show the DDL statement for creating a corresponding **Distributed table** for this setup:
+To illustrate **SELECT** query forwarding and **INSERT** routing, we consider the [What are table parts](/core/concepts/core-concepts/parts) example table split across two shards on two ClickHouse servers. First, we show the DDL statement for creating a corresponding **Distributed table** for this setup:
```sql
CREATE TABLE uk.uk_price_paid_simple_dist ON CLUSTER test_cluster
@@ -42,9 +42,9 @@ CREATE TABLE uk.uk_price_paid_simple_dist ON CLUSTER test_cluster
ENGINE = Distributed('test_cluster', 'uk', 'uk_price_paid_simple', rand())
```
-The `ON CLUSTER` clause makes the DDL statement a [distributed DDL statement](/reference/statements/distributed-ddl), instructing ClickHouse to create the table on all servers listed in the `test_cluster` [cluster definition](/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas#configure-clickhouse-servers). Distributed DDL requires an additional [Keeper](https://clickhouse.com/clickhouse/keeper) component in the [cluster architecture](/guides/oss/deployment-and-scaling/examples/2-shards-1-replica).
+The `ON CLUSTER` clause makes the DDL statement a [distributed DDL statement](/core/reference/statements/distributed-ddl), instructing ClickHouse to create the table on all servers listed in the `test_cluster` [cluster definition](/core/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas#configure-clickhouse-servers). Distributed DDL requires an additional [Keeper](https://clickhouse.com/clickhouse/keeper) component in the [cluster architecture](/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica).
-For the [distributed engine parameters](/reference/engines/table-engines/special/distributed#distributed-parameters), we specify the cluster name (`test_cluster`), the database name (`uk`) for the sharded target table, the sharded target table's name (`uk_price_paid_simple`), and the **sharding key** for INSERT routing. In this example, we use the [rand](/reference/functions/regular-functions/random-functions#rand) function to randomly assign rows to shards. However, any expression—even complex ones—can be used as a sharding key, depending on the use case. The next section illustrates how INSERT routing works.
+For the [distributed engine parameters](/core/reference/engines/table-engines/special/distributed#distributed-parameters), we specify the cluster name (`test_cluster`), the database name (`uk`) for the sharded target table, the sharded target table's name (`uk_price_paid_simple`), and the **sharding key** for INSERT routing. In this example, we use the [rand](/core/reference/functions/regular-functions/random-functions#rand) function to randomly assign rows to shards. However, any expression—even complex ones—can be used as a sharding key, depending on the use case. The next section illustrates how INSERT routing works.
## INSERT routing {#insert-routing}
The diagram below illustrates how INSERTs into a distributed table are processed in ClickHouse:
@@ -75,7 +75,7 @@ Then, the ClickHouse server hosting the initially targeted distributed table ③
## What are table replicas in ClickHouse? {#what-are-table-replicas-in-clickhouse}
Replication in ClickHouse ensures **data integrity** and **failover** by maintaining **copies of shard data** across multiple servers. Since hardware failures are inevitable, replication prevents data loss by ensuring that each shard has multiple replicas. Writes can be directed to any replica, either directly or via a [distributed table](#distributed-table-creation), which selects a replica for the operation. Changes are automatically propagated to other replicas. In case of a failure or maintenance, data remains available on other replicas, and once a failed host recovers, it synchronizes automatically to stay up to date.
-Note that replication requires a [Keeper](https://clickhouse.com/clickhouse/keeper) component in the [cluster architecture](/guides/oss/deployment-and-scaling/examples/2-shards-1-replica).
+Note that replication requires a [Keeper](https://clickhouse.com/clickhouse/keeper) component in the [cluster architecture](/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica).
The following diagram illustrates a ClickHouse cluster with six servers, where the two table shards `Shard-1` and `Shard-2` introduced earlier each have three replicas. A query is sent to this cluster:
@@ -93,10 +93,10 @@ Query processing works similarly to setups without replicas, with only a single
The rest works the [same](#select-forwarding) as in setups without replicas and isn't shown in the diagram above. The ClickHouse server hosting the initially targeted distributed table collects all local results, merges them into the final global result, and returns it to the query sender.
-Note that ClickHouse allows configuring the query forwarding strategy for ②. By default—unlike in the diagram above—the distributed table [prefers](/reference/settings/session-settings#prefer_localhost_replica) a local replica if available, but other load balancing [strategies](/reference/settings/session-settings#load_balancing) can be used.
+Note that ClickHouse allows configuring the query forwarding strategy for ②. By default—unlike in the diagram above—the distributed table [prefers](/core/reference/settings/session-settings#prefer_localhost_replica) a local replica if available, but other load balancing [strategies](/core/reference/settings/session-settings#load_balancing) can be used.
## Where to find more information {#where-to-find-more-information}
-For more details beyond this high-level introduction to table shards and replicas, check out our [deployment and scaling guide](/guides/oss/deployment-and-scaling/examples/2-shards-1-replica).
+For more details beyond this high-level introduction to table shards and replicas, check out our [deployment and scaling guide](/core/guides/oss/deployment-and-scaling/examples/2-shards-1-replica).
We also highly recommend this tutorial video for a deeper dive into ClickHouse shards and replicas:
diff --git a/guides/oss/deployment-and-scaling/terminology.mdx b/core/guides/oss/deployment-and-scaling/terminology.mdx
similarity index 100%
rename from guides/oss/deployment-and-scaling/terminology.mdx
rename to core/guides/oss/deployment-and-scaling/terminology.mdx
diff --git a/guides/oss/update.mdx b/core/guides/oss/update.mdx
similarity index 100%
rename from guides/oss/update.mdx
rename to core/guides/oss/update.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/agno.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/agno.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/chainlit.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/chainlit.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/copilotkit.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/copilotkit.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/copilotkit.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/copilotkit.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/crewai.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/crewai.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/crewai.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/crewai.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/dspy.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/dspy.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/dspy.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/dspy.mdx
diff --git a/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/index.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/index.mdx
new file mode 100644
index 00000000..b0ea7802
--- /dev/null
+++ b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/index.mdx
@@ -0,0 +1,28 @@
+---
+slug: /use-cases/AI/MCP/ai-agent-libraries
+title: 'Integrate AI agent libraries with ClickHouse MCP server'
+description: 'Learn how to build an AI agent with DSPy and the ClickHouse MCP server'
+keywords: ['ClickHouse', 'Agno', 'Chainlit', 'MCP', 'DSPy', 'LangChain', 'LlamaIndex', 'OpenAI agents', 'PydanticAI', 'SlackBot', 'StreamLit']
+doc_type: 'guide'
+---
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [How to build a ClickHouse-backed AI Agent with Streamlit](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/streamlit) | Learn how to build a web-based AI Agent with Streamlit and the ClickHouse MCP server |
+| [How to build a LangChain/LangGraph AI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/langchain) | Learn how to build a LangChain/LangGraph AI agent that can interact with ClickHouse's SQL playground using ClickHouse's MCP server. |
+| [How to build a LlamaIndex AI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/llamaindex) | Learn how to build a LlamaIndex AI agent that can interact with ClickHouse MCP server. |
+| [How to build a PydanticAI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/pydantic-ai) | Learn how to build a PydanticAI agent that can interact with ClickHouse MCP server. |
+| [How to build a SlackBot agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/slackbot) | Learn how to build a SlackBot agent that can interact with ClickHouse MCP server. |
+| [How to build an AI Agent with Agno and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno) | Learn how build an AI Agent with Agno and the ClickHouse MCP server |
+| [How to build an AI Agent with Chainlit and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit) | Learn how to use Chainlit to build LLM-based chat apps together with the ClickHouse MCP server |
+| [How to build an AI Agent with Claude Agent SDK and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk) | Learn how build an AI Agent with Claude Agent SDK and the ClickHouse MCP server |
+| [How to build an AI Agent with CopilotKit and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/copilotkit) | Learn how to build an agentic application using data stored in ClickHouse with ClickHouse MCP and CopilotKit |
+| [How to build an AI Agent with CrewAI and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/crewai) | Learn how build an AI Agent with CrewAI and the ClickHouse MCP server |
+| [How to build an AI Agent with DSPy and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/dspy) | Learn how to build an AI agent with DSPy and the ClickHouse MCP server |
+| [How to build an AI Agent with mcp-agent and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/mcp-agent) | Learn how build an AI Agent with mcp-agent and the ClickHouse MCP server |
+| [How to build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework) | Learn how build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server |
+| [How to build an AI Agent with Upsonic and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/upsonic) | Learn how build an AI Agent with Upsonic and the ClickHouse MCP server |
+| [How to build an OpenAI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/openai-agents) | Learn how to build an OpenAI agent that can interact with ClickHouse MCP server. |
+{/*AUTOGENERATED_END*/}
+
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/langchain.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/langchain.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/langchain.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/langchain.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/llamaindex.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/llamaindex.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/llamaindex.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/llamaindex.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/mcp-agent.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/mcp-agent.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/mcp-agent.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/mcp-agent.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/openai-agents.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/openai-agents.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/openai-agents.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/openai-agents.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/pydantic-ai.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/pydantic-ai.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/pydantic-ai.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/pydantic-ai.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/slackbot.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/slackbot.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/slackbot.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/slackbot.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/streamlit.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/streamlit.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/streamlit.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/streamlit.mdx
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/upsonic.mdx b/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/upsonic.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ai-agent-libraries/upsonic.mdx
rename to core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/upsonic.mdx
diff --git a/guides/ai-ml/MCP/anythingllm.mdx b/core/guides/use-cases/ai-ml/MCP/anythingllm.mdx
similarity index 97%
rename from guides/ai-ml/MCP/anythingllm.mdx
rename to core/guides/use-cases/ai-ml/MCP/anythingllm.mdx
index afe04843..7651dacc 100644
--- a/guides/ai-ml/MCP/anythingllm.mdx
+++ b/core/guides/use-cases/ai-ml/MCP/anythingllm.mdx
@@ -82,7 +82,7 @@ Create a file called `anythingllm_mcp_servers.json` in the `plugins` directory a
```
If you want to explore your own data, you can do so by
-using the [host, username and password](/get-started/setup/cloud#connect-with-your-app)
+using the [host, username and password](/core/get-started/setup/cloud#connect-with-your-app)
of your own ClickHouse Cloud service.
diff --git a/guides/ai-ml/MCP/claude-desktop.mdx b/core/guides/use-cases/ai-ml/MCP/claude-desktop.mdx
similarity index 100%
rename from guides/ai-ml/MCP/claude-desktop.mdx
rename to core/guides/use-cases/ai-ml/MCP/claude-desktop.mdx
diff --git a/guides/ai-ml/MCP/index.mdx b/core/guides/use-cases/ai-ml/MCP/index.mdx
similarity index 53%
rename from guides/ai-ml/MCP/index.mdx
rename to core/guides/use-cases/ai-ml/MCP/index.mdx
index 59245ec7..3fed74f2 100644
--- a/guides/ai-ml/MCP/index.mdx
+++ b/core/guides/use-cases/ai-ml/MCP/index.mdx
@@ -55,25 +55,25 @@ Below are some guides showing how to use the ClickHouse MCP server.
{/*AUTOGENERATED_START*/}
| Page | Description |
|-----|-----|
-| [How to build a ClickHouse-backed AI Agent with Streamlit](/guides/ai-ml/MCP/ai-agent-libraries/streamlit) | Learn how to build a web-based AI Agent with Streamlit and the ClickHouse MCP server |
-| [How to build a LangChain/LangGraph AI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/langchain) | Learn how to build a LangChain/LangGraph AI agent that can interact with ClickHouse's SQL playground using ClickHouse's MCP server. |
-| [How to build a LlamaIndex AI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/llamaindex) | Learn how to build a LlamaIndex AI agent that can interact with ClickHouse MCP server. |
-| [How to build a PydanticAI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/pydantic-ai) | Learn how to build a PydanticAI agent that can interact with ClickHouse MCP server. |
-| [How to build a SlackBot agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/slackbot) | Learn how to build a SlackBot agent that can interact with ClickHouse MCP server. |
-| [How to build an AI Agent with Agno and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/agno) | Learn how build an AI Agent with Agno and the ClickHouse MCP server |
-| [How to build an AI Agent with Chainlit and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/chainlit) | Learn how to use Chainlit to build LLM-based chat apps together with the ClickHouse MCP server |
-| [How to build an AI Agent with Claude Agent SDK and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk) | Learn how build an AI Agent with Claude Agent SDK and the ClickHouse MCP server |
-| [How to build an AI Agent with CopilotKit and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/copilotkit) | Learn how to build an agentic application using data stored in ClickHouse with ClickHouse MCP and CopilotKit |
-| [How to build an AI Agent with CrewAI and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/crewai) | Learn how build an AI Agent with CrewAI and the ClickHouse MCP server |
-| [How to build an AI Agent with DSPy and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/dspy) | Learn how to build an AI agent with DSPy and the ClickHouse MCP server |
-| [How to build an AI Agent with mcp-agent and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/mcp-agent) | Learn how build an AI Agent with mcp-agent and the ClickHouse MCP server |
-| [How to build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework) | Learn how build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server |
-| [How to build an AI Agent with Upsonic and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/upsonic) | Learn how build an AI Agent with Upsonic and the ClickHouse MCP server |
-| [How to build an OpenAI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/openai-agents) | Learn how to build an OpenAI agent that can interact with ClickHouse MCP server. |
-| [Set up ClickHouse MCP server with AnythingLLM and ClickHouse Cloud](/guides/ai-ml/MCP/anythingllm) | This guide explains how to set up AnythingLLM with a ClickHouse MCP server using Docker. |
-| [Set up ClickHouse MCP server with Claude Desktop](/guides/ai-ml/MCP/claude-desktop) | This guide explains how to set up Claude Desktop with a ClickHouse MCP server. |
-| [Set up ClickHouse MCP server with Jan.ai](/guides/ai-ml/MCP/janai) | This guide explains how to set up Jan.ai with a ClickHouse MCP server. |
-| [Set up ClickHouse MCP server with LibreChat and ClickHouse Cloud](/guides/ai-ml/MCP/librechat) | This guide explains how to set up LibreChat with a ClickHouse MCP server using Docker. |
-| [Set up ClickHouse MCP server with Ollama](/guides/ai-ml/MCP/ollama) | This guide explains how to set up Ollama with a ClickHouse MCP server. |
-| [Set up ClickHouse MCP server with Open WebUI and ClickHouse Cloud](/guides/ai-ml/MCP/open-webui) | This guide explains how to set up Open WebUI with a ClickHouse MCP server using Docker. |
+| [How to build a ClickHouse-backed AI Agent with Streamlit](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/streamlit) | Learn how to build a web-based AI Agent with Streamlit and the ClickHouse MCP server |
+| [How to build a LangChain/LangGraph AI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/langchain) | Learn how to build a LangChain/LangGraph AI agent that can interact with ClickHouse's SQL playground using ClickHouse's MCP server. |
+| [How to build a LlamaIndex AI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/llamaindex) | Learn how to build a LlamaIndex AI agent that can interact with ClickHouse MCP server. |
+| [How to build a PydanticAI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/pydantic-ai) | Learn how to build a PydanticAI agent that can interact with ClickHouse MCP server. |
+| [How to build a SlackBot agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/slackbot) | Learn how to build a SlackBot agent that can interact with ClickHouse MCP server. |
+| [How to build an AI Agent with Agno and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/agno) | Learn how build an AI Agent with Agno and the ClickHouse MCP server |
+| [How to build an AI Agent with Chainlit and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/chainlit) | Learn how to use Chainlit to build LLM-based chat apps together with the ClickHouse MCP server |
+| [How to build an AI Agent with Claude Agent SDK and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk) | Learn how build an AI Agent with Claude Agent SDK and the ClickHouse MCP server |
+| [How to build an AI Agent with CopilotKit and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/copilotkit) | Learn how to build an agentic application using data stored in ClickHouse with ClickHouse MCP and CopilotKit |
+| [How to build an AI Agent with CrewAI and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/crewai) | Learn how build an AI Agent with CrewAI and the ClickHouse MCP server |
+| [How to build an AI Agent with DSPy and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/dspy) | Learn how to build an AI agent with DSPy and the ClickHouse MCP server |
+| [How to build an AI Agent with mcp-agent and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/mcp-agent) | Learn how build an AI Agent with mcp-agent and the ClickHouse MCP server |
+| [How to build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework) | Learn how build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server |
+| [How to build an AI Agent with Upsonic and the ClickHouse MCP server](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/upsonic) | Learn how build an AI Agent with Upsonic and the ClickHouse MCP server |
+| [How to build an OpenAI agent using ClickHouse MCP server.](/core/guides/use-cases/ai-ml/MCP/ai-agent-libraries/openai-agents) | Learn how to build an OpenAI agent that can interact with ClickHouse MCP server. |
+| [Set up ClickHouse MCP server with AnythingLLM and ClickHouse Cloud](/core/guides/use-cases/ai-ml/MCP/anythingllm) | This guide explains how to set up AnythingLLM with a ClickHouse MCP server using Docker. |
+| [Set up ClickHouse MCP server with Claude Desktop](/core/guides/use-cases/ai-ml/MCP/claude-desktop) | This guide explains how to set up Claude Desktop with a ClickHouse MCP server. |
+| [Set up ClickHouse MCP server with Jan.ai](/core/guides/use-cases/ai-ml/MCP/janai) | This guide explains how to set up Jan.ai with a ClickHouse MCP server. |
+| [Set up ClickHouse MCP server with LibreChat and ClickHouse Cloud](/core/guides/use-cases/ai-ml/MCP/librechat) | This guide explains how to set up LibreChat with a ClickHouse MCP server using Docker. |
+| [Set up ClickHouse MCP server with Ollama](/core/guides/use-cases/ai-ml/MCP/ollama) | This guide explains how to set up Ollama with a ClickHouse MCP server. |
+| [Set up ClickHouse MCP server with Open WebUI and ClickHouse Cloud](/core/guides/use-cases/ai-ml/MCP/open-webui) | This guide explains how to set up Open WebUI with a ClickHouse MCP server using Docker. |
{/*AUTOGENERATED_END*/}
diff --git a/guides/ai-ml/MCP/janai.mdx b/core/guides/use-cases/ai-ml/MCP/janai.mdx
similarity index 100%
rename from guides/ai-ml/MCP/janai.mdx
rename to core/guides/use-cases/ai-ml/MCP/janai.mdx
diff --git a/guides/ai-ml/MCP/librechat.mdx b/core/guides/use-cases/ai-ml/MCP/librechat.mdx
similarity index 98%
rename from guides/ai-ml/MCP/librechat.mdx
rename to core/guides/use-cases/ai-ml/MCP/librechat.mdx
index 979a43f8..04481495 100644
--- a/guides/ai-ml/MCP/librechat.mdx
+++ b/core/guides/use-cases/ai-ml/MCP/librechat.mdx
@@ -111,7 +111,7 @@ services:
```
If you want to explore your own data, you can do so by
-using the [host, username and password](/get-started/setup/cloud#connect-with-your-app)
+using the [host, username and password](/core/get-started/setup/cloud#connect-with-your-app)
of your own ClickHouse Cloud service.
diff --git a/guides/ai-ml/MCP/ollama.mdx b/core/guides/use-cases/ai-ml/MCP/ollama.mdx
similarity index 100%
rename from guides/ai-ml/MCP/ollama.mdx
rename to core/guides/use-cases/ai-ml/MCP/ollama.mdx
diff --git a/guides/ai-ml/MCP/open-webui.mdx b/core/guides/use-cases/ai-ml/MCP/open-webui.mdx
similarity index 100%
rename from guides/ai-ml/MCP/open-webui.mdx
rename to core/guides/use-cases/ai-ml/MCP/open-webui.mdx
diff --git a/guides/ai-ml/ai-powered-sql-generation.mdx b/core/guides/use-cases/ai-ml/ai-powered-sql-generation.mdx
similarity index 93%
rename from guides/ai-ml/ai-powered-sql-generation.mdx
rename to core/guides/use-cases/ai-ml/ai-powered-sql-generation.mdx
index c19563d3..9cc523d3 100644
--- a/guides/ai-ml/ai-powered-sql-generation.mdx
+++ b/core/guides/use-cases/ai-ml/ai-powered-sql-generation.mdx
@@ -8,7 +8,7 @@ show_related_blogs: true
doc_type: 'guide'
---
-Starting from ClickHouse 25.7, [ClickHouse Client](/integrations/connectors/data-integrations/drivers-and-interfaces/cli) and [clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local) include [AI-powered functionality](/integrations/connectors/data-integrations/drivers-and-interfaces/cli#ai-sql-generation) that converts natural language descriptions into SQL queries. This feature allows you to describe your data requirements in plain text, which the system then translates into corresponding SQL statements.
+Starting from ClickHouse 25.7, [ClickHouse Client](/core/concepts/features/interfaces/cli) and [clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local) include [AI-powered functionality](/core/concepts/features/interfaces/cli#ai-sql-generation) that converts natural language descriptions into SQL queries. This feature allows you to describe your data requirements in plain text, which the system then translates into corresponding SQL statements.
This capability is particularly useful if you're not familiar with complex SQL syntax or need to quickly generate queries for exploratory data analysis. The feature works with standard ClickHouse tables and supports common query patterns including filtering, aggregation, and joins.
@@ -27,7 +27,7 @@ export ANTHROPIC_API_KEY=your_api_key
export OPENAI_API_KEY=your_api_key
```
-Alternatively, you can [provide a configuration file](/integrations/connectors/data-integrations/drivers-and-interfaces/cli#ai-sql-generation-configuration).
+Alternatively, you can [provide a configuration file](/core/concepts/features/interfaces/cli#ai-sql-generation-configuration).
## Connecting to the ClickHouse SQL playground {#connecting-to-the-clickhouse-sql-playground}
@@ -43,7 +43,7 @@ clickhouse client -mn \
```
-We'll assume you have ClickHouse installed, but if not, refer to the [installation guide](/get-started/setup/self-managed/install)
+We'll assume you have ClickHouse installed, but if not, refer to the [installation guide](/core/get-started/setup/install)
## Asking ClickHouse questions in natural language {#asking-clickhouse-questions-in-natural-language}
diff --git a/guides/ai-ml/data-exploration/jupyter-notebook.mdx b/core/guides/use-cases/ai-ml/data-exploration/jupyter-notebook.mdx
similarity index 98%
rename from guides/ai-ml/data-exploration/jupyter-notebook.mdx
rename to core/guides/use-cases/ai-ml/data-exploration/jupyter-notebook.mdx
index 6c1d1655..7c4bf937 100644
--- a/guides/ai-ml/data-exploration/jupyter-notebook.mdx
+++ b/core/guides/use-cases/ai-ml/data-exploration/jupyter-notebook.mdx
@@ -105,7 +105,7 @@ print(result)
With the UK price paid data set up and chDB up and running in a Jupyter notebook, we can now get started exploring our data.
Let's imagine we're interested in checking how price has changed with time for a specific area in the UK such as the capital city, London.
-ClickHouse's [`remoteSecure`](/reference/functions/table-functions/remote) function allows you to easily retrieve the data from ClickHouse Cloud.
+ClickHouse's [`remoteSecure`](/core/reference/functions/table-functions/remote) function allows you to easily retrieve the data from ClickHouse Cloud.
You can instruct chDB to return this data in process as a Pandas data frame - which is a convenient and familiar way of working with data.
Write the following query to fetch the UK price paid data from your ClickHouse Cloud service and turn it into a `pandas.DataFrame`:
diff --git a/guides/ai-ml/data-exploration/marimo-notebook.mdx b/core/guides/use-cases/ai-ml/data-exploration/marimo-notebook.mdx
similarity index 97%
rename from guides/ai-ml/data-exploration/marimo-notebook.mdx
rename to core/guides/use-cases/ai-ml/data-exploration/marimo-notebook.mdx
index ab1b305a..09099485 100644
--- a/guides/ai-ml/data-exploration/marimo-notebook.mdx
+++ b/core/guides/use-cases/ai-ml/data-exploration/marimo-notebook.mdx
@@ -118,7 +118,7 @@ You should see the result shown underneath the cell you just ran:
With the UK price paid data set up and chDB up and running in a Marimo notebook, we can now get started exploring our data.
Let's imagine we're interested in checking how price has changed with time for a specific area in the UK such as the capital city, London.
-ClickHouse's [`remoteSecure`](/reference/functions/table-functions/remote) function allows you to easily retrieve the data from ClickHouse Cloud.
+ClickHouse's [`remoteSecure`](/core/reference/functions/table-functions/remote) function allows you to easily retrieve the data from ClickHouse Cloud.
You can instruct chDB to return this data in process as a Pandas data frame - which is a convenient and familiar way of working with data.
### Querying ClickHouse Cloud data {#querying-clickhouse-cloud-data}
@@ -148,7 +148,7 @@ df.head()
In the snippet above, `chdb.query(query, "DataFrame")` runs the specified query and outputs the result as a Pandas DataFrame.
-In the query we're using the [`remoteSecure`](/reference/functions/table-functions/remote) function to connect to ClickHouse Cloud.
+In the query we're using the [`remoteSecure`](/core/reference/functions/table-functions/remote) function to connect to ClickHouse Cloud.
The `remoteSecure` functions takes as parameters:
- a connection string
diff --git a/core/guides/use-cases/ai-ml/index.mdx b/core/guides/use-cases/ai-ml/index.mdx
new file mode 100644
index 00000000..f1f222f3
--- /dev/null
+++ b/core/guides/use-cases/ai-ml/index.mdx
@@ -0,0 +1,19 @@
+---
+description: 'Landing page for Machine Learning and GenAI use case guides'
+slug: /use-cases/AI/ask-ai
+title: 'Machine learning and GenAI'
+keywords: ['machine learning', 'genAI', 'AI']
+doc_type: 'landing-page'
+---
+
+ClickHouse is ideally suited as a real-time database to power Machine Learning workloads.
+With ClickHouse, it's easier than ever to unleash GenAI on your analytics data.
+In this section, you'll find some guides around how ClickHouse is used for
+Machine Learning and GenAI.
+
+| Section | Description |
+| ------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------- |
+| [AI chat](/products/cloud/features/ai-ml/aichat/using-ai-chat) | This guide explains how to enable and use the AI Chat feature in the ClickHouse Cloud Console. |
+| [Semantic Layer](/products/cloud/features/ai-ml/aichat/customizing-semantic-layer) | Learn how to customize the ClickHouse Assistant chat agent with AGENTS.md to provide business-specific rules, calculations, and data structure guidance. |
+| [MCP](/core/guides/use-cases/ai-ml/MCP) | A collection of guides to get you setup using Model Context Protocol (MCP) with ClickHouse |
+| [AI-powered SQL generation](/core/guides/use-cases/ai-ml/ai-powered-sql-generation) | This feature allows you to describe your data requirements in plain text, which the system then translates into corresponding SQL statements. |
diff --git a/guides/ai-ml/vector-search.mdx b/core/guides/use-cases/ai-ml/vector-search.mdx
similarity index 98%
rename from guides/ai-ml/vector-search.mdx
rename to core/guides/use-cases/ai-ml/vector-search.mdx
index 89a6d4e1..0f22bbe1 100644
--- a/guides/ai-ml/vector-search.mdx
+++ b/core/guides/use-cases/ai-ml/vector-search.mdx
@@ -36,7 +36,7 @@ Vector search is everywhere now.
It powers music recommendations, retrieval-augmented generation (RAG) for large language models where external knowledge is fetched to improve answers, and even googling is powered by vector search to some extent.
Users often prefer regular databases with ad-hoc vector capabilities over fully specialized vector stores, despite specialized databases' advantages.
-ClickHouse supports [brute-force vector search](/reference/engines/table-engines/mergetree-family/annindexes#exact-nearest-neighbor-search) as well as [methods for approximate nearest neighbour (ANN) search](/reference/engines/table-engines/mergetree-family/annindexes#approximate-nearest-neighbor-search), including HNSW – the current standard for fast vector retrieval.
+ClickHouse supports [brute-force vector search](/core/reference/engines/table-engines/mergetree-family/annindexes#exact-nearest-neighbor-search) as well as [methods for approximate nearest neighbour (ANN) search](/core/reference/engines/table-engines/mergetree-family/annindexes#approximate-nearest-neighbor-search), including HNSW – the current standard for fast vector retrieval.
### Understanding embeddings {#understanding-embeddings}
@@ -191,7 +191,7 @@ If the original vector length doesn't divide evenly by 8, the structure is padde
### The distance calculation {#the-distance-calculation}
-To query with QBit, use the [`L2DistanceTransposed`](/reference/functions/regular-functions/distance-functions#L2DistanceTransposed) function with a precision parameter:
+To query with QBit, use the [`L2DistanceTransposed`](/core/reference/functions/regular-functions/distance-functions#L2DistanceTransposed) function with a precision parameter:
```sql
SELECT
diff --git a/guides/data-warehousing/biglake-catalog.mdx b/core/guides/use-cases/data-warehousing/biglake-catalog.mdx
similarity index 97%
rename from guides/data-warehousing/biglake-catalog.mdx
rename to core/guides/use-cases/data-warehousing/biglake-catalog.mdx
index 02ee5e31..c2609882 100644
--- a/guides/data-warehousing/biglake-catalog.mdx
+++ b/core/guides/use-cases/data-warehousing/biglake-catalog.mdx
@@ -31,7 +31,7 @@ Before creating a connection from ClickHouse to Lakehouse runtime catalog (BigLa
## Creating a connection between Lakehouse runtime catalog and ClickHouse {#creating-a-connection}
-With the OAuth credentials in place, create a database in ClickHouse that uses the [DataLakeCatalog](/reference/engines/database-engines/datalake) database engine:
+With the OAuth credentials in place, create a database in ClickHouse that uses the [DataLakeCatalog](/core/reference/engines/database-engines/datalake) database engine:
```sql
SET allow_database_iceberg = 1;
diff --git a/guides/data-warehousing/getting-started/accelerating-analytics.mdx b/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics.mdx
similarity index 78%
rename from guides/data-warehousing/getting-started/accelerating-analytics.mdx
rename to core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics.mdx
index 54db5304..24188a43 100644
--- a/guides/data-warehousing/getting-started/accelerating-analytics.mdx
+++ b/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics.mdx
@@ -8,21 +8,21 @@ keywords: ['data lake', 'lakehouse', 'MergeTree', 'accelerate', 'analytics', 'in
doc_type: 'guide'
---
-In the [previous section](/guides/data-warehousing/getting-started/connecting-catalogs), you connected ClickHouse to a data catalog and queried open table formats directly. While querying data in place is convenient, open table formats are not optimized for the low-latency, high-concurrency workloads that power dashboards and operational reporting. For these use cases, loading data into ClickHouse's [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) engine delivers dramatically better performance.
+In the [previous section](/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs), you connected ClickHouse to a data catalog and queried open table formats directly. While querying data in place is convenient, open table formats are not optimized for the low-latency, high-concurrency workloads that power dashboards and operational reporting. For these use cases, loading data into ClickHouse's [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) engine delivers dramatically better performance.
MergeTree offers several advantages over reading open table formats directly:
-- **[Sparse primary index](/guides/cloud-oss/data-modelling/sparse-primary-indexes)** - Orders data on disk by a chosen key, allowing ClickHouse to skip over large ranges of irrelevant rows during queries.
-- **Enhanced data types** - Native support for types such as [JSON](/concepts/best-practices/json-type), [LowCardinality](/reference/data-types/lowcardinality), and [Enum](/reference/data-types/enum), enabling more compact storage and faster processing.
-- **[Skip indices](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes)** and **[full-text indices](/reference/engines/table-engines/mergetree-family/textindexes)** - Secondary index structures that let ClickHouse skip granules that don't match a query's filter predicates, particularly effective for text search workloads.
+- **[Sparse primary index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes)** - Orders data on disk by a chosen key, allowing ClickHouse to skip over large ranges of irrelevant rows during queries.
+- **Enhanced data types** - Native support for types such as [JSON](/core/concepts/best-practices/json-type), [LowCardinality](/core/reference/data-types/lowcardinality), and [Enum](/core/reference/data-types/enum), enabling more compact storage and faster processing.
+- **[Skip indices](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes)** and **[full-text indices](/core/reference/engines/table-engines/mergetree-family/textindexes)** - Secondary index structures that let ClickHouse skip granules that don't match a query's filter predicates, particularly effective for text search workloads.
- **Fast inserts with automatic compaction** - ClickHouse is designed for high-throughput inserts and automatically merges data parts in the background, analogous to compaction in open table formats.
-- **Optimized for concurrent reads** - MergeTree columnar storage layout, combined with [multiple caching layers](/concepts/features/performance/caches/caches), supports real-time analytical workloads with high concurrency - something open table formats are not designed for.
+- **Optimized for concurrent reads** - MergeTree columnar storage layout, combined with [multiple caching layers](/core/concepts/features/performance/caches/caches), supports real-time analytical workloads with high concurrency - something open table formats are not designed for.
This guide shows how to load data from a catalog into a MergeTree table using `INSERT INTO SELECT` for faster analytics.
## Connect to the catalog {#connect-catalog}
-We'll use the same Unity Catalog connection from the [previous guide](/guides/data-warehousing/getting-started/connecting-catalogs), connecting via the Iceberg REST endpoint:
+We'll use the same Unity Catalog connection from the [previous guide](/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs), connecting via the Iceberg REST endpoint:
```sql
SET allow_database_iceberg = 1;
@@ -115,7 +115,7 @@ LIMIT 5
Peak memory usage: 4.35 GiB.
```
-The query takes nearly **9 seconds** because ClickHouse must perform a full table scan across all Parquet files in object storage. Performance could be improved with partitioning, but columns like `logger_name` may be too high cardinality to partition effectively. We also have no indices such as [Text indices](/reference/engines/table-engines/mergetree-family/mergetree#text) to further prune data. This is where MergeTree excels.
+The query takes nearly **9 seconds** because ClickHouse must perform a full table scan across all Parquet files in object storage. Performance could be improved with partitioning, but columns like `logger_name` may be too high cardinality to partition effectively. We also have no indices such as [Text indices](/core/reference/engines/table-engines/mergetree-family/mergetree#text) to further prune data. This is where MergeTree excels.
## Load data into MergeTree {#load-data}
@@ -125,8 +125,8 @@ We create a MergeTree table with some effort to optimize the schema. Notice a fe
- **No `Nullable` wrappers** - removing `Nullable` improves storage efficiency and query performance.
- **`LowCardinality(String)`** on the `level`, `instance_type`, `thread_name` and `check_name` columns - dictionary-encodes a column with few distinct values for better compression and faster filtering.
-- **A [full-text index](/reference/engines/table-engines/mergetree-family/textindexes)** on the `message` column - accelerates token-based text searches like `hasToken(message, 'error')`.
-- **An `ORDER BY` key** of `(instance_type, thread_name, toStartOfMinute(event_time))` - aligns data on disk with common filter patterns so the [sparse primary index](/guides/cloud-oss/data-modelling/sparse-primary-indexes) can skip irrelevant granules.
+- **A [full-text index](/core/reference/engines/table-engines/mergetree-family/textindexes)** on the `message` column - accelerates token-based text searches like `hasToken(message, 'error')`.
+- **An `ORDER BY` key** of `(instance_type, thread_name, toStartOfMinute(event_time))` - aligns data on disk with common filter patterns so the [sparse primary index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes) can skip irrelevant granules.
```sql
SET enable_full_text_index = 1;
diff --git a/guides/data-warehousing/getting-started/connecting-catalogs.mdx b/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs.mdx
similarity index 80%
rename from guides/data-warehousing/getting-started/connecting-catalogs.mdx
rename to core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs.mdx
index be51426d..f3f8e9e5 100644
--- a/guides/data-warehousing/getting-started/connecting-catalogs.mdx
+++ b/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs.mdx
@@ -10,17 +10,17 @@ doc_type: 'guide'
import BetaBadge from "/snippets/components/BetaBadge/BetaBadge.jsx";
-In the [previous section](/guides/data-warehousing/getting-started/querying-directly), you queried open table formats by passing storage paths directly. In practice, most organizations manage table metadata through a **data catalog** - a central registry that tracks table locations, schemas, and partitions. When you connect ClickHouse to a catalog using the [`DataLakeCatalog`](/reference/engines/database-engines/datalake) database engine, the entire catalog is exposed as a ClickHouse database. Every table in the catalog appears automatically and can be queried with full ClickHouse SQL - no need to know individual table paths or manage credentials per table.
+In the [previous section](/core/guides/use-cases/data-warehousing/getting-started/querying-directly), you queried open table formats by passing storage paths directly. In practice, most organizations manage table metadata through a **data catalog** - a central registry that tracks table locations, schemas, and partitions. When you connect ClickHouse to a catalog using the [`DataLakeCatalog`](/core/reference/engines/database-engines/datalake) database engine, the entire catalog is exposed as a ClickHouse database. Every table in the catalog appears automatically and can be queried with full ClickHouse SQL - no need to know individual table paths or manage credentials per table.
This guide walks through connecting to [Databricks Unity Catalog](https://www.databricks.com/product/unity-catalog). ClickHouse also supports the following catalogs - refer to each reference guide for full setup instructions:
| Catalog | Reference guide |
|---------|----------------|
-| AWS Glue | [AWS Glue catalog](/guides/data-warehousing/glue-catalog) |
-| Iceberg REST Catalog | [REST catalog](/guides/data-warehousing/rest-catalog) |
-| Lakekeeper | [Lakekeeper catalog](/guides/data-warehousing/lakekeeper-catalog) |
-| Project Nessie | [Nessie catalog](/guides/data-warehousing/nessie-catalog) |
-| Microsoft OneLake | [Fabric OneLake](/guides/data-warehousing/onelake-catalog) |
+| AWS Glue | [AWS Glue catalog](/core/guides/use-cases/data-warehousing/glue-catalog) |
+| Iceberg REST Catalog | [REST catalog](/core/guides/use-cases/data-warehousing/rest-catalog) |
+| Lakekeeper | [Lakekeeper catalog](/core/guides/use-cases/data-warehousing/lakekeeper-catalog) |
+| Project Nessie | [Nessie catalog](/core/guides/use-cases/data-warehousing/nessie-catalog) |
+| Microsoft OneLake | [Fabric OneLake](/core/guides/use-cases/data-warehousing/onelake-catalog) |
## Connecting to a Unity Catalog {#connecting-to-unity-catalog}
@@ -56,7 +56,7 @@ With the credentials, you can connect to the relevant endpoint to query the Iceb
-The [Unity catalog](/guides/data-warehousing/unity-catalog) should be used for accessing data in the Delta format.
+The [Unity catalog](/core/guides/use-cases/data-warehousing/unity-catalog) should be used for accessing data in the Delta format.
```sql
SET allow_experimental_database_unity_catalog = 1;
@@ -152,4 +152,4 @@ FROM unity.`icebench.single_day_log`
1 row in set. Elapsed: 1.265 sec.
```
-For full setup instructions, see the [Unity catalog reference guide](/guides/data-warehousing/unity-catalog).
+For full setup instructions, see the [Unity catalog reference guide](/core/guides/use-cases/data-warehousing/unity-catalog).
diff --git a/guides/data-warehousing/getting-started/overview.mdx b/core/guides/use-cases/data-warehousing/getting-started/overview.mdx
similarity index 65%
rename from guides/data-warehousing/getting-started/overview.mdx
rename to core/guides/use-cases/data-warehousing/getting-started/overview.mdx
index 68eaf859..3bddf0c3 100644
--- a/guides/data-warehousing/getting-started/overview.mdx
+++ b/core/guides/use-cases/data-warehousing/getting-started/overview.mdx
@@ -23,7 +23,7 @@ Screenshots in this guide are from the [ClickHouse Cloud](https://console.clickh
## Query Iceberg data directly {#query-directly}
-The fastest way to start is with the [`icebergS3()`](/reference/functions/table-functions/iceberg) table function — point it at an Iceberg table in S3 and query immediately, no setup required.
+The fastest way to start is with the [`icebergS3()`](/core/reference/functions/table-functions/iceberg) table function — point it at an Iceberg table in S3 and query immediately, no setup required.
Inspect the schema:
@@ -45,9 +45,9 @@ LIMIT 5
-ClickHouse reads the Iceberg metadata directly from S3 and infers the schema automatically. The same approach works for [`deltaLake()`](/reference/functions/table-functions/deltalake), [`hudi()`](/reference/functions/table-functions/hudi), and [`paimon()`](/reference/functions/table-functions/paimon).
+ClickHouse reads the Iceberg metadata directly from S3 and infers the schema automatically. The same approach works for [`deltaLake()`](/core/reference/functions/table-functions/deltalake), [`hudi()`](/core/reference/functions/table-functions/hudi), and [`paimon()`](/core/reference/functions/table-functions/paimon).
-**Learn more:** [Querying open table formats directly](/guides/data-warehousing/getting-started/querying-directly) covers all four formats, cluster variants for distributed reads, and storage backend options (S3, Azure, HDFS, local).
+**Learn more:** [Querying open table formats directly](/core/guides/use-cases/data-warehousing/getting-started/querying-directly) covers all four formats, cluster variants for distributed reads, and storage backend options (S3, Azure, HDFS, local).
## Create a persistent table engine {#table-engine}
@@ -73,14 +73,14 @@ LIMIT 5
-The table engine supports data caching, metadata caching, schema evolution, and time travel. See the [Querying directly](/guides/data-warehousing/getting-started/querying-directly) guide for details on table engine features and the [support matrix](/guides/data-warehousing/support-matrix) for a full feature comparison.
+The table engine supports data caching, metadata caching, schema evolution, and time travel. See the [Querying directly](/core/guides/use-cases/data-warehousing/getting-started/querying-directly) guide for details on table engine features and the [support matrix](/core/guides/use-cases/data-warehousing/support-matrix) for a full feature comparison.
## Connect to a catalog {#connect-catalog}
-Most organizations manage Iceberg tables through a data catalog to centralize the table metadata and data discovery. ClickHouse supports connecting to your catalog using the [`DataLakeCatalog`](/reference/engines/database-engines/datalake) database engine, exposing all catalog tables as a ClickHouse database. This is the more scalable path so as new Iceberg tables are created, they are always accessible in ClickHouse without additional work.
+Most organizations manage Iceberg tables through a data catalog to centralize the table metadata and data discovery. ClickHouse supports connecting to your catalog using the [`DataLakeCatalog`](/core/reference/engines/database-engines/datalake) database engine, exposing all catalog tables as a ClickHouse database. This is the more scalable path so as new Iceberg tables are created, they are always accessible in ClickHouse without additional work.
-Here's an example connecting to [AWS Glue](/guides/data-warehousing/glue-catalog):
+Here's an example connecting to [AWS Glue](/core/guides/use-cases/data-warehousing/glue-catalog):
```sql
CREATE DATABASE my_lake
@@ -92,7 +92,7 @@ SETTINGS
aws_secret_access_key = ''
```
-Each catalog type requires its own connection settings — see the [Catalogs guides](/guides/data-warehousing/reference) for the full list of supported catalogs and their configuration options.
+Each catalog type requires its own connection settings — see the [Catalogs guides](/core/guides/use-cases/data-warehousing/reference) for the full list of supported catalogs and their configuration options.
Browse tables and query:
@@ -108,7 +108,7 @@ SELECT count(*) FROM my_lake.`.
`
Backticks are required around `.
` because ClickHouse doesn't natively support more than one namespace.
-**Learn more:** [Connecting to a data catalog](/guides/data-warehousing/getting-started/connecting-catalogs) walks through a full Unity Catalog setup with Delta and Iceberg examples.
+**Learn more:** [Connecting to a data catalog](/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs) walks through a full Unity Catalog setup with Delta and Iceberg examples.
## Issue a query {#issue-query}
@@ -192,9 +192,9 @@ LIMIT 5
Because `counterid` is the first column in the `ORDER BY` key, ClickHouse's sparse primary index skips directly to the relevant granules — only reading the rows for `counterid = 38` instead of scanning all 100 million rows. The result is a dramatic speedup.
-The [accelerating analytics](/guides/data-warehousing/getting-started/accelerating-analytics) guide takes this further with `LowCardinality` types, full-text indices, and optimized ordering keys, demonstrating a **~40x improvement** on a 283 million row dataset.
+The [accelerating analytics](/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics) guide takes this further with `LowCardinality` types, full-text indices, and optimized ordering keys, demonstrating a **~40x improvement** on a 283 million row dataset.
-**Learn more:** [Accelerating analytics with MergeTree](/guides/data-warehousing/getting-started/accelerating-analytics) covers schema optimization, full-text indexing, and a complete before/after performance comparison.
+**Learn more:** [Accelerating analytics with MergeTree](/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics) covers schema optimization, full-text indexing, and a complete before/after performance comparison.
## Write back to Iceberg {#write-back}
@@ -228,7 +228,7 @@ ORDER BY cnt DESC
The resulting Iceberg table is readable by any Iceberg-compatible engine.
-**Learn more:** [Writing data to open table formats](/guides/data-warehousing/getting-started/writing-data) covers writing raw data and aggregated results using the UK Price Paid dataset, including schema considerations when mapping ClickHouse types to Iceberg.
+**Learn more:** [Writing data to open table formats](/core/guides/use-cases/data-warehousing/getting-started/writing-data) covers writing raw data and aggregated results using the UK Price Paid dataset, including schema considerations when mapping ClickHouse types to Iceberg.
@@ -236,8 +236,8 @@ The resulting Iceberg table is readable by any Iceberg-compatible engine.
Now that you've seen the full workflow, dive deeper into each area:
-- [Querying directly](/guides/data-warehousing/getting-started/querying-directly) — All four formats, cluster variants, table engines, caching
-- [Connecting to catalogs](/guides/data-warehousing/getting-started/connecting-catalogs) — Full Unity Catalog walkthrough with Delta and Iceberg
-- [Accelerating analytics](/guides/data-warehousing/getting-started/accelerating-analytics) — Schema optimization, indexing, ~40x speedup demo
-- [Writing to data lakes](/guides/data-warehousing/getting-started/writing-data) — Raw writes, aggregated writes, type mapping
-- [Support matrix](/guides/data-warehousing/support-matrix) — Feature comparison across formats and storage backends
+- [Querying directly](/core/guides/use-cases/data-warehousing/getting-started/querying-directly) — All four formats, cluster variants, table engines, caching
+- [Connecting to catalogs](/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs) — Full Unity Catalog walkthrough with Delta and Iceberg
+- [Accelerating analytics](/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics) — Schema optimization, indexing, ~40x speedup demo
+- [Writing to data lakes](/core/guides/use-cases/data-warehousing/getting-started/writing-data) — Raw writes, aggregated writes, type mapping
+- [Support matrix](/core/guides/use-cases/data-warehousing/support-matrix) — Feature comparison across formats and storage backends
diff --git a/guides/data-warehousing/getting-started/querying-directly.mdx b/core/guides/use-cases/data-warehousing/getting-started/querying-directly.mdx
similarity index 65%
rename from guides/data-warehousing/getting-started/querying-directly.mdx
rename to core/guides/use-cases/data-warehousing/getting-started/querying-directly.mdx
index 098b2edf..d3cb8b23 100644
--- a/guides/data-warehousing/getting-started/querying-directly.mdx
+++ b/core/guides/use-cases/data-warehousing/getting-started/querying-directly.mdx
@@ -17,15 +17,15 @@ You pass the storage path and credentials directly in the function call, and Cli
**Server, local or chDB**
-The steps in this guide can be executed using an existing ClickHouse server installation. For ad hoc querying, you can instead use [clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local) and complete the same workflow without running a server. With minor adjustments, the process can also be performed using ClickHouse’s in process distribution, [chDB](/products/chdb).
+The steps in this guide can be executed using an existing ClickHouse server installation. For ad hoc querying, you can instead use [clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local) and complete the same workflow without running a server. With minor adjustments, the process can also be performed using ClickHouse’s in process distribution, [chDB](/products/chdb).
-The following examples use the [hits](/get-started/sample-datasets/star-schema) dataset stored in each lakehouse format on S3. For each lake format, dedicated functions exist for each object store provider.
+The following examples use the [hits](/core/get-started/sample-datasets/star-schema) dataset stored in each lakehouse format on S3. For each lake format, dedicated functions exist for each object store provider.
-The [`iceberg`](/reference/functions/table-functions/iceberg) table function (alias for `icebergS3`) reads Iceberg tables directly from object storage. Variants exist for each storage backend: `icebergS3`, `icebergAzure`, `icebergHDFS`, and `icebergLocal`.
+The [`iceberg`](/core/reference/functions/table-functions/iceberg) table function (alias for `icebergS3`) reads Iceberg tables directly from object storage. Variants exist for each storage backend: `icebergS3`, `icebergAzure`, `icebergHDFS`, and `icebergLocal`.
**Example syntax:**
@@ -68,7 +68,7 @@ Peak memory usage: 10.48 GiB.
### Cluster variant {#iceberg-cluster-variant}
-The [`icebergS3Cluster`](/reference/functions/table-functions/icebergCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node establishes connections to all nodes and dispatches data files dynamically. Each worker node requests and processes tasks until all files have been read. `icebergCluster` is an alias for `icebergS3Cluster`. Variants also exist for Azure ([`icebergAzureCluster`](/reference/functions/table-functions/icebergCluster)) and HDFS ([`icebergHDFSCluster`](/reference/functions/table-functions/icebergCluster)).
+The [`icebergS3Cluster`](/core/reference/functions/table-functions/icebergCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node establishes connections to all nodes and dispatches data files dynamically. Each worker node requests and processes tasks until all files have been read. `icebergCluster` is an alias for `icebergS3Cluster`. Variants also exist for Azure ([`icebergAzureCluster`](/core/reference/functions/table-functions/icebergCluster)) and HDFS ([`icebergHDFSCluster`](/core/reference/functions/table-functions/icebergCluster)).
**Example syntax:**
@@ -96,9 +96,9 @@ LIMIT 5
### Table engine {#iceberg-table-engine}
-As an alternative to using the table function in every query, you can create a persistent table using the [`Iceberg` table engine](/reference/engines/table-engines/integrations/iceberg). The data still resides in object storage and is read on demand - no data is copied into ClickHouse. The advantage is that the table definition is stored in ClickHouse and can be shared across users and sessions without each user needing to specify the storage path and credentials. Engine variants exist for each storage backend: `IcebergS3` (or the `Iceberg` alias), `IcebergAzure`, `IcebergHDFS`, and `IcebergLocal`.
+As an alternative to using the table function in every query, you can create a persistent table using the [`Iceberg` table engine](/core/reference/engines/table-engines/integrations/iceberg). The data still resides in object storage and is read on demand - no data is copied into ClickHouse. The advantage is that the table definition is stored in ClickHouse and can be shared across users and sessions without each user needing to specify the storage path and credentials. Engine variants exist for each storage backend: `IcebergS3` (or the `Iceberg` alias), `IcebergAzure`, `IcebergHDFS`, and `IcebergLocal`.
-Both the table engine and the table function support [data caching](/reference/engines/table-engines/integrations/iceberg#data-cache), using the same caching mechanism as the S3, AzureBlobStorage, and HDFS storage engines. Additionally, a [metadata cache](/reference/engines/table-engines/integrations/iceberg#metadata-cache) stores manifest file information in memory, reducing repeated reads of Iceberg metadata. This cache is enabled by default via the `use_iceberg_metadata_files_cache` setting.
+Both the table engine and the table function support [data caching](/core/reference/engines/table-engines/integrations/iceberg#data-cache), using the same caching mechanism as the S3, AzureBlobStorage, and HDFS storage engines. Additionally, a [metadata cache](/core/reference/engines/table-engines/integrations/iceberg#metadata-cache) stores manifest file information in memory, reducing repeated reads of Iceberg metadata. This cache is enabled by default via the `use_iceberg_metadata_files_cache` setting.
**Example syntax:**
@@ -147,13 +147,13 @@ LIMIT 5
Peak memory usage: 10.53 GiB.
```
-For supported features including partition pruning, schema evolution, time travel, caching, and more, see the [support matrix](/guides/data-warehousing/support-matrix#format-support). For full reference, see the [`iceberg` table function](/reference/functions/table-functions/iceberg) and [`Iceberg` table engine](/reference/engines/table-engines/integrations/iceberg) documentation.
+For supported features including partition pruning, schema evolution, time travel, caching, and more, see the [support matrix](/core/guides/use-cases/data-warehousing/support-matrix#format-support). For full reference, see the [`iceberg` table function](/core/reference/functions/table-functions/iceberg) and [`Iceberg` table engine](/core/reference/engines/table-engines/integrations/iceberg) documentation.
-The [`deltaLake`](/reference/functions/table-functions/deltalake) table function (alias for `deltaLakeS3`) reads Delta Lake tables from object storage. Variants exist for other backends: `deltaLakeAzure` and `deltaLakeLocal`.
+The [`deltaLake`](/core/reference/functions/table-functions/deltalake) table function (alias for `deltaLakeS3`) reads Delta Lake tables from object storage. Variants exist for other backends: `deltaLakeAzure` and `deltaLakeLocal`.
**Example syntax:**
@@ -196,7 +196,7 @@ Peak memory usage: 9.16 GiB.
### Cluster variant {#delta-cluster-variant}
-The [`deltaLakeCluster`](/reference/functions/table-functions/deltalakeCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node dispatches data files dynamically to worker nodes for parallel processing. `deltaLakeS3Cluster` is an alias for `deltaLakeCluster`. An Azure variant ([`deltaLakeAzureCluster`](/reference/functions/table-functions/deltalakeCluster)) is also available.
+The [`deltaLakeCluster`](/core/reference/functions/table-functions/deltalakeCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node dispatches data files dynamically to worker nodes for parallel processing. `deltaLakeS3Cluster` is an alias for `deltaLakeCluster`. An Azure variant ([`deltaLakeAzureCluster`](/core/reference/functions/table-functions/deltalakeCluster)) is also available.
**Example syntax:**
@@ -230,9 +230,9 @@ LIMIT 5
### Table engine {#delta-table-engine}
-As an alternative to using the table function in every query, you can create a persistent table using the [`DeltaLake` table engine](/reference/engines/table-engines/integrations/deltalake) if using S3 compatible storage. The data still resides in object storage and is read on demand - no data is copied into ClickHouse. The advantage is that the table definition is stored in ClickHouse and can be shared across users and sessions without each user needing to specify the storage path and credentials.
+As an alternative to using the table function in every query, you can create a persistent table using the [`DeltaLake` table engine](/core/reference/engines/table-engines/integrations/deltalake) if using S3 compatible storage. The data still resides in object storage and is read on demand - no data is copied into ClickHouse. The advantage is that the table definition is stored in ClickHouse and can be shared across users and sessions without each user needing to specify the storage path and credentials.
-Both the table engine and the table function support [data caching](/reference/engines/table-engines/integrations/deltalake#data-cache), using the same caching mechanism as the S3, AzureBlobStorage, and HDFS storage engines.
+Both the table engine and the table function support [data caching](/core/reference/engines/table-engines/integrations/deltalake#data-cache), using the same caching mechanism as the S3, AzureBlobStorage, and HDFS storage engines.
**Example syntax:**
@@ -273,12 +273,12 @@ LIMIT 5
Peak memory usage: 9.27 GiB.
```
-For supported features including storage backends, caching, and more, see the [support matrix](/guides/data-warehousing/support-matrix#format-support). For full reference, see the [`deltaLake` table function](/reference/functions/table-functions/deltalake) and [`DeltaLake` table engine](/reference/engines/table-engines/integrations/deltalake) documentation.
+For supported features including storage backends, caching, and more, see the [support matrix](/core/guides/use-cases/data-warehousing/support-matrix#format-support). For full reference, see the [`deltaLake` table function](/core/reference/functions/table-functions/deltalake) and [`DeltaLake` table engine](/core/reference/engines/table-engines/integrations/deltalake) documentation.
-The [`hudi`](/reference/functions/table-functions/hudi) table function reads Hudi tables from S3.
+The [`hudi`](/core/reference/functions/table-functions/hudi) table function reads Hudi tables from S3.
**Syntax:**
@@ -288,7 +288,7 @@ hudi(url [,aws_access_key_id, aws_secret_access_key] [,format] [,structure] [,co
### Cluster variant {#hudi-cluster-variant}
-The [`hudiCluster`](/reference/functions/table-functions/hudiCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node dispatches data files dynamically to worker nodes for parallel processing.
+The [`hudiCluster`](/core/reference/functions/table-functions/hudiCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node dispatches data files dynamically to worker nodes for parallel processing.
```sql
hudiCluster(cluster_name, url [,aws_access_key_id, aws_secret_access_key] [,format] [,structure] [,compression])
@@ -296,7 +296,7 @@ hudiCluster(cluster_name, url [,aws_access_key_id, aws_secret_access_key] [,form
### Table engine {#hudi-table-engine}
-As an alternative to using the table function in every query, you can create a persistent table using the [`Hudi` table engine](/reference/engines/table-engines/integrations/hudi). The data still resides in object storage and is read on demand - no data is copied into ClickHouse. The advantage is that the table definition is stored in ClickHouse and can be shared across users and sessions without each user needing to specify the storage path and credentials.
+As an alternative to using the table function in every query, you can create a persistent table using the [`Hudi` table engine](/core/reference/engines/table-engines/integrations/hudi). The data still resides in object storage and is read on demand - no data is copied into ClickHouse. The advantage is that the table definition is stored in ClickHouse and can be shared across users and sessions without each user needing to specify the storage path and credentials.
**Syntax:**
@@ -305,14 +305,14 @@ CREATE TABLE hudi_table
ENGINE = Hudi(url [,aws_access_key_id, aws_secret_access_key])
```
-For supported features including storage backends and more, see the [support matrix](/guides/data-warehousing/support-matrix#format-support). For full reference, see the [`hudi` table function](/reference/functions/table-functions/hudi) and [`Hudi` table engine](/reference/engines/table-engines/integrations/hudi) documentation.
+For supported features including storage backends and more, see the [support matrix](/core/guides/use-cases/data-warehousing/support-matrix#format-support). For full reference, see the [`hudi` table function](/core/reference/functions/table-functions/hudi) and [`Hudi` table engine](/core/reference/engines/table-engines/integrations/hudi) documentation.
-The [`paimon`](/reference/functions/table-functions/paimon) table function (alias for `paimonS3`) reads Paimon tables from object storage. Variants exist for each storage backend: `paimonS3`, `paimonAzure`, `paimonHDFS`, and `paimonLocal`.
+The [`paimon`](/core/reference/functions/table-functions/paimon) table function (alias for `paimonS3`) reads Paimon tables from object storage. Variants exist for each storage backend: `paimonS3`, `paimonAzure`, `paimonHDFS`, and `paimonLocal`.
**Syntax:**
@@ -329,7 +329,7 @@ paimonLocal(path_to_table, [,format] [,compression_method])
### Cluster variant {#paimon-cluster-variant}
-The [`paimonS3Cluster`](/reference/functions/table-functions/paimonCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node dispatches data files dynamically to worker nodes for parallel processing. `paimonCluster` is an alias for `paimonS3Cluster`. Variants also exist for Azure ([`paimonAzureCluster`](/reference/functions/table-functions/paimonCluster)) and HDFS ([`paimonHDFSCluster`](/reference/functions/table-functions/paimonCluster)).
+The [`paimonS3Cluster`](/core/reference/functions/table-functions/paimonCluster) function distributes reads across multiple nodes in a ClickHouse cluster. The initiator node dispatches data files dynamically to worker nodes for parallel processing. `paimonCluster` is an alias for `paimonS3Cluster`. Variants also exist for Azure ([`paimonAzureCluster`](/core/reference/functions/table-functions/paimonCluster)) and HDFS ([`paimonHDFSCluster`](/core/reference/functions/table-functions/paimonCluster)).
```sql
paimonS3Cluster(cluster_name, url [,access_key_id, secret_access_key] [,format] [,structure] [,compression])
@@ -344,7 +344,7 @@ paimonHDFSCluster(cluster_name, path_to_table, [,format] [,compression_method])
Paimon does not currently have a dedicated table engine in ClickHouse. Use the table functions above for querying Paimon tables.
-For supported features including storage backends and more, see the [support matrix](/guides/data-warehousing/support-matrix#format-support). For full reference, see the [`paimon` table function](/reference/functions/table-functions/paimon) documentation.
+For supported features including storage backends and more, see the [support matrix](/core/guides/use-cases/data-warehousing/support-matrix#format-support). For full reference, see the [`paimon` table function](/core/reference/functions/table-functions/paimon) documentation.
diff --git a/guides/data-warehousing/getting-started/writing-data.mdx b/core/guides/use-cases/data-warehousing/getting-started/writing-data.mdx
similarity index 96%
rename from guides/data-warehousing/getting-started/writing-data.mdx
rename to core/guides/use-cases/data-warehousing/getting-started/writing-data.mdx
index fa4df32c..020b570f 100644
--- a/guides/data-warehousing/getting-started/writing-data.mdx
+++ b/core/guides/use-cases/data-warehousing/getting-started/writing-data.mdx
@@ -21,7 +21,7 @@ Writing to open table formats is currently supported for **Iceberg tables only**
## Prepare a source dataset {#prepare-source}
-For this guide, we'll use the [UK Price Paid](/get-started/sample-datasets/uk-price-paid) dataset - a public record of every residential property transaction in England and Wales.
+For this guide, we'll use the [UK Price Paid](/core/get-started/sample-datasets/uk-price-paid) dataset - a public record of every residential property transaction in England and Wales.
### Create and populate a MergeTree table {#create-source-table}
@@ -97,7 +97,7 @@ Peak memory usage: 485.15 MiB.
### Create the Iceberg table {#create-iceberg-table}
-To write data into Iceberg, create a table using the [`IcebergS3` table engine](/reference/engines/table-engines/integrations/iceberg).
+To write data into Iceberg, create a table using the [`IcebergS3` table engine](/core/reference/engines/table-engines/integrations/iceberg).
Note that the schema must be simplified compared to the MergeTree source. ClickHouse supports a richer type system than Iceberg and the underlying Parquet files - types such as `Enum`, `LowCardinality`, and `UInt8` are not supported in Iceberg and must be mapped to compatible types.
diff --git a/guides/data-warehousing/glue-catalog.mdx b/core/guides/use-cases/data-warehousing/glue-catalog.mdx
similarity index 100%
rename from guides/data-warehousing/glue-catalog.mdx
rename to core/guides/use-cases/data-warehousing/glue-catalog.mdx
diff --git a/core/guides/use-cases/data-warehousing/index.mdx b/core/guides/use-cases/data-warehousing/index.mdx
new file mode 100644
index 00000000..928d1f64
--- /dev/null
+++ b/core/guides/use-cases/data-warehousing/index.mdx
@@ -0,0 +1,62 @@
+---
+description: 'Use ClickHouse to query, accelerate, and analyze data in open table formats such as Apache Iceberg, Delta Lake, Apache Hudi, and Apache Paimon.'
+slug: /use-cases/data-lake
+title: 'Data Lake'
+keywords: ['data lake', 'lakehouse', 'iceberg', 'delta lake', 'hudi', 'paimon', 'glue', 'unity', 'rest', 'OneLake', 'BigLake']
+doc_type: 'landing-page'
+---
+
+ClickHouse integrates with open table formats, including [Apache Iceberg](/core/reference/engines/table-engines/integrations/iceberg), [Delta Lake](/core/reference/engines/table-engines/integrations/deltalake), [Apache Hudi](/core/reference/engines/table-engines/integrations/hudi), and [Apache Paimon](/core/reference/functions/table-functions/paimon). This allows users to connect ClickHouse to data already stored in these formats across object storage, combining the analytical power of ClickHouse with their existing data lake infrastructure.
+
+## Why use ClickHouse with open table formats? {#why-clickhouse-uses-lake-formats}
+
+### Query existing data in place {#querying-data-in-place}
+
+ClickHouse can query open table formats directly in object storage without duplicating data. Organizations standardized on Iceberg, Delta Lake, Hudi, or Paimon can point ClickHouse at existing tables and immediately use its SQL dialect, analytical functions, and efficient native Parquet reader. At the same time, tools like [clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local) and [chDB](/products/chdb) enable exploratory, ad hoc analysis across more than 70 file formats in remote storage, allowing users to interactively explore data lake datasets with no infrastructure setup.
+
+Users can achieve this with either direct reading, using [table functions and table engines](/core/guides/use-cases/data-warehousing/getting-started/querying-directly), or by [connecting to a data catalogue](/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs).
+
+### Real-time analytical workloads with ClickHouse {#real-time-with-clickhouse}
+
+For workloads that demand high concurrency and low-latency responses, users can load data from open table formats into ClickHouse's [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) engine. This provides a real-time analytics layer on top of data that originates in a data lake, supporting dashboards, operational reporting, and other latency-sensitive workloads that benefit from MergeTree columnar storage and indexing capabilities.
+
+See the getting started guide for [accelerating analytics with MergeTree](/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics).
+
+## Capabilities {#capabilities}
+
+### Read data directly {#read-data-directly}
+
+ClickHouse provides [table functions](/core/reference/functions/table-functions) and [engines](/core/reference/engines/table-engines/integrations) for reading open table formats directly on object storage. Functions such as [`iceberg()`](/core/reference/functions/table-functions/iceberg), [`deltaLake()`](/core/reference/functions/table-functions/deltalake), [`hudi()`](/core/reference/functions/table-functions/hudi), and [`paimon()`](/core/reference/functions/table-functions/paimon) allow users to query open table format tables from within a SQL statement without any prior configuration. Versions of these functions exist for most common object stores, such as S3, Azure Blob Storage, and GCS. These functions also have equivalent table engines which can be used to create tables within ClickHouse which reference underlying open table format object storage - thus making querying more convenient.
+
+See our getting started guide for [querying directly](/core/guides/use-cases/data-warehousing/getting-started/querying-directly), or by [connecting to a data catalogue](/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs).
+
+### Expose catalogs as databases {#expose-catalogs-as-databases}
+
+Using the [`DataLakeCatalog`](/core/reference/engines/database-engines/datalake) database engine, users can connect ClickHouse to an external catalog and expose it as a database. Tables registered in the catalog appear as tables within ClickHouse, enabling the full range of ClickHouse SQL syntax and analytical functions to be used transparently. This means users can query, join, and aggregate across catalog-managed tables as if they were native ClickHouse tables, benefiting from ClickHouse's query optimization, parallel execution, and reading capabilities.
+
+Supported catalogs include:
+
+| Catalog | Guide |
+|---------|-------|
+| AWS Glue | [Glue Catalog guide](/core/guides/use-cases/data-warehousing/glue-catalog) |
+| BigLake Metastore | [BigLake Metastore guide](/core/guides/use-cases/data-warehousing/biglake-catalog) |
+| Databricks Unity Catalog | [Unity Catalog guide](/core/guides/use-cases/data-warehousing/unity-catalog) |
+| Iceberg REST Catalog | [REST Catalog guide](/core/guides/use-cases/data-warehousing/rest-catalog) |
+| Lakekeeper | [Lakekeeper Catalog guide](/core/guides/use-cases/data-warehousing/lakekeeper-catalog) |
+| Project Nessie | [Nessie Catalog guide](/core/guides/use-cases/data-warehousing/nessie-catalog) |
+| Microsoft OneLake | [OneLake Catalog guide](/core/guides/use-cases/data-warehousing/onelake-catalog) |
+
+See the getting started guide for [connecting to catalogs](/core/guides/use-cases/data-warehousing/getting-started/connecting-catalogs).
+
+### Write back to open table formats {#write-back-to-lakehouse-formats}
+
+ClickHouse supports writing data back to open table formats, which is relevant in scenarios such as:
+
+- **Real-time to long-term storage** - Data transits through ClickHouse as a real-time analytics layer, and users need to offload results to Iceberg or other formats for durable, cost-effective long-term storage.
+- **Reverse ETL** - Users perform transformations inside ClickHouse using materialized views or scheduled queries and wish to persist the results into open table formats for consumption by other tools in the data ecosystem.
+
+See the getting started guide for [writing to data lakes](/core/guides/use-cases/data-warehousing/getting-started/writing-data).
+
+## Next steps {#next-steps}
+
+Ready to try it out? The [Getting Started guide](/core/guides/use-cases/data-warehousing/getting-started/overview) walks through querying open table formats directly, connecting to a catalog, loading data into MergeTree for fast analytics, and writing results back - all in a single end-to-end workflow.
diff --git a/guides/data-warehousing/lakekeeper-catalog.mdx b/core/guides/use-cases/data-warehousing/lakekeeper-catalog.mdx
similarity index 100%
rename from guides/data-warehousing/lakekeeper-catalog.mdx
rename to core/guides/use-cases/data-warehousing/lakekeeper-catalog.mdx
diff --git a/guides/data-warehousing/nessie-catalog.mdx b/core/guides/use-cases/data-warehousing/nessie-catalog.mdx
similarity index 100%
rename from guides/data-warehousing/nessie-catalog.mdx
rename to core/guides/use-cases/data-warehousing/nessie-catalog.mdx
diff --git a/guides/data-warehousing/onelake-catalog.mdx b/core/guides/use-cases/data-warehousing/onelake-catalog.mdx
similarity index 100%
rename from guides/data-warehousing/onelake-catalog.mdx
rename to core/guides/use-cases/data-warehousing/onelake-catalog.mdx
diff --git a/guides/data-warehousing/polaris-catalog.mdx b/core/guides/use-cases/data-warehousing/polaris-catalog.mdx
similarity index 100%
rename from guides/data-warehousing/polaris-catalog.mdx
rename to core/guides/use-cases/data-warehousing/polaris-catalog.mdx
diff --git a/core/guides/use-cases/data-warehousing/reference/index.mdx b/core/guides/use-cases/data-warehousing/reference/index.mdx
new file mode 100644
index 00000000..a83c4ce5
--- /dev/null
+++ b/core/guides/use-cases/data-warehousing/reference/index.mdx
@@ -0,0 +1,18 @@
+---
+description: 'Reference guides for connecting ClickHouse to data lake catalogs including AWS Glue, Unity, REST, Lakekeeper, Nessie, and OneLake.'
+slug: /use-cases/data-lake/reference
+title: 'Catalog guides'
+keywords: ['data lake', 'lakehouse', 'catalog', 'glue', 'unity', 'rest', 'lakekeeper', 'nessie', 'OneLake']
+doc_type: 'landing-page'
+---
+
+ClickHouse integrates with a range of data lake catalogs through the [`DataLakeCatalog`](/core/reference/engines/database-engines/datalake) database engine. The following guides walk through connecting ClickHouse to each supported catalog, including configuration, authentication, and querying examples.
+
+| Catalog | Description |
+|---------|-------------|
+| [AWS Glue](/core/guides/use-cases/data-warehousing/glue-catalog) | Query Iceberg tables registered in the AWS Glue Data Catalog from data stored in S3. |
+| [Databricks Unity Catalog](/core/guides/use-cases/data-warehousing/unity-catalog) | Connect to Databricks Unity Catalog for Delta Lake and Iceberg tables. |
+| [Iceberg REST Catalog](/core/guides/use-cases/data-warehousing/rest-catalog) | Use any catalog implementing the Iceberg REST specification, such as Tabular. |
+| [Lakekeeper](/core/guides/use-cases/data-warehousing/lakekeeper-catalog) | Connect to the Lakekeeper Catalog for Iceberg tables. |
+| [Project Nessie](/core/guides/use-cases/data-warehousing/nessie-catalog) | Query Iceberg tables using the Nessie Catalog with Git-like data version control. |
+| [Microsoft OneLake](/core/guides/use-cases/data-warehousing/onelake-catalog) | Query Iceberg tables in Microsoft Fabric OneLake. |
diff --git a/guides/data-warehousing/rest-catalog.mdx b/core/guides/use-cases/data-warehousing/rest-catalog.mdx
similarity index 100%
rename from guides/data-warehousing/rest-catalog.mdx
rename to core/guides/use-cases/data-warehousing/rest-catalog.mdx
diff --git a/core/guides/use-cases/data-warehousing/support-matrix.mdx b/core/guides/use-cases/data-warehousing/support-matrix.mdx
new file mode 100644
index 00000000..405ed865
--- /dev/null
+++ b/core/guides/use-cases/data-warehousing/support-matrix.mdx
@@ -0,0 +1,175 @@
+---
+title: 'Support matrix'
+sidebarTitle: 'Support matrix'
+slug: /use-cases/data-lake/support-matrix
+description: 'Comprehensive support matrices for ClickHouse open table format integrations and data catalog connections.'
+keywords: ['data lake', 'lakehouse', 'support', 'iceberg', 'delta lake', 'hudi', 'paimon', 'catalog', 'features']
+doc_type: 'reference'
+---
+
+This page provides comprehensive support matrices for ClickHouse's data lake integrations. It covers the features available for each open table format, the catalogs ClickHouse can connect to, and the capabilities supported by each catalog.
+
+## Open table format support {#format-support}
+
+ClickHouse integrates with four open table formats: [Apache Iceberg](/core/reference/engines/table-engines/integrations/iceberg), [Delta Lake](/core/reference/engines/table-engines/integrations/deltalake), [Apache Hudi](/core/reference/engines/table-engines/integrations/hudi), and [Apache Paimon](/core/reference/functions/table-functions/paimon). Select a format below to view its support matrix.
+
+**Legend:** ✅ Supported | ⚠️ Partial / Experimental | ❌ Not supported
+
+
+
+
+| Feature | Status | Notes |
+|---------|:-:|-------|
+| **Storage backends** | | |
+| AWS S3 | ✅ | Via [`icebergS3()`](/core/reference/functions/table-functions/iceberg) or `iceberg()` alias |
+| GCS | ✅ | Via [`icebergS3()`](/core/reference/functions/table-functions/iceberg) or `iceberg()` alias |
+| Azure Blob Storage | ✅ | Via [`icebergAzure()`](/core/reference/functions/table-functions/iceberg) |
+| HDFS | ⚠️ | Via [`icebergHDFS()`](/core/reference/functions/table-functions/iceberg). Deprecated. |
+| Local filesystem | ✅ | Via [`icebergLocal()`](/core/reference/functions/table-functions/iceberg) |
+| **Access methods** | | |
+| Table function | ✅ | [`icebergS3()`](/core/reference/functions/table-functions/iceberg) with variants per backend |
+| Table engine | ✅ | [`IcebergS3`](/core/reference/engines/table-engines/integrations/iceberg) with variants per backend |
+| Cluster-distributed reads | ✅ | [`icebergS3Cluster`](/core/reference/functions/table-functions/icebergCluster), [`icebergAzureCluster`](/core/reference/functions/table-functions/icebergCluster), [`icebergHDFSCluster`](/core/reference/functions/table-functions/icebergCluster) |
+| Named collections | ✅ | [Defining a named collection](/core/reference/functions/table-functions/iceberg#defining-a-named-collection) |
+| | | |
+| **Read features** | | |
+| Read support | ✅ | Full SELECT support with all ClickHouse SQL functions |
+| Partition pruning | ✅ | See [Partition pruning](/core/reference/engines/table-engines/integrations/iceberg#partition-pruning). |
+| Hidden partitioning | ✅ | Iceberg transform-based partitioning supported |
+| Partition evolution | ✅ | Reading tables with changing partition specs over time supported |
+| Schema evolution | ✅ | Column addition, removal, and reordering. See [Schema evolution](/core/reference/engines/table-engines/integrations/iceberg#schema-evolution). |
+| Type promotion / widening | ✅ | `int` → `long`, `float` → `double`, `decimal(P,S)` → `decimal(P',S)` where P' > P. See [Schema evolution](/core/reference/engines/table-engines/integrations/iceberg#schema-evolution). |
+| Time travel / snapshots | ✅ | Via `iceberg_timestamp_ms` or `iceberg_snapshot_id` settings. See [Time travel](/core/reference/engines/table-engines/integrations/iceberg#time-travel). |
+| Position deletes | ✅ | See [Processing deleted rows](/core/reference/engines/table-engines/integrations/iceberg#deleted-rows). |
+| Equality deletes | ✅ | Table engine only, from v25.8+. See [Processing deleted rows](/core/reference/engines/table-engines/integrations/iceberg#deleted-rows). |
+| Merge-on-read | ⚠️ | Experimental. Supported for [delete operations](/core/reference/functions/table-functions/iceberg#iceberg-writes-delete). |
+| Format versions | ⚠️ | v1 and v2 supported. V3 not supported. |
+| Column statistics | ✅ | |
+| Bloom filters / puffin files | ❌ | Bloom filter indexes in puffin files not supported |
+| Virtual columns | ✅ | `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/core/reference/functions/table-functions/iceberg#virtual-columns). |
+| | | |
+| **Write features** | | |
+| Table creation | ✅ | Experimental. Requires `allow_insert_into_iceberg = 1`. From v25.7+. See [Creating a table](/core/reference/functions/table-functions/iceberg#create-iceberg-table). |
+| INSERT | ✅ | Beta from 26.2. Requires `allow_insert_into_iceberg = 1`. See [Inserting data](/core/reference/functions/table-functions/iceberg#writes-inserts). |
+| DELETE | ✅ | Experimental. Requires `allow_insert_into_iceberg = 1`. Via `ALTER TABLE ... DELETE WHERE`. See [Deleting data](/core/reference/functions/table-functions/iceberg#iceberg-writes-delete). |
+| ALTER TABLE (schema changes) | ✅ | Experimental. Requires `allow_insert_into_iceberg = 1`. Add, drop, modify, rename columns. See [Schema evolution](/core/reference/functions/table-functions/iceberg#iceberg-writes-schema-evolution). |
+| Compaction | ⚠️ | Experimental. Requires `allow_experimental_iceberg_compaction = 1`. Merges position delete files into data files. See [Compaction](/core/reference/functions/table-functions/iceberg#iceberg-writes-compaction). Other Iceberg compaction operations not supported. |
+| UPDATE / MERGE | ❌ | Not supported. See Compaction. |
+| Copy-on-write | ❌ | Not supported |
+| Expire snapshots | ❌ | Not supported |
+| Remove orphan files | ❌ | Not supported |
+| Writing partitions | ✅ | Supported. |
+| Altering partitions | ❌ | The changing of the partitioning scheme from ClickHouse is not supported. ClickHouse can write to iceberg tables which have an evolved partitioning. |
+| | | |
+| **Metadata** | | |
+| Branching and tagging | ❌ | Iceberg branch/tag references not supported |
+| Metadata file resolution | ✅ | Support for metadata resolution through catalogs, simple directory listing, using 'version-hint' and specific path. Configurable via `iceberg_metadata_file_path` and `iceberg_metadata_table_uuid`. See [Metadata file resolution](/core/reference/engines/table-engines/integrations/iceberg#metadata-file-resolution). |
+| Data caching | ✅ | Same mechanism as S3/Azure/HDFS storage engines. See [Data cache](/core/reference/engines/table-engines/integrations/iceberg#data-cache). |
+| Metadata caching | ✅ | Manifest and metadata files cached in memory. Enabled by default via `use_iceberg_metadata_files_cache`. See [Metadata cache](/core/reference/engines/table-engines/integrations/iceberg#metadata-cache). |
+
+
+
+
+From version 25.6, ClickHouse reads Delta Lake tables using the Delta Lake Rust kernel, providing broader feature support; however, known issues occur when accessing data in Azure Blob Storage. For this reason the Kernel is disabled when reading data on Azure Blob Storage. We indicate below which features require this kernel.
+
+| Feature | Status | Notes |
+|---------|:-:|-------|
+| **Storage backends** | | |
+| AWS S3 | ✅ | Via [`deltaLake()`](/core/reference/functions/table-functions/deltalake) or `deltaLakeS3()` |
+| GCS | ✅ | Via [`deltaLake()`](/core/reference/functions/table-functions/deltalake) or `deltaLakeS3()` |
+| Azure Blob Storage | ✅ | Via [`deltaLakeAzure()`](/core/reference/functions/table-functions/deltalake) |
+| HDFS | ❌ | Not supported |
+| Local filesystem | ✅ | Via [`deltaLakeLocal()`](/core/reference/functions/table-functions/deltalake) |
+| **Access methods** | | |
+| Table function | ✅ | [`deltaLake()`](/core/reference/functions/table-functions/deltalake) with variants per backend |
+| Table engine | ✅ | [`DeltaLake`](/core/reference/engines/table-engines/integrations/deltalake) |
+| Cluster-distributed reads | ✅ | [`deltaLakeCluster`](/core/reference/functions/table-functions/deltalakeCluster), [`deltaLakeAzureCluster`](/core/reference/functions/table-functions/deltalakeCluster) |
+| Named collections | ✅ | [Named collection](/core/reference/functions/table-functions/deltalake#arguments) |
+| **Read features** | | |
+| Read support | ✅ | Full SELECT support with all ClickHouse SQL functions |
+| Partition pruning | ✅ | Requires Delta Kernel. |
+| Schema evolution | ✅ | Requires Delta Kernel. |
+| Time travel | ✅ | Requires Delta Kernel. |
+| Deletion vectors | ✅ | |
+| Column mapping | ✅ | |
+| Change data feed | ✅ | Requires Delta Kernel. |
+| Virtual columns | ✅ | `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/core/reference/functions/table-functions/deltalake#virtual-columns). |
+| **Write features** | | |
+| INSERT | ✅ | Experimental. Requires `allow_experimental_delta_lake_writes = 1`. See [DeltaLake engine](/core/reference/engines/table-engines/integrations/deltalake). Requires Delta Kernel. |
+| DELETE / UPDATE / MERGE | ❌ | Not supported |
+| CREATE empty table | ❌ | Creation of a new empty Delta Lake table is not supported. `CREATE TABLE` operation assumes existence of existing Delta Lake on object storage. |
+| **Caching** | | |
+| Data caching | ✅ | Same mechanism as S3/Azure/HDFS storage engines. See [Data cache](/core/reference/engines/table-engines/integrations/deltalake#data-cache). |
+
+
+
+
+| Feature | Status | Notes |
+|---------|:-:|-------|
+| **Storage backends** | | |
+| AWS S3 | ✅ | Via [`hudi()`](/core/reference/functions/table-functions/hudi) |
+| GCS | ✅ | Via [`hudi()`](/core/reference/functions/table-functions/hudi) |
+| Azure Blob Storage | ❌ | Not supported |
+| HDFS | ❌ | Not supported |
+| Local filesystem | ❌ | Not supported |
+| **Access methods** | | |
+| Table function | ✅ | [`hudi()`](/core/reference/functions/table-functions/hudi) |
+| Table engine | ✅ | [`Hudi`](/core/reference/engines/table-engines/integrations/hudi) |
+| Cluster-distributed reads | ✅ | [`hudiCluster`](/core/reference/functions/table-functions/hudiCluster) (S3 only) |
+| Named collections | ✅ | [Hudi arguments](/core/reference/functions/table-functions/hudi#arguments) |
+| **Read features** | | |
+| Read support | ✅ | Full SELECT support with all ClickHouse SQL functions |
+| Schema evolution | ❌ | Not supported |
+| Time travel | ❌ | Not supported |
+| Virtual columns | ✅ | `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/core/reference/functions/table-functions/hudi#virtual-columns). |
+| **Write features** | | |
+| INSERT / DELETE / UPDATE | ❌ | Read-only integration |
+| **Caching** | | |
+| Data caching | ❌ | Not supported |
+
+
+
+
+| Feature | Status | Notes |
+|---------|:-:|-------|
+| **Storage backends** | | |
+| S3 | ✅ | Experimental. Via [`paimon()`](/core/reference/functions/table-functions/paimon) or `paimonS3()` |
+| GCS | ✅ | Experimental. Via [`paimon()`](/core/reference/functions/table-functions/paimon) or `paimonS3()` |
+| Azure Blob Storage | ✅ | Experimental. Via [`paimonAzure()`](/core/reference/functions/table-functions/paimon) |
+| HDFS | ⚠️ | Experimental. Via [`paimonHDFS()`](/core/reference/functions/table-functions/paimon). Deprecated. |
+| Local filesystem | ✅ | Experimental. Via [`paimonLocal()`](/core/reference/functions/table-functions/paimon) |
+| **Access methods** | | |
+| Table function | ✅ | Experimental. [`paimon()`](/core/reference/functions/table-functions/paimon) with variants per backend |
+| Table engine | ❌ | No dedicated table engine |
+| Cluster-distributed reads | ✅ | Experimental. [`paimonS3Cluster`](/core/reference/functions/table-functions/paimonCluster), [`paimonAzureCluster`](/core/reference/functions/table-functions/paimonCluster), [`paimonHDFSCluster`](/core/reference/functions/table-functions/paimonCluster) |
+| Named collections | ✅ | Experimental. [Defining a named collection](/core/reference/functions/table-functions/paimon#defining-a-named-collection) |
+| **Read features** | | |
+| Read support | ✅ | Experimental. Full SELECT support with all ClickHouse SQL functions |
+| Schema evolution | ❌ | Not supported |
+| Time travel | ❌ | Not supported |
+| Virtual columns | ✅ | Experimental. `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/core/reference/functions/table-functions/paimon#virtual-columns). |
+| **Write features** | | |
+| INSERT / DELETE / UPDATE | ❌ | Read-only integration |
+| **Caching** | | |
+| Data caching | ❌ | Not supported |
+
+
+
+
+## Catalog support {#catalog-support}
+
+ClickHouse can connect to external data catalogs using the [`DataLakeCatalog`](/core/reference/engines/database-engines/datalake) database engine, which exposes the catalog as a ClickHouse database. Tables registered in the catalog appear automatically and can be queried with standard SQL.
+
+The following catalogs are currently supported. Refer to each catalog's reference guide for full setup instructions.
+
+| Catalog | Formats | Read | Create table | INSERT | Reference guide |
+|---------|---------|:-:|:-:|:-:|---------|
+| [AWS Glue Catalog](/core/guides/use-cases/data-warehousing/glue-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [Glue catalog guide](/core/guides/use-cases/data-warehousing/glue-catalog) |
+| [BigLake Metastore](/core/guides/use-cases/data-warehousing/biglake-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [BigLake Metastore guide](/core/guides/use-cases/data-warehousing/biglake-catalog) |
+| [Databricks Unity Catalog](/core/guides/use-cases/data-warehousing/unity-catalog) | Delta, Iceberg | ✅ Beta | ❌ | ❌ | [Unity Catalog guide](/core/guides/use-cases/data-warehousing/unity-catalog) |
+| [Iceberg REST](/core/guides/use-cases/data-warehousing/rest-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [REST catalog guide](/core/guides/use-cases/data-warehousing/rest-catalog) |
+| [Lakekeeper](/core/guides/use-cases/data-warehousing/lakekeeper-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [Lakekeeper catalog guide](/core/guides/use-cases/data-warehousing/lakekeeper-catalog) |
+| [Project Nessie](/core/guides/use-cases/data-warehousing/nessie-catalog) | Iceberg | ✅ Experimental | ❌ | ❌ | [Nessie catalog guide](/core/guides/use-cases/data-warehousing/nessie-catalog) |
+| [Microsoft OneLake](/core/guides/use-cases/data-warehousing/onelake-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [OneLake catalog guide](/core/guides/use-cases/data-warehousing/onelake-catalog) |
+
+All catalog integrations currently require an experimental or beta setting to be enabled and expose **read-only** access — tables can be queried but not created or written to through the catalog connection. To load data from a catalog into ClickHouse for faster analytics, use `INSERT INTO SELECT` as described in the [accelerating analytics guide](/core/guides/use-cases/data-warehousing/getting-started/accelerating-analytics). To write data back to open table formats, create standalone Iceberg tables as described in the [writing data guide](/core/guides/use-cases/data-warehousing/getting-started/writing-data).
diff --git a/guides/data-warehousing/unity-catalog.mdx b/core/guides/use-cases/data-warehousing/unity-catalog.mdx
similarity index 100%
rename from guides/data-warehousing/unity-catalog.mdx
rename to core/guides/use-cases/data-warehousing/unity-catalog.mdx
diff --git a/core/guides/use-cases/index.mdx b/core/guides/use-cases/index.mdx
new file mode 100644
index 00000000..8317a6c1
--- /dev/null
+++ b/core/guides/use-cases/index.mdx
@@ -0,0 +1,24 @@
+---
+slug: /use-cases
+title: 'Use case guides'
+description: 'Landing page for use case guides'
+doc_type: 'landing-page'
+keywords: ['use cases', 'observability', 'time-series', 'data lake', 'machine learning', 'AI']
+---
+
+Pick a use case below to see how to set up and use ClickHouse for it.
+
+
+
+ Build low-latency analytical applications with ClickHouse — including time-series workloads.
+
+
+ Set up logs, metrics, and traces on ClickHouse, either self-hosted or via the build-your-own stack.
+
+
+ Use ClickHouse as a data warehouse, including data-lake integrations and federated query patterns.
+
+
+ Build ML and GenAI applications on ClickHouse — vector search, AI-powered SQL, and MCP integrations.
+
+
\ No newline at end of file
diff --git a/guides/observability/build-your-own/demo-application.mdx b/core/guides/use-cases/observability/build-your-own/demo-application.mdx
similarity index 100%
rename from guides/observability/build-your-own/demo-application.mdx
rename to core/guides/use-cases/observability/build-your-own/demo-application.mdx
diff --git a/guides/observability/build-your-own/grafana.mdx b/core/guides/use-cases/observability/build-your-own/grafana.mdx
similarity index 94%
rename from guides/observability/build-your-own/grafana.mdx
rename to core/guides/use-cases/observability/build-your-own/grafana.mdx
index 37256337..c69da3d1 100644
--- a/guides/observability/build-your-own/grafana.mdx
+++ b/core/guides/use-cases/observability/build-your-own/grafana.mdx
@@ -28,7 +28,7 @@ You can connect Grafana to ClickHouse over either the HTTP or Native protocol. T
The Logs configuration requires a time, log level, and message column in order for logs to be rendered correctly.
-The Traces configuration is slightly more complex (full list [here](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage)). The required columns here are needed such that subsequent queries, which build a full trace profile, can be abstracted. These queries assume data is structured similarly to OTel, so users deviating significantly from the standard schema will need to use views to benefit from this feature.
+The Traces configuration is slightly more complex (full list [here](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage)). The required columns here are needed such that subsequent queries, which build a full trace profile, can be abstracted. These queries assume data is structured similarly to OTel, so users deviating significantly from the standard schema will need to use views to benefit from this feature.
@@ -104,7 +104,7 @@ LIMIT 1000
```
-Note how the above query uses the materialized view `otel_traces_trace_id_ts` to perform the trace id lookup. See [Accelerating Queries - Using Materialized views for lookups](/guides/observability/build-your-own/schema-design#using-materialized-views-incremental--for-fast-lookups) for further details.
+Note how the above query uses the materialized view `otel_traces_trace_id_ts` to perform the trace id lookup. See [Accelerating Queries - Using Materialized views for lookups](/core/guides/use-cases/observability/build-your-own/schema-design#using-materialized-views-incremental--for-fast-lookups) for further details.
diff --git a/core/guides/use-cases/observability/build-your-own/index.mdx b/core/guides/use-cases/observability/build-your-own/index.mdx
new file mode 100644
index 00000000..b4642553
--- /dev/null
+++ b/core/guides/use-cases/observability/build-your-own/index.mdx
@@ -0,0 +1,18 @@
+---
+slug: /use-cases/observability/build-your-own
+title: 'Build your own observability stack'
+description: 'Landing page building your own observability stack'
+doc_type: 'landing-page'
+keywords: ['observability', 'custom stack', 'build your own', 'logs', 'traces', 'metrics', 'OpenTelemetry']
+---
+
+This guide helps you build a custom observability stack using ClickHouse as the foundation. Learn how to design, implement, and optimize your observability solution for logs, metrics, and traces, with practical examples and best practices.
+
+| Page | Description |
+|-------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| [Introduction](/core/guides/use-cases/observability/build-your-own/introduction) | This guide is designed for if you're looking to build your own observability solution using ClickHouse, focusing on logs and traces. |
+| [Schema design](/core/guides/use-cases/observability/build-your-own/schema-design) | Learn why users are recommended to create their own schema for logs and traces, along with some best practices for doing so. |
+| [Managing data](/core/guides/use-cases/observability/build-your-own/managing-data) | Deployments of ClickHouse for observability invariably involve large datasets, which need to be managed. ClickHouse offers features to assist with data management. |
+| [Integrating OpenTelemetry](/core/guides/use-cases/observability/build-your-own/integrating-opentelemetry) | Collecting and exporting logs and traces using OpenTelemetry with ClickHouse. |
+| [Using Visualization Tools](/core/guides/use-cases/observability/build-your-own/grafana) | Learn how to use observability visualization tools for ClickHouse, including HyperDX and Grafana. |
+| [Demo Application](/core/guides/use-cases/observability/build-your-own/demo-application) | Explore the OpenTelemetry demo application forked to work with ClickHouse for logs and traces. |
diff --git a/guides/observability/build-your-own/integrating-opentelemetry.mdx b/core/guides/use-cases/observability/build-your-own/integrating-opentelemetry.mdx
similarity index 93%
rename from guides/observability/build-your-own/integrating-opentelemetry.mdx
rename to core/guides/use-cases/observability/build-your-own/integrating-opentelemetry.mdx
index 8717905e..7175f371 100644
--- a/guides/observability/build-your-own/integrating-opentelemetry.mdx
+++ b/core/guides/use-cases/observability/build-your-own/integrating-opentelemetry.mdx
@@ -119,7 +119,7 @@ The following represents a simple configuration for the OTel Collector which rea
**Consider ClickHouse for parsing**
-The below example extracts the timestamp from the log. This requires the use of the `json_parser` operator, which converts the entire log line to a JSON string, placing the result in `LogAttributes`. This can be computationally expensive and [can be done more efficiently in ClickHouse](https://clickhouse.com/blog/worlds-fastest-json-querying-tool-clickhouse-local) - [Extracting structure with SQL](/guides/observability/build-your-own/schema-design#extracting-structure-with-sql). An equivalent unstructured example, which uses the [`regex_parser`](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/pkg/stanza/docs/operators/regex_parser.md) to achieve this, can be found [here](https://pastila.nl/?01da7ee2/2ffd3ba8124a7d6e4ddf39422ad5b863#swBkiAXvGP7mRPgbuzzHFA==).
+The below example extracts the timestamp from the log. This requires the use of the `json_parser` operator, which converts the entire log line to a JSON string, placing the result in `LogAttributes`. This can be computationally expensive and [can be done more efficiently in ClickHouse](https://clickhouse.com/blog/worlds-fastest-json-querying-tool-clickhouse-local) - [Extracting structure with SQL](/core/guides/use-cases/observability/build-your-own/schema-design#extracting-structure-with-sql). An equivalent unstructured example, which uses the [`regex_parser`](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/pkg/stanza/docs/operators/regex_parser.md) to achieve this, can be found [here](https://pastila.nl/?01da7ee2/2ffd3ba8124a7d6e4ddf39422ad5b863#swBkiAXvGP7mRPgbuzzHFA==).
**[config-structured-logs.yaml](https://www.otelbin.io/#config=receivers%3A*N_filelog%3A*N___include%3A*N_____-_%2Fopt%2Fdata%2Flogs%2Faccess-structured.log*N___start*_at%3A_beginning*N___operators%3A*N_____-_type%3A_json*_parser*N_______timestamp%3A*N_________parse*_from%3A_attributes.time*_local*N_________layout%3A_*%22*.Y-*.m-*.d_*.H%3A*.M%3A*.S*%22*N*N*Nprocessors%3A*N__batch%3A*N____timeout%3A_5s*N____send*_batch*_size%3A_1*N*N*Nexporters%3A*N_logging%3A*N___loglevel%3A_debug*N*N*Nservice%3A*N_pipelines%3A*N___logs%3A*N_____receivers%3A_%5Bfilelog%5D*N_____processors%3A_%5Bbatch%5D*N_____exporters%3A_%5Blogging%5D%7E)**
@@ -203,7 +203,7 @@ For users needing to collect local or Kubernetes log files, we recommend users b
## Collecting Kubernetes logs {#collecting-kubernetes-logs}
-For the collection of Kubernetes logs, we recommend the [OpenTelemetry documentation guide](https://opentelemetry.io/docs/kubernetes/). The [Kubernetes Attributes Processor](https://opentelemetry.io/docs/kubernetes/collector/components/#kubernetes-attributes-processor) is recommended for enriching logs and metrics with pod metadata. This can potentially produce dynamic metadata e.g. labels, stored in the column `ResourceAttributes`. ClickHouse currently uses the type `Map(String, String)` for this column. See [Using Maps](/guides/observability/build-your-own/schema-design#using-maps) and [Extracting from maps](/guides/observability/build-your-own/schema-design#extracting-from-maps) for further details on handling and optimizing this type.
+For the collection of Kubernetes logs, we recommend the [OpenTelemetry documentation guide](https://opentelemetry.io/docs/kubernetes/). The [Kubernetes Attributes Processor](https://opentelemetry.io/docs/kubernetes/collector/components/#kubernetes-attributes-processor) is recommended for enriching logs and metrics with pod metadata. This can potentially produce dynamic metadata e.g. labels, stored in the column `ResourceAttributes`. ClickHouse currently uses the type `Map(String, String)` for this column. See [Using Maps](/core/guides/use-cases/observability/build-your-own/schema-design#using-maps) and [Extracting from maps](/core/guides/use-cases/observability/build-your-own/schema-design#extracting-from-maps) for further details on handling and optimizing this type.
## Collecting traces {#collecting-traces}
@@ -287,7 +287,7 @@ As demonstrated in the earlier example of setting the timestamp for a log event,
- **Operators** - [Operators](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/pkg/stanza/docs/operators/README.md) provide the most basic unit of processing available at the receiver. Basic parsing is supported, allowing fields such as the Severity and Timestamp to be set. JSON and regex parsing are supported here along with event filtering and basic transformations. We recommend performing event filtering here.
-We recommend users avoid doing excessive event processing using operators or [transform processors](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/transformprocessor/README.md). These can incur considerable memory and CPU overhead, especially JSON parsing. It is possible to do all processing in ClickHouse at insert time with materialized views and columns with some exceptions - specifically, context-aware enrichment e.g. adding of k8s metadata. For more details see [Extracting structure with SQL](/guides/observability/build-your-own/schema-design#extracting-structure-with-sql).
+We recommend users avoid doing excessive event processing using operators or [transform processors](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/transformprocessor/README.md). These can incur considerable memory and CPU overhead, especially JSON parsing. It is possible to do all processing in ClickHouse at insert time with materialized views and columns with some exceptions - specifically, context-aware enrichment e.g. adding of k8s metadata. For more details see [Extracting structure with SQL](/core/guides/use-cases/observability/build-your-own/schema-design#extracting-structure-with-sql).
If processing is done using the OTel collector, we recommend doing transformations at gateway instances and minimizing any work done at agent instances. This will ensure the resources required by agents at the edge, running on servers, are as minimal as possible. Typically, we see users only performing filtering (to minimize unnecessary network usage), timestamp setting (via operators), and enrichment, which requires context in agents. For example, if gateway instances reside in a different Kubernetes cluster, k8s enrichment will need to occur in the agent.
@@ -410,7 +410,7 @@ Note the following key settings:
- **batch** - a batch processor ensures events are sent as batches. We recommend a value of at least 10,000 with a timeout of 5s (values up to 100,000 can be used if memory allows). Whichever of these is reached first will initiate a batch to be flushed to the exporter. Lowering these values will mean a lower latency pipeline with data available for querying sooner, at the expense of more connections and batches sent to ClickHouse. This isn't recommended if you're not using [asynchronous inserts](https://clickhouse.com/blog/asynchronous-data-inserts-in-clickhouse) as it may cause issues with [too many parts](https://clickhouse.com/blog/common-getting-started-issues-with-clickhouse#1-too-many-parts) in ClickHouse. Conversely, if you're using asynchronous inserts these availability data for querying will also be dependent on asynchronous insert settings - although data will still be flushed from the connector sooner. See [Batching](#batching) for more details.
- **sending_queue** - controls the size of the sending queue. Each item in the queue contains a batch. If this queue is exceeded e.g. due to ClickHouse being unreachable but events continue to arrive, batches will be dropped.
-Assuming users have extracted the structured log file and have a [local instance of ClickHouse](/get-started/setup/self-managed/install) running (with default authentication), you can run this configuration via the command:
+Assuming users have extracted the structured log file and have a [local instance of ClickHouse](/core/get-started/setup/install) running (with default authentication), you can run this configuration via the command:
```bash
./otelcol-contrib --config clickhouse-config.yaml
@@ -533,13 +533,13 @@ The columns here correlate with the OTel official specification for logs documen
A few important notes on this schema:
- By default, the table is partitioned by date via `PARTITION BY toDate(Timestamp)`. This makes it efficient to drop data that expires.
-- The TTL is set via `TTL toDateTime(Timestamp) + toIntervalDay(3)` and corresponds to the value set in the collector configuration. [`ttl_only_drop_parts=1`](/reference/settings/merge-tree-settings#ttl_only_drop_parts) means only whole parts are dropped when all the contained rows have expired. This is more efficient than dropping rows within parts, which incurs an expensive delete. We recommend this always be set. See [Data management with TTL](/guides/observability/build-your-own/managing-data#data-management-with-ttl-time-to-live) for more details.
-- The table uses the classic [`MergeTree` engine](/reference/engines/table-engines/mergetree-family/mergetree). This is recommended for logs and traces and shouldn't need to be changed.
-- The table is ordered by `ORDER BY (ServiceName, SeverityText, toUnixTimestamp(Timestamp), TraceId)`. This means queries will be optimized for filters on `ServiceName`, `SeverityText`, `Timestamp` and `TraceId` - earlier columns in the list will filter faster than later ones e.g. filtering by `ServiceName` will be significantly faster than filtering by `TraceId`. You should modify this ordering according to their expected access patterns - see [Choosing a primary key](/guides/observability/build-your-own/schema-design#choosing-a-primary-ordering-key).
-- The above schema applies `ZSTD(1)` to columns. This offers the best compression for logs. You can increase the ZSTD compression level (above the default of 1) for better compression, although this is rarely beneficial. Increasing this value will incur greater CPU overhead at insert time (during compression), although decompression (and thus queries) should remain comparable. See [here](https://clickhouse.com/blog/optimize-clickhouse-codecs-compression-schema) for further details. Additional [delta encoding](/reference/statements/create/table#delta) is applied to the Timestamp with the aim of reducing its size on disk.
-- Note how [`ResourceAttributes`](https://opentelemetry.io/docs/specs/otel/resource/sdk/), [`LogAttributes`](https://opentelemetry.io/docs/specs/otel/logs/data-model/#field-attributes) and [`ScopeAttributes`](https://opentelemetry.io/docs/specs/otel/logs/data-model/#field-instrumentationscope) are maps. It's important to understand the differences between them. See ["Using maps"](/guides/observability/build-your-own/schema-design#using-maps) for how to access these maps and optimize accessing keys within them.
+- The TTL is set via `TTL toDateTime(Timestamp) + toIntervalDay(3)` and corresponds to the value set in the collector configuration. [`ttl_only_drop_parts=1`](/core/reference/settings/merge-tree-settings#ttl_only_drop_parts) means only whole parts are dropped when all the contained rows have expired. This is more efficient than dropping rows within parts, which incurs an expensive delete. We recommend this always be set. See [Data management with TTL](/core/guides/use-cases/observability/build-your-own/managing-data#data-management-with-ttl-time-to-live) for more details.
+- The table uses the classic [`MergeTree` engine](/core/reference/engines/table-engines/mergetree-family/mergetree). This is recommended for logs and traces and shouldn't need to be changed.
+- The table is ordered by `ORDER BY (ServiceName, SeverityText, toUnixTimestamp(Timestamp), TraceId)`. This means queries will be optimized for filters on `ServiceName`, `SeverityText`, `Timestamp` and `TraceId` - earlier columns in the list will filter faster than later ones e.g. filtering by `ServiceName` will be significantly faster than filtering by `TraceId`. You should modify this ordering according to their expected access patterns - see [Choosing a primary key](/core/guides/use-cases/observability/build-your-own/schema-design#choosing-a-primary-ordering-key).
+- The above schema applies `ZSTD(1)` to columns. This offers the best compression for logs. You can increase the ZSTD compression level (above the default of 1) for better compression, although this is rarely beneficial. Increasing this value will incur greater CPU overhead at insert time (during compression), although decompression (and thus queries) should remain comparable. See [here](https://clickhouse.com/blog/optimize-clickhouse-codecs-compression-schema) for further details. Additional [delta encoding](/core/reference/statements/create/table#delta) is applied to the Timestamp with the aim of reducing its size on disk.
+- Note how [`ResourceAttributes`](https://opentelemetry.io/docs/specs/otel/resource/sdk/), [`LogAttributes`](https://opentelemetry.io/docs/specs/otel/logs/data-model/#field-attributes) and [`ScopeAttributes`](https://opentelemetry.io/docs/specs/otel/logs/data-model/#field-instrumentationscope) are maps. It's important to understand the differences between them. See ["Using maps"](/core/guides/use-cases/observability/build-your-own/schema-design#using-maps) for how to access these maps and optimize accessing keys within them.
- Most other types here e.g. `ServiceName` as LowCardinality, are optimized. Note that `Body`, which is JSON in our example logs, is stored as a String.
-- Bloom filters are applied to map keys and values, as well as the `Body` column. These aim to improve query times for queries accessing these columns but are typically not required. See [Secondary/Data skipping indices](/guides/observability/build-your-own/schema-design#secondarydata-skipping-indices).
+- Bloom filters are applied to map keys and values, as well as the `Body` column. These aim to improve query times for queries accessing these columns but are typically not required. See [Secondary/Data skipping indices](/core/guides/use-cases/observability/build-your-own/schema-design#secondarydata-skipping-indices).
```sql
CREATE TABLE default.otel_traces
@@ -582,7 +582,7 @@ SETTINGS ttl_only_drop_parts = 1
Again, this will correlate with the columns corresponding to OTel official specification for traces documented [here](https://opentelemetry.io/docs/specs/otel/trace/api/). The schema here employs many of the same settings as the above logs schema with additional Link columns specific to spans.
-We recommend users disable auto schema creation and create their tables manually. This allows modification of the primary and secondary keys, as well as the opportunity to introduce additional columns for optimizing query performance. For further details see [Schema design](/guides/observability/build-your-own/schema-design).
+We recommend users disable auto schema creation and create their tables manually. This allows modification of the primary and secondary keys, as well as the opportunity to introduce additional columns for optimizing query performance. For further details see [Schema design](/core/guides/use-cases/observability/build-your-own/schema-design).
## Optimizing inserts {#optimizing-inserts}
@@ -605,15 +605,15 @@ We recommend users use the [batch processor](https://github.com/open-telemetry/o
Typically, users are forced to send smaller batches when the throughput of a collector is low, and yet they still expect data to reach ClickHouse within a minimum end-to-end latency. In this case, small batches are sent when the `timeout` of the batch processor expires. This can cause problems and is when asynchronous inserts are required. This case typically arises when **collectors in the agent role are configured to send directly to ClickHouse**. Gateways, by acting as aggregators, can alleviate this problem - see [Scaling with Gateways](#scaling-with-gateways).
-If large batches can't be guaranteed, you can delegate batching to ClickHouse using [Asynchronous Inserts](/concepts/best-practices/selecting-an-insert-strategy#asynchronous-inserts). With asynchronous inserts, data is inserted into a buffer first and then written to the database storage later or asynchronously respectively.
+If large batches can't be guaranteed, you can delegate batching to ClickHouse using [Asynchronous Inserts](/core/concepts/best-practices/selecting-an-insert-strategy#asynchronous-inserts). With asynchronous inserts, data is inserted into a buffer first and then written to the database storage later or asynchronously respectively.
-With [enabled asynchronous inserts](/concepts/operations/insert/asyncinserts#enabling-asynchronous-inserts), when ClickHouse ① receives an insert query, the query's data is ② immediately written into an in-memory buffer first. When ③ the next buffer flush takes place, the buffer's data is [sorted](/guides/cloud-oss/data-modelling/sparse-primary-indexes#data-is-stored-on-disk-ordered-by-primary-key-columns) and written as a part to the database storage. Note, that the data isn't searchable by queries before being flushed to the database storage; the buffer flush is [configurable](/concepts/operations/insert/asyncinserts).
+With [enabled asynchronous inserts](/core/concepts/features/operations/insert/asyncinserts#enabling-asynchronous-inserts), when ClickHouse ① receives an insert query, the query's data is ② immediately written into an in-memory buffer first. When ③ the next buffer flush takes place, the buffer's data is [sorted](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#data-is-stored-on-disk-ordered-by-primary-key-columns) and written as a part to the database storage. Note, that the data isn't searchable by queries before being flushed to the database storage; the buffer flush is [configurable](/core/concepts/features/operations/insert/asyncinserts).
To enable asynchronous inserts for the collector, add `async_insert=1` to the connection string. We recommend users use `wait_for_async_insert=1` (the default) to get delivery guarantees - see [here](https://clickhouse.com/blog/asynchronous-data-inserts-in-clickhouse) for further details.
-Data from an async insert is inserted once the ClickHouse buffer is flushed. This occurs either after the [`async_insert_max_data_size`](/reference/settings/session-settings#async_insert_max_data_size) is exceeded or after [`async_insert_busy_timeout_ms`](/reference/settings/session-settings#async_insert_max_data_size) milliseconds since the first INSERT query. If the `async_insert_stale_timeout_ms` is set to a non-zero value, the data is inserted after `async_insert_stale_timeout_ms milliseconds` since the last query. You can tune these settings to control the end-to-end latency of their pipeline. Further settings which can be used to tune buffer flushing are documented [here](/reference/settings/session-settings#async_insert). Generally, defaults are appropriate.
+Data from an async insert is inserted once the ClickHouse buffer is flushed. This occurs either after the [`async_insert_max_data_size`](/core/reference/settings/session-settings#async_insert_max_data_size) is exceeded or after [`async_insert_busy_timeout_ms`](/core/reference/settings/session-settings#async_insert_max_data_size) milliseconds since the first INSERT query. If the `async_insert_stale_timeout_ms` is set to a non-zero value, the data is inserted after `async_insert_stale_timeout_ms milliseconds` since the last query. You can tune these settings to control the end-to-end latency of their pipeline. Further settings which can be used to tune buffer flushing are documented [here](/core/reference/settings/session-settings#async_insert). Generally, defaults are appropriate.
**Consider Adaptive Asynchronous Inserts**
@@ -621,9 +621,9 @@ Data from an async insert is inserted once the ClickHouse buffer is flushed. Thi
In cases where a low number of agents are in use, with low throughput but strict end-to-end latency requirements, [adaptive asynchronous inserts](https://clickhouse.com/blog/clickhouse-release-24-02#adaptive-asynchronous-inserts) may be useful. Generally, these aren't applicable to high throughput Observability use cases, as seen with ClickHouse.
-Finally, the previous deduplication behavior associated with synchronous inserts into ClickHouse isn't enabled by default when using asynchronous inserts. If required, see the setting [`async_insert_deduplicate`](/reference/settings/session-settings#async_insert_deduplicate).
+Finally, the previous deduplication behavior associated with synchronous inserts into ClickHouse isn't enabled by default when using asynchronous inserts. If required, see the setting [`async_insert_deduplicate`](/core/reference/settings/session-settings#async_insert_deduplicate).
-Full details on configuring this feature can be found [here](/concepts/operations/insert/asyncinserts#enabling-asynchronous-inserts), with a deep dive [here](https://clickhouse.com/blog/asynchronous-data-inserts-in-clickhouse).
+Full details on configuring this feature can be found [here](/core/concepts/features/operations/insert/asyncinserts#enabling-asynchronous-inserts), with a deep dive [here](https://clickhouse.com/blog/asynchronous-data-inserts-in-clickhouse).
## Deployment architectures {#deployment-architectures}
diff --git a/guides/observability/build-your-own/introduction.mdx b/core/guides/use-cases/observability/build-your-own/introduction.mdx
similarity index 98%
rename from guides/observability/build-your-own/introduction.mdx
rename to core/guides/use-cases/observability/build-your-own/introduction.mdx
index 0629a6c2..43336011 100644
--- a/guides/observability/build-your-own/introduction.mdx
+++ b/core/guides/use-cases/observability/build-your-own/introduction.mdx
@@ -39,7 +39,7 @@ More specifically, the following means ClickHouse is ideally suited for the stor
- **Compression** - Observability data typically contains fields for which the values are taken from a distinct set e.g. HTTP codes or service names. ClickHouse's column-oriented storage, where values are stored sorted, means this data compresses extremely well - especially when combined with a range of specialized codecs for time-series data. Unlike other data stores, which require as much storage as the original data size of the data, typically in JSON format, ClickHouse compresses logs and traces on average up to 14x. Beyond providing significant storage savings for large Observability installations, this compression assists in accelerating queries as less data needs to be read from disk.
- **Fast Aggregations** - Observability solutions typically heavily involve the visualization of data through charts e.g. lines showing error rates or bar charts showing traffic sources. Aggregations, or GROUP BYs, are fundamental to powering these charts which must also be fast and responsive when applying filters in workflows for issue diagnosis. ClickHouse's column-oriented format combined with a vectorized query execution engine is ideal for fast aggregations, with sparse indexing allowing rapid filtering of data in response to user actions.
-- **Fast Linear scans** - While alternative technologies rely on inverted indices for fast querying of logs, these invariably result in high disk and resource utilization. While ClickHouse provides inverted indices as an additional optional index type, linear scans are highly parallelized and use all of the available cores on a machine (unless configured otherwise). This potentially allows 10s of GB/s per second (compressed) to be scanned for matches with [highly optimized text-matching operators](/reference/functions/regular-functions/string-search-functions).
+- **Fast Linear scans** - While alternative technologies rely on inverted indices for fast querying of logs, these invariably result in high disk and resource utilization. While ClickHouse provides inverted indices as an additional optional index type, linear scans are highly parallelized and use all of the available cores on a machine (unless configured otherwise). This potentially allows 10s of GB/s per second (compressed) to be scanned for matches with [highly optimized text-matching operators](/core/reference/functions/regular-functions/string-search-functions).
- **Familiarity of SQL** - SQL is the ubiquitous language with which all engineers are familiar. With over 50 years of development, it has proven itself as the de facto language for data analytics and remains the [3rd most popular programming language](https://clickhouse.com/blog/the-state-of-sql-based-observability#lingua-franca). Observability is just another data problem for which SQL is ideal.
- **Analytical functions** - ClickHouse extends ANSI SQL with analytical functions designed to make SQL queries simpler and easier to write. These are essential if you're performing root cause analysis where data needs to be sliced and diced.
- **Secondary indices** - ClickHouse supports secondary indexes, such as bloom filters, to accelerate specific query profiles. These can be optionally enabled at a column level, giving the user granular control and allowing them to assess the cost-performance benefit.
diff --git a/guides/observability/build-your-own/managing-data.mdx b/core/guides/use-cases/observability/build-your-own/managing-data.mdx
similarity index 81%
rename from guides/observability/build-your-own/managing-data.mdx
rename to core/guides/use-cases/observability/build-your-own/managing-data.mdx
index afc3df74..91979d37 100644
--- a/guides/observability/build-your-own/managing-data.mdx
+++ b/core/guides/use-cases/observability/build-your-own/managing-data.mdx
@@ -13,7 +13,7 @@ Deployments of ClickHouse for Observability invariably involve large datasets, w
## Partitions {#partitions}
-Partitioning in ClickHouse allows data to be logically separated on disk according to a column or SQL expression. By separating data logically, each partition can be operated on independently e.g. deleted. This allows you to move partitions, and thus subsets, between storage tiers efficiently on time or [expire data/efficiently delete from a cluster](/reference/statements/alter/partition).
+Partitioning in ClickHouse allows data to be logically separated on disk according to a column or SQL expression. By separating data logically, each partition can be operated on independently e.g. deleted. This allows you to move partitions, and thus subsets, between storage tiers efficiently on time or [expire data/efficiently delete from a cluster](/core/reference/statements/alter/partition).
Partitioning is specified on a table when it is initially defined via the `PARTITION BY` clause. This clause can contain a SQL expression on any column/s, the results of which will define which partition a row is sent to.
@@ -31,7 +31,7 @@ PARTITION BY toDate(Timestamp)
ORDER BY (ServiceName, SeverityText, toUnixTimestamp(Timestamp), TraceId)
```
-A [number of operations](/reference/statements/alter/partition) can be performed on partitions, including [backups](/reference/statements/alter/partition#freeze-partition), [column manipulations](/reference/statements/alter/partition#clear-column-in-partition), mutations [altering](/reference/statements/alter/partition#update-in-partition)/[deleting](/reference/statements/alter/partition#delete-in-partition) data by row) and [index clearing (e.g. secondary indices)](/reference/statements/alter/partition#clear-index-in-partition).
+A [number of operations](/core/reference/statements/alter/partition) can be performed on partitions, including [backups](/core/reference/statements/alter/partition#freeze-partition), [column manipulations](/core/reference/statements/alter/partition#clear-column-in-partition), mutations [altering](/core/reference/statements/alter/partition#update-in-partition)/[deleting](/core/reference/statements/alter/partition#delete-in-partition) data by row) and [index clearing (e.g. secondary indices)](/core/reference/statements/alter/partition#clear-index-in-partition).
As an example, suppose our `otel_logs` table is partitioned by day. If populated with the structured log dataset, this will contain several days of data:
@@ -116,7 +116,7 @@ This is in contrast to other techniques, which would require the use of an `INSE
**Moving partitions**
-[Moving partitions between tables](/reference/statements/alter/partition#move-partition-to-table) requires several conditions to be met, not least tables must have the same structure, partition key, primary key and indices/projections. Detailed notes on how to specify partitions in `ALTER` DDL can be found [here](/reference/statements/alter/partition#how-to-set-partition-expression).
+[Moving partitions between tables](/core/reference/statements/alter/partition#move-partition-to-table) requires several conditions to be met, not least tables must have the same structure, partition key, primary key and indices/projections. Detailed notes on how to specify partitions in `ALTER` DDL can be found [here](/core/reference/statements/alter/partition#how-to-set-partition-expression).
Furthermore, data can be efficiently deleted by partition. This is far more resource-efficient than alternative techniques (mutations or lightweight deletes) and should be preferred.
@@ -139,7 +139,7 @@ ORDER BY c DESC
```
-This feature is exploited by TTL when the setting [`ttl_only_drop_parts=1`](/reference/settings/merge-tree-settings#ttl_only_drop_parts) is used. See [Data management with TTL](#data-management-with-ttl-time-to-live) for further details.
+This feature is exploited by TTL when the setting [`ttl_only_drop_parts=1`](/core/reference/settings/merge-tree-settings#ttl_only_drop_parts) is used. See [Data management with TTL](#data-management-with-ttl-time-to-live) for further details.
### Applications {#applications}
@@ -153,7 +153,7 @@ We explore both of these in detail below.
### Query performance {#query-performance}
-While partitions can assist with query performance, this depends heavily on the access patterns. If queries target only a few partitions (ideally one), performance can potentially improve. This is only typically useful if the partitioning key isn't in the primary key and you're filtering by it. However, queries which need to cover many partitions may perform worse than if no partitioning is used (as there may possibly be more parts). The benefit of targeting a single partition will be even less pronounced to non-existent if the partitioning key is already an early entry in the primary key. Partitioning can also be used to [optimize GROUP BY queries](/reference/engines/table-engines/mergetree-family/custom-partitioning-key#group-by-optimisation-using-partition-key) if values in each partition are unique. However, in general, you should ensure the primary key is optimized and only consider partitioning as a query optimization technique in exceptional cases where access patterns access a specific predictable subset of the data, e.g., partitioning by day, with most queries in the last day. See [here](https://medium.com/datadenys/using-partitions-in-clickhouse-3ea0decb89c4) for an example of this behavior.
+While partitions can assist with query performance, this depends heavily on the access patterns. If queries target only a few partitions (ideally one), performance can potentially improve. This is only typically useful if the partitioning key isn't in the primary key and you're filtering by it. However, queries which need to cover many partitions may perform worse than if no partitioning is used (as there may possibly be more parts). The benefit of targeting a single partition will be even less pronounced to non-existent if the partitioning key is already an early entry in the primary key. Partitioning can also be used to [optimize GROUP BY queries](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key#group-by-optimisation-using-partition-key) if values in each partition are unique. However, in general, you should ensure the primary key is optimized and only consider partitioning as a query optimization technique in exceptional cases where access patterns access a specific predictable subset of the data, e.g., partitioning by day, with most queries in the last day. See [here](https://medium.com/datadenys/using-partitions-in-clickhouse-3ea0decb89c4) for an example of this behavior.
## Data management with TTL (Time-to-live) {#data-management-with-ttl-time-to-live}
@@ -181,7 +181,7 @@ TTL toDateTime(Timestamp) + toIntervalDay(4)
SETTINGS ttl_only_drop_parts = 1
```
-By default, data with an expired TTL is removed when ClickHouse [merges data parts](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage). When ClickHouse detects that data is expired, it performs an off-schedule merge.
+By default, data with an expired TTL is removed when ClickHouse [merges data parts](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-data-storage). When ClickHouse detects that data is expired, it performs an off-schedule merge.
**Scheduled TTLs**
@@ -189,7 +189,7 @@ By default, data with an expired TTL is removed when ClickHouse [merges data par
TTLs aren't applied immediately but rather on a schedule, as noted above. The MergeTree table setting `merge_with_ttl_timeout` sets the minimum delay in seconds before repeating a merge with delete TTL. The default value is 14400 seconds (4 hours). But that is just the minimum delay, it can take longer until a TTL merge is triggered. If the value is too low, it will perform many off-schedule merges that may consume a lot of resources. A TTL expiration can be forced using the command `ALTER TABLE my_table MATERIALIZE TTL`.
-**Important: We recommend using the setting [`ttl_only_drop_parts=1`](/reference/settings/merge-tree-settings#ttl_only_drop_parts) ** (applied by the default schema). When this setting is enabled, ClickHouse drops a whole part when all rows in it are expired. Dropping whole parts instead of partial cleaning TTL-d rows (achieved through resource-intensive mutations when `ttl_only_drop_parts=0`) allows having shorter `merge_with_ttl_timeout` times and lower impact on system performance. If data is partitioned by the same unit at which you perform TTL expiration e.g. day, parts will naturally only contain data from the defined interval. This will ensure `ttl_only_drop_parts=1` can be efficiently applied.
+**Important: We recommend using the setting [`ttl_only_drop_parts=1`](/core/reference/settings/merge-tree-settings#ttl_only_drop_parts) ** (applied by the default schema). When this setting is enabled, ClickHouse drops a whole part when all rows in it are expired. Dropping whole parts instead of partial cleaning TTL-d rows (achieved through resource-intensive mutations when `ttl_only_drop_parts=0`) allows having shorter `merge_with_ttl_timeout` times and lower impact on system performance. If data is partitioned by the same unit at which you perform TTL expiration e.g. day, parts will naturally only contain data from the defined interval. This will ensure `ttl_only_drop_parts=1` can be efficiently applied.
### Column level TTL {#column-level-ttl}
@@ -250,7 +250,7 @@ TTL Timestamp + INTERVAL 4 DAY RECOMPRESS CODEC(ZSTD(3))
We recommend users always evaluate both the insert and query performance impact of different compression levels and algorithms. For example, delta codecs can be helpful in the compression of timestamps. However, if these are part of the primary key then filtering performance can suffer.
-Further details and examples on configuring TTL can be found [here](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes). Examples such as how TTLs can be added and modified for tables and columns, can be found [here](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). For how TTLs enable storage hierarchies such as hot-warm architectures, see [Storage tiers](#storage-tiers).
+Further details and examples on configuring TTL can be found [here](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes). Examples such as how TTLs can be added and modified for tables and columns, can be found [here](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). For how TTLs enable storage hierarchies such as hot-warm architectures, see [Storage tiers](#storage-tiers).
## Storage tiers {#storage-tiers}
@@ -262,9 +262,9 @@ In ClickHouse, you may create storage tiers on different disks, e.g. hot/recent
ClickHouse Cloud uses a single copy of the data that is backed on S3, with SSD-backed node caches. Storage tiers in ClickHouse Cloud, therefore, aren't required.
-The creation of storage tiers requires users to create disks, which are then used to formulate storage policies, with volumes that can be specified during table creation. Data can be automatically moved between disks based on fill rates, part sizes, and volume priorities. Further details can be found [here](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes).
+The creation of storage tiers requires users to create disks, which are then used to formulate storage policies, with volumes that can be specified during table creation. Data can be automatically moved between disks based on fill rates, part sizes, and volume priorities. Further details can be found [here](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes).
-While data can be manually moved between disks using the `ALTER TABLE MOVE PARTITION` command, the movement of data between volumes can also be controlled using TTLs. A full example can be found [here](/concepts/operations/delete/ttl#implementing-a-hotwarmcold-architecture).
+While data can be manually moved between disks using the `ALTER TABLE MOVE PARTITION` command, the movement of data between volumes can also be controlled using TTLs. A full example can be found [here](/core/concepts/features/operations/delete/ttl#implementing-a-hotwarmcold-architecture).
## Managing schema changes {#managing-schema-changes}
@@ -274,11 +274,11 @@ In order to avoid downtime during schema changes, users have several options, wh
### Use default values {#use-default-values}
-Columns can be added to the schema using [`DEFAULT` values](/reference/statements/create/table#default). The specified default will be used if it isn't specified during the INSERT.
+Columns can be added to the schema using [`DEFAULT` values](/core/reference/statements/create/table#default). The specified default will be used if it isn't specified during the INSERT.
Schema changes can be made prior to modifying any materialized view transformation logic or OTel collector configuration, which causes these new columns to be sent.
-Once the schema has been changed, you can reconfigure OTel collectors. Assuming users are using the recommended process outlined in ["Extracting structure with SQL"](/guides/observability/build-your-own/schema-design#extracting-structure-with-sql), where OTel collectors send their data to a Null table engine with a materialized view responsible for extracting the target schema and sending the results to a target table for storage, the view can be modified using the [`ALTER TABLE ... MODIFY QUERY` syntax](/reference/statements/alter/view). Suppose we have the target table below with its corresponding materialized view (similar to that used in "Extracting structure with SQL") to extract the target schema from the OTel structured logs:
+Once the schema has been changed, you can reconfigure OTel collectors. Assuming users are using the recommended process outlined in ["Extracting structure with SQL"](/core/guides/use-cases/observability/build-your-own/schema-design#extracting-structure-with-sql), where OTel collectors send their data to a Null table engine with a materialized view responsible for extracting the target schema and sending the results to a target table for storage, the view can be modified using the [`ALTER TABLE ... MODIFY QUERY` syntax](/core/reference/statements/alter/view). Suppose we have the target table below with its corresponding materialized view (similar to that used in "Extracting structure with SQL") to extract the target schema from the OTel structured logs:
```sql
CREATE TABLE default.otel_logs_v2
@@ -380,7 +380,7 @@ Subsequent rows will have a `Size` column populated at insert time.
As an alternative to the above process, you can simply create a new target table with the new schema. Any materialized views can then be modified to use the new table using the above `ALTER TABLE MODIFY QUERY.` With this approach, you can version your tables e.g. `otel_logs_v3`.
-This approach leaves the users with multiple tables to query. To query across tables, you can use the [`merge` function](/reference/functions/table-functions/merge) which accepts wildcard patterns for the table name. We demonstrate this below by querying a v2 and v3 of the `otel_logs` table:
+This approach leaves the users with multiple tables to query. To query across tables, you can use the [`merge` function](/core/reference/functions/table-functions/merge) which accepts wildcard patterns for the table name. We demonstrate this below by querying a v2 and v3 of the `otel_logs` table:
```sql
SELECT Status, count() AS c
@@ -400,7 +400,7 @@ LIMIT 5
5 rows in set. Elapsed: 0.137 sec. Processed 41.46 million rows, 82.92 MB (302.43 million rows/s., 604.85 MB/s.)
```
-Should users wish to avoid using the `merge` function and expose a table to end users that combines multiple tables, the [Merge table engine](/reference/engines/table-engines/special/merge) can be used. We demonstrate this below:
+Should users wish to avoid using the `merge` function and expose a table to end users that combines multiple tables, the [Merge table engine](/core/reference/engines/table-engines/special/merge) can be used. We demonstrate this below:
```sql
CREATE TABLE otel_logs_merged
diff --git a/guides/observability/build-your-own/schema-design.mdx b/core/guides/use-cases/observability/build-your-own/schema-design.mdx
similarity index 89%
rename from guides/observability/build-your-own/schema-design.mdx
rename to core/guides/use-cases/observability/build-your-own/schema-design.mdx
index 54d9c84b..75b2dae1 100644
--- a/guides/observability/build-your-own/schema-design.mdx
+++ b/core/guides/use-cases/observability/build-your-own/schema-design.mdx
@@ -69,9 +69,9 @@ LIMIT 5
Peak memory usage: 153.71 MiB.
```
-Note the use of the map syntax here e.g. `LogAttributes['request_path']`, and the [`path` function](/reference/functions/regular-functions/url-functions#path) for stripping query parameters from the URL.
+Note the use of the map syntax here e.g. `LogAttributes['request_path']`, and the [`path` function](/core/reference/functions/regular-functions/url-functions#path) for stripping query parameters from the URL.
-If the user hasn't enabled JSON parsing in the collector, then `LogAttributes` will be empty, forcing us to use [JSON functions](/reference/functions/regular-functions/json-functions) to extract the columns from the String `Body`.
+If the user hasn't enabled JSON parsing in the collector, then `LogAttributes` will be empty, forcing us to use [JSON functions](/core/reference/functions/regular-functions/json-functions) to extract the columns from the String `Body`.
**Prefer ClickHouse for parsing**
@@ -153,7 +153,7 @@ Both of these use cases can be satisfied using ClickHouse by moving the above qu
**OTel or ClickHouse for processing?**
-You may also perform processing using OTel Collector processors and operators as described [here](/guides/observability/build-your-own/integrating-opentelemetry#processing---filtering-transforming-and-enriching). In most cases, you will find ClickHouse is significantly more resource-efficient and faster than the collector's processors. The principal downside of performing all event processing in SQL is the coupling of your solution to ClickHouse. For example, you may wish to send processed logs to alternative destinations from the OTel collector e.g. S3.
+You may also perform processing using OTel Collector processors and operators as described [here](/core/guides/use-cases/observability/build-your-own/integrating-opentelemetry#processing---filtering-transforming-and-enriching). In most cases, you will find ClickHouse is significantly more resource-efficient and faster than the collector's processors. The principal downside of performing all event processing in SQL is the coupling of your solution to ClickHouse. For example, you may wish to send processed logs to alternative destinations from the OTel collector e.g. S3.
### Materialized columns {#materialized-columns}
@@ -166,7 +166,7 @@ Materialized columns offer the simplest solution to extract structure from other
Materialized columns incur additional storage overhead as the values are extracted to new columns on disk at insert time.
-Materialized columns support any ClickHouse expression and can exploit any of the analytical functions for [processing strings](/reference/functions/regular-functions/string-functions) (including [regex and searching](/reference/functions/regular-functions/string-search-functions)) and [urls](/reference/functions/regular-functions/url-functions), performing [type conversions](/reference/functions/regular-functions/type-conversion-functions), [extracting values from JSON](/reference/functions/regular-functions/json-functions) or [mathematical operations](/reference/functions/regular-functions/math-functions).
+Materialized columns support any ClickHouse expression and can exploit any of the analytical functions for [processing strings](/core/reference/functions/regular-functions/string-functions) (including [regex and searching](/core/reference/functions/regular-functions/string-search-functions)) and [urls](/core/reference/functions/regular-functions/url-functions), performing [type conversions](/core/reference/functions/regular-functions/type-conversion-functions), [extracting values from JSON](/core/reference/functions/regular-functions/json-functions) or [mathematical operations](/core/reference/functions/regular-functions/math-functions).
We recommend materialized columns for basic processing. They're especially useful for extracting values from maps, promoting them to root columns, and performing type conversions. They're often most useful when used in very basic schemas or in conjunction with materialized views. Consider the following schema for logs from which the JSON has been extracted to the `LogAttributes` column by the collector:
@@ -227,7 +227,7 @@ Materialized columns will, by default, not be returned in a `SELECT *`. This is
## Materialized views {#materialized-views}
-[Materialized views](/concepts/features/materialized-views) provide a more powerful means of applying SQL filtering and transformations to logs and traces.
+[Materialized views](/core/concepts/features/materialized-views) provide a more powerful means of applying SQL filtering and transformations to logs and traces.
Materialized Views allow you to shift the cost of computation from query time to insert time. A ClickHouse materialized view is just a trigger that runs a query on blocks of data as they're inserted into a table. The results of this query are inserted into a second "target" table.
@@ -243,7 +243,7 @@ The query associated with the materialized view can theoretically be any query,
You should remember the query is just a trigger executing over the rows being inserted into a table (the source table), with the results sent to a new table (the target table).
-In order to ensure we don't persist the data twice (in the source and target tables) we can change the table of the source table to be a [Null table engine](/reference/engines/table-engines/special/null), preserving the original schema. Our OTel collectors will continue to send data to this table. For example, for logs, the `otel_logs` table becomes:
+In order to ensure we don't persist the data twice (in the source and target tables) we can change the table of the source table to be a [Null table engine](/core/reference/engines/table-engines/special/null), preserving the original schema. Our OTel collectors will continue to send data to this table. For example, for logs, the `otel_logs` table becomes:
```sql
CREATE TABLE otel_logs
@@ -321,7 +321,7 @@ We also extract the `Body` column above - in case additional attributes are adde
**Conditionals**
-Note the use of [conditionals](/reference/functions/regular-functions/conditional-functions) above for extracting the `SeverityText` and `SeverityNumber`. These are extremely useful for formulating complex conditions and checking if values are set in maps - we naively assume all keys exist in `LogAttributes`. We recommend users become familiar with them - they're your friend in log parsing in addition to functions for handling [null values](/reference/functions/regular-functions/functions-for-nulls)!
+Note the use of [conditionals](/core/reference/functions/regular-functions/conditional-functions) above for extracting the `SeverityText` and `SeverityNumber`. These are extremely useful for formulating complex conditions and checking if values are set in maps - we naively assume all keys exist in `LogAttributes`. We recommend users become familiar with them - they're your friend in log parsing in addition to functions for handling [null values](/core/reference/functions/regular-functions/functions-for-nulls)!
We require a table to receive these results. The below target table matches the above query:
@@ -354,7 +354,7 @@ ORDER BY (ServiceName, Timestamp)
The types selected here are based on optimizations discussed in ["Optimizing types"](#optimizing-types).
-Notice how we have dramatically changed our schema. In reality you will likely also have Trace columns they will want to preserve as well as the column `ResourceAttributes` (this usually contains Kubernetes metadata). Grafana can exploit trace columns to provide linking functionality between logs and traces - see ["Using Grafana"](/guides/observability/build-your-own/grafana).
+Notice how we have dramatically changed our schema. In reality you will likely also have Trace columns they will want to preserve as well as the column `ResourceAttributes` (this usually contains Kubernetes metadata). Grafana can exploit trace columns to provide linking functionality between logs and traces - see ["Using Grafana"](/core/guides/use-cases/observability/build-your-own/grafana).
Below, we create a materialized view `otel_logs_mv`, which executes the above select for the `otel_logs` table and sends the results to `otel_logs_v2`.
@@ -386,7 +386,7 @@ This above is visualized below:
-If we now restart the collector config used in ["Exporting to ClickHouse"](/guides/observability/build-your-own/integrating-opentelemetry#exporting-to-clickhouse) data will appear in `otel_logs_v2` in our desired format. Note the use of typed JSON extract functions.
+If we now restart the collector config used in ["Exporting to ClickHouse"](/core/guides/use-cases/observability/build-your-own/integrating-opentelemetry#exporting-to-clickhouse) data will appear in `otel_logs_v2` in our desired format. Note the use of typed JSON extract functions.
```sql
SELECT *
@@ -443,16 +443,16 @@ FROM otel_logs
### Beware types {#beware-types}
-The above materialized views rely on implicit casting - especially in the case of using the `LogAttributes` map. ClickHouse will often transparently cast the extracted value to the target table type, reducing the syntax required. However, we recommend users always test their views by using the views `SELECT` statement with an [`INSERT INTO`](/reference/statements/insert-into) statement with a target table using the same schema. This should confirm that types are correctly handled. Special attention should be given to the following cases:
+The above materialized views rely on implicit casting - especially in the case of using the `LogAttributes` map. ClickHouse will often transparently cast the extracted value to the target table type, reducing the syntax required. However, we recommend users always test their views by using the views `SELECT` statement with an [`INSERT INTO`](/core/reference/statements/insert-into) statement with a target table using the same schema. This should confirm that types are correctly handled. Special attention should be given to the following cases:
-- If a key doesn't exist in a map, an empty string will be returned. In the case of numerics, you will need to map these to an appropriate value. This can be achieved with [conditionals](/reference/functions/regular-functions/conditional-functions) e.g. `if(LogAttributes['status'] = ", 200, LogAttributes['status'])` or [cast functions](/reference/functions/regular-functions/type-conversion-functions) if default values are acceptable e.g. `toUInt8OrDefault(LogAttributes['status'] )`
+- If a key doesn't exist in a map, an empty string will be returned. In the case of numerics, you will need to map these to an appropriate value. This can be achieved with [conditionals](/core/reference/functions/regular-functions/conditional-functions) e.g. `if(LogAttributes['status'] = ", 200, LogAttributes['status'])` or [cast functions](/core/reference/functions/regular-functions/type-conversion-functions) if default values are acceptable e.g. `toUInt8OrDefault(LogAttributes['status'] )`
- Some types won't always be cast e.g. string representations of numerics won't be cast to enum values.
- JSON extract functions return default values for their type if a value isn't found. Ensure these values make sense!
**Avoid Nullable**
-Avoid using [Nullable](/reference/data-types/nullable) in Clickhouse for Observability data. It is rarely required in logs and traces to be able to distinguish between empty and null. This feature incurs an additional storage overhead and will negatively impact query performance. See [here](/guides/cloud-oss/data-modelling/schema-design#optimizing-types) for further details.
+Avoid using [Nullable](/core/reference/data-types/nullable) in Clickhouse for Observability data. It is rarely required in logs and traces to be able to distinguish between empty and null. This feature incurs an additional storage overhead and will negatively impact query performance. See [here](/core/guides/clickhouse/data-modelling/schema-design#optimizing-types) for further details.
## Choosing a primary (ordering) key {#choosing-a-primary-ordering-key}
@@ -468,7 +468,7 @@ Some simple rules can be applied to help choose an ordering key. The following c
-On identifying the subset of columns for the ordering key, they must be declared in a specific order. This order can significantly influence both the efficiency of the filtering on secondary key columns in queries and the compression ratio for the table's data files. In general, it is **best to order the keys in ascending order of cardinality**. This should be balanced against the fact that filtering on columns that appear later in the ordering key will be less efficient than filtering on those that appear earlier in the tuple. Balance these behaviors and consider your access patterns. Most importantly, test variants. For further understanding of ordering keys and how to optimize them, we recommend [this article](/guides/cloud-oss/data-modelling/sparse-primary-indexes).
+On identifying the subset of columns for the ordering key, they must be declared in a specific order. This order can significantly influence both the efficiency of the filtering on secondary key columns in queries and the compression ratio for the table's data files. In general, it is **best to order the keys in ascending order of cardinality**. This should be balanced against the fact that filtering on columns that appear later in the ordering key will be less efficient than filtering on those that appear earlier in the tuple. Balance these behaviors and consider your access patterns. Most importantly, test variants. For further understanding of ordering keys and how to optimize them, we recommend [this article](/core/guides/clickhouse/data-modelling/sparse-primary-indexes).
**Structure first**
@@ -478,9 +478,9 @@ We recommend deciding on your ordering keys once you have structured your logs.
## Using maps {#using-maps}
-Earlier examples show the use of map syntax `map['key']` to access values in the `Map(String, String)` columns. As well as using map notation to access the nested keys, specialized ClickHouse [map functions](/reference/functions/regular-functions/tuple-map-functions#mapKeys) are available for filtering or selecting these columns.
+Earlier examples show the use of map syntax `map['key']` to access values in the `Map(String, String)` columns. As well as using map notation to access the nested keys, specialized ClickHouse [map functions](/core/reference/functions/regular-functions/tuple-map-functions#mapKeys) are available for filtering or selecting these columns.
-For example, the following query identifies all of the unique keys available in the `LogAttributes` column using the [`mapKeys` function](/reference/functions/regular-functions/tuple-map-functions#mapKeys) followed by the [`groupArrayDistinctArray` function](/reference/functions/aggregate-functions/combinators) (a combinator).
+For example, the following query identifies all of the unique keys available in the `LogAttributes` column using the [`mapKeys` function](/core/reference/functions/regular-functions/tuple-map-functions#mapKeys) followed by the [`groupArrayDistinctArray` function](/core/reference/functions/aggregate-functions/combinators) (a combinator).
```sql
SELECT groupArrayDistinctArray(mapKeys(LogAttributes))
@@ -582,11 +582,11 @@ By default, `SELECT *` excludes ALIAS columns. This behavior can be disabled by
## Optimizing types {#optimizing-types}
-The [general Clickhouse best practices](/guides/cloud-oss/data-modelling/schema-design#optimizing-types) for optimizing types apply to the ClickHouse use case.
+The [general Clickhouse best practices](/core/guides/clickhouse/data-modelling/schema-design#optimizing-types) for optimizing types apply to the ClickHouse use case.
## Using codecs {#using-codecs}
-In addition to type optimizations, you can follow the [general best practices for codecs](/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse#choosing-the-right-column-compression-codec) when attempting to optimize compression for ClickHouse Observability schemas.
+In addition to type optimizations, you can follow the [general best practices for codecs](/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse#choosing-the-right-column-compression-codec) when attempting to optimize compression for ClickHouse Observability schemas.
In general, you will find the `ZSTD` codec highly applicable to logging and trace datasets. Increasing the compression value from its default value of 1 may improve compression. This should, however, be tested, as higher values incur a greater CPU overhead at insert time. Typically, we see little gain from increasing this value.
@@ -594,7 +594,7 @@ Furthermore, timestamps, while benefiting from delta encoding with respect to co
## Using dictionaries {#using-dictionaries}
-[Dictionaries](/reference/statements/create/dictionary) are a [key feature](https://clickhouse.com/blog/faster-queries-dictionaries-clickhouse) of ClickHouse providing in-memory [key-value](https://en.wikipedia.org/wiki/Key%E2%80%93value_database) representation of data from various internal and external [sources](/reference/statements/create/dictionary/sources/overview#dictionary-sources), optimized for super-low latency lookup queries.
+[Dictionaries](/core/reference/statements/create/dictionary) are a [key feature](https://clickhouse.com/blog/faster-queries-dictionaries-clickhouse) of ClickHouse providing in-memory [key-value](https://en.wikipedia.org/wiki/Key%E2%80%93value_database) representation of data from various internal and external [sources](/core/reference/statements/create/dictionary/sources/overview#dictionary-sources), optimized for super-low latency lookup queries.
@@ -604,7 +604,7 @@ While joins are rarely required in Observability use cases, dictionaries can sti
**Accelerating joins**
-Users interested in accelerating joins with dictionaries can find further details [here](/concepts/features/dictionaries).
+Users interested in accelerating joins with dictionaries can find further details [here](/core/concepts/features/dictionaries).
### Insert time vs query time {#insert-time-vs-query-time}
@@ -614,9 +614,9 @@ Dictionaries can be used for enriching datasets at query time or insert time. Ea
- **Insert time** - This is typically appropriate if the enrichment value doesn't change and exists in an external source which can be used to populate the dictionary. In this case, enriching the row at insert time avoids the query time lookup to the dictionary. This comes at the cost of insert performance as well as an additional storage overhead, as enriched values will be stored as columns.
- **Query time** - If values in a dictionary change frequently, query time lookups are often more applicable. This avoids needing to update columns (and rewrite data) if mapped values change. This flexibility comes at the expense of a query time lookup cost. This query time cost is typically appreciable if a lookup is required for many rows, e.g. using a dictionary lookup in a filter clause. For result enrichment, i.e. in the `SELECT`, this overhead is typically not appreciable.
-We recommend that users familiarize themselves with the basics of dictionaries. Dictionaries provide an in-memory lookup table from which values can be retrieved using dedicated [specialist functions](/reference/functions/regular-functions/ext-dict-functions#dictGetAll).
+We recommend that users familiarize themselves with the basics of dictionaries. Dictionaries provide an in-memory lookup table from which values can be retrieved using dedicated [specialist functions](/core/reference/functions/regular-functions/ext-dict-functions#dictGetAll).
-For simple enrichment examples see the guide on Dictionaries [here](/concepts/features/dictionaries). Below, we focus on common observability enrichment tasks.
+For simple enrichment examples see the guide on Dictionaries [here](/core/concepts/features/dictionaries). Below, we focus on common observability enrichment tasks.
### Using IP dictionaries {#using-ip-dictionaries}
@@ -630,7 +630,7 @@ From [the readme](https://github.com/sapics/ip-location-db#csv-format), we can s
| ip_range_start | ip_range_end | country_code | state1 | state2 | city | postcode | latitude | longitude | timezone |
```
-Given this structure, let's start by taking a peek at the data using the [url()](/reference/functions/table-functions/url) table function:
+Given this structure, let's start by taking a peek at the data using the [url()](/core/reference/functions/table-functions/url) table function:
```sql
SELECT *
@@ -651,7 +651,7 @@ longitude: 153.017
timezone: ᴺᵁᴸᴸ
```
-To make our lives easier, let's use the [`URL()`](/reference/engines/table-engines/special/url) table engine to create a ClickHouse table object with our field names and confirm the total number of rows:
+To make our lives easier, let's use the [`URL()`](/core/reference/engines/table-engines/special/url) table engine to create a ClickHouse table object with our field names and confirm the total number of rows:
```sql
CREATE TABLE geoip_url(
@@ -733,7 +733,7 @@ SELECT
FROM geoip_url
```
-In order to perform low-latency IP lookups in ClickHouse, we'll leverage dictionaries to store key -> attributes mapping for our Geo IP data in-memory. ClickHouse provides an `ip_trie` [dictionary structure](/reference/statements/create/dictionary/layouts/ip-trie) to map our network prefixes (CIDR blocks) to coordinates and country codes. The following query specifies a dictionary using this layout and the above table as the source.
+In order to perform low-latency IP lookups in ClickHouse, we'll leverage dictionaries to store key -> attributes mapping for our Geo IP data in-memory. ClickHouse provides an `ip_trie` [dictionary structure](/core/reference/statements/create/dictionary/layouts/ip-trie) to map our network prefixes (CIDR blocks) to coordinates and country codes. The following query specifies a dictionary using this layout and the above table as the source.
```sql
CREATE DICTIONARY ip_trie (
@@ -768,7 +768,7 @@ SELECT * FROM ip_trie LIMIT 3
Dictionaries in ClickHouse are periodically refreshed based on the underlying table data and the lifetime clause used above. To update our Geo IP dictionary to reflect the latest changes in the DB-IP dataset, we'll just need to reinsert data from the geoip_url remote table to our `geoip` table with transformations applied.
-Now that we have Geo IP data loaded into our `ip_trie` dictionary (conveniently also named `ip_trie`), we can use it for IP geo location. This can be accomplished using the [`dictGet()` function](/reference/functions/regular-functions/ext-dict-functions) as follows:
+Now that we have Geo IP data loaded into our `ip_trie` dictionary (conveniently also named `ip_trie`), we can use it for IP geo location. This can be accomplished using the [`dictGet()` function](/core/reference/functions/regular-functions/ext-dict-functions) as follows:
```sql
SELECT dictGet('ip_trie', ('country_code', 'latitude', 'longitude'), CAST('85.242.48.167', 'IPv4')) AS ip_details
@@ -838,19 +838,19 @@ ORDER BY (ServiceName, Timestamp)
**Update periodically**
-Users are likely to want the ip enrichment dictionary to be periodically updated based on new data. This can be achieved using the `LIFETIME` clause of the dictionary which will cause the dictionary to be periodically reloaded from the underlying table. To update the underlying table, see ["Refreshable Materialized views"](/concepts/features/materialized-views/refreshable-materialized-view).
+Users are likely to want the ip enrichment dictionary to be periodically updated based on new data. This can be achieved using the `LIFETIME` clause of the dictionary which will cause the dictionary to be periodically reloaded from the underlying table. To update the underlying table, see ["Refreshable Materialized views"](/core/concepts/features/materialized-views/refreshable-materialized-view).
-The above countries and coordinates offer visualization capabilities beyond grouping and filtering by country. For inspiration see ["Visualizing geo data"](/guides/observability/build-your-own/grafana#visualizing-geo-data).
+The above countries and coordinates offer visualization capabilities beyond grouping and filtering by country. For inspiration see ["Visualizing geo data"](/core/guides/use-cases/observability/build-your-own/grafana#visualizing-geo-data).
### Using regex dictionaries (user agent parsing) {#using-regex-dictionaries-user-agent-parsing}
The parsing of [user agent strings](https://en.wikipedia.org/wiki/User_agent) is a classical regular expression problem and a common requirement in log and trace based datasets. ClickHouse provides efficient parsing of user agents using Regular Expression Tree Dictionaries.
-Regular expression tree dictionaries are defined in ClickHouse open-source using the YAMLRegExpTree dictionary source type which provides the path to a YAML file containing the regular expression tree. Should you wish to provide your own regular expression dictionary, the details on the required structure can be found [here](/reference/statements/create/dictionary/layouts/regexp-tree#use-regular-expression-tree-dictionary-in-clickhouse-open-source). Below we focus on user-agent parsing using [uap-core](https://github.com/ua-parser/uap-core) and load our dictionary for the supported CSV format. This approach is compatible with OSS and ClickHouse Cloud.
+Regular expression tree dictionaries are defined in ClickHouse open-source using the YAMLRegExpTree dictionary source type which provides the path to a YAML file containing the regular expression tree. Should you wish to provide your own regular expression dictionary, the details on the required structure can be found [here](/core/reference/statements/create/dictionary/layouts/regexp-tree#use-regular-expression-tree-dictionary-in-clickhouse-open-source). Below we focus on user-agent parsing using [uap-core](https://github.com/ua-parser/uap-core) and load our dictionary for the supported CSV format. This approach is compatible with OSS and ClickHouse Cloud.
-In the examples below, we use snapshots of the latest uap-core regular expressions for user-agent parsing from June 2024. The latest file, which is occasionally updated, can be found [here](https://raw.githubusercontent.com/ua-parser/uap-core/master/regexes.yaml). You can follow the steps [here](/reference/statements/create/dictionary/layouts/regexp-tree#collecting-attribute-values) to load into the CSV file used below.
+In the examples below, we use snapshots of the latest uap-core regular expressions for user-agent parsing from June 2024. The latest file, which is occasionally updated, can be found [here](https://raw.githubusercontent.com/ua-parser/uap-core/master/regexes.yaml). You can follow the steps [here](/core/reference/statements/create/dictionary/layouts/regexp-tree#collecting-attribute-values) to load into the CSV file used below.
Create the following Memory tables. These hold our regular expressions for parsing devices, browsers and operating systems.
@@ -1037,9 +1037,9 @@ Note the use of Tuples for these user agent columns. Tuples are recommended for
For more examples and details on dictionaries, we recommend the following articles:
-- [Advanced dictionary topics](/concepts/features/dictionaries#advanced-dictionary-topics)
+- [Advanced dictionary topics](/core/concepts/features/dictionaries#advanced-dictionary-topics)
- ["Using Dictionaries to Accelerate Queries"](https://clickhouse.com/blog/faster-queries-dictionaries-clickhouse)
-- [Dictionaries](/reference/statements/create/dictionary)
+- [Dictionaries](/core/reference/statements/create/dictionary)
## Accelerating queries {#accelerating-queries}
@@ -1123,7 +1123,7 @@ We've effectively reduced the number of rows here from 10m (in `otel_logs`) to 1
Since the merging of rows is asynchronous, there may be more than one row per hour when a user queries. To ensure any outstanding rows are merged at query time, we have two options:
-- Use the [`FINAL` modifier](/reference/statements/select/from#final-modifier) on the table name (which we did for the count query above).
+- Use the [`FINAL` modifier](/core/reference/statements/select/from#final-modifier) on the table name (which we did for the count query above).
- Aggregate by the ordering key used in our final table i.e. Timestamp and sum the metrics.
Typically, the second option is more efficient and flexible (the table can be used for other things), but the first can be simpler for some queries. We show both below:
@@ -1174,7 +1174,7 @@ These savings can be even greater on larger datasets with more complex queries.
#### A more complex example {#a-more-complex-example}
-The above example aggregates a simple count per hour using the [SummingMergeTree](/reference/engines/table-engines/mergetree-family/summingmergetree). Statistics beyond simple sums require a different target table engine: the [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree).
+The above example aggregates a simple count per hour using the [SummingMergeTree](/core/reference/engines/table-engines/mergetree-family/summingmergetree). Statistics beyond simple sums require a different target table engine: the [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree).
Suppose we wish to compute the number of unique IP addresses (or unique users) per day. The query for this:
@@ -1204,7 +1204,7 @@ ENGINE = AggregatingMergeTree
ORDER BY Hour
```
-To ensure ClickHouse knows that aggregate states will be stored, we define the `UniqueUsers` column as the type [`AggregateFunction`](/reference/data-types/aggregatefunction), specifying the function source of the partial states (uniq) and the type of the source column (IPv4). Like the SummingMergeTree, rows with the same `ORDER BY` key value will be merged (Hour in the above example).
+To ensure ClickHouse knows that aggregate states will be stored, we define the `UniqueUsers` column as the type [`AggregateFunction`](/core/reference/data-types/aggregatefunction), specifying the function source of the partial states (uniq) and the type of the source column (IPv4). Like the SummingMergeTree, rows with the same `ORDER BY` key value will be merged (Hour in the above example).
The associated materialized view uses the earlier query:
@@ -1291,7 +1291,7 @@ PARTITION BY toDate(Timestamp)
ORDER BY (ServiceName, SpanName, toUnixTimestamp(Timestamp), TraceId)
```
-This schema is optimized for filtering by `ServiceName`, `SpanName`, and `Timestamp`. In tracing, users also need the ability to perform lookups by a specific `TraceId` and retrieving the associated trace's spans. While this is present in the ordering key, its position at the end means [filtering won't be as efficient](/guides/cloud-oss/data-modelling/sparse-primary-indexes#ordering-key-columns-efficiently) and likely means significant amounts of data will need to be scanned when retrieving a single trace.
+This schema is optimized for filtering by `ServiceName`, `SpanName`, and `Timestamp`. In tracing, users also need the ability to perform lookups by a specific `TraceId` and retrieving the associated trace's spans. While this is present in the ordering key, its position at the end means [filtering won't be as efficient](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#ordering-key-columns-efficiently) and likely means significant amounts of data will need to be scanned when retrieving a single trace.
The OTel collector also installs a materialized view and associated table to address this challenge. The table and view are shown below:
@@ -1352,7 +1352,7 @@ LIMIT 1000
The CTE here identifies the minimum and maximum timestamp for the trace id `ae9226c78d1d360601e6383928e4d22d`, before using this to filter the main `otel_traces` for its associated spans.
-This same approach can be applied for similar access patterns. We explore a similar example in Data Modeling [here](/concepts/features/materialized-views/incremental-materialized-view#lookup-table).
+This same approach can be applied for similar access patterns. We explore a similar example in Data Modeling [here](/core/concepts/features/materialized-views/incremental-materialized-view#lookup-table).
### Using projections {#using-projections}
@@ -1473,24 +1473,24 @@ No matter how well the primary key is tuned in ClickHouse, some queries will ine
The default OTel schemas use secondary indices in an attempt to accelerate access to map access. While we find these to be generally ineffective and don't recommend copying them into your custom schema, skipping indices can still be useful.
-You should read and understand the [guide to secondary indices](/concepts/features/performance/skip-indexes/skipping-indexes) before attempting to apply them.
+You should read and understand the [guide to secondary indices](/core/concepts/features/performance/skip-indexes/skipping-indexes) before attempting to apply them.
**In general, they're effective when a strong correlation exists between the primary key and the targeted, non-primary column/expression and users are looking up rare values i.e. those which don't occur in many granules.**
### Text index for full text search {#text-index-for-full-text-search}
-ClickHouse provides a specialized [text index](/reference/engines/table-engines/mergetree-family/textindexes) for full-text search.
+ClickHouse provides a specialized [text index](/core/reference/engines/table-engines/mergetree-family/textindexes) for full-text search.
This index builds an inverted index over tokenized text data, enabling fast token-based search queries.
Text indexes are available starting from ClickHouse version 26.2.
-They can be defined on the following column types in MergeTree tables: [String](/reference/data-types/string), [FixedString](/reference/data-types/fixedstring), [Array(String)](/reference/data-types/array), [Array(FixedString)](/reference/data-types/array), and [Map](/reference/data-types/map) (via [mapKeys](/reference/functions/regular-functions/tuple-map-functions#mapKeys) and [mapValues](/reference/functions/regular-functions/tuple-map-functions#mapValues) map functions) columns in MergeTree tables.
+They can be defined on the following column types in MergeTree tables: [String](/core/reference/data-types/string), [FixedString](/core/reference/data-types/fixedstring), [Array(String)](/core/reference/data-types/array), [Array(FixedString)](/core/reference/data-types/array), and [Map](/core/reference/data-types/map) (via [mapKeys](/core/reference/functions/regular-functions/tuple-map-functions#mapKeys) and [mapValues](/core/reference/functions/regular-functions/tuple-map-functions#mapValues) map functions) columns in MergeTree tables.
A text index requires a `tokenizer` argument in its definition. Optionally, a preprocessor function can be specified to transform the input string before tokenization.
The recommended functions to search in the index are: `hasAnyTokens` and `hasAllTokens`.
Some traditional string search functions are also automatically optimized when a text index is present.
-See the documentation for details and supported functions [here](/reference/engines/table-engines/mergetree-family/textindexes#using-a-text-index) and [here](/reference/engines/table-engines/mergetree-family/textindexes#functions-example-hasanytokens-hasalltokens).
+See the documentation for details and supported functions [here](/core/reference/engines/table-engines/mergetree-family/textindexes#using-a-text-index) and [here](/core/reference/engines/table-engines/mergetree-family/textindexes#functions-example-hasanytokens-hasalltokens).
In the examples below, we use a structured logs dataset.
@@ -1650,7 +1650,7 @@ Query id: 730e4b77-e697-40b3-a24d-67219ec42075
**Other indexes for text search
-Further details on secondary skip indices can be found [here](/concepts/features/performance/skip-indexes/skipping-indexes#skip-index-functions).
+Further details on secondary skip indices can be found [here](/core/concepts/features/performance/skip-indexes/skipping-indexes#skip-index-functions).
@@ -1660,7 +1660,7 @@ Further details on secondary skip indices can be found [here](/concepts/features
`ngrambf_v1` and `tokenbf_v1` indexes are no longer recommended for full text search.
-The ngram and token-based bloom filter indexes [`ngrambf_v1`](/concepts/features/performance/skip-indexes/skipping-indexes#bloom-filter-types) and [`tokenbf_v1`](/concepts/features/performance/skip-indexes/skipping-indexes#bloom-filter-types) can be used to accelerate searches over String columns with the operators `LIKE`, `IN`, and hasToken. Importantly, the token-based index generates tokens using non-alphanumeric characters as a separator. This means only tokens (or whole words) can be matched at query time. For more granular matching, the [N-gram bloom filter](/concepts/features/performance/skip-indexes/skipping-indexes#bloom-filter-types) can be used. This splits strings into ngrams of a specified size, thus allowing sub-word matching.
+The ngram and token-based bloom filter indexes [`ngrambf_v1`](/core/concepts/features/performance/skip-indexes/skipping-indexes#bloom-filter-types) and [`tokenbf_v1`](/core/concepts/features/performance/skip-indexes/skipping-indexes#bloom-filter-types) can be used to accelerate searches over String columns with the operators `LIKE`, `IN`, and hasToken. Importantly, the token-based index generates tokens using non-alphanumeric characters as a separator. This means only tokens (or whole words) can be matched at query time. For more granular matching, the [N-gram bloom filter](/core/concepts/features/performance/skip-indexes/skipping-indexes#bloom-filter-types) can be used. This splits strings into ngrams of a specified size, thus allowing sub-word matching.
To evaluate the tokens that will be produced and therefore, matched, the `tokens` function can be used:
@@ -1728,7 +1728,7 @@ ENGINE = MergeTree
ORDER BY (Timestamp)
```
-The index `ngrambf_v1(3, 10000, 3, 7)` here takes four parameters. The last of these (value 7) represents a seed. The others represent the ngram size (3), the value `m` (filter size), and the number of hash functions `k` (7). `k` and `m` require tuning and will be based on the number of unique ngrams/tokens and the probability the filter results in a true negative - thus confirming a value isn't present in a granule. We recommend [these functions](/reference/engines/table-engines/mergetree-family/mergetree#bloom-filter) to help establish these values.
+The index `ngrambf_v1(3, 10000, 3, 7)` here takes four parameters. The last of these (value 7) represents a seed. The others represent the ngram size (3), the value `m` (filter size), and the number of hash functions `k` (7). `k` and `m` require tuning and will be based on the number of unique ngrams/tokens and the probability the filter results in a true negative - thus confirming a value isn't present in a granule. We recommend [these functions](/core/reference/engines/table-engines/mergetree-family/mergetree#bloom-filter) to help establish these values.
If tuned correctly, the speedup here can be significant:
@@ -1752,7 +1752,7 @@ The above is for illustrative purposes only. We recommend users extract structur
Some general guidelines around using bloom filters:
-The objective of the bloom is to filter [granules](/guides/cloud-oss/data-modelling/sparse-primary-indexes#clickhouse-index-design), thus avoiding the need to load all values for a column and perform a linear scan. The `EXPLAIN` clause, with the parameter `indexes=1`, can be used to identify the number of granules that have been skipped. Consider the responses below for the original table `otel_logs_v2` and the table `otel_logs_bloom` with an ngram bloom filter.
+The objective of the bloom is to filter [granules](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#clickhouse-index-design), thus avoiding the need to load all values for a column and perform a linear scan. The `EXPLAIN` clause, with the parameter `indexes=1`, can be used to identify the number of granules that have been skipped. Consider the responses below for the original table `otel_logs_v2` and the table `otel_logs_bloom` with an ngram bloom filter.
```sql
EXPLAIN indexes = 1
@@ -1834,7 +1834,7 @@ WHERE `table` = 'otel_logs_bloom'
In the examples above, we can see the secondary bloom filter index is 12MB - almost 5x smaller than the compressed size of the column itself at 56MB.
-Bloom filters can require significant tuning. We recommend following the notes [here](/reference/engines/table-engines/mergetree-family/mergetree#bloom-filter) which can be useful in identifying optimal settings. Bloom filters can also be expensive at insert and merge time. You should evaluate the impact on insert performance prior to adding bloom filters to production.
+Bloom filters can require significant tuning. We recommend following the notes [here](/core/reference/engines/table-engines/mergetree-family/mergetree#bloom-filter) which can be useful in identifying optimal settings. Bloom filters can also be expensive at insert and merge time. You should evaluate the impact on insert performance prior to adding bloom filters to production.
@@ -1842,7 +1842,7 @@ Bloom filters can require significant tuning. We recommend following the notes [
The Map type is prevalent in the OTel schemas. This type requires the values and keys to have the same type - sufficient for metadata such as Kubernetes labels. Be aware that when querying a subkey of a Map type, the entire parent column is loaded. If the map has many keys, this can incur a significant query penalty as more data needs to be read from disk than if the key existed as a column.
-If you frequently query a specific key, consider moving it into its own dedicated column at the root. This is typically a task that happens in response to common access patterns and after deployment and may be difficult to predict before production. See ["Managing schema changes"](/guides/observability/build-your-own/managing-data#managing-schema-changes) for how to modify your schema post-deployment.
+If you frequently query a specific key, consider moving it into its own dedicated column at the root. This is typically a task that happens in response to common access patterns and after deployment and may be difficult to predict before production. See ["Managing schema changes"](/core/guides/use-cases/observability/build-your-own/managing-data#managing-schema-changes) for how to modify your schema post-deployment.
## Measuring table size & compression {#measuring-table-size--compression}
@@ -1850,4 +1850,4 @@ One of the principal reasons ClickHouse is used for Observability is compression
As well as dramatically reducing storage costs, less data on disk means less I/O and faster queries and inserts. The reduction in IO will out weight the overhead of any compression algorithm with respect to CPU. Improving the compression of the data should therefore be the first focus when working on ensuring ClickHouse queries are fast.
-Details on measuring compression can be found [here](/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse).
+Details on measuring compression can be found [here](/core/guides/clickhouse/data-modelling/compression/compression-in-clickhouse).
diff --git a/guides/observability/cloud-monitoring.mdx b/core/guides/use-cases/observability/cloud-monitoring.mdx
similarity index 97%
rename from guides/observability/cloud-monitoring.mdx
rename to core/guides/use-cases/observability/cloud-monitoring.mdx
index 200b045a..45011f01 100644
--- a/guides/observability/cloud-monitoring.mdx
+++ b/core/guides/use-cases/observability/cloud-monitoring.mdx
@@ -45,7 +45,7 @@ ClickHouse Cloud includes additional monitoring capabilities:
- Query Insights: Built-in interface for query performance analysis and troubleshooting
- Resource Utilization Dashboard: Tracks memory, CPU allocation, and data transfer patterns. CPU usage and memory usage graphs show the maximum utilization metric in a particular time period. The CPU usage graph shows a system-level CPU utilization metric (NOT a ClickHouse CPU utilization metric).
-See the [query insights](/products/cloud/features/sql-console-features/query-insights) and [resource utilization](/guides/oss/deployment-and-scaling/monitoring/monitoring#resource-utilization) documentation for detailed features.
+See the [query insights](/products/cloud/features/sql-console-features/query-insights) and [resource utilization](/core/guides/oss/deployment-and-scaling/monitoring/monitoring#resource-utilization) documentation for detailed features.
## Prometheus-compatible metrics endpoint {#prometheus}
diff --git a/guides/observability/index.mdx b/core/guides/use-cases/observability/index.mdx
similarity index 59%
rename from guides/observability/index.mdx
rename to core/guides/use-cases/observability/index.mdx
index ec8b2b61..e62e5554 100644
--- a/guides/observability/index.mdx
+++ b/core/guides/use-cases/observability/index.mdx
@@ -21,7 +21,7 @@ The ClickHouse Observability Stack is our **recommended approach** for most user
| [Example Datasets](/products/clickstack/example-datasets) | Sample datasets and use cases |
| [Architecture](/products/clickstack/architecture) | System architecture and components overview |
| [Deployment](/products/clickstack/deployment) | Deployment guides and options |
-| [Configuration](/products/clickstack/config) | Detailed configuration options and settings |
+| [Configuration](/products/clickstack/managing/config) | Detailed configuration options and settings |
| [Ingesting Data](/products/clickstack/ingesting-data) | Guidelines for ingesting data to ClickStack |
| [Search](/products/clickstack/features/search) | How to search and query your observability data |
| [Production](/products/clickstack/managing/production) | Best practices for production deployment |
@@ -32,9 +32,9 @@ For users with **custom requirements** — such as highly specialized ingestion
| Page | Description |
|-------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Introduction](/guides/observability/build-your-own/introduction) | This guide is designed for if you're looking to build your own observability solution using ClickHouse, focusing on logs and traces. |
-| [Schema design](/guides/observability/build-your-own/schema-design) | Learn why users are recommended to create their own schema for logs and traces, along with some best practices for doing so. |
-| [Managing data](/guides/observability/build-your-own/managing-data) | Deployments of ClickHouse for observability invariably involve large datasets, which need to be managed. ClickHouse offers features to assist with data management. |
-| [Integrating OpenTelemetry](/guides/observability/build-your-own/integrating-opentelemetry) | Collecting and exporting logs and traces using OpenTelemetry with ClickHouse. |
-| [Using Visualization Tools](/guides/observability/build-your-own/grafana) | Learn how to use observability visualization tools for ClickHouse, including HyperDX and Grafana. |
-| [Demo Application](/guides/observability/build-your-own/demo-application) | Explore the OpenTelemetry demo application forked to work with ClickHouse for logs and traces. |
+| [Introduction](/core/guides/use-cases/observability/build-your-own/introduction) | This guide is designed for if you're looking to build your own observability solution using ClickHouse, focusing on logs and traces. |
+| [Schema design](/core/guides/use-cases/observability/build-your-own/schema-design) | Learn why users are recommended to create their own schema for logs and traces, along with some best practices for doing so. |
+| [Managing data](/core/guides/use-cases/observability/build-your-own/managing-data) | Deployments of ClickHouse for observability invariably involve large datasets, which need to be managed. ClickHouse offers features to assist with data management. |
+| [Integrating OpenTelemetry](/core/guides/use-cases/observability/build-your-own/integrating-opentelemetry) | Collecting and exporting logs and traces using OpenTelemetry with ClickHouse. |
+| [Using Visualization Tools](/core/guides/use-cases/observability/build-your-own/grafana) | Learn how to use observability visualization tools for ClickHouse, including HyperDX and Grafana. |
+| [Demo Application](/core/guides/use-cases/observability/build-your-own/demo-application) | Explore the OpenTelemetry demo application forked to work with ClickHouse for logs and traces. |
diff --git a/guides/observability/self-managed-monitoring.mdx b/core/guides/use-cases/observability/self-managed-monitoring.mdx
similarity index 100%
rename from guides/observability/self-managed-monitoring.mdx
rename to core/guides/use-cases/observability/self-managed-monitoring.mdx
diff --git a/guides/real-time-analytics/time-series/analysis-functions.mdx b/core/guides/use-cases/real-time-analytics/time-series/analysis-functions.mdx
similarity index 96%
rename from guides/real-time-analytics/time-series/analysis-functions.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/analysis-functions.mdx
index a56614ab..0326e555 100644
--- a/guides/real-time-analytics/time-series/analysis-functions.mdx
+++ b/core/guides/use-cases/real-time-analytics/time-series/analysis-functions.mdx
@@ -22,7 +22,7 @@ These can all be achieved through combinations of aggregations, window functions
When analyzing time series data, we often need to understand how values change between time periods.
This is essential for both gauge and counter metrics.
-The [`lagInFrame`](/reference/functions/window-functions/lagInFrame) window function lets us access the previous period's value to calculate these changes.
+The [`lagInFrame`](/core/reference/functions/window-functions/lagInFrame) window function lets us access the previous period's value to calculate these changes.
The following query demonstrates this by calculating day-over-day changes in views for "Weird Al" Yankovic's Wikipedia page.
The trend column shows whether traffic increased (positive values) or decreased (negative values) compared to the previous day, helping identify unusual spikes or drops in activity.
@@ -150,7 +150,7 @@ Row 1:
hist: [(10033,23224.55065359477,60.625),(23224.55065359477,37855.38888888889,15.625),(37855.38888888889,52913.5,3.5),(52913.5,69438,1.25),(69438,83102.16666666666,1.25),(83102.16666666666,94267.66666666666,2.5),(94267.66666666666,116778,1.25),(116778,186175.75,1.125),(186175.75,946963.25,1.75),(946963.25,1655250,1.125)]
```
-We can then use [`arrayJoin()`](/reference/functions/regular-functions/array-join) to massage the data and `bar()` to visualize it:
+We can then use [`arrayJoin()`](/core/reference/functions/regular-functions/array-join) to massage the data and `bar()` to visualize it:
```sql
WITH histogram(10)(hits) AS hist
diff --git a/guides/real-time-analytics/time-series/basic-operations.mdx b/core/guides/use-cases/real-time-analytics/time-series/basic-operations.mdx
similarity index 85%
rename from guides/real-time-analytics/time-series/basic-operations.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/basic-operations.mdx
index c269934a..aaf813a7 100644
--- a/guides/real-time-analytics/time-series/basic-operations.mdx
+++ b/core/guides/use-cases/real-time-analytics/time-series/basic-operations.mdx
@@ -62,7 +62,7 @@ LIMIT 5;
└────────────┴──────────┘
```
-We've used the [`toDate()`](/reference/functions/regular-functions/type-conversion-functions#toDate) function here, which converts the specified time to a date type. Alternatively, we can batch by an hour and filter on the specific date:
+We've used the [`toDate()`](/core/reference/functions/regular-functions/type-conversion-functions#toDate) function here, which converts the specified time to a date type. Alternatively, we can batch by an hour and filter on the specific date:
```sql
SELECT
@@ -85,15 +85,15 @@ LIMIT 5;
└─────────────────────┴────────┘
```
-The [`toStartOfHour()`](/reference/functions/regular-functions/date-time-functions#toStartOfHour) function used here converts the given time to the start of the hour.
+The [`toStartOfHour()`](/core/reference/functions/regular-functions/date-time-functions#toStartOfHour) function used here converts the given time to the start of the hour.
You can also group by year, quarter, month, or day.
## Custom grouping intervals {#time-series-custom-grouping-intervals}
-We can even group by arbitrary intervals, e.g., 5 minutes using the [`toStartOfInterval()`](/reference/functions/regular-functions/date-time-functions#toStartOfInterval) function.
+We can even group by arbitrary intervals, e.g., 5 minutes using the [`toStartOfInterval()`](/core/reference/functions/regular-functions/date-time-functions#toStartOfInterval) function.
Let's say we want to group by 4-hour intervals.
-We can specify the grouping interval using the [`INTERVAL`](/reference/data-types/special-data-types/interval) clause:
+We can specify the grouping interval using the [`INTERVAL`](/core/reference/data-types/special-data-types/interval) clause:
```sql
SELECT
@@ -106,7 +106,7 @@ ORDER BY interval ASC
LIMIT 6;
```
-Or we can use the [`toIntervalHour()`](/reference/functions/regular-functions/type-conversion-functions#toIntervalHour) function
+Or we can use the [`toIntervalHour()`](/core/reference/functions/regular-functions/type-conversion-functions#toIntervalHour) function
```sql
SELECT
@@ -171,7 +171,7 @@ ORDER BY hour ASC;
└─────────────────────┴───────────┘
```
-ClickHouse provides the [`WITH FILL`](/guides/real-time-analytics/time-series/time-series-filling-gaps#with-fill) modifier to address this. This will fill out all the empty hours with zeros, so we can better understand the distribution over time:
+ClickHouse provides the [`WITH FILL`](/core/guides/use-cases/real-time-analytics/time-series/time-series-filling-gaps#with-fill) modifier to address this. This will fill out all the empty hours with zeros, so we can better understand the distribution over time:
```sql
SELECT
@@ -217,7 +217,7 @@ ORDER BY hour ASC WITH FILL STEP toIntervalHour(1);
Sometimes, we don't want to deal with the start of intervals (like the start of a day or an hour) but window intervals.
Let's say we want to understand the total hits for a window, not based on days but on a 24-hour period offset from 6 pm.
-We can use the [`date_diff()`](/reference/functions/regular-functions/date-time-functions#timeDiff) function to calculate the difference between a reference time and each record's time.
+We can use the [`date_diff()`](/core/reference/functions/regular-functions/date-time-functions#timeDiff) function to calculate the difference between a reference time and each record's time.
In this case, the `day` column will represent the difference in days (e.g., 1 day ago, 2 days ago, etc.):
```sql
diff --git a/guides/real-time-analytics/time-series/date-time-data-types.mdx b/core/guides/use-cases/real-time-analytics/time-series/date-time-data-types.mdx
similarity index 80%
rename from guides/real-time-analytics/time-series/date-time-data-types.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/date-time-data-types.mdx
index 01ca59f4..d66fd43d 100644
--- a/guides/real-time-analytics/time-series/date-time-data-types.mdx
+++ b/core/guides/use-cases/real-time-analytics/time-series/date-time-data-types.mdx
@@ -14,13 +14,13 @@ From compact date representations to high-precision timestamps with nanosecond a
Whether you're working with historical financial data, IoT sensor readings, or future-dated events, ClickHouse's date and time types provide the flexibility needed to handle various temporal data scenarios.
The range of supported types allows you to optimize both storage space and query performance while maintaining the precision your use case demands.
-* The [`Date`](/reference/data-types/date) type should be sufficient in most cases. This type requires 2 bytes to store a date and limits the range to `[1970-01-01, 2149-06-06]`.
+* The [`Date`](/core/reference/data-types/date) type should be sufficient in most cases. This type requires 2 bytes to store a date and limits the range to `[1970-01-01, 2149-06-06]`.
-* [`Date32`](/reference/data-types/date32) covers a wider range of dates. It requires 4 bytes to store a date and limits the range to `[1900-01-01, 2299-12-31]`
+* [`Date32`](/core/reference/data-types/date32) covers a wider range of dates. It requires 4 bytes to store a date and limits the range to `[1900-01-01, 2299-12-31]`
-* [`DateTime`](/reference/data-types/datetime) stores date time values with second precision and a range of `[1970-01-01 00:00:00, 2106-02-07 06:28:15]` It requires 4 bytes per value.
+* [`DateTime`](/core/reference/data-types/datetime) stores date time values with second precision and a range of `[1970-01-01 00:00:00, 2106-02-07 06:28:15]` It requires 4 bytes per value.
-* For cases where more precision is required, [`DateTime64`](/reference/data-types/datetime64) can be used. This allows storing time with up to nanoseconds precision, with a range of `[1900-01-01 00:00:00, 2299-12-31 23:59:59.99999999]`. It requires 8 bytes per value.
+* For cases where more precision is required, [`DateTime64`](/core/reference/data-types/datetime64) can be used. This allows storing time with up to nanoseconds precision, with a range of `[1900-01-01 00:00:00, 2299-12-31 23:59:59.99999999]`. It requires 8 bytes per value.
Let's create a table that stores various date types:
@@ -37,7 +37,7 @@ ENGINE = MergeTree
ORDER BY tuple();
```
-We can use the [`now()`](/reference/functions/regular-functions/date-time-functions#now) function to return the current time and [`now64()`](/reference/functions/regular-functions/date-time-functions#now64) to get it in a specified precision via the first argument.
+We can use the [`now()`](/core/reference/functions/regular-functions/date-time-functions#now) function to return the current time and [`now64()`](/core/reference/functions/regular-functions/date-time-functions#now64) to get it in a specified precision via the first argument.
```sql
INSERT INTO dates
@@ -67,7 +67,7 @@ very_precise_datetime: 2025-03-12 11:39:07.196724000
## Time and Time64 types {#time-series-time-types}
-For scenarios where you need to store time-of-day values without date components, ClickHouse provides the [`Time`](/reference/data-types/time) and [`Time64`](/reference/data-types/time64) types, which was introduced in version 25.6. These are useful for representing recurring schedules, daily patterns, or situations where separating date and time components makes sense.
+For scenarios where you need to store time-of-day values without date components, ClickHouse provides the [`Time`](/core/reference/data-types/time) and [`Time64`](/core/reference/data-types/time64) types, which was introduced in version 25.6. These are useful for representing recurring schedules, daily patterns, or situations where separating date and time components makes sense.
Using `Time` and `Time64` requires enabling the setting: `SET enable_time_time64_type = 1;`
@@ -190,7 +190,7 @@ As in the first row, `dt_1` and `dt64_1` are converted to `Europe/Berlin`, while
ClickHouse also comes with a set of functions that let us convert between the different data types.
-For example, we can use [`toDate`](/reference/functions/regular-functions/type-conversion-functions#toDate) to convert a `DateTime` value to the `Date` type:
+For example, we can use [`toDate`](/core/reference/functions/regular-functions/type-conversion-functions#toDate) to convert a `DateTime` value to the `Date` type:
```sql
SELECT
@@ -210,7 +210,7 @@ date_only: 2025-03-12
toTypeName(date_only): Date
```
-We can use [`toDateTime64`](/reference/functions/regular-functions/type-conversion-functions#toDateTime64) to convert `DateTime` to `DateTime64`:
+We can use [`toDateTime64`](/core/reference/functions/regular-functions/type-conversion-functions#toDateTime64) to convert `DateTime` to `DateTime64`:
```sql
SELECT
@@ -230,7 +230,7 @@ date_only: 2025-03-12 12:35:01.000
toTypeName(date_only): DateTime64(3)
```
-And we can use [`toDateTime`](/reference/functions/regular-functions/type-conversion-functions#toDateTime) to go from `Date` or `DateTime64` back to `DateTime`:
+And we can use [`toDateTime`](/core/reference/functions/regular-functions/type-conversion-functions#toDateTime) to go from `Date` or `DateTime64` back to `DateTime`:
```sql
SELECT
diff --git a/guides/real-time-analytics/time-series/index.mdx b/core/guides/use-cases/real-time-analytics/time-series/index.mdx
similarity index 68%
rename from guides/real-time-analytics/time-series/index.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/index.mdx
index 1c12bd9f..a07b357d 100644
--- a/guides/real-time-analytics/time-series/index.mdx
+++ b/core/guides/use-cases/real-time-analytics/time-series/index.mdx
@@ -14,10 +14,10 @@ ClickHouse excels at handling time-series data, offering powerful features for b
This guide walks you through everything you need to know about working with time-series data in ClickHouse, from basic concepts to advanced optimization techniques. You'll learn how to:
-* [Choose the right date and time data types for your use case](/guides/real-time-analytics/time-series/date-time-data-types)
-* [Perform common time-series operations and aggregations](/guides/real-time-analytics/time-series/basic-operations)
-* [Apply specialized analysis functions for time-based data](/guides/real-time-analytics/time-series/analysis-functions)
-* [Optimize storage efficiency for temporal data](/guides/real-time-analytics/time-series/storage-efficiency)
-* [Tune query performance for time-series workloads](/guides/real-time-analytics/time-series/query-performance)
+* [Choose the right date and time data types for your use case](/core/guides/use-cases/real-time-analytics/time-series/date-time-data-types)
+* [Perform common time-series operations and aggregations](/core/guides/use-cases/real-time-analytics/time-series/basic-operations)
+* [Apply specialized analysis functions for time-based data](/core/guides/use-cases/real-time-analytics/time-series/analysis-functions)
+* [Optimize storage efficiency for temporal data](/core/guides/use-cases/real-time-analytics/time-series/storage-efficiency)
+* [Tune query performance for time-series workloads](/core/guides/use-cases/real-time-analytics/time-series/query-performance)
Whether you're new to time-series analysis or looking to optimize an existing implementation, this guide will help you make the most of ClickHouse's time-series capabilities.
diff --git a/guides/real-time-analytics/time-series/materialized-view-rollup.mdx b/core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup.mdx
similarity index 99%
rename from guides/real-time-analytics/time-series/materialized-view-rollup.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup.mdx
index 42a1323c..87ebf58f 100644
--- a/guides/real-time-analytics/time-series/materialized-view-rollup.mdx
+++ b/core/guides/use-cases/real-time-analytics/time-series/materialized-view-rollup.mdx
@@ -6,7 +6,7 @@ keywords: ['materialized view', 'rollup', 'aggregate', 'timeseries', 'tutorial']
doc_type: 'guide'
---
-> This tutorial shows you how to maintain pre-aggregated roll-ups from a high-volume events table using [**materialized views**](/concepts/features/materialized-views).
+> This tutorial shows you how to maintain pre-aggregated roll-ups from a high-volume events table using [**materialized views**](/core/concepts/features/materialized-views).
You’ll create three objects: a raw table, a rollup table, and the materialized view that writes into the rollup automatically.
## When to use this pattern {#when-to-use}
diff --git a/guides/real-time-analytics/time-series/query-performance.mdx b/core/guides/use-cases/real-time-analytics/time-series/query-performance.mdx
similarity index 93%
rename from guides/real-time-analytics/time-series/query-performance.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/query-performance.mdx
index f3aa3f44..ebbaf1be 100644
--- a/guides/real-time-analytics/time-series/query-performance.mdx
+++ b/core/guides/use-cases/real-time-analytics/time-series/query-performance.mdx
@@ -167,9 +167,9 @@ GROUP BY path, month;
### Backfilling destination table {#time-series-backfill-destination-table}
-This destination table will only be populated when new records are inserted into the `wikistat` table, so we need to do some [backfilling](/guides/cloud-oss/data-modelling/backfilling).
+This destination table will only be populated when new records are inserted into the `wikistat` table, so we need to do some [backfilling](/core/guides/clickhouse/data-modelling/backfilling).
-The easiest way to do this is using an [`INSERT INTO SELECT`](/reference/statements/insert-into#inserting-the-results-of-select) statement to insert directly into the materialized view's target table [using](https://github.com/ClickHouse/examples/tree/main/ClickHouse_vs_ElasticSearch/DataAnalytics#variant-1---directly-inserting-into-the-target-table-by-using-the-materialized-views-transformation-query) the view's `SELECT` query (transformation):
+The easiest way to do this is using an [`INSERT INTO SELECT`](/core/reference/statements/insert-into#inserting-the-results-of-select) statement to insert directly into the materialized view's target table [using](https://github.com/ClickHouse/examples/tree/main/ClickHouse_vs_ElasticSearch/DataAnalytics#variant-1---directly-inserting-into-the-target-table-by-using-the-materialized-views-transformation-query) the view's `SELECT` query (transformation):
```sql
INSERT INTO wikistat_top
diff --git a/guides/real-time-analytics/time-series/storage-efficiency.mdx b/core/guides/use-cases/real-time-analytics/time-series/storage-efficiency.mdx
similarity index 100%
rename from guides/real-time-analytics/time-series/storage-efficiency.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/storage-efficiency.mdx
diff --git a/guides/real-time-analytics/time-series/time-series-filling-gaps.mdx b/core/guides/use-cases/real-time-analytics/time-series/time-series-filling-gaps.mdx
similarity index 99%
rename from guides/real-time-analytics/time-series/time-series-filling-gaps.mdx
rename to core/guides/use-cases/real-time-analytics/time-series/time-series-filling-gaps.mdx
index 66d8a0a2..e8743fa6 100644
--- a/guides/real-time-analytics/time-series/time-series-filling-gaps.mdx
+++ b/core/guides/use-cases/real-time-analytics/time-series/time-series-filling-gaps.mdx
@@ -1,5 +1,5 @@
---
-slug: /guides/developer/time-series-filling-gaps
+slug: /core/guides/developer/time-series-filling-gaps
sidebarTitle: 'Time series - gap fill'
description: 'Filling gaps in time-series data.'
keywords: ['time series', 'gap fill']
diff --git a/core/reference/README.md b/core/reference/README.md
new file mode 100644
index 00000000..c8e6636b
--- /dev/null
+++ b/core/reference/README.md
@@ -0,0 +1,22 @@
+# Reference
+
+**What goes here:** Lookup material. Exhaustive, factual documentation of
+ClickHouse's surface area — SQL statements, functions, operators, data types,
+table engines, formats, settings, system tables.
+
+**Audience:** Users who already know what they want to do and need the precise
+syntax, arguments, defaults, or behavior. Pages here are for skimming and
+cross-referencing, not reading start-to-finish.
+
+**Subdirectories:**
+- `statements/` — SQL statements (SELECT, ALTER, CREATE, etc.).
+- `functions/` — regular, aggregate, table, and window functions.
+- `operators/` — SQL operators.
+- `data-types/` — type reference.
+- `engines/` — table and database engines.
+- `formats/` — input/output format reference.
+- `settings/` — server, session, and MergeTree settings.
+- `system-tables/` — system table schemas.
+
+If a page explains *why* you'd use something or walks through *how* to use it,
+it belongs in `/concepts` or `/guides` respectively, not here.
\ No newline at end of file
diff --git a/reference/data-types/aggregatefunction.mdx b/core/reference/data-types/aggregatefunction.mdx
similarity index 78%
rename from reference/data-types/aggregatefunction.mdx
rename to core/reference/data-types/aggregatefunction.mdx
index 3ae93f94..64cdec67 100644
--- a/reference/data-types/aggregatefunction.mdx
+++ b/core/reference/data-types/aggregatefunction.mdx
@@ -10,17 +10,17 @@ doc_type: 'reference'
## Description {#description}
-All [Aggregate functions](/reference/functions/aggregate-functions) in ClickHouse have
+All [Aggregate functions](/core/reference/functions/aggregate-functions) in ClickHouse have
an implementation-specific intermediate state that can be serialized to an
`AggregateFunction` data type and stored in a table. This is usually done by
-means of a [materialized view](/reference/statements/create/view).
+means of a [materialized view](/core/reference/statements/create/view).
-There are two aggregate function [combinators](/reference/functions/aggregate-functions/combinators)
+There are two aggregate function [combinators](/core/reference/functions/aggregate-functions/combinators)
commonly used with the `AggregateFunction` type:
-- The [`-State`](/reference/functions/aggregate-functions/combinators#-state) aggregate function combinator, which when appended to an aggregate
+- The [`-State`](/core/reference/functions/aggregate-functions/combinators#-state) aggregate function combinator, which when appended to an aggregate
function name, produces `AggregateFunction` intermediate states.
-- The [`-Merge`](/reference/functions/aggregate-functions/combinators#-merge) aggregate
+- The [`-Merge`](/core/reference/functions/aggregate-functions/combinators#-merge) aggregate
function combinator, which is used to get the final result of an aggregation
from the intermediate states.
@@ -53,7 +53,7 @@ CREATE TABLE t
To insert data into a table with columns of type `AggregateFunction`, you can
use `INSERT SELECT` with aggregate functions and the
-[`-State`](/reference/functions/aggregate-functions/combinators#-state) aggregate
+[`-State`](/core/reference/functions/aggregate-functions/combinators#-state) aggregate
function combinator.
For example, to insert into columns of type `AggregateFunction(uniq, UInt64)` and
@@ -86,7 +86,7 @@ It supports the following formats:
When selecting data from `AggregatingMergeTree` table, use the `GROUP BY` clause
and the same aggregate functions as for when you inserted the data, but use the
-[`-Merge`](/reference/functions/aggregate-functions/combinators#-merge) combinator.
+[`-Merge`](/core/reference/functions/aggregate-functions/combinators#-merge) combinator.
An aggregate function with the `-Merge` combinator appended to it takes a set of
states, combines them, and returns the result of the complete data aggregation.
@@ -101,11 +101,11 @@ SELECT uniqMerge(state) FROM (SELECT uniqState(UserID) AS state FROM table GROUP
## Usage Example {#usage-example}
-See [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) engine description.
+See [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) engine description.
## Related Content {#related-content}
- Blog: [Using Aggregate Combinators in ClickHouse](https://clickhouse.com/blog/aggregate-functions-combinators-in-clickhouse-for-arrays-maps-and-states)
-- [MergeState](/reference/functions/aggregate-functions/combinators#-mergestate)
+- [MergeState](/core/reference/functions/aggregate-functions/combinators#-mergestate)
combinator.
-- [State](/reference/functions/aggregate-functions/combinators#-state) combinator.
+- [State](/core/reference/functions/aggregate-functions/combinators#-state) combinator.
diff --git a/reference/data-types/array.mdx b/core/reference/data-types/array.mdx
similarity index 89%
rename from reference/data-types/array.mdx
rename to core/reference/data-types/array.mdx
index 2b850f73..9f758241 100644
--- a/reference/data-types/array.mdx
+++ b/core/reference/data-types/array.mdx
@@ -46,7 +46,7 @@ SELECT [1, 2] AS x, toTypeName(x)
## Working with Data Types {#working-with-data-types}
-When creating an array on the fly, ClickHouse automatically defines the argument type as the narrowest data type that can store all the listed arguments. If there are any [Nullable](/reference/data-types/nullable) or literal [NULL](/reference/settings/formats#input_format_null_as_default) values, the type of an array element also becomes [Nullable](/reference/data-types/nullable).
+When creating an array on the fly, ClickHouse automatically defines the argument type as the narrowest data type that can store all the listed arguments. If there are any [Nullable](/core/reference/data-types/nullable) or literal [NULL](/core/reference/settings/formats#input_format_null_as_default) values, the type of an array element also becomes [Nullable](/core/reference/data-types/nullable).
If ClickHouse couldn't determine the data type, it generates an exception. For instance, this happens when trying to create an array with strings and numbers simultaneously (`SELECT array(1, 'a')`).
@@ -95,7 +95,7 @@ SELECT arr.size0, arr.size1, arr.size2 FROM t_arr;
## Reading nested subcolumns from Array {#reading-nested-subcolumns-from-array}
-If nested type `T` inside `Array` has subcolumns (for example, if it's a [named tuple](/reference/data-types/tuple)), you can read its subcolumns from an `Array(T)` type with the same subcolumn names. The type of a subcolumn will be `Array` of the type of original subcolumn.
+If nested type `T` inside `Array` has subcolumns (for example, if it's a [named tuple](/core/reference/data-types/tuple)), you can read its subcolumns from an `Array(T)` type with the same subcolumn names. The type of a subcolumn will be `Array` of the type of original subcolumn.
**Example**
diff --git a/reference/data-types/boolean.mdx b/core/reference/data-types/boolean.mdx
similarity index 100%
rename from reference/data-types/boolean.mdx
rename to core/reference/data-types/boolean.mdx
diff --git a/reference/data-types/data-types-binary-encoding.mdx b/core/reference/data-types/data-types-binary-encoding.mdx
similarity index 99%
rename from reference/data-types/data-types-binary-encoding.mdx
rename to core/reference/data-types/data-types-binary-encoding.mdx
index 41de2cda..8f3a2d4a 100644
--- a/reference/data-types/data-types-binary-encoding.mdx
+++ b/core/reference/data-types/data-types-binary-encoding.mdx
@@ -6,7 +6,7 @@ title: 'Data types binary encoding specification'
doc_type: 'reference'
---
-This specification describes the binary format that can be used for binary encoding and decoding of ClickHouse data types. This format is used in `Dynamic` column [binary serialization](/reference/data-types/dynamic#binary-output-format) and can be used in input/output formats [RowBinaryWithNamesAndTypes](/reference/formats/RowBinary/RowBinaryWithNamesAndTypes) and [Native](/reference/formats/Native) under corresponding settings.
+This specification describes the binary format that can be used for binary encoding and decoding of ClickHouse data types. This format is used in `Dynamic` column [binary serialization](/core/reference/data-types/dynamic#binary-output-format) and can be used in input/output formats [RowBinaryWithNamesAndTypes](/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes) and [Native](/core/reference/formats/Native) under corresponding settings.
The table below describes how each data type is represented in binary format. Each data type encoding consist of 1 byte that indicates the type and some optional additional information.
`var_uint` in the binary encoding means that the size is encoded using Variable-Length Quantity compression.
diff --git a/reference/data-types/date.mdx b/core/reference/data-types/date.mdx
similarity index 81%
rename from reference/data-types/date.mdx
rename to core/reference/data-types/date.mdx
index 813c3dc3..f83304c8 100644
--- a/reference/data-types/date.mdx
+++ b/core/reference/data-types/date.mdx
@@ -45,6 +45,6 @@ SELECT * FROM dt;
**See Also**
-- [Functions for working with dates and times](/reference/functions/regular-functions/date-time-functions)
-- [Operators for working with dates and times](/reference/operators#operators-for-working-with-dates-and-times)
-- [`DateTime` data type](/reference/data-types/datetime)
+- [Functions for working with dates and times](/core/reference/functions/regular-functions/date-time-functions)
+- [Operators for working with dates and times](/core/reference/operators#operators-for-working-with-dates-and-times)
+- [`DateTime` data type](/core/reference/data-types/datetime)
diff --git a/reference/data-types/date32.mdx b/core/reference/data-types/date32.mdx
similarity index 60%
rename from reference/data-types/date32.mdx
rename to core/reference/data-types/date32.mdx
index ef17ce52..e15dcf1a 100644
--- a/reference/data-types/date32.mdx
+++ b/core/reference/data-types/date32.mdx
@@ -7,7 +7,7 @@ title: 'Date32'
doc_type: 'reference'
---
-A date. Supports the date range same with [DateTime64](/reference/data-types/datetime64). Stored as a signed 32-bit integer in native byte order with the value representing the days since `1900-01-01`. **Important!** 0 represents `1970-01-01`, and negative values represent the days before `1970-01-01`.
+A date. Supports the date range same with [DateTime64](/core/reference/data-types/datetime64). Stored as a signed 32-bit integer in native byte order with the value representing the days since `1900-01-01`. **Important!** 0 represents `1970-01-01`, and negative values represent the days before `1970-01-01`.
**Examples**
@@ -42,6 +42,6 @@ SELECT * FROM dt32;
**See Also**
-- [toDate32](/reference/functions/regular-functions/type-conversion-functions#toDate32)
-- [toDate32OrZero](/reference/functions/regular-functions/type-conversion-functions#toDate32OrZero)
-- [toDate32OrNull](/reference/functions/regular-functions/type-conversion-functions#toDate32OrNull)
+- [toDate32](/core/reference/functions/regular-functions/type-conversion-functions#toDate32)
+- [toDate32OrZero](/core/reference/functions/regular-functions/type-conversion-functions#toDate32OrZero)
+- [toDate32OrNull](/core/reference/functions/regular-functions/type-conversion-functions#toDate32OrNull)
diff --git a/reference/data-types/datetime.mdx b/core/reference/data-types/datetime.mdx
similarity index 82%
rename from reference/data-types/datetime.mdx
rename to core/reference/data-types/datetime.mdx
index 81e14156..6791ceb7 100644
--- a/reference/data-types/datetime.mdx
+++ b/core/reference/data-types/datetime.mdx
@@ -33,13 +33,13 @@ Timezone agnostic Unix timestamp is stored in tables, and the timezone is used t
A list of supported time zones can be found in the [IANA Time Zone Database](https://www.iana.org/time-zones) and also can be queried by `SELECT * FROM system.time_zones`. [The list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) is also available at Wikipedia.
-You can explicitly set a time zone for `DateTime`-type columns when creating a table. Example: `DateTime('UTC')`. If the time zone isn't set, ClickHouse uses the value of the [timezone](/reference/settings/server-settings/settings#timezone) parameter in the server settings or the operating system settings at the moment of the ClickHouse server start.
+You can explicitly set a time zone for `DateTime`-type columns when creating a table. Example: `DateTime('UTC')`. If the time zone isn't set, ClickHouse uses the value of the [timezone](/core/reference/settings/server-settings/settings#timezone) parameter in the server settings or the operating system settings at the moment of the ClickHouse server start.
-The [clickhouse-client](/integrations/connectors/data-integrations/drivers-and-interfaces/client) applies the server time zone by default if a time zone isn't explicitly set when initializing the data type. To use the client time zone, run `clickhouse-client` with the `--use_client_time_zone` parameter.
+The [clickhouse-client](/core/concepts/features/interfaces/client) applies the server time zone by default if a time zone isn't explicitly set when initializing the data type. To use the client time zone, run `clickhouse-client` with the `--use_client_time_zone` parameter.
-ClickHouse outputs values depending on the value of the [date_time_output_format](/reference/settings/formats#date_time_output_format) setting. `YYYY-MM-DD hh:mm:ss` text format by default. Additionally, you can change the output with the [formatDateTime](/reference/functions/regular-functions/date-time-functions#formatDateTime) function.
+ClickHouse outputs values depending on the value of the [date_time_output_format](/core/reference/settings/formats#date_time_output_format) setting. `YYYY-MM-DD hh:mm:ss` text format by default. Additionally, you can change the output with the [formatDateTime](/core/reference/functions/regular-functions/date-time-functions#formatDateTime) function.
-When inserting data into ClickHouse, you can use different formats of date and time strings, depending on the value of the [date_time_input_format](/reference/settings/formats#date_time_input_format) setting.
+When inserting data into ClickHouse, you can use different formats of date and time strings, depending on the value of the [date_time_input_format](/core/reference/settings/formats#date_time_input_format) setting.
## Examples {#examples}
@@ -145,7 +145,7 @@ Time shifts for multiple days. Some pacific islands changed their timezone offse
ClickHouse's DateTime type with time zones can exhibit unexpected behavior during Daylight Saving Time (DST) transitions, particularly when:
-- [`date_time_output_format`](/reference/settings/formats#date_time_output_format) is set to `simple`.
+- [`date_time_output_format`](/core/reference/settings/formats#date_time_output_format) is set to `simple`.
- Clocks move backward ("Fall Back"), causing a one-hour overlap.
- Clocks move forward ("Spring Forward"), causing a one-hour gap.
@@ -184,12 +184,12 @@ In this case, ClickHouse shifts the non-existent time `2023-03-26 01:30:00` back
## See Also {#see-also}
-- [Type conversion functions](/reference/functions/regular-functions/type-conversion-functions)
-- [Functions for working with dates and times](/reference/functions/regular-functions/date-time-functions)
-- [Functions for working with arrays](/reference/functions/regular-functions/array-functions)
-- [The `date_time_input_format` setting](/reference/settings/formats#date_time_input_format)
-- [The `date_time_output_format` setting](/reference/settings/formats#date_time_output_format)
-- [The `timezone` server configuration parameter](/reference/settings/server-settings/settings#timezone)
-- [The `session_timezone` setting](/reference/settings/session-settings#session_timezone)
-- [Operators for working with dates and times](/reference/operators#operators-for-working-with-dates-and-times)
-- [The `Date` data type](/reference/data-types/date)
+- [Type conversion functions](/core/reference/functions/regular-functions/type-conversion-functions)
+- [Functions for working with dates and times](/core/reference/functions/regular-functions/date-time-functions)
+- [Functions for working with arrays](/core/reference/functions/regular-functions/array-functions)
+- [The `date_time_input_format` setting](/core/reference/settings/formats#date_time_input_format)
+- [The `date_time_output_format` setting](/core/reference/settings/formats#date_time_output_format)
+- [The `timezone` server configuration parameter](/core/reference/settings/server-settings/settings#timezone)
+- [The `session_timezone` setting](/core/reference/settings/session-settings#session_timezone)
+- [Operators for working with dates and times](/core/reference/operators#operators-for-working-with-dates-and-times)
+- [The `Date` data type](/core/reference/data-types/date)
diff --git a/reference/data-types/datetime64.mdx b/core/reference/data-types/datetime64.mdx
similarity index 85%
rename from reference/data-types/datetime64.mdx
rename to core/reference/data-types/datetime64.mdx
index c6d6809c..502625c3 100644
--- a/reference/data-types/datetime64.mdx
+++ b/core/reference/data-types/datetime64.mdx
@@ -18,7 +18,7 @@ Typically, are used - 3 (milliseconds), 6 (microseconds), 9 (nanoseconds).
DateTime64(precision, [timezone])
```
-Internally, stores data as a number of 'ticks' since epoch start (1970-01-01 00:00:00 UTC) as Int64. The tick resolution is determined by the precision parameter. Additionally, the `DateTime64` type can store time zone that is the same for the entire column, that affects how the values of the `DateTime64` type values are displayed in text format and how the values specified as strings are parsed ('2020-01-01 05:00:01.000'). The time zone is not stored in the rows of the table (or in resultset), but is stored in the column metadata. See details in [DateTime](/reference/data-types/datetime).
+Internally, stores data as a number of 'ticks' since epoch start (1970-01-01 00:00:00 UTC) as Int64. The tick resolution is determined by the precision parameter. Additionally, the `DateTime64` type can store time zone that is the same for the entire column, that affects how the values of the `DateTime64` type values are displayed in text format and how the values specified as strings are parsed ('2020-01-01 05:00:01.000'). The time zone is not stored in the rows of the table (or in resultset), but is stored in the column metadata. See details in [DateTime](/core/reference/data-types/datetime).
Supported range of values: \[1900-01-01 00:00:00, 2299-12-31 23:59:59.999999999\]
@@ -124,12 +124,12 @@ FROM dt64;
**See Also**
-- [Type conversion functions](/reference/functions/regular-functions/type-conversion-functions)
-- [Functions for working with dates and times](/reference/functions/regular-functions/date-time-functions)
-- [The `date_time_input_format` setting](/reference/settings/formats#date_time_input_format)
-- [The `date_time_output_format` setting](/reference/settings/formats#date_time_output_format)
-- [The `timezone` server configuration parameter](/reference/settings/server-settings/settings#timezone)
-- [The `session_timezone` setting](/reference/settings/session-settings#session_timezone)
-- [Operators for working with dates and times](/reference/operators#operators-for-working-with-dates-and-times)
-- [`Date` data type](/reference/data-types/date)
-- [`DateTime` data type](/reference/data-types/datetime)
+- [Type conversion functions](/core/reference/functions/regular-functions/type-conversion-functions)
+- [Functions for working with dates and times](/core/reference/functions/regular-functions/date-time-functions)
+- [The `date_time_input_format` setting](/core/reference/settings/formats#date_time_input_format)
+- [The `date_time_output_format` setting](/core/reference/settings/formats#date_time_output_format)
+- [The `timezone` server configuration parameter](/core/reference/settings/server-settings/settings#timezone)
+- [The `session_timezone` setting](/core/reference/settings/session-settings#session_timezone)
+- [Operators for working with dates and times](/core/reference/operators#operators-for-working-with-dates-and-times)
+- [`Date` data type](/core/reference/data-types/date)
+- [`DateTime` data type](/core/reference/data-types/datetime)
diff --git a/reference/data-types/decimal.mdx b/core/reference/data-types/decimal.mdx
similarity index 96%
rename from reference/data-types/decimal.mdx
rename to core/reference/data-types/decimal.mdx
index 5cf5002f..98ff8d69 100644
--- a/reference/data-types/decimal.mdx
+++ b/core/reference/data-types/decimal.mdx
@@ -118,5 +118,5 @@ DB::Exception: Can't compare.
```
**See also**
-- [isDecimalOverflow](/reference/functions/regular-functions/other-functions#isDecimalOverflow)
-- [countDigits](/reference/functions/regular-functions/other-functions#countDigits)
+- [isDecimalOverflow](/core/reference/functions/regular-functions/other-functions#isDecimalOverflow)
+- [countDigits](/core/reference/functions/regular-functions/other-functions#countDigits)
diff --git a/reference/data-types/domains/index.mdx b/core/reference/data-types/domains/index.mdx
similarity index 100%
rename from reference/data-types/domains/index.mdx
rename to core/reference/data-types/domains/index.mdx
diff --git a/reference/data-types/dynamic.mdx b/core/reference/data-types/dynamic.mdx
similarity index 100%
rename from reference/data-types/dynamic.mdx
rename to core/reference/data-types/dynamic.mdx
diff --git a/reference/data-types/enum.mdx b/core/reference/data-types/enum.mdx
similarity index 97%
rename from reference/data-types/enum.mdx
rename to core/reference/data-types/enum.mdx
index fdf1c420..8b7383ff 100644
--- a/reference/data-types/enum.mdx
+++ b/core/reference/data-types/enum.mdx
@@ -126,9 +126,9 @@ SELECT toTypeName(CAST('a', 'Enum(\'a\' = 1, \'b\' = 2)'))
Each of the values is assigned a number in the range `-128 ... 127` for `Enum8` or in the range `-32768 ... 32767` for `Enum16`. All the strings and numbers must be different. An empty string is allowed. If this type is specified (in a table definition), numbers can be in an arbitrary order. However, the order does not matter.
-Neither the string nor the numeric value in an `Enum` can be [NULL](/reference/syntax).
+Neither the string nor the numeric value in an `Enum` can be [NULL](/core/reference/syntax).
-An `Enum` can be contained in [Nullable](/reference/data-types/nullable) type. So if you create a table using the query
+An `Enum` can be contained in [Nullable](/core/reference/data-types/nullable) type. So if you create a table using the query
```sql
CREATE TABLE t_enum_nullable
diff --git a/reference/data-types/fixedstring.mdx b/core/reference/data-types/fixedstring.mdx
similarity index 88%
rename from reference/data-types/fixedstring.mdx
rename to core/reference/data-types/fixedstring.mdx
index 3bd1fd08..8e028d32 100644
--- a/reference/data-types/fixedstring.mdx
+++ b/core/reference/data-types/fixedstring.mdx
@@ -25,7 +25,7 @@ Examples of the values that can be efficiently stored in `FixedString`-typed col
- Currency codes (USD, RUB ... ).
- Binary representation of hashes (`FixedString(16)` for MD5, `FixedString(32)` for SHA256).
-To store UUID values, use the [UUID](/reference/data-types/uuid) data type.
+To store UUID values, use the [UUID](/core/reference/data-types/uuid) data type.
When inserting the data, ClickHouse:
@@ -56,7 +56,7 @@ FROM FixedStringTable;
└──────┴──────────────────┴──────────────┴─────────────┘
```
-Note that the length of the `FixedString(N)` value is constant. The [length](/reference/functions/regular-functions/array-functions#length) function returns `N` even if the `FixedString(N)` value is filled only with null bytes, but the [empty](/reference/functions/regular-functions/array-functions#empty) function returns `1` in this case.
+Note that the length of the `FixedString(N)` value is constant. The [length](/core/reference/functions/regular-functions/array-functions#length) function returns `N` even if the `FixedString(N)` value is filled only with null bytes, but the [empty](/core/reference/functions/regular-functions/array-functions#empty) function returns `1` in this case.
Selecting data with `WHERE` clause return various result depending on how the condition is specified:
diff --git a/reference/data-types/float.mdx b/core/reference/data-types/float.mdx
similarity index 91%
rename from reference/data-types/float.mdx
rename to core/reference/data-types/float.mdx
index 366d9dc5..aa9ba291 100644
--- a/reference/data-types/float.mdx
+++ b/core/reference/data-types/float.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
---
-If you need accurate calculations, in particular if you work with financial or business data requiring a high precision, you should consider using [Decimal](/reference/data-types/decimal) instead.
+If you need accurate calculations, in particular if you work with financial or business data requiring a high precision, you should consider using [Decimal](/core/reference/data-types/decimal) instead.
[Floating Point Numbers](https://en.wikipedia.org/wiki/IEEE_754) might lead to inaccurate results as illustrated below:
@@ -109,7 +109,7 @@ SELECT 0 / 0
└──────────────┘
```
-See the rules for `NaN` sorting in the section [ORDER BY clause](/reference/statements/select/order-by).
+See the rules for `NaN` sorting in the section [ORDER BY clause](/core/reference/statements/select/order-by).
## BFloat16 {#bfloat16}
@@ -117,7 +117,7 @@ See the rules for `NaN` sorting in the section [ORDER BY clause](/reference/stat
It is useful for machine learning and AI applications.
ClickHouse supports conversions between `Float32` and `BFloat16` which
-can be done using the [`toFloat32()`](/reference/functions/regular-functions/type-conversion-functions#toFloat32) or [`toBFloat16`](/reference/functions/regular-functions/type-conversion-functions#toBFloat16) functions.
+can be done using the [`toFloat32()`](/core/reference/functions/regular-functions/type-conversion-functions#toFloat32) or [`toBFloat16`](/core/reference/functions/regular-functions/type-conversion-functions#toBFloat16) functions.
Most other operations are not supported.
diff --git a/reference/data-types/geo.mdx b/core/reference/data-types/geo.mdx
similarity index 92%
rename from reference/data-types/geo.mdx
rename to core/reference/data-types/geo.mdx
index f99b5c30..73c1d7e4 100644
--- a/reference/data-types/geo.mdx
+++ b/core/reference/data-types/geo.mdx
@@ -14,7 +14,7 @@ ClickHouse supports data types for representing geographical objects — locatio
## Point {#point}
-`Point` is represented by its X and Y coordinates, stored as a [Tuple](/reference/data-types/tuple)([Float64](/reference/data-types/float), [Float64](/reference/data-types/float)).
+`Point` is represented by its X and Y coordinates, stored as a [Tuple](/core/reference/data-types/tuple)([Float64](/core/reference/data-types/float), [Float64](/core/reference/data-types/float)).
**Example**
@@ -32,7 +32,7 @@ SELECT p, toTypeName(p) FROM geo_point;
## Ring {#ring}
-`Ring` is a simple polygon without holes stored as an array of points: [Array](/reference/data-types/array)([Point](#point)).
+`Ring` is a simple polygon without holes stored as an array of points: [Array](/core/reference/data-types/array)([Point](#point)).
**Example**
@@ -50,7 +50,7 @@ SELECT r, toTypeName(r) FROM geo_ring;
## LineString {#linestring}
-`LineString` is a line stored as an array of points: [Array](/reference/data-types/array)([Point](#point)).
+`LineString` is a line stored as an array of points: [Array](/core/reference/data-types/array)([Point](#point)).
**Example**
@@ -68,7 +68,7 @@ SELECT l, toTypeName(l) FROM geo_linestring;
## MultiLineString {#multilinestring}
-`MultiLineString` is multiple lines stored as an array of `LineString`: [Array](/reference/data-types/array)([LineString](#linestring)).
+`MultiLineString` is multiple lines stored as an array of `LineString`: [Array](/core/reference/data-types/array)([LineString](#linestring)).
**Example**
@@ -86,7 +86,7 @@ SELECT l, toTypeName(l) FROM geo_multilinestring;
## Polygon {#polygon}
-`Polygon` is a polygon with holes stored as an array of rings: [Array](/reference/data-types/array)([Ring](#ring)). First element of outer array is the outer shape of polygon and all the following elements are holes.
+`Polygon` is a polygon with holes stored as an array of rings: [Array](/core/reference/data-types/array)([Ring](#ring)). First element of outer array is the outer shape of polygon and all the following elements are holes.
**Example**
@@ -106,7 +106,7 @@ SELECT pg, toTypeName(pg) FROM geo_polygon;
## MultiPolygon {#multipolygon}
-`MultiPolygon` consists of multiple polygons and is stored as an array of polygons: [Array](/reference/data-types/array)([Polygon](#polygon)).
+`MultiPolygon` consists of multiple polygons and is stored as an array of polygons: [Array](/core/reference/data-types/array)([Polygon](#polygon)).
**Example**
diff --git a/reference/data-types/index.mdx b/core/reference/data-types/index.mdx
similarity index 62%
rename from reference/data-types/index.mdx
rename to core/reference/data-types/index.mdx
index c8425125..0243b1da 100644
--- a/reference/data-types/index.mdx
+++ b/core/reference/data-types/index.mdx
@@ -6,8 +6,8 @@ title: 'Data Types in ClickHouse'
doc_type: 'reference'
---
-This section describes the data types supported by ClickHouse, for example [integers](/reference/data-types/int-uint), [floats](/reference/data-types/float) and [strings](/reference/data-types/string).
+This section describes the data types supported by ClickHouse, for example [integers](/core/reference/data-types/int-uint), [floats](/core/reference/data-types/float) and [strings](/core/reference/data-types/string).
-System table [system.data_type_families](/reference/system-tables/data_type_families) provides an
+System table [system.data_type_families](/core/reference/system-tables/data_type_families) provides an
overview of all available data types.
It also shows whether a data type is an alias to another data type and its name is case-sensitive (e.g. `bool` vs. `BOOL`).
diff --git a/reference/data-types/int-uint.mdx b/core/reference/data-types/int-uint.mdx
similarity index 100%
rename from reference/data-types/int-uint.mdx
rename to core/reference/data-types/int-uint.mdx
diff --git a/reference/data-types/ipv4.mdx b/core/reference/data-types/ipv4.mdx
similarity index 95%
rename from reference/data-types/ipv4.mdx
rename to core/reference/data-types/ipv4.mdx
index bd9e354c..a5b7ae20 100644
--- a/reference/data-types/ipv4.mdx
+++ b/core/reference/data-types/ipv4.mdx
@@ -73,4 +73,4 @@ SELECT toIPv4('127.0.0.1') = toIPv6('::ffff:127.0.0.1');
**See Also**
-- [Functions for Working with IPv4 and IPv6 Addresses](/reference/functions/regular-functions/ip-address-functions)
+- [Functions for Working with IPv4 and IPv6 Addresses](/core/reference/functions/regular-functions/ip-address-functions)
diff --git a/reference/data-types/ipv6.mdx b/core/reference/data-types/ipv6.mdx
similarity index 96%
rename from reference/data-types/ipv6.mdx
rename to core/reference/data-types/ipv6.mdx
index 086a5037..cb853acf 100644
--- a/reference/data-types/ipv6.mdx
+++ b/core/reference/data-types/ipv6.mdx
@@ -74,4 +74,4 @@ SELECT toIPv4('127.0.0.1') = toIPv6('::ffff:127.0.0.1');
**See Also**
-- [Functions for Working with IPv4 and IPv6 Addresses](/reference/functions/regular-functions/ip-address-functions)
+- [Functions for Working with IPv4 and IPv6 Addresses](/core/reference/functions/regular-functions/ip-address-functions)
diff --git a/reference/data-types/lowcardinality.mdx b/core/reference/data-types/lowcardinality.mdx
similarity index 54%
rename from reference/data-types/lowcardinality.mdx
rename to core/reference/data-types/lowcardinality.mdx
index 7cf6c3a7..b190d4b2 100644
--- a/reference/data-types/lowcardinality.mdx
+++ b/core/reference/data-types/lowcardinality.mdx
@@ -16,15 +16,15 @@ LowCardinality(data_type)
**Parameters**
-- `data_type` — [String](/reference/data-types/string), [FixedString](/reference/data-types/fixedstring), [Date](/reference/data-types/date), [DateTime](/reference/data-types/datetime), and numbers excepting [Decimal](/reference/data-types/decimal). `LowCardinality` is not efficient for some data types, see the [allow_suspicious_low_cardinality_types](/reference/settings/session-settings#allow_suspicious_low_cardinality_types) setting description.
+- `data_type` — [String](/core/reference/data-types/string), [FixedString](/core/reference/data-types/fixedstring), [Date](/core/reference/data-types/date), [DateTime](/core/reference/data-types/datetime), and numbers excepting [Decimal](/core/reference/data-types/decimal). `LowCardinality` is not efficient for some data types, see the [allow_suspicious_low_cardinality_types](/core/reference/settings/session-settings#allow_suspicious_low_cardinality_types) setting description.
## Description {#description}
-`LowCardinality` is a superstructure that changes a data storage method and rules of data processing. ClickHouse applies [dictionary coding](https://en.wikipedia.org/wiki/Dictionary_coder) to `LowCardinality`-columns. Operating with dictionary encoded data significantly increases performance of [SELECT](/reference/statements/select) queries for many applications.
+`LowCardinality` is a superstructure that changes a data storage method and rules of data processing. ClickHouse applies [dictionary coding](https://en.wikipedia.org/wiki/Dictionary_coder) to `LowCardinality`-columns. Operating with dictionary encoded data significantly increases performance of [SELECT](/core/reference/statements/select) queries for many applications.
The efficiency of using `LowCardinality` data type depends on data diversity. If a dictionary contains less than 10,000 distinct values, then ClickHouse mostly shows higher efficiency of data reading and storing. If a dictionary contains more than 100,000 distinct values, then ClickHouse can perform worse in comparison with using ordinary data types.
-Consider using `LowCardinality` instead of [Enum](/reference/data-types/enum) when working with strings. `LowCardinality` provides more flexibility in use and often reveals the same or higher efficiency.
+Consider using `LowCardinality` instead of [Enum](/core/reference/data-types/enum) when working with strings. `LowCardinality` provides more flexibility in use and often reveals the same or higher efficiency.
## Example {#example}
@@ -44,15 +44,15 @@ ORDER BY id
Settings:
-- [low_cardinality_max_dictionary_size](/reference/settings/session-settings#low_cardinality_max_dictionary_size)
-- [low_cardinality_use_single_dictionary_for_part](/reference/settings/session-settings#low_cardinality_use_single_dictionary_for_part)
-- [low_cardinality_allow_in_native_format](/reference/settings/session-settings#low_cardinality_allow_in_native_format)
-- [allow_suspicious_low_cardinality_types](/reference/settings/session-settings#allow_suspicious_low_cardinality_types)
-- [output_format_arrow_low_cardinality_as_dictionary](/reference/settings/formats#output_format_arrow_low_cardinality_as_dictionary)
+- [low_cardinality_max_dictionary_size](/core/reference/settings/session-settings#low_cardinality_max_dictionary_size)
+- [low_cardinality_use_single_dictionary_for_part](/core/reference/settings/session-settings#low_cardinality_use_single_dictionary_for_part)
+- [low_cardinality_allow_in_native_format](/core/reference/settings/session-settings#low_cardinality_allow_in_native_format)
+- [allow_suspicious_low_cardinality_types](/core/reference/settings/session-settings#allow_suspicious_low_cardinality_types)
+- [output_format_arrow_low_cardinality_as_dictionary](/core/reference/settings/formats#output_format_arrow_low_cardinality_as_dictionary)
Functions:
-- [toLowCardinality](/reference/functions/regular-functions/type-conversion-functions#toLowCardinality)
+- [toLowCardinality](/core/reference/functions/regular-functions/type-conversion-functions#toLowCardinality)
## Related content {#related-content}
diff --git a/reference/data-types/map.mdx b/core/reference/data-types/map.mdx
similarity index 92%
rename from reference/data-types/map.mdx
rename to core/reference/data-types/map.mdx
index 9a79f8f2..a2e89db7 100644
--- a/reference/data-types/map.mdx
+++ b/core/reference/data-types/map.mdx
@@ -16,7 +16,7 @@ Also, `m[k]` scans the map, i.e. the runtime of the operation is linear in the s
**Parameters**
-- `K` — The type of the Map keys. Arbitrary type except [Nullable](/reference/data-types/nullable) and [LowCardinality](/reference/data-types/lowcardinality) nested with [Nullable](/reference/data-types/nullable) types.
+- `K` — The type of the Map keys. Arbitrary type except [Nullable](/core/reference/data-types/nullable) and [LowCardinality](/core/reference/data-types/lowcardinality) nested with [Nullable](/core/reference/data-types/nullable) types.
- `V` — The type of the Map values. Arbitrary type.
**Examples**
@@ -43,7 +43,7 @@ SELECT m['key2'] FROM tab;
```
If the requested key `k` is not contained in the map, `m[k]` returns the value type's default value, e.g. `0` for integer types and `''` for string types.
-To check whether a key exists in a map, you can use function [mapContains](/reference/functions/regular-functions/tuple-map-functions#mapContainsKey).
+To check whether a key exists in a map, you can use function [mapContains](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsKey).
```sql title="Query"
CREATE TABLE tab (m Map(String, UInt64)) ENGINE=Memory;
@@ -60,7 +60,7 @@ SELECT m['key1'] FROM tab;
## Converting Tuple to Map {#converting-tuple-to-map}
-Values of type `Tuple()` can be cast to values of type `Map()` using function [CAST](/reference/functions/regular-functions/type-conversion-functions#CAST):
+Values of type `Tuple()` can be cast to values of type `Map()` using function [CAST](/core/reference/functions/regular-functions/type-conversion-functions#CAST):
**Example**
@@ -188,7 +188,7 @@ If bucketed `Map` serialization does not fit your use case, there are two altern
#### Using the JSON Data Type {#using-the-json-data-type}
-The [JSON](/reference/data-types/newjson) data type stores each frequent path as a separate dynamic subcolumn. Paths that exceed the `max_dynamic_paths` limit go into a [shared data structure](/reference/data-types/newjson#shared-data-structure), which can use `advanced` serialization for optimized single-path reads. See the [blog post](https://clickhouse.com/blog/json-data-type-gets-even-better) for a detailed overview of the `advanced` serialization.
+The [JSON](/core/reference/data-types/newjson) data type stores each frequent path as a separate dynamic subcolumn. Paths that exceed the `max_dynamic_paths` limit go into a [shared data structure](/core/reference/data-types/newjson#shared-data-structure), which can use `advanced` serialization for optimized single-path reads. See the [blog post](https://clickhouse.com/blog/json-data-type-gets-even-better) for a detailed overview of the `advanced` serialization.
| Aspect | `Map` with buckets | `JSON` |
|--------------------|------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|
@@ -229,9 +229,9 @@ Manual sharding is beneficial when vertical merges are important for reducing me
**See Also**
-- [map()](/reference/functions/regular-functions/tuple-map-functions#map) function
-- [CAST()](/reference/functions/regular-functions/type-conversion-functions#CAST) function
-- [-Map combinator for Map datatype](/reference/functions/aggregate-functions/combinators#-map)
+- [map()](/core/reference/functions/regular-functions/tuple-map-functions#map) function
+- [CAST()](/core/reference/functions/regular-functions/type-conversion-functions#CAST) function
+- [-Map combinator for Map datatype](/core/reference/functions/aggregate-functions/combinators#-map)
## Related content {#related-content}
diff --git a/reference/data-types/nested-data-structures/index.mdx b/core/reference/data-types/nested-data-structures/index.mdx
similarity index 94%
rename from reference/data-types/nested-data-structures/index.mdx
rename to core/reference/data-types/nested-data-structures/index.mdx
index 9ae933b8..b257fa1c 100644
--- a/reference/data-types/nested-data-structures/index.mdx
+++ b/core/reference/data-types/nested-data-structures/index.mdx
@@ -8,7 +8,7 @@ doc_type: 'guide'
## Nested(name1 Type1, Name2 Type2, ...) {#nestedname1-type1-name2-type2-}
-A nested data structure is like a table inside a cell. The parameters of a nested data structure – the column names and types – are specified the same way as in a [CREATE TABLE](/reference/statements/create/table) query. Each table row can correspond to any number of rows in a nested data structure.
+A nested data structure is like a table inside a cell. The parameters of a nested data structure – the column names and types – are specified the same way as in a [CREATE TABLE](/core/reference/statements/create/table) query. Each table row can correspond to any number of rows in a nested data structure.
**Avoid using dots in column names**
@@ -46,7 +46,7 @@ CREATE TABLE test.visits
This example declares the `Goals` nested data structure, which contains data about conversions (goals reached). Each row in the 'visits' table can correspond to zero or any number of conversions.
-When [flatten_nested](/reference/settings/session-settings#flatten_nested) is set to `0` (which is not by default), arbitrary levels of nesting are supported.
+When [flatten_nested](/core/reference/settings/session-settings#flatten_nested) is set to `0` (which is not by default), arbitrary levels of nesting are supported.
In most cases, when working with a nested data structure, its columns are specified with column names separated by a dot. These columns make up an array of matching types. All the column arrays of a single nested data structure have the same length.
diff --git a/reference/data-types/newjson.mdx b/core/reference/data-types/newjson.mdx
similarity index 92%
rename from reference/data-types/newjson.mdx
rename to core/reference/data-types/newjson.mdx
index bddd0e78..530aa271 100644
--- a/reference/data-types/newjson.mdx
+++ b/core/reference/data-types/newjson.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
import WhenToUseJson from '/snippets/_when-to-use-json.mdx';
-
+
Check out our JSON best practice guide for examples, advanced features and considerations for using the JSON type.
@@ -152,7 +152,7 @@ and **not**:
The `JSON` type supports reading every path as a separate sub-column.
If the type of the requested path is not specified in the JSON type declaration,
-then the sub column of the path will always have type [Dynamic](/reference/data-types/dynamic).
+then the sub column of the path will always have type [Dynamic](/core/reference/data-types/dynamic).
For example:
@@ -276,7 +276,7 @@ while executing 'FUNCTION CAST(__table1.json.a.g :: 2, 'UUID'_String :: 1) -> CA
```
-To read subcolumns efficiently from Compact MergeTree parts make sure MergeTree setting [write_marks_for_substreams_in_compact_parts](/reference/settings/merge-tree-settings#write_marks_for_substreams_in_compact_parts) is enabled.
+To read subcolumns efficiently from Compact MergeTree parts make sure MergeTree setting [write_marks_for_substreams_in_compact_parts](/core/reference/settings/merge-tree-settings#write_marks_for_substreams_in_compact_parts) is enabled.
## Reading JSON sub-objects as sub-columns {#reading-json-sub-objects-as-sub-columns}
@@ -369,19 +369,19 @@ When paths are stored in basic (`map`) [shared data](#shared-data-structure), re
## Type inference for paths {#type-inference-for-paths}
During parsing of `JSON`, ClickHouse tries to detect the most appropriate data type for each JSON path.
-It works similarly to [automatic schema inference from input data](/integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference),
+It works similarly to [automatic schema inference from input data](/core/concepts/features/interfaces/schema-inference),
and is controlled by the same settings:
-- [input_format_try_infer_dates](/reference/settings/formats#input_format_try_infer_dates)
-- [input_format_try_infer_datetimes](/reference/settings/formats#input_format_try_infer_datetimes)
-- [schema_inference_make_columns_nullable](/reference/settings/formats#schema_inference_make_columns_nullable)
-- [input_format_json_try_infer_numbers_from_strings](/reference/settings/formats#input_format_json_try_infer_numbers_from_strings)
-- [input_format_json_infer_incomplete_types_as_strings](/reference/settings/formats#input_format_json_infer_incomplete_types_as_strings)
-- [input_format_json_read_numbers_as_strings](/reference/settings/formats#input_format_json_read_numbers_as_strings)
-- [input_format_json_read_bools_as_strings](/reference/settings/formats#input_format_json_read_bools_as_strings)
-- [input_format_json_read_bools_as_numbers](/reference/settings/formats#input_format_json_read_bools_as_numbers)
-- [input_format_json_read_arrays_as_strings](/reference/settings/formats#input_format_json_read_arrays_as_strings)
-- [input_format_json_infer_array_of_dynamic_from_array_of_different_types](/reference/settings/formats#input_format_json_infer_array_of_dynamic_from_array_of_different_types)
+- [input_format_try_infer_dates](/core/reference/settings/formats#input_format_try_infer_dates)
+- [input_format_try_infer_datetimes](/core/reference/settings/formats#input_format_try_infer_datetimes)
+- [schema_inference_make_columns_nullable](/core/reference/settings/formats#schema_inference_make_columns_nullable)
+- [input_format_json_try_infer_numbers_from_strings](/core/reference/settings/formats#input_format_json_try_infer_numbers_from_strings)
+- [input_format_json_infer_incomplete_types_as_strings](/core/reference/settings/formats#input_format_json_infer_incomplete_types_as_strings)
+- [input_format_json_read_numbers_as_strings](/core/reference/settings/formats#input_format_json_read_numbers_as_strings)
+- [input_format_json_read_bools_as_strings](/core/reference/settings/formats#input_format_json_read_bools_as_strings)
+- [input_format_json_read_bools_as_numbers](/core/reference/settings/formats#input_format_json_read_bools_as_numbers)
+- [input_format_json_read_arrays_as_strings](/core/reference/settings/formats#input_format_json_read_arrays_as_strings)
+- [input_format_json_infer_array_of_dynamic_from_array_of_different_types](/core/reference/settings/formats#input_format_json_infer_array_of_dynamic_from_array_of_different_types)
Let's take a look at some examples:
@@ -585,7 +585,7 @@ Code: 117. DB::Exception: Cannot insert data into JSON column: Duplicate path fo
```
If you want to keep keys with dots and avoid formatting them as nested objects, you can enable
-setting [json_type_escape_dots_in_keys](/reference/settings/formats#json_type_escape_dots_in_keys) (available starting from version `25.8`). In this case during parsing all dots in JSON keys will be
+setting [json_type_escape_dots_in_keys](/core/reference/settings/formats#json_type_escape_dots_in_keys) (available starting from version `25.8`). In this case during parsing all dots in JSON keys will be
escaped into `%2E` and unescaped back during formatting.
```sql title="Query"
@@ -663,11 +663,11 @@ SELECT '{"a.b" : 42, "a" : {"b" : "Hello World!"}}'::JSON(SKIP `a%2Eb`) as json,
## Reading JSON type from data {#reading-json-type-from-data}
All text formats
-([`JSONEachRow`](/reference/formats/JSON/JSONEachRow),
-[`TSV`](/reference/formats/TabSeparated/TabSeparated),
-[`CSV`](/reference/formats/CSV/CSV),
-[`CustomSeparated`](/reference/formats/CustomSeparated/CustomSeparated),
-[`Values`](/reference/formats/Values), etc.) support reading the `JSON` type.
+([`JSONEachRow`](/core/reference/formats/JSON/JSONEachRow),
+[`TSV`](/core/reference/formats/TabSeparated/TabSeparated),
+[`CSV`](/core/reference/formats/CSV/CSV),
+[`CustomSeparated`](/core/reference/formats/CustomSeparated/CustomSeparated),
+[`Values`](/core/reference/formats/Values), etc.) support reading the `JSON` type.
Examples:
@@ -822,7 +822,7 @@ As we can see, ClickHouse kept the most frequent paths `a`, `b` and `c` and move
As was described in the previous section, when the `max_dynamic_paths` limit is reached all new paths are stored in a single shared data structure.
In this section we will look into the details of the shared data structure and how we read paths sub-columns from it.
-See section ["introspection functions"](/reference/data-types/newjson#introspection-functions) for details of functions used for inspecting the contents of a JSON column.
+See section ["introspection functions"](/core/reference/data-types/newjson#introspection-functions) for details of functions used for inspecting the contents of a JSON column.
### Shared data structure in memory {#shared-data-structure-in-memory}
@@ -831,17 +831,17 @@ To extract a path subcolumn from it, we just iterate over all rows in this `Map`
### Shared data structure in MergeTree parts {#shared-data-structure-in-merge-tree-parts}
-In [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables we store data in data parts that stores everything on disk (local or remote). And data on disk can be stored in a different way compared to memory.
+In [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables we store data in data parts that stores everything on disk (local or remote). And data on disk can be stored in a different way compared to memory.
Currently, there are 3 different shared data structure serializations in MergeTree data parts: `map`, `map_with_buckets`
and `advanced`.
The serialization version is controlled by MergeTree
-settings [object_shared_data_serialization_version](/reference/settings/merge-tree-settings#object_shared_data_serialization_version)
-and [object_shared_data_serialization_version_for_zero_level_parts](/reference/settings/merge-tree-settings#object_shared_data_serialization_version_for_zero_level_parts)
+settings [object_shared_data_serialization_version](/core/reference/settings/merge-tree-settings#object_shared_data_serialization_version)
+and [object_shared_data_serialization_version_for_zero_level_parts](/core/reference/settings/merge-tree-settings#object_shared_data_serialization_version_for_zero_level_parts)
(zero level part is the part created during inserting data into the table, during merges parts have higher level).
Note: changing shared data structure serialization is supported only
-for `v3` [object serialization version](/reference/settings/merge-tree-settings#object_serialization_version)
+for `v3` [object serialization version](/core/reference/settings/merge-tree-settings#object_serialization_version)
#### Map {#shared-data-map}
@@ -860,8 +860,8 @@ reads the whole `Map` column from a single bucket and extracts the requested pat
This serialization is less efficient for writing data and reading the whole `JSON` column, but it's more efficient for reading paths sub-columns
because it reads data only from required buckets.
-Number of buckets `N` is controlled by MergeTree settings [object_shared_data_buckets_for_compact_part](/reference/settings/merge-tree-settings#object_shared_data_buckets_for_compact_part) (8 by default)
-and [object_shared_data_buckets_for_wide_part](/reference/settings/merge-tree-settings#object_shared_data_buckets_for_wide_part) (32 by default).
+Number of buckets `N` is controlled by MergeTree settings [object_shared_data_buckets_for_compact_part](/core/reference/settings/merge-tree-settings#object_shared_data_buckets_for_compact_part) (8 by default)
+and [object_shared_data_buckets_for_wide_part](/core/reference/settings/merge-tree-settings#object_shared_data_buckets_for_wide_part) (32 by default).
The maximum allowed value for both settings is 256.
#### Advanced {#shared-data-advanced}
@@ -892,15 +892,15 @@ Note: limit on dynamic paths cannot exceed the value specified in `max_dynamic_p
## Introspection functions {#introspection-functions}
There are several functions that can help to inspect the content of the JSON column:
-- [`JSONAllPaths`](/reference/functions/regular-functions/json-functions#JSONAllPaths)
-- [`JSONAllPathsWithTypes`](/reference/functions/regular-functions/json-functions#JSONAllPathsWithTypes)
-- [`JSONAllValues`](/reference/functions/regular-functions/json-functions#JSONAllValues)
-- [`JSONDynamicPaths`](/reference/functions/regular-functions/json-functions#JSONDynamicPaths)
-- [`JSONDynamicPathsWithTypes`](/reference/functions/regular-functions/json-functions#JSONDynamicPathsWithTypes)
-- [`JSONSharedDataPaths`](/reference/functions/regular-functions/json-functions#JSONSharedDataPaths)
-- [`JSONSharedDataPathsWithTypes`](/reference/functions/regular-functions/json-functions#JSONSharedDataPathsWithTypes)
-- [`distinctDynamicTypes`](/reference/functions/aggregate-functions/reference/distinctDynamicTypes)
-- [`distinctJSONPaths and distinctJSONPathsAndTypes`](/reference/functions/aggregate-functions/reference/distinctJSONPaths)
+- [`JSONAllPaths`](/core/reference/functions/regular-functions/json-functions#JSONAllPaths)
+- [`JSONAllPathsWithTypes`](/core/reference/functions/regular-functions/json-functions#JSONAllPathsWithTypes)
+- [`JSONAllValues`](/core/reference/functions/regular-functions/json-functions#JSONAllValues)
+- [`JSONDynamicPaths`](/core/reference/functions/regular-functions/json-functions#JSONDynamicPaths)
+- [`JSONDynamicPathsWithTypes`](/core/reference/functions/regular-functions/json-functions#JSONDynamicPathsWithTypes)
+- [`JSONSharedDataPaths`](/core/reference/functions/regular-functions/json-functions#JSONSharedDataPaths)
+- [`JSONSharedDataPathsWithTypes`](/core/reference/functions/regular-functions/json-functions#JSONSharedDataPathsWithTypes)
+- [`distinctDynamicTypes`](/core/reference/functions/aggregate-functions/reference/distinctDynamicTypes)
+- [`distinctJSONPaths and distinctJSONPathsAndTypes`](/core/reference/functions/aggregate-functions/reference/distinctJSONPaths)
**Examples**
@@ -1154,20 +1154,20 @@ SELECT json1, json2, json1 < json2, json1 = json2, json1 > json2 FROM test;
└────────────┴─────────────────────┴────────────────────┴──────────────────────┴───────────────────────┘
```
-**Note:** when 2 paths contain values of different data types, they are compared according to [comparison rule](/reference/data-types/variant#comparing-values-of-variant-data) of `Variant` data type.
+**Note:** when 2 paths contain values of different data types, they are compared according to [comparison rule](/core/reference/data-types/variant#comparing-values-of-variant-data) of `Variant` data type.
## Data skipping indexes for JSON {#data-skipping-indexes-for-json}
-[Data skipping indexes](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) can be used with `JSON` columns in three ways:
+[Data skipping indexes](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) can be used with `JSON` columns in three ways:
1. **Indexes on specific subcolumns** — create a standard skip index on a known JSON path, just like on a regular column. This indexes the *values* at that path.
2. **Path-based indexes with `JSONAllPaths`** — index the *set of paths* present in each granule to skip granules that cannot contain the queried path.
-3. **Value-based indexes with `JSONAllValues`** — index *all values* across all JSON paths using a [text index](/reference/engines/table-engines/mergetree-family/textindexes) to accelerate full-text search on any JSON subcolumn with a single index.
+3. **Value-based indexes with `JSONAllValues`** — index *all values* across all JSON paths using a [text index](/core/reference/engines/table-engines/mergetree-family/textindexes) to accelerate full-text search on any JSON subcolumn with a single index.
### Indexes on specific subcolumns {#json-indexes-on-subcolumns}
You can create a skip index on any JSON subcolumn using the same syntax as for regular columns.
-Any [supported index type](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) works (`minmax`, `set`, `bloom_filter`, `tokenbf_v1`, `ngrambf_v1`, etc.).
+Any [supported index type](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) works (`minmax`, `set`, `bloom_filter`, `tokenbf_v1`, `ngrambf_v1`, etc.).
There are two ways to reference a JSON subcolumn in an index expression:
@@ -1227,16 +1227,16 @@ EXPLAIN indexes = 1 SELECT * FROM sensor_data WHERE data.location::String = 'roo
### Path-based indexes with JSONAllPaths {#json-indexes-jsonallpaths}
-[Data skipping indexes](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) can also be created on `JSON` columns using the [`JSONAllPaths`](/reference/functions/regular-functions/json-functions#JSONAllPaths) function.
-This works similarly to creating skip indexes on [`Map`](/reference/data-types/map) columns via `mapKeys` — the index stores the set of JSON paths present in each granule and uses it to skip granules that cannot contain the queried path.
+[Data skipping indexes](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) can also be created on `JSON` columns using the [`JSONAllPaths`](/core/reference/functions/regular-functions/json-functions#JSONAllPaths) function.
+This works similarly to creating skip indexes on [`Map`](/core/reference/data-types/map) columns via `mapKeys` — the index stores the set of JSON paths present in each granule and uses it to skip granules that cannot contain the queried path.
#### Supported index types {#json-indexes-jsonallpaths-supported-types}
`JSONAllPaths` can be used with the following skip index types:
-- [`bloom_filter`](/reference/engines/table-engines/mergetree-family/mergetree#bloom-filter) — supports `equals`, `in`, and `IS NOT NULL`.
-- [`tokenbf_v1`](/reference/engines/table-engines/mergetree-family/mergetree#token-bloom-filter) — supports `equals` and `IS NOT NULL`.
-- [`ngrambf_v1`](/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) — supports `equals` and `IS NOT NULL`.
-- [`text`](/reference/engines/table-engines/mergetree-family/textindexes) (inverted index) — supports `equals`, `in` and `IS NOT NULL`.
+- [`bloom_filter`](/core/reference/engines/table-engines/mergetree-family/mergetree#bloom-filter) — supports `equals`, `in`, and `IS NOT NULL`.
+- [`tokenbf_v1`](/core/reference/engines/table-engines/mergetree-family/mergetree#token-bloom-filter) — supports `equals` and `IS NOT NULL`.
+- [`ngrambf_v1`](/core/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) — supports `equals` and `IS NOT NULL`.
+- [`text`](/core/reference/engines/table-engines/mergetree-family/textindexes) (inverted index) — supports `equals`, `in` and `IS NOT NULL`.
#### Example {#json-indexes-jsonallpaths-example}
@@ -1315,11 +1315,11 @@ When a JSON path is absent from a granule, the subcolumn evaluates to:
### Full-text search with JSONAllValues {#json-indexes-jsonallvalues}
-[Text indexes](/reference/engines/table-engines/mergetree-family/textindexes) can be used to accelerate full-text search on JSON columns via the [`JSONAllValues`](/reference/functions/regular-functions/json-functions#JSONAllValues) function.
+[Text indexes](/core/reference/engines/table-engines/mergetree-family/textindexes) can be used to accelerate full-text search on JSON columns via the [`JSONAllValues`](/core/reference/functions/regular-functions/json-functions#JSONAllValues) function.
`JSONAllValues` returns all values from a JSON column as `Array(String)`, which can be indexed by a text index.
A single index on `JSONAllValues(json_column)` covers all JSON paths, enabling full-text search on any subcolumn without creating separate indexes for each path.
-See [Value-based indexes with JSONAllValues](/reference/engines/table-engines/mergetree-family/textindexes#json-indexes-jsonallvalues) in the text indexes documentation for details and examples.
+See [Value-based indexes with JSONAllValues](/core/reference/engines/table-engines/mergetree-family/textindexes#json-indexes-jsonallvalues) in the text indexes documentation for details and examples.
## Tips for better usage of the JSON type {#tips-for-better-usage-of-the-json-type}
diff --git a/reference/data-types/nullable.mdx b/core/reference/data-types/nullable.mdx
similarity index 77%
rename from reference/data-types/nullable.mdx
rename to core/reference/data-types/nullable.mdx
index 5113fde6..f7536a14 100644
--- a/reference/data-types/nullable.mdx
+++ b/core/reference/data-types/nullable.mdx
@@ -6,19 +6,19 @@ title: 'Nullable(T)'
doc_type: 'reference'
---
-Allows to store special marker ([NULL](/reference/syntax)) that denotes "missing value" alongside normal values allowed by `T`. For example, a `Nullable(Int8)` type column can store `Int8` type values, and the rows that do not have a value will store `NULL`.
+Allows to store special marker ([NULL](/core/reference/syntax)) that denotes "missing value" alongside normal values allowed by `T`. For example, a `Nullable(Int8)` type column can store `Int8` type values, and the rows that do not have a value will store `NULL`.
`T` can't be any of the following composite data types:
-- [Array](/reference/data-types/array) — Not supported
-- [Map](/reference/data-types/map) — Not supported
-- [Tuple](/reference/data-types/tuple) — Experimental support available*
+- [Array](/core/reference/data-types/array) — Not supported
+- [Map](/core/reference/data-types/map) — Not supported
+- [Tuple](/core/reference/data-types/tuple) — Experimental support available*
However, composite data types **can contain** `Nullable` type values, e.g. `Array(Nullable(Int8))` or `Tuple(Nullable(String), Nullable(Int64))`.
**Experimental: Nullable Tuples**
-* [Nullable(Tuple(...))](/reference/data-types/tuple#nullable-tuple) is supported when `allow_experimental_nullable_tuple_type = 1` is enabled.
+* [Nullable(Tuple(...))](/core/reference/data-types/tuple#nullable-tuple) is supported when `allow_experimental_nullable_tuple_type = 1` is enabled.
A `Nullable` type field can't be included in table indexes.
diff --git a/reference/data-types/qbit.mdx b/core/reference/data-types/qbit.mdx
similarity index 91%
rename from reference/data-types/qbit.mdx
rename to core/reference/data-types/qbit.mdx
index 670cce50..258ba366 100644
--- a/reference/data-types/qbit.mdx
+++ b/core/reference/data-types/qbit.mdx
@@ -64,5 +64,5 @@ The number of accessible subcolumns depends on the element type:
These are the distance functions for vector similarity search that use `QBit` data type:
-* [`L2DistanceTransposed`](/reference/functions/regular-functions/distance-functions#L2DistanceTransposed)
-* [`cosineDistanceTransposed`](/reference/functions/regular-functions/distance-functions#cosineDistanceTransposed)
+* [`L2DistanceTransposed`](/core/reference/functions/regular-functions/distance-functions#L2DistanceTransposed)
+* [`cosineDistanceTransposed`](/core/reference/functions/regular-functions/distance-functions#cosineDistanceTransposed)
diff --git a/reference/data-types/simpleaggregatefunction.mdx b/core/reference/data-types/simpleaggregatefunction.mdx
similarity index 58%
rename from reference/data-types/simpleaggregatefunction.mdx
rename to core/reference/data-types/simpleaggregatefunction.mdx
index 0a0a068c..d56e214e 100644
--- a/reference/data-types/simpleaggregatefunction.mdx
+++ b/core/reference/data-types/simpleaggregatefunction.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
The `SimpleAggregateFunction` data type stores the intermediate state of an
-aggregate function, but not its full state as the [`AggregateFunction`](/reference/data-types/aggregatefunction)
+aggregate function, but not its full state as the [`AggregateFunction`](/core/reference/data-types/aggregatefunction)
type does.
This optimization can be applied to functions for which the following property
@@ -27,7 +27,7 @@ requires keeping track of a sum and a count, which will be divided to get the
average in a final `Merge` step which combines the intermediate states.
Aggregate function values are commonly produced by calling an aggregate function
-with the [`-SimpleState`](/reference/functions/aggregate-functions/combinators#-simplestate) combinator appended to the function name.
+with the [`-SimpleState`](/core/reference/functions/aggregate-functions/combinators#-simplestate) combinator appended to the function name.
## Syntax {#syntax}
@@ -44,23 +44,23 @@ SimpleAggregateFunction(aggregate_function_name, types_of_arguments...)
The following aggregate functions are supported:
-- [`any`](/reference/functions/aggregate-functions/reference/any)
-- [`any_respect_nulls`](/reference/functions/aggregate-functions/reference/any)
-- [`anyLast`](/reference/functions/aggregate-functions/reference/anyLast)
-- [`anyLast_respect_nulls`](/reference/functions/aggregate-functions/reference/anyLast)
-- [`min`](/reference/functions/aggregate-functions/reference/min)
-- [`max`](/reference/functions/aggregate-functions/reference/max)
-- [`sum`](/reference/functions/aggregate-functions/reference/sum)
-- [`sumWithOverflow`](/reference/functions/aggregate-functions/reference/sumWithOverflow)
-- [`groupBitAnd`](/reference/functions/aggregate-functions/reference/groupBitAnd)
-- [`groupBitOr`](/reference/functions/aggregate-functions/reference/groupBitOr)
-- [`groupBitXor`](/reference/functions/aggregate-functions/reference/groupBitXor)
-- [`groupArrayArray`](/reference/functions/aggregate-functions/reference/groupArrayArray)
-- [`groupUniqArrayArray`](/reference/functions/aggregate-functions/reference/groupUniqArray)
-- [`groupUniqArrayArrayMap`](/reference/functions/aggregate-functions/combinators#-map)
-- [`sumMap` (`sumMappedArrays`)](/reference/functions/aggregate-functions/reference/sumMap)
-- [`minMap` (`minMappedArrays`)](/reference/functions/aggregate-functions/reference/minMap)
-- [`maxMap` (`maxMappedArrays`)](/reference/functions/aggregate-functions/reference/maxMap)
+- [`any`](/core/reference/functions/aggregate-functions/reference/any)
+- [`any_respect_nulls`](/core/reference/functions/aggregate-functions/reference/any)
+- [`anyLast`](/core/reference/functions/aggregate-functions/reference/anyLast)
+- [`anyLast_respect_nulls`](/core/reference/functions/aggregate-functions/reference/anyLast)
+- [`min`](/core/reference/functions/aggregate-functions/reference/min)
+- [`max`](/core/reference/functions/aggregate-functions/reference/max)
+- [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
+- [`sumWithOverflow`](/core/reference/functions/aggregate-functions/reference/sumWithOverflow)
+- [`groupBitAnd`](/core/reference/functions/aggregate-functions/reference/groupBitAnd)
+- [`groupBitOr`](/core/reference/functions/aggregate-functions/reference/groupBitOr)
+- [`groupBitXor`](/core/reference/functions/aggregate-functions/reference/groupBitXor)
+- [`groupArrayArray`](/core/reference/functions/aggregate-functions/reference/groupArrayArray)
+- [`groupUniqArrayArray`](/core/reference/functions/aggregate-functions/reference/groupUniqArray)
+- [`groupUniqArrayArrayMap`](/core/reference/functions/aggregate-functions/combinators#-map)
+- [`sumMap` (`sumMappedArrays`)](/core/reference/functions/aggregate-functions/reference/sumMap)
+- [`minMap` (`minMappedArrays`)](/core/reference/functions/aggregate-functions/reference/minMap)
+- [`maxMap` (`maxMappedArrays`)](/core/reference/functions/aggregate-functions/reference/maxMap)
Values of the `SimpleAggregateFunction(func, Type)` have the same `Type`,
@@ -79,4 +79,4 @@ CREATE TABLE simple (id UInt64, val SimpleAggregateFunction(sum, Double)) ENGINE
## Related Content {#related-content}
- Blog: [Using Aggregate Combinators in ClickHouse](https://clickhouse.com/blog/aggregate-functions-combinators-in-clickhouse-for-arrays-maps-and-states) - Blog: [Using Aggregate Combinators in ClickHouse](https://clickhouse.com/blog/aggregate-functions-combinators-in-clickhouse-for-arrays-maps-and-states)
-- [AggregateFunction](/reference/data-types/aggregatefunction) type.
\ No newline at end of file
+- [AggregateFunction](/core/reference/data-types/aggregatefunction) type.
\ No newline at end of file
diff --git a/reference/data-types/special-data-types/expression.mdx b/core/reference/data-types/special-data-types/expression.mdx
similarity index 100%
rename from reference/data-types/special-data-types/expression.mdx
rename to core/reference/data-types/special-data-types/expression.mdx
diff --git a/reference/data-types/special-data-types/index.mdx b/core/reference/data-types/special-data-types/index.mdx
similarity index 100%
rename from reference/data-types/special-data-types/index.mdx
rename to core/reference/data-types/special-data-types/index.mdx
diff --git a/reference/data-types/special-data-types/interval.mdx b/core/reference/data-types/special-data-types/interval.mdx
similarity index 90%
rename from reference/data-types/special-data-types/interval.mdx
rename to core/reference/data-types/special-data-types/interval.mdx
index 9251ee1d..2b19a8ef 100644
--- a/reference/data-types/special-data-types/interval.mdx
+++ b/core/reference/data-types/special-data-types/interval.mdx
@@ -6,7 +6,7 @@ title: 'Interval'
doc_type: 'reference'
---
-The family of data types representing time and date intervals. The resulting types of the [INTERVAL](/reference/operators#interval) operator.
+The family of data types representing time and date intervals. The resulting types of the [INTERVAL](/core/reference/operators#interval) operator.
Structure:
@@ -41,7 +41,7 @@ SELECT toTypeName(INTERVAL 4 DAY)
## Usage Remarks {#usage-remarks}
-You can use `Interval`-type values in arithmetical operations with [Date](/reference/data-types/date) and [DateTime](/reference/data-types/datetime)-type values. For example, you can add 4 days to the current time:
+You can use `Interval`-type values in arithmetical operations with [Date](/core/reference/data-types/date) and [DateTime](/core/reference/data-types/datetime)-type values. For example, you can add 4 days to the current time:
```sql
SELECT now() AS current_date_time, current_date_time + INTERVAL 4 DAY
@@ -122,5 +122,5 @@ SELECT INTERVAL '+1:30' HOUR TO MINUTE;
## See Also {#see-also}
-- [INTERVAL](/reference/operators#interval) operator
-- [toInterval](/reference/functions/regular-functions/type-conversion-functions#toIntervalYear) type conversion functions
+- [INTERVAL](/core/reference/operators#interval) operator
+- [toInterval](/core/reference/functions/regular-functions/type-conversion-functions#toIntervalYear) type conversion functions
diff --git a/reference/data-types/special-data-types/nothing.mdx b/core/reference/data-types/special-data-types/nothing.mdx
similarity index 78%
rename from reference/data-types/special-data-types/nothing.mdx
rename to core/reference/data-types/special-data-types/nothing.mdx
index 94945817..ef3b58ae 100644
--- a/reference/data-types/special-data-types/nothing.mdx
+++ b/core/reference/data-types/special-data-types/nothing.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
The only purpose of this data type is to represent cases where a value is not expected. So you can't create a `Nothing` type value.
-For example, literal [NULL](/reference/syntax#null) has type of `Nullable(Nothing)`. See more about [Nullable](/reference/data-types/nullable).
+For example, literal [NULL](/core/reference/syntax#null) has type of `Nullable(Nothing)`. See more about [Nullable](/core/reference/data-types/nullable).
The `Nothing` type can also used to denote empty arrays:
diff --git a/reference/data-types/special-data-types/set.mdx b/core/reference/data-types/special-data-types/set.mdx
similarity index 72%
rename from reference/data-types/special-data-types/set.mdx
rename to core/reference/data-types/special-data-types/set.mdx
index 625e33ee..2a7dbc73 100644
--- a/reference/data-types/special-data-types/set.mdx
+++ b/core/reference/data-types/special-data-types/set.mdx
@@ -6,4 +6,4 @@ title: 'Set'
doc_type: 'reference'
---
-Used for the right half of an [IN](/reference/statements/in) expression.
+Used for the right half of an [IN](/core/reference/statements/in) expression.
diff --git a/reference/data-types/string.mdx b/core/reference/data-types/string.mdx
similarity index 81%
rename from reference/data-types/string.mdx
rename to core/reference/data-types/string.mdx
index e39ba29f..21de1c36 100644
--- a/reference/data-types/string.mdx
+++ b/core/reference/data-types/string.mdx
@@ -20,4 +20,4 @@ Aliases:
ClickHouse does not have the concept of encodings. Strings can contain an arbitrary set of bytes, which are stored and output as-is.
If you need to store texts, we recommend using UTF-8 encoding. At the very least, if your terminal uses UTF-8 (as recommended), you can read and write your values without making conversions.
Similarly, certain functions for working with strings have separate variations that work under the assumption that the string contains a set of bytes representing a UTF-8 encoded text.
-For example, the [length](/reference/functions/regular-functions/array-functions#length) function calculates the string length in bytes, while the [lengthUTF8](/reference/functions/regular-functions/string-functions#lengthUTF8) function calculates the string length in Unicode code points, assuming that the value is UTF-8 encoded.
+For example, the [length](/core/reference/functions/regular-functions/array-functions#length) function calculates the string length in bytes, while the [lengthUTF8](/core/reference/functions/regular-functions/string-functions#lengthUTF8) function calculates the string length in Unicode code points, assuming that the value is UTF-8 encoded.
diff --git a/reference/data-types/time.mdx b/core/reference/data-types/time.mdx
similarity index 75%
rename from reference/data-types/time.mdx
rename to core/reference/data-types/time.mdx
index dd9a3d49..e75a8cc5 100644
--- a/reference/data-types/time.mdx
+++ b/core/reference/data-types/time.mdx
@@ -115,7 +115,7 @@ SELECT CAST('14:30:25' AS Time) AS column, toTypeName(column) AS type
## Addition with Date {#addition-with-date}
-A [Time](/reference/data-types/time) value can be added to a [Date](/reference/data-types/date) or [Date32](/reference/data-types/date32) value to produce a [DateTime](/reference/data-types/datetime) or [DateTime64](/reference/data-types/datetime64):
+A [Time](/core/reference/data-types/time) value can be added to a [Date](/core/reference/data-types/date) or [Date32](/core/reference/data-types/date32) value to produce a [DateTime](/core/reference/data-types/datetime) or [DateTime64](/core/reference/data-types/datetime64):
```sql
SET use_legacy_to_time = 0;
@@ -128,16 +128,16 @@ SELECT toDate('2024-07-15') + toTime('14:30:25') as datetime;
└─────────────────────┘
```
-See [Date and Time Addition](/reference/operators#date-time-addition) for details on all supported combinations and result types.
+See [Date and Time Addition](/core/reference/operators#date-time-addition) for details on all supported combinations and result types.
## See Also {#see-also}
-- [Type conversion functions](/reference/functions/regular-functions/type-conversion-functions)
-- [Functions for working with dates and times](/reference/functions/regular-functions/date-time-functions)
-- [Functions for working with arrays](/reference/functions/regular-functions/array-functions)
-- [The `date_time_input_format` setting](/reference/settings/formats#date_time_input_format)
-- [The `date_time_output_format` setting](/reference/settings/formats#date_time_output_format)
-- [The `timezone` server configuration parameter](/reference/settings/server-settings/settings#timezone)
-- [The `session_timezone` setting](/reference/settings/session-settings#session_timezone)
-- [The `DateTime` data type](/reference/data-types/datetime)
-- [The `Date` data type](/reference/data-types/date)
+- [Type conversion functions](/core/reference/functions/regular-functions/type-conversion-functions)
+- [Functions for working with dates and times](/core/reference/functions/regular-functions/date-time-functions)
+- [Functions for working with arrays](/core/reference/functions/regular-functions/array-functions)
+- [The `date_time_input_format` setting](/core/reference/settings/formats#date_time_input_format)
+- [The `date_time_output_format` setting](/core/reference/settings/formats#date_time_output_format)
+- [The `timezone` server configuration parameter](/core/reference/settings/server-settings/settings#timezone)
+- [The `session_timezone` setting](/core/reference/settings/session-settings#session_timezone)
+- [The `DateTime` data type](/core/reference/data-types/datetime)
+- [The `Date` data type](/core/reference/data-types/date)
diff --git a/reference/data-types/time64.mdx b/core/reference/data-types/time64.mdx
similarity index 77%
rename from reference/data-types/time64.mdx
rename to core/reference/data-types/time64.mdx
index 6a77779c..9ef9aa8f 100644
--- a/reference/data-types/time64.mdx
+++ b/core/reference/data-types/time64.mdx
@@ -24,7 +24,7 @@ The tick resolution is determined by the `precision` parameter.
Time zones are not supported: specifying a time zone with `Time64` will throw an error.
Unlike `DateTime64`, `Time64` does not store a date component.
-See also [`Time`](/reference/data-types/time).
+See also [`Time`](/core/reference/data-types/time).
Text representation range: [-999:59:59.000, 999:59:59.999] for `precision = 3`. In general, the minimum is `-999:59:59` and the maximum is `999:59:59` with up to `precision` fractional digits (for `precision = 9`, the minimum is `-999:59:59.999999999`).
@@ -120,7 +120,7 @@ SELECT CAST('14:30:25.250' AS Time64(3)) AS column, toTypeName(column) AS type;
## Addition with Date {#addition-with-date}
-A [Time64](/reference/data-types/time64) value can be added to a [Date](/reference/data-types/date) or [Date32](/reference/data-types/date32) value to produce a [DateTime64](/reference/data-types/datetime64) with the same scale as the `Time64`:
+A [Time64](/core/reference/data-types/time64) value can be added to a [Date](/core/reference/data-types/date) or [Date32](/core/reference/data-types/date32) value to produce a [DateTime64](/core/reference/data-types/datetime64) with the same scale as the `Time64`:
```sql
SET use_legacy_to_time = 0;
@@ -133,17 +133,17 @@ SELECT toDate('2024-07-15') + toTime64('14:30:25.123456', 6) AS dt, toTypeName(d
└────────────────────────────┴────────────────┘
```
-See [Date and Time Addition](/reference/operators#date-time-addition) for details on all supported combinations and result types.
+See [Date and Time Addition](/core/reference/operators#date-time-addition) for details on all supported combinations and result types.
**See Also**
-- [Type conversion functions](/reference/functions/regular-functions/type-conversion-functions)
-- [Functions for working with dates and times](/reference/functions/regular-functions/date-time-functions)
-- [The `date_time_input_format` setting](/reference/settings/formats#date_time_input_format)
-- [The `date_time_output_format` setting](/reference/settings/formats#date_time_output_format)
-- [The `timezone` server configuration parameter](/reference/settings/server-settings/settings#timezone)
-- [The `session_timezone` setting](/reference/settings/session-settings#session_timezone)
-- [Operators for working with dates and times](/reference/operators#operators-for-working-with-dates-and-times)
-- [`Date` data type](/reference/data-types/date)
-- [`Time` data type](/reference/data-types/time)
-- [`DateTime` data type](/reference/data-types/datetime)
+- [Type conversion functions](/core/reference/functions/regular-functions/type-conversion-functions)
+- [Functions for working with dates and times](/core/reference/functions/regular-functions/date-time-functions)
+- [The `date_time_input_format` setting](/core/reference/settings/formats#date_time_input_format)
+- [The `date_time_output_format` setting](/core/reference/settings/formats#date_time_output_format)
+- [The `timezone` server configuration parameter](/core/reference/settings/server-settings/settings#timezone)
+- [The `session_timezone` setting](/core/reference/settings/session-settings#session_timezone)
+- [Operators for working with dates and times](/core/reference/operators#operators-for-working-with-dates-and-times)
+- [`Date` data type](/core/reference/data-types/date)
+- [`Time` data type](/core/reference/data-types/time)
+- [`DateTime` data type](/core/reference/data-types/datetime)
diff --git a/reference/data-types/tuple.mdx b/core/reference/data-types/tuple.mdx
similarity index 92%
rename from reference/data-types/tuple.mdx
rename to core/reference/data-types/tuple.mdx
index 267ad43a..e6016b3b 100644
--- a/reference/data-types/tuple.mdx
+++ b/core/reference/data-types/tuple.mdx
@@ -6,9 +6,9 @@ title: 'Tuple(T1, T2, ...)'
doc_type: 'reference'
---
-A tuple of elements, each having an individual [type](/reference/data-types). Tuple must contain at least one element.
+A tuple of elements, each having an individual [type](/core/reference/data-types). Tuple must contain at least one element.
-Tuples are used for temporary column grouping. Columns can be grouped when an IN expression is used in a query, and for specifying certain formal parameters of lambda functions. For more information, see the sections [IN operators](/reference/statements/in) and [Higher order functions](/reference/functions/regular-functions/overview#higher-order-functions).
+Tuples are used for temporary column grouping. Columns can be grouped when an IN expression is used in a query, and for specifying certain formal parameters of lambda functions. For more information, see the sections [IN operators](/core/reference/statements/in) and [Higher order functions](/core/reference/functions/regular-functions/overview#higher-order-functions).
Tuples can be the result of a query. In this case, for text formats other than JSON, values are comma-separated in `()`. In JSON formats, tuples are output as arrays (in `[]`).
@@ -62,7 +62,7 @@ SELECT (1, 'a') AS x, (today(), rand(), 'someString') AS y, ('a') AS not_a_tuple
## Data Type Detection {#data-type-detection}
-When creating tuples on the fly, ClickHouse interferes the type of the tuples arguments as the smallest types which can hold the provided argument value. If the value is [NULL](/reference/settings/formats#input_format_null_as_default), the interfered type is [Nullable](/reference/data-types/nullable).
+When creating tuples on the fly, ClickHouse interferes the type of the tuples arguments as the smallest types which can hold the provided argument value. If the value is [NULL](/core/reference/settings/formats#input_format_null_as_default), the interfered type is [Nullable](/core/reference/data-types/nullable).
Example of automatic data type detection:
diff --git a/reference/data-types/uuid.mdx b/core/reference/data-types/uuid.mdx
similarity index 88%
rename from reference/data-types/uuid.mdx
rename to core/reference/data-types/uuid.mdx
index d3bfcae0..b62e0fb7 100644
--- a/reference/data-types/uuid.mdx
+++ b/core/reference/data-types/uuid.mdx
@@ -98,7 +98,7 @@ ORDER BY (UUIDv7ToDateTime(uuid), uuid)
## Generating UUIDs {#generating-uuids}
-ClickHouse provides the [generateUUIDv4](/reference/functions/regular-functions/uuid-functions) function to generate random UUID version 4 values.
+ClickHouse provides the [generateUUIDv4](/core/reference/functions/regular-functions/uuid-functions) function to generate random UUID version 4 values.
## Usage Example {#usage-example}
@@ -139,6 +139,6 @@ SELECT * FROM t_uuid
## Restrictions {#restrictions}
-The UUID data type only supports functions which [String](/reference/data-types/string) data type also supports (for example, [min](/reference/functions/aggregate-functions/reference/min), [max](/reference/functions/aggregate-functions/reference/max), and [count](/reference/functions/aggregate-functions/reference/count)).
+The UUID data type only supports functions which [String](/core/reference/data-types/string) data type also supports (for example, [min](/core/reference/functions/aggregate-functions/reference/min), [max](/core/reference/functions/aggregate-functions/reference/max), and [count](/core/reference/functions/aggregate-functions/reference/count)).
-The UUID data type is not supported by arithmetic operations (for example, [abs](/reference/functions/regular-functions/arithmetic-functions#abs)) or aggregate functions, such as [sum](/reference/functions/aggregate-functions/reference/sum) and [avg](/reference/functions/aggregate-functions/reference/avg).
+The UUID data type is not supported by arithmetic operations (for example, [abs](/core/reference/functions/regular-functions/arithmetic-functions#abs)) or aggregate functions, such as [sum](/core/reference/functions/aggregate-functions/reference/sum) and [avg](/core/reference/functions/aggregate-functions/reference/avg).
diff --git a/reference/data-types/variant.mdx b/core/reference/data-types/variant.mdx
similarity index 100%
rename from reference/data-types/variant.mdx
rename to core/reference/data-types/variant.mdx
diff --git a/core/reference/datalakes.mdx b/core/reference/datalakes.mdx
new file mode 100644
index 00000000..80e9a9c0
--- /dev/null
+++ b/core/reference/datalakes.mdx
@@ -0,0 +1,42 @@
+---
+description: 'Documentation for Data Lakes'
+sidebarTitle: 'Data Lakes'
+slug: /sql-reference/datalakes
+title: 'Data Lakes'
+doc_type: 'reference'
+---
+
+In this section, we will take a look at ClickHouse's support for Data Lakes.
+ClickHouse supports many of the most popular table formats and data catalogs, including Iceberg, Delta Lake, Hudi, AWS Glue, REST Catalog, Unity Catalog and Microsoft OneLake.
+
+# Open table formats {#open-table-formats}
+
+## Iceberg {#iceberg}
+
+See [iceberg](/core/reference/functions/table-functions/iceberg) which supports reading from Amazon S3 and S3-compatible services, HDFS, Azure and local file systems. [icebergCluster](/core/reference/functions/table-functions/icebergCluster) is the distributed variant of the `iceberg` function.
+
+## Delta Lake {#delta-lake}
+
+See [deltaLake](/core/reference/functions/table-functions/deltalake) which supports reading from Amazon S3 and S3-compatible services, Azure and local file systems. [deltaLakeCluster](/core/reference/functions/table-functions/deltalakeCluster) is the distributed variant of the `deltaLake` function.
+
+## Hudi {#hudi}
+
+See [hudi](/core/reference/functions/table-functions/hudi) which supports reading from Amazon S3 and S3-compatible services. [hudiCluster](/core/reference/functions/table-functions/hudiCluster) is the distributed variant of the `hudi` function.
+
+# Data catalogs {#data-catalogs}
+
+## AWS Glue {#aws-glue}
+
+AWS Glue Data Catalog can be used with Iceberg tables. You can use it with the `iceberg` table engine, or with the [DataLakeCatalog](/core/reference/engines/database-engines/datalake) database engine.
+
+## Iceberg REST Catalog {#iceberg-rest-catalog}
+
+The Iceberg REST Catalog can be used with Iceberg tables. You can use it with the `iceberg` table engine, or with the [DataLakeCatalog](/core/reference/engines/database-engines/datalake) database engine.
+
+## Unity Catalog {#unity-catalog}
+
+Unity Catalog can be used with both Delta Lake and Iceberg tables. You can use it with the `iceberg` or `deltaLake` table engines, or with the [DataLakeCatalog](/core/reference/engines/database-engines/datalake) database engine.
+
+## Microsoft OneLake {#microsoft-onelake}
+
+Microsoft OneLake can be used with both Delta Lake and Iceberg tables. You can use it with the [DataLakeCatalog](/core/reference/engines/database-engines/datalake) database engine.
diff --git a/reference/engines/database-engines/atomic.mdx b/core/reference/engines/database-engines/atomic.mdx
similarity index 58%
rename from reference/engines/database-engines/atomic.mdx
rename to core/reference/engines/database-engines/atomic.mdx
index 4a34c5ab..311c70c4 100644
--- a/reference/engines/database-engines/atomic.mdx
+++ b/core/reference/engines/database-engines/atomic.mdx
@@ -25,7 +25,7 @@ CREATE DATABASE test [ENGINE = Atomic] [SETTINGS disk=...];
### Table UUID {#table-uuid}
-Each table in the `Atomic` database has a persistent [UUID](/reference/data-types/uuid) and stores its data in the following directory:
+Each table in the `Atomic` database has a persistent [UUID](/core/reference/data-types/uuid) and stores its data in the following directory:
```text
/clickhouse_path/store/xxx/xxxyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/
@@ -42,21 +42,21 @@ CREATE TABLE name UUID '28f1c61c-2970-457a-bffe-454156ddcfef' (n UInt64) ENGINE
```
-You can use the [show_table_uuid_in_table_create_query_if_not_nil](/reference/settings/session-settings#show_table_uuid_in_table_create_query_if_not_nil) setting to display the UUID with the `SHOW CREATE` query.
+You can use the [show_table_uuid_in_table_create_query_if_not_nil](/core/reference/settings/session-settings#show_table_uuid_in_table_create_query_if_not_nil) setting to display the UUID with the `SHOW CREATE` query.
### RENAME TABLE {#rename-table}
-[`RENAME`](/reference/statements/rename) queries do not modify the UUID or move table data. These queries execute immediately and do not wait for other queries that are using the table to complete.
+[`RENAME`](/core/reference/statements/rename) queries do not modify the UUID or move table data. These queries execute immediately and do not wait for other queries that are using the table to complete.
### DROP/DETACH TABLE {#drop-detach-table}
-When using `DROP TABLE`, no data is removed. The `Atomic` engine just marks the table as dropped by moving it's metadata to `/clickhouse_path/metadata_dropped/` and notifies the background thread. The delay before the final table data deletion is specified by the [`database_atomic_delay_before_drop_table_sec`](/reference/settings/server-settings/settings#database_atomic_delay_before_drop_table_sec) setting.
-You can specify synchronous mode using `SYNC` modifier. Use the [`database_atomic_wait_for_drop_and_detach_synchronously`](/reference/settings/session-settings#database_atomic_wait_for_drop_and_detach_synchronously) setting to do this. In this case `DROP` waits for running `SELECT`, `INSERT` and other queries which are using the table to finish. The table will be removed when it's not in use.
+When using `DROP TABLE`, no data is removed. The `Atomic` engine just marks the table as dropped by moving it's metadata to `/clickhouse_path/metadata_dropped/` and notifies the background thread. The delay before the final table data deletion is specified by the [`database_atomic_delay_before_drop_table_sec`](/core/reference/settings/server-settings/settings#database_atomic_delay_before_drop_table_sec) setting.
+You can specify synchronous mode using `SYNC` modifier. Use the [`database_atomic_wait_for_drop_and_detach_synchronously`](/core/reference/settings/session-settings#database_atomic_wait_for_drop_and_detach_synchronously) setting to do this. In this case `DROP` waits for running `SELECT`, `INSERT` and other queries which are using the table to finish. The table will be removed when it's not in use.
### EXCHANGE TABLES/DICTIONARIES {#exchange-tables}
-The [`EXCHANGE`](/reference/statements/exchange) query swaps tables or dictionaries atomically. For instance, instead of this non-atomic operation:
+The [`EXCHANGE`](/core/reference/statements/exchange) query swaps tables or dictionaries atomically. For instance, instead of this non-atomic operation:
```sql title="Non-atomic"
RENAME TABLE new_table TO tmp, old_table TO new_table, tmp TO old_table;
@@ -69,7 +69,7 @@ EXCHANGE TABLES new_table AND old_table;
### ReplicatedMergeTree in atomic database {#replicatedmergetree-in-atomic-database}
-For [`ReplicatedMergeTree`](/reference/engines/table-engines/mergetree-family/replication) tables, it is recommended not to specify the engine parameters for the path in ZooKeeper and the replica name. In this case, the configuration parameters [`default_replica_path`](/reference/settings/server-settings/settings#default_replica_path) and [`default_replica_name`](/reference/settings/server-settings/settings#default_replica_name) will be used. If you want to specify engine parameters explicitly, it is recommended to use the `{uuid}` macros. This ensures that unique paths are automatically generated for each table in ZooKeeper.
+For [`ReplicatedMergeTree`](/core/reference/engines/table-engines/mergetree-family/replication) tables, it is recommended not to specify the engine parameters for the path in ZooKeeper and the replica name. In this case, the configuration parameters [`default_replica_path`](/core/reference/settings/server-settings/settings#default_replica_path) and [`default_replica_name`](/core/reference/settings/server-settings/settings#default_replica_name) will be used. If you want to specify engine parameters explicitly, it is recommended to use the `{uuid}` macros. This ensures that unique paths are automatically generated for each table in ZooKeeper.
### Metadata disk {#metadata-disk}
When `disk` is specified in `SETTINGS`, the disk is used to store table metadata files.
@@ -82,4 +82,4 @@ If unspecified, the disk defined in `database_disk.disk` is used by default.
## See also {#see-also}
-- [system.databases](/reference/system-tables/databases) system table
+- [system.databases](/core/reference/system-tables/databases) system table
diff --git a/reference/engines/database-engines/backup.mdx b/core/reference/engines/database-engines/backup.mdx
similarity index 93%
rename from reference/engines/database-engines/backup.mdx
rename to core/reference/engines/database-engines/backup.mdx
index de4d34f9..4ab3022a 100644
--- a/reference/engines/database-engines/backup.mdx
+++ b/core/reference/engines/database-engines/backup.mdx
@@ -7,7 +7,7 @@ title: 'Backup'
doc_type: 'reference'
---
-Database backup allows to instantly attach table/database from [backups](/concepts/features/backup-restore/overview) in read-only mode.
+Database backup allows to instantly attach table/database from [backups](/core/concepts/features/backup-restore/overview) in read-only mode.
Database backup works with both incremental and non-incremental backups.
@@ -18,7 +18,7 @@ CREATE DATABASE backup_database
ENGINE = Backup('database_name_inside_backup', 'backup_destination')
```
-Backup destination can be any valid backup [destination](/concepts/features/backup-restore/local-disk#configure-backup-destinations-for-disk) like `Disk`, `S3`, `File`.
+Backup destination can be any valid backup [destination](/core/concepts/features/backup-restore/local-disk#configure-backup-destinations-for-disk) like `Disk`, `S3`, `File`.
With `Disk` backup destination, query to create database from backup looks like this:
diff --git a/reference/engines/database-engines/datalake.mdx b/core/reference/engines/database-engines/datalake.mdx
similarity index 96%
rename from reference/engines/database-engines/datalake.mdx
rename to core/reference/engines/database-engines/datalake.mdx
index bf4bf9cb..dccf413e 100644
--- a/reference/engines/database-engines/datalake.mdx
+++ b/core/reference/engines/database-engines/datalake.mdx
@@ -64,8 +64,8 @@ The following settings are supported:
See below sections for examples of using the `DataLakeCatalog` engine:
-* [Unity Catalog](/guides/data-warehousing/unity-catalog)
-* [Glue Catalog](/guides/data-warehousing/glue-catalog)
+* [Unity Catalog](/core/guides/use-cases/data-warehousing/unity-catalog)
+* [Glue Catalog](/core/guides/use-cases/data-warehousing/glue-catalog)
* OneLake Catalog
Can be used by enabling `allow_experimental_database_iceberg` or `allow_database_iceberg`.
```sql
diff --git a/core/reference/engines/database-engines/index.mdx b/core/reference/engines/database-engines/index.mdx
new file mode 100644
index 00000000..9aa0438c
--- /dev/null
+++ b/core/reference/engines/database-engines/index.mdx
@@ -0,0 +1,34 @@
+---
+description: 'Documentation for Database Engines'
+slug: /engines/database-engines/
+toc_folder_title: 'Database Engines'
+toc_priority: 27
+toc_title: 'Introduction'
+title: 'Database Engines'
+doc_type: 'landing-page'
+---
+
+Database engines allow you to work with tables. By default, ClickHouse uses the [Atomic](/core/reference/engines/database-engines/atomic) database engine, which provides configurable [table engines](/core/reference/engines/table-engines) and an [SQL dialect](/core/reference/syntax).
+
+Here is a complete list of available database engines. Follow the links for more details:
+
+{/* The table of contents table for this page is automatically generated by
+https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh
+from the YAML front matter fields: slug, description, title.
+
+If you've spotted an error, please edit the YML frontmatter of the pages themselves.
+*/}
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [Shared](/core/reference/engines/database-engines/shared) | Page describing the `Shared` database engine, available in ClickHouse Cloud |
+| [Atomic](/core/reference/engines/database-engines/atomic) | The `Atomic` engine supports non-blocking `DROP TABLE` and `RENAME TABLE` queries, and atomic `EXCHANGE TABLES`queries. The `Atomic` database engine is used by default. |
+| [Replicated](/core/reference/engines/database-engines/replicated) | The engine is based on the Atomic engine. It supports replication of metadata via DDL log being written to ZooKeeper and executed on all of the replicas for a given database. |
+| [PostgreSQL](/core/reference/engines/database-engines/postgresql) | Allows to connect to databases on a remote PostgreSQL server. |
+| [MySQL](/core/reference/engines/database-engines/mysql) | Allows connecting to databases on a remote MySQL server and perform `INSERT` and `SELECT` queries to exchange data between ClickHouse and MySQL. |
+| [SQLite](/core/reference/engines/database-engines/sqlite) | Allows to connect to SQLite databases and perform `INSERT` and `SELECT` queries to exchange data between ClickHouse and SQLite. |
+| [MaterializedPostgreSQL](/core/reference/engines/database-engines/materialized-postgresql) | Creates a ClickHouse database with tables from PostgreSQL database. |
+| [Backup](/core/reference/engines/database-engines/backup) | Allows to instantly attach table/database from backups in read-only mode. |
+| [DataLakeCatalog](/core/reference/engines/database-engines/datalake) | The DataLakeCatalog database engine enables you to connect ClickHouse to external data catalogs and query open table format data |
+{/*AUTOGENERATED_END*/}
diff --git a/reference/engines/database-engines/materialized-postgresql.mdx b/core/reference/engines/database-engines/materialized-postgresql.mdx
similarity index 97%
rename from reference/engines/database-engines/materialized-postgresql.mdx
rename to core/reference/engines/database-engines/materialized-postgresql.mdx
index f0f8e743..e53358fc 100644
--- a/reference/engines/database-engines/materialized-postgresql.mdx
+++ b/core/reference/engines/database-engines/materialized-postgresql.mdx
@@ -162,7 +162,7 @@ Replication of [**TOAST**](https://www.postgresql.org/docs/9.5/storage-toast.htm
### `materialized_postgresql_tables_list` {#materialized-postgresql-tables-list}
- Sets a comma-separated list of PostgreSQL database tables, which will be replicated via [MaterializedPostgreSQL](/reference/engines/database-engines/materialized-postgresql) database engine.
+ Sets a comma-separated list of PostgreSQL database tables, which will be replicated via [MaterializedPostgreSQL](/core/reference/engines/database-engines/materialized-postgresql) database engine.
Each table can have subset of replicated columns in brackets. If subset of columns is omitted, then all columns for table will be replicated.
@@ -196,7 +196,7 @@ Replication of [**TOAST**](https://www.postgresql.org/docs/9.5/storage-toast.htm
### `materialized_postgresql_snapshot` {#materialized-postgresql-snapshot}
- A text string identifying a snapshot, from which [initial dump of PostgreSQL tables](/reference/engines/database-engines/materialized-postgresql) will be performed. Must be used together with `materialized_postgresql_replication_slot`.
+ A text string identifying a snapshot, from which [initial dump of PostgreSQL tables](/core/reference/engines/database-engines/materialized-postgresql) will be performed. Must be used together with `materialized_postgresql_replication_slot`.
```sql
CREATE DATABASE database1
diff --git a/reference/engines/database-engines/mysql.mdx b/core/reference/engines/database-engines/mysql.mdx
similarity index 70%
rename from reference/engines/database-engines/mysql.mdx
rename to core/reference/engines/database-engines/mysql.mdx
index f9c949b9..c335cb01 100644
--- a/reference/engines/database-engines/mysql.mdx
+++ b/core/reference/engines/database-engines/mysql.mdx
@@ -41,23 +41,23 @@ ENGINE = MySQL('host:port', ['database' | database], 'user', 'password')
| MySQL | ClickHouse |
|----------------------------------|--------------------------------------------------------------|
-| UNSIGNED TINYINT | [UInt8](/reference/data-types/int-uint) |
-| TINYINT | [Int8](/reference/data-types/int-uint) |
-| UNSIGNED SMALLINT | [UInt16](/reference/data-types/int-uint) |
-| SMALLINT | [Int16](/reference/data-types/int-uint) |
-| UNSIGNED INT, UNSIGNED MEDIUMINT | [UInt32](/reference/data-types/int-uint) |
-| INT, MEDIUMINT | [Int32](/reference/data-types/int-uint) |
-| UNSIGNED BIGINT | [UInt64](/reference/data-types/int-uint) |
-| BIGINT | [Int64](/reference/data-types/int-uint) |
-| FLOAT | [Float32](/reference/data-types/float) |
-| DOUBLE | [Float64](/reference/data-types/float) |
-| DATE | [Date](/reference/data-types/date) |
-| DATETIME, TIMESTAMP | [DateTime](/reference/data-types/datetime) |
-| BINARY | [FixedString](/reference/data-types/fixedstring) |
-
-All other MySQL data types are converted into [String](/reference/data-types/string).
-
-[Nullable](/reference/data-types/nullable) is supported.
+| UNSIGNED TINYINT | [UInt8](/core/reference/data-types/int-uint) |
+| TINYINT | [Int8](/core/reference/data-types/int-uint) |
+| UNSIGNED SMALLINT | [UInt16](/core/reference/data-types/int-uint) |
+| SMALLINT | [Int16](/core/reference/data-types/int-uint) |
+| UNSIGNED INT, UNSIGNED MEDIUMINT | [UInt32](/core/reference/data-types/int-uint) |
+| INT, MEDIUMINT | [Int32](/core/reference/data-types/int-uint) |
+| UNSIGNED BIGINT | [UInt64](/core/reference/data-types/int-uint) |
+| BIGINT | [Int64](/core/reference/data-types/int-uint) |
+| FLOAT | [Float32](/core/reference/data-types/float) |
+| DOUBLE | [Float64](/core/reference/data-types/float) |
+| DATE | [Date](/core/reference/data-types/date) |
+| DATETIME, TIMESTAMP | [DateTime](/core/reference/data-types/datetime) |
+| BINARY | [FixedString](/core/reference/data-types/fixedstring) |
+
+All other MySQL data types are converted into [String](/core/reference/data-types/string).
+
+[Nullable](/core/reference/data-types/nullable) is supported.
## Global variables support {#global-variables-support}
diff --git a/reference/engines/database-engines/postgresql.mdx b/core/reference/engines/database-engines/postgresql.mdx
similarity index 80%
rename from reference/engines/database-engines/postgresql.mdx
rename to core/reference/engines/database-engines/postgresql.mdx
index 54391473..c28cfa42 100644
--- a/reference/engines/database-engines/postgresql.mdx
+++ b/core/reference/engines/database-engines/postgresql.mdx
@@ -32,19 +32,19 @@ ENGINE = PostgreSQL('host:port', 'database', 'user', 'password'[, `schema`, `use
| PostgreSQL | ClickHouse |
|------------------|--------------------------------------------------------------|
-| DATE | [Date](/reference/data-types/date) |
-| TIMESTAMP | [DateTime](/reference/data-types/datetime) |
-| REAL | [Float32](/reference/data-types/float) |
-| DOUBLE | [Float64](/reference/data-types/float) |
-| DECIMAL, NUMERIC | [Decimal](/reference/data-types/decimal) |
-| SMALLINT | [Int16](/reference/data-types/int-uint) |
-| INTEGER | [Int32](/reference/data-types/int-uint) |
-| BIGINT | [Int64](/reference/data-types/int-uint) |
-| SERIAL | [UInt32](/reference/data-types/int-uint) |
-| BIGSERIAL | [UInt64](/reference/data-types/int-uint) |
-| TEXT, CHAR | [String](/reference/data-types/string) |
-| INTEGER | Nullable([Int32](/reference/data-types/int-uint))|
-| ARRAY | [Array](/reference/data-types/array) |
+| DATE | [Date](/core/reference/data-types/date) |
+| TIMESTAMP | [DateTime](/core/reference/data-types/datetime) |
+| REAL | [Float32](/core/reference/data-types/float) |
+| DOUBLE | [Float64](/core/reference/data-types/float) |
+| DECIMAL, NUMERIC | [Decimal](/core/reference/data-types/decimal) |
+| SMALLINT | [Int16](/core/reference/data-types/int-uint) |
+| INTEGER | [Int32](/core/reference/data-types/int-uint) |
+| BIGINT | [Int64](/core/reference/data-types/int-uint) |
+| SERIAL | [UInt32](/core/reference/data-types/int-uint) |
+| BIGSERIAL | [UInt64](/core/reference/data-types/int-uint) |
+| TEXT, CHAR | [String](/core/reference/data-types/string) |
+| INTEGER | Nullable([Int32](/core/reference/data-types/int-uint))|
+| ARRAY | [Array](/core/reference/data-types/array) |
## Examples of use {#examples-of-use}
diff --git a/reference/engines/database-engines/replicated.mdx b/core/reference/engines/database-engines/replicated.mdx
similarity index 84%
rename from reference/engines/database-engines/replicated.mdx
rename to core/reference/engines/database-engines/replicated.mdx
index 1a359327..87ea92de 100644
--- a/reference/engines/database-engines/replicated.mdx
+++ b/core/reference/engines/database-engines/replicated.mdx
@@ -8,7 +8,7 @@ title: 'Replicated'
doc_type: 'reference'
---
-The engine is based on the [Atomic](/reference/engines/database-engines/atomic) engine. It supports replication of metadata via DDL log being written to ZooKeeper and executed on all of the replicas for a given database.
+The engine is based on the [Atomic](/core/reference/engines/database-engines/atomic) engine. It supports replication of metadata via DDL log being written to ZooKeeper and executed on all of the replicas for a given database.
One ClickHouse server can have multiple replicated databases running and updating at the same time. But there can't be multiple replicas of the same replicated database.
@@ -25,9 +25,9 @@ CREATE DATABASE testdb [UUID '...'] ENGINE = Replicated('zoo_path', 'shard_name'
Parameters can be omitted, in such case missing parameters are substituted with defaults.
-If `zoo_path` contains macro `{uuid}`, it is required to specify explicit UUID or add [ON CLUSTER](/reference/statements/distributed-ddl) to create statement to ensure all replicas use the same UUID for this database.
+If `zoo_path` contains macro `{uuid}`, it is required to specify explicit UUID or add [ON CLUSTER](/core/reference/statements/distributed-ddl) to create statement to ensure all replicas use the same UUID for this database.
-For [ReplicatedMergeTree](/reference/engines/table-engines/mergetree-family/replication) tables if no arguments provided, then default arguments are used: `/clickhouse/tables/{uuid}/{shard}` and `{replica}`. These can be changed in the server settings [default_replica_path](/reference/settings/server-settings/settings#default_replica_path) and [default_replica_name](/reference/settings/server-settings/settings#default_replica_name). Macro `{uuid}` is unfolded to table's uuid, `{shard}` and `{replica}` are unfolded to values from server config, not from database engine arguments. But in the future, it will be possible to use `shard_name` and `replica_name` of Replicated database.
+For [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/replication) tables if no arguments provided, then default arguments are used: `/clickhouse/tables/{uuid}/{shard}` and `{replica}`. These can be changed in the server settings [default_replica_path](/core/reference/settings/server-settings/settings#default_replica_path) and [default_replica_name](/core/reference/settings/server-settings/settings#default_replica_name). Macro `{uuid}` is unfolded to table's uuid, `{shard}` and `{replica}` are unfolded to values from server config, not from database engine arguments. But in the future, it will be possible to use `shard_name` and `replica_name` of Replicated database.
Auxiliary ZooKeeper cluster is also supported for storing metadata of a replicated database instead of using the default ZooKeeper cluster. We can use SQL to create the replicated database with auxiliary ZooKeeper cluster as follows:
@@ -37,19 +37,19 @@ CREATE DATABASE database_name ENGINE = Replicated('zookeeper_name_configured_in_
## Specifics and recommendations {#specifics-and-recommendations}
-DDL queries with `Replicated` database work in a similar way to [ON CLUSTER](/reference/statements/distributed-ddl) queries, but with minor differences.
+DDL queries with `Replicated` database work in a similar way to [ON CLUSTER](/core/reference/statements/distributed-ddl) queries, but with minor differences.
-First, the DDL request tries to execute on the initiator (the host that originally received the request from the user). If the request is not fulfilled, then the user immediately receives an error, other hosts do not try to fulfill it. If the request has been successfully completed on the initiator, then all other hosts will automatically retry until they complete it. The initiator will try to wait for the query to be completed on other hosts (no longer than [distributed_ddl_task_timeout](/reference/settings/session-settings#distributed_ddl_task_timeout)) and will return a table with the query execution statuses on each host.
+First, the DDL request tries to execute on the initiator (the host that originally received the request from the user). If the request is not fulfilled, then the user immediately receives an error, other hosts do not try to fulfill it. If the request has been successfully completed on the initiator, then all other hosts will automatically retry until they complete it. The initiator will try to wait for the query to be completed on other hosts (no longer than [distributed_ddl_task_timeout](/core/reference/settings/session-settings#distributed_ddl_task_timeout)) and will return a table with the query execution statuses on each host.
-The behavior in case of errors is regulated by the [distributed_ddl_output_mode](/reference/settings/session-settings#distributed_ddl_output_mode) setting, for a `Replicated` database it is better to set it to `null_status_on_timeout` — i.e. if some hosts did not have time to execute the request for [distributed_ddl_task_timeout](/reference/settings/session-settings#distributed_ddl_task_timeout), then do not throw an exception, but show the `NULL` status for them in the table.
+The behavior in case of errors is regulated by the [distributed_ddl_output_mode](/core/reference/settings/session-settings#distributed_ddl_output_mode) setting, for a `Replicated` database it is better to set it to `null_status_on_timeout` — i.e. if some hosts did not have time to execute the request for [distributed_ddl_task_timeout](/core/reference/settings/session-settings#distributed_ddl_task_timeout), then do not throw an exception, but show the `NULL` status for them in the table.
-The [system.clusters](/reference/system-tables/clusters) system table contains a cluster named like the replicated database, which consists of all replicas of the database. This cluster is updated automatically when creating/deleting replicas, and it can be used for [Distributed](/reference/engines/table-engines/special/distributed) tables.
+The [system.clusters](/core/reference/system-tables/clusters) system table contains a cluster named like the replicated database, which consists of all replicas of the database. This cluster is updated automatically when creating/deleting replicas, and it can be used for [Distributed](/core/reference/engines/table-engines/special/distributed) tables.
When creating a new replica of the database, this replica creates tables by itself. If the replica has been unavailable for a long time and has lagged behind the replication log — it checks its local metadata with the current metadata in ZooKeeper, moves the extra tables with data to a separate non-replicated database (so as not to accidentally delete anything superfluous), creates the missing tables, updates the table names if they have been renamed. The data is replicated at the `ReplicatedMergeTree` level, i.e. if the table is not replicated, the data will not be replicated (the database is responsible only for metadata).
-[`ALTER TABLE FREEZE|ATTACH|FETCH|DROP|DROP DETACHED|DETACH PARTITION|PART`](/reference/statements/alter/partition) queries are allowed but not replicated. The database engine will only add/fetch/remove the partition/part to the current replica. However, if the table itself uses a Replicated table engine, then the data will be replicated after using `ATTACH`.
+[`ALTER TABLE FREEZE|ATTACH|FETCH|DROP|DROP DETACHED|DETACH PARTITION|PART`](/core/reference/statements/alter/partition) queries are allowed but not replicated. The database engine will only add/fetch/remove the partition/part to the current replica. However, if the table itself uses a Replicated table engine, then the data will be replicated after using `ATTACH`.
-In case you need only configure a cluster without maintaining table replication, refer to [Cluster Discovery](/guides/oss/deployment-and-scaling/cluster-discovery) feature.
+In case you need only configure a cluster without maintaining table replication, refer to [Cluster Discovery](/core/guides/oss/deployment-and-scaling/cluster-discovery) feature.
## Usage example {#usage-example}
diff --git a/reference/engines/database-engines/shared.mdx b/core/reference/engines/database-engines/shared.mdx
similarity index 100%
rename from reference/engines/database-engines/shared.mdx
rename to core/reference/engines/database-engines/shared.mdx
diff --git a/reference/engines/database-engines/sqlite.mdx b/core/reference/engines/database-engines/sqlite.mdx
similarity index 74%
rename from reference/engines/database-engines/sqlite.mdx
rename to core/reference/engines/database-engines/sqlite.mdx
index 5e1181a0..9ddcb96c 100644
--- a/reference/engines/database-engines/sqlite.mdx
+++ b/core/reference/engines/database-engines/sqlite.mdx
@@ -26,22 +26,22 @@ The table below shows the default type mapping when ClickHouse automatically inf
| SQLite | ClickHouse |
|---------------|---------------------------------------------------------|
-| INTEGER | [Int32](/reference/data-types/int-uint) |
-| REAL | [Float32](/reference/data-types/float) |
-| TEXT | [String](/reference/data-types/string) |
-| TEXT | [UUID](/reference/data-types/uuid) |
-| BLOB | [String](/reference/data-types/string) |
-
-When you explicitly define a table with specific ClickHouse types using the [SQLite table engine](/reference/engines/table-engines/integrations/sqlite), the following ClickHouse types can be parsed from SQLite TEXT columns:
-
-- [Date](/reference/data-types/date), [Date32](/reference/data-types/date32)
-- [DateTime](/reference/data-types/datetime), [DateTime64](/reference/data-types/datetime64)
-- [UUID](/reference/data-types/uuid)
-- [Enum8, Enum16](/reference/data-types/enum)
-- [Decimal32, Decimal64, Decimal128, Decimal256](/reference/data-types/decimal)
-- [FixedString](/reference/data-types/fixedstring)
-- All integer types ([UInt8, UInt16, UInt32, UInt64, Int8, Int16, Int32, Int64](/reference/data-types/int-uint))
-- [Float32, Float64](/reference/data-types/float)
+| INTEGER | [Int32](/core/reference/data-types/int-uint) |
+| REAL | [Float32](/core/reference/data-types/float) |
+| TEXT | [String](/core/reference/data-types/string) |
+| TEXT | [UUID](/core/reference/data-types/uuid) |
+| BLOB | [String](/core/reference/data-types/string) |
+
+When you explicitly define a table with specific ClickHouse types using the [SQLite table engine](/core/reference/engines/table-engines/integrations/sqlite), the following ClickHouse types can be parsed from SQLite TEXT columns:
+
+- [Date](/core/reference/data-types/date), [Date32](/core/reference/data-types/date32)
+- [DateTime](/core/reference/data-types/datetime), [DateTime64](/core/reference/data-types/datetime64)
+- [UUID](/core/reference/data-types/uuid)
+- [Enum8, Enum16](/core/reference/data-types/enum)
+- [Decimal32, Decimal64, Decimal128, Decimal256](/core/reference/data-types/decimal)
+- [FixedString](/core/reference/data-types/fixedstring)
+- All integer types ([UInt8, UInt16, UInt32, UInt64, Int8, Int16, Int32, Int64](/core/reference/data-types/int-uint))
+- [Float32, Float64](/core/reference/data-types/float)
SQLite has dynamic typing, and its type access functions perform automatic type coercion. For example, reading a TEXT column as an integer will return 0 if the text cannot be parsed as a number. This means that if a ClickHouse table is defined with a different type than the underlying SQLite column, values may be silently coerced rather than causing an error.
diff --git a/reference/engines/engines.mdx b/core/reference/engines/engines.mdx
similarity index 54%
rename from reference/engines/engines.mdx
rename to core/reference/engines/engines.mdx
index 14b15114..ddf8a35d 100644
--- a/reference/engines/engines.mdx
+++ b/core/reference/engines/engines.mdx
@@ -7,5 +7,5 @@ doc_type: 'landing-page'
| Page | Description |
|----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Database Engines](/reference/engines/database-engines) | Database engines in ClickHouse allow you to work with tables and determine how data is stored and managed. Learn more about the various database engines available in ClickHouse. |
-| [Table Engines](/reference/engines/table-engines) | Table engines in ClickHouse are a fundamental concept that determines how data is stored, written, and read. Learn more about the various table engines available in ClickHouse. |
+| [Database Engines](/core/reference/engines/database-engines) | Database engines in ClickHouse allow you to work with tables and determine how data is stored and managed. Learn more about the various database engines available in ClickHouse. |
+| [Table Engines](/core/reference/engines/table-engines) | Table engines in ClickHouse are a fundamental concept that determines how data is stored, written, and read. Learn more about the various table engines available in ClickHouse. |
diff --git a/core/reference/engines/table-engines/index.mdx b/core/reference/engines/table-engines/index.mdx
new file mode 100644
index 00000000..7e538c65
--- /dev/null
+++ b/core/reference/engines/table-engines/index.mdx
@@ -0,0 +1,112 @@
+---
+description: 'Documentation for Table Engines'
+slug: /engines/table-engines/
+toc_folder_title: 'Table Engines'
+toc_priority: 26
+toc_title: 'Introduction'
+title: 'Table Engines'
+doc_type: 'reference'
+---
+
+The table engine (type of table) determines:
+
+- How and where data is stored, where to write it to, and where to read it from.
+- Which queries are supported, and how.
+- Concurrent data access.
+- Use of indexes, if present.
+- Whether multithread request execution is possible.
+- Data replication parameters.
+
+## Engine families {#engine-families}
+
+### MergeTree {#mergetree}
+
+The most universal and functional table engines for high-load tasks. The property shared by these engines is quick data insertion with subsequent background data processing. `MergeTree` family engines support data replication (with [Replicated\*](/core/reference/engines/table-engines/mergetree-family/replication) versions of engines), partitioning, secondary data-skipping indexes, and other features not supported in other engines.
+
+Engines in the family:
+
+| MergeTree Engines |
+|-------------------------------------------------------------------------------------------------------------------------------------------|
+| [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) |
+| [ReplacingMergeTree](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) |
+| [SummingMergeTree](/core/reference/engines/table-engines/mergetree-family/summingmergetree) |
+| [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) |
+| [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) |
+| [VersionedCollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) |
+| [GraphiteMergeTree](/core/reference/engines/table-engines/mergetree-family/graphitemergetree) |
+| [CoalescingMergeTree](/core/reference/engines/table-engines/mergetree-family/coalescingmergetree) |
+
+### Log {#log}
+
+Lightweight [engines](/core/reference/engines/table-engines/log-family) with minimum functionality. They're the most effective when you need to quickly write many small tables (up to approximately 1 million rows) and read them later as a whole.
+
+Engines in the family:
+
+| Log Engines |
+|----------------------------------------------------------------------------|
+| [TinyLog](/core/reference/engines/table-engines/log-family/tinylog) |
+| [StripeLog](/core/reference/engines/table-engines/log-family/stripelog) |
+| [Log](/core/reference/engines/table-engines/log-family/log) |
+
+### Integration engines {#integration-engines}
+
+Engines for communicating with other data storage and processing systems.
+
+Engines in the family:
+
+| Integration Engines |
+|---------------------------------------------------------------------------------|
+| [ODBC](/core/reference/engines/table-engines/integrations/odbc) |
+| [JDBC](/core/reference/engines/table-engines/integrations/jdbc) |
+| [MySQL](/core/reference/engines/table-engines/integrations/mysql) |
+| [MongoDB](/core/reference/engines/table-engines/integrations/mongodb) |
+| [Redis](/core/reference/engines/table-engines/integrations/redis) |
+| [HDFS](/core/reference/engines/table-engines/integrations/hdfs) |
+| [S3](/core/reference/engines/table-engines/integrations/s3) |
+| [Kafka](/core/reference/engines/table-engines/integrations/kafka) |
+| [EmbeddedRocksDB](/core/reference/engines/table-engines/integrations/embedded-rocksdb) |
+| [RabbitMQ](/core/reference/engines/table-engines/integrations/rabbitmq) |
+| [PostgreSQL](/core/reference/engines/table-engines/integrations/postgresql) |
+| [S3Queue](/core/reference/engines/table-engines/integrations/s3queue) |
+| [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) |
+
+### Special engines {#special-engines}
+
+Engines in the family:
+
+| Special Engines |
+|---------------------------------------------------------------|
+| [Distributed](/core/reference/engines/table-engines/special/distributed) |
+| [Dictionary](/core/reference/engines/table-engines/special/dictionary) |
+| [Merge](/core/reference/engines/table-engines/special/merge) |
+| [Executable](/core/reference/engines/table-engines/special/executable) |
+| [File](/core/reference/engines/table-engines/special/file) |
+| [Null](/core/reference/engines/table-engines/special/null) |
+| [Set](/core/reference/engines/table-engines/special/set) |
+| [Join](/core/reference/engines/table-engines/special/join) |
+| [URL](/core/reference/engines/table-engines/special/url) |
+| [View](/core/reference/engines/table-engines/special/view) |
+| [Memory](/core/reference/engines/table-engines/special/memory) |
+| [Buffer](/core/reference/engines/table-engines/special/buffer) |
+| [External Data](/core/reference/engines/table-engines/special/external-data) |
+| [GenerateRandom](/core/reference/engines/table-engines/special/generate) |
+| [KeeperMap](/core/reference/engines/table-engines/special/keepermap) |
+| [FileLog](/core/reference/engines/table-engines/special/filelog) |
+
+## Virtual columns {#table_engines-virtual_columns}
+
+A virtual column is an integral table engine attribute that is defined in the engine source code.
+
+You shouldn't specify virtual columns in the `CREATE TABLE` query, and you can't see them in `SHOW CREATE TABLE` and `DESCRIBE TABLE` query results. Virtual columns are also read-only, so you can't insert data into virtual columns.
+
+To select data from a virtual column, you must specify its name in the `SELECT` query. `SELECT *` does not return values from virtual columns.
+
+If you create a table with a column that has the same name as one of the table virtual columns, the virtual column becomes inaccessible. We do not recommend doing this. To help avoid conflicts, virtual column names are usually prefixed with an underscore.
+
+- `_table` — Contains the name of the table from which data was read. Type: [String](/core/reference/data-types/string).
+
+ Regardless of the table engine being used, each table includes a universal virtual column named `_table`.
+
+ When querying a table with the merge table engine, you can set the constant conditions on `_table` in the `WHERE/PREWHERE` clause (for example, `WHERE _table='xyz'`). In this case the read operation is performed only for that tables where the condition on `_table` is satisfied, so the `_table` column acts as an index.
+
+ When using queries formatted like `SELECT ... FROM (... UNION ALL ...)`, we can determine which actual table the returned rows originate from by specifying the `_table` column.
diff --git a/reference/engines/table-engines/integrations/ExternalDistributed.mdx b/core/reference/engines/table-engines/integrations/ExternalDistributed.mdx
similarity index 75%
rename from reference/engines/table-engines/integrations/ExternalDistributed.mdx
rename to core/reference/engines/table-engines/integrations/ExternalDistributed.mdx
index 054453b0..da0802fc 100644
--- a/reference/engines/table-engines/integrations/ExternalDistributed.mdx
+++ b/core/reference/engines/table-engines/integrations/ExternalDistributed.mdx
@@ -8,7 +8,7 @@ title: 'ExternalDistributed table engine'
doc_type: 'reference'
---
-The `ExternalDistributed` engine allows to perform `SELECT` queries on data that is stored on a remote servers MySQL or PostgreSQL. Accepts [MySQL](/reference/engines/table-engines/integrations/mysql) or [PostgreSQL](/reference/engines/table-engines/integrations/postgresql) engines as an argument so sharding is possible.
+The `ExternalDistributed` engine allows to perform `SELECT` queries on data that is stored on a remote servers MySQL or PostgreSQL. Accepts [MySQL](/core/reference/engines/table-engines/integrations/mysql) or [PostgreSQL](/core/reference/engines/table-engines/integrations/postgresql) engines as an argument so sharding is possible.
## Creating a table {#creating-a-table}
@@ -21,12 +21,12 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
) ENGINE = ExternalDistributed('engine', 'host:port', 'database', 'table', 'user', 'password');
```
-See a detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See a detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
The table structure can differ from the original table structure:
- Column names should be the same as in the original table, but you can use just some of these columns and in any order.
-- Column types may differ from those in the original table. ClickHouse tries to [cast](/reference/functions/regular-functions/type-conversion-functions#CAST) values to the ClickHouse data types.
+- Column types may differ from those in the original table. ClickHouse tries to [cast](/core/reference/functions/regular-functions/type-conversion-functions#CAST) values to the ClickHouse data types.
**Engine Parameters**
@@ -51,6 +51,6 @@ You can specify any number of shards and any number of replicas for each shard.
**See Also**
-- [MySQL table engine](/reference/engines/table-engines/integrations/mysql)
-- [PostgreSQL table engine](/reference/engines/table-engines/integrations/postgresql)
-- [Distributed table engine](/reference/engines/table-engines/special/distributed)
+- [MySQL table engine](/core/reference/engines/table-engines/integrations/mysql)
+- [PostgreSQL table engine](/core/reference/engines/table-engines/integrations/postgresql)
+- [Distributed table engine](/core/reference/engines/table-engines/special/distributed)
diff --git a/reference/engines/table-engines/integrations/arrowflight.mdx b/core/reference/engines/table-engines/integrations/arrowflight.mdx
similarity index 96%
rename from reference/engines/table-engines/integrations/arrowflight.mdx
rename to core/reference/engines/table-engines/integrations/arrowflight.mdx
index 88f46398..cfe348ac 100644
--- a/reference/engines/table-engines/integrations/arrowflight.mdx
+++ b/core/reference/engines/table-engines/integrations/arrowflight.mdx
@@ -60,4 +60,4 @@ SELECT * FROM remote_flight_data ORDER BY id;
## See Also {#see-also}
* [Apache Arrow Flight SQL](https://arrow.apache.org/docs/format/FlightSql.html)
-* [Arrow format integration in ClickHouse](/reference/formats/Arrow/Arrow)
+* [Arrow format integration in ClickHouse](/core/reference/formats/Arrow/Arrow)
diff --git a/reference/engines/table-engines/integrations/azure-queue.mdx b/core/reference/engines/table-engines/integrations/azure-queue.mdx
similarity index 89%
rename from reference/engines/table-engines/integrations/azure-queue.mdx
rename to core/reference/engines/table-engines/integrations/azure-queue.mdx
index 9ef1ccc2..4006cdff 100644
--- a/reference/engines/table-engines/integrations/azure-queue.mdx
+++ b/core/reference/engines/table-engines/integrations/azure-queue.mdx
@@ -23,9 +23,9 @@ CREATE TABLE test (name String, value UInt32)
**Engine parameters**
-`AzureQueue` parameters are the same as `AzureBlobStorage` table engine supports. See parameters section [here](/reference/engines/table-engines/integrations/azureBlobStorage).
+`AzureQueue` parameters are the same as `AzureBlobStorage` table engine supports. See parameters section [here](/core/reference/engines/table-engines/integrations/azureBlobStorage).
-Similar to the [AzureBlobStorage](/reference/engines/table-engines/integrations/azureBlobStorage) table engine, users can use Azurite emulator for local Azure Storage development. Further details [here](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azurite?tabs=docker-hub%2Cblob-storage).
+Similar to the [AzureBlobStorage](/core/reference/engines/table-engines/integrations/azureBlobStorage) table engine, users can use Azurite emulator for local Azure Storage development. Further details [here](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azurite?tabs=docker-hub%2Cblob-storage).
**Example**
@@ -41,7 +41,7 @@ SETTINGS mode = 'unordered'
## Settings {#settings}
-The set of supported settings is mostly the same as for `S3Queue` table engine, but without `s3queue_` prefix. See [full list of settings settings](/reference/engines/table-engines/integrations/s3queue#settings).
+The set of supported settings is mostly the same as for `S3Queue` table engine, but without `s3queue_` prefix. See [full list of settings settings](/core/reference/engines/table-engines/integrations/s3queue#settings).
To get a list of settings, configured for the table, use `system.azure_queue_settings` table. Available from `24.10`.
Below are the settings only compatible with AzureQueue and not applicable for S3Queue.
@@ -90,7 +90,7 @@ The AzureQueue engine has a special setting for SELECT queries: `commit_on_selec
## Description {#description}
-`SELECT` is not particularly useful for streaming import (except for debugging), because each file can be imported only once. It is more practical to create real-time threads using [materialized views](/reference/statements/create/view). To do this:
+`SELECT` is not particularly useful for streaming import (except for debugging), because each file can be imported only once. It is more practical to create real-time threads using [materialized views](/core/reference/statements/create/view). To do this:
1. Use the engine to create a table for consuming from specified path in S3 and consider it a data stream.
2. Create a table with the desired structure.
@@ -120,13 +120,13 @@ SELECT * FROM stats ORDER BY key;
- `_path` — Path to the file.
- `_file` — Name of the file.
-For more information about virtual columns see [here](/reference/engines/table-engines#table_engines-virtual_columns).
+For more information about virtual columns see [here](/core/reference/engines/table-engines#table_engines-virtual_columns).
## Introspection {#introspection}
Enable logging for the table via the table setting `enable_logging_to_queue_log=1`.
-Introspection capabilities are the same as the [S3Queue table engine](/reference/engines/table-engines/integrations/s3queue#introspection) with several distinct differences:
+Introspection capabilities are the same as the [S3Queue table engine](/core/reference/engines/table-engines/integrations/s3queue#introspection) with several distinct differences:
1. Use the `system.azure_queue_metadata_cache` for the in-memory state of the queue for server versions >= 25.1. For older versions use the `system.s3queue_metadata_cache` (it would contain information for `azure` tables as well).
2. Enable the `system.azure_queue_log` via the main ClickHouse configuration e.g.
diff --git a/reference/engines/table-engines/integrations/azureBlobStorage.mdx b/core/reference/engines/table-engines/integrations/azureBlobStorage.mdx
similarity index 93%
rename from reference/engines/table-engines/integrations/azureBlobStorage.mdx
rename to core/reference/engines/table-engines/integrations/azureBlobStorage.mdx
index 944f1de3..42ed802c 100644
--- a/reference/engines/table-engines/integrations/azureBlobStorage.mdx
+++ b/core/reference/engines/table-engines/integrations/azureBlobStorage.mdx
@@ -26,7 +26,7 @@ CREATE TABLE azure_blob_storage_table (name String, value UInt32)
- `blobpath` - file path. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings.
- `account_name` - if storage_account_url is used, then account name can be specified here
- `account_key` - if storage_account_url is used, then account key can be specified here
-- `format` — The [format](/reference/formats) of the file.
+- `format` — The [format](/core/reference/formats) of the file.
- `compression` — Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. By default, it will autodetect compression by file extension. (same as setting to `auto`).
- `partition_strategy` – Options: `WILDCARD` or `HIVE`. `WILDCARD` requires a `{_partition_id}` in the path, which is replaced with the partition key. `HIVE` does not allow wildcards, assumes the path is the table root, and generates Hive-style partitioned directories with Snowflake IDs as filenames and the file format as the extension. Defaults to `WILDCARD`
- `partition_columns_in_data_file` - Only used with `HIVE` partition strategy. Tells ClickHouse whether to expect partition columns to be written in the data file. Defaults `false`.
@@ -64,13 +64,13 @@ SELECT * FROM test_table;
Currently there are 3 ways to authenticate:
- `Managed Identity` - Can be used by providing an `endpoint`, `connection_string` or `storage_account_url`.
-- `SAS Token` - Can be used by providing an `endpoint`, `connection_string` or `storage_account_url`. It is identified by presence of '?' in the url. See [azureBlobStorage](/reference/functions/table-functions/azureBlobStorage#using-shared-access-signatures-sas-sas-tokens) for examples.
+- `SAS Token` - Can be used by providing an `endpoint`, `connection_string` or `storage_account_url`. It is identified by presence of '?' in the url. See [azureBlobStorage](/core/reference/functions/table-functions/azureBlobStorage#using-shared-access-signatures-sas-sas-tokens) for examples.
- `Workload Identity` - Can be used by providing an `endpoint` or `storage_account_url`. If `use_workload_identity` parameter is set in config, ([workload identity](https://github.com/Azure/azure-sdk-for-cpp/tree/main/sdk/identity/azure-identity#authenticate-azure-hosted-applications)) is used for authentication.
### Data cache {#data-cache}
`Azure` table engine supports data caching on local disk.
-See filesystem cache configuration options and usage in this [section](/concepts/features/configuration/server-config/storing-data#using-local-cache).
+See filesystem cache configuration options and usage in this [section](/core/concepts/features/configuration/server-config/storing-data#using-local-cache).
Caching is made depending on the path and ETag of the storage object, so clickhouse will not read a stale cache version.
To enable caching use a setting `filesystem_cache_name = ''` and `enable_filesystem_cache = 1`.
@@ -94,13 +94,13 @@ SETTINGS filesystem_cache_name = 'cache_for_azure', enable_filesystem_cache = 1;
```
-2. reuse cache configuration (and therefore cache storage) from clickhouse `storage_configuration` section, [described here](/concepts/features/configuration/server-config/storing-data#using-local-cache)
+2. reuse cache configuration (and therefore cache storage) from clickhouse `storage_configuration` section, [described here](/core/concepts/features/configuration/server-config/storing-data#using-local-cache)
### PARTITION BY {#partition-by}
`PARTITION BY` — Optional. In most cases you don't need a partition key, and if it is needed you generally don't need a partition key more granular than by month. Partitioning does not speed up queries (in contrast to the ORDER BY expression). You should never use too granular partitioning. Don't partition your data by client identifiers or names (instead, make client identifier or name the first column in the ORDER BY expression).
-For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
+For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/core/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
#### Partition strategy {#partition-strategy}
@@ -127,4 +127,4 @@ arthur :) select _path, * from azure_table;
## See also {#see-also}
-[Azure Blob Storage Table Function](/reference/functions/table-functions/azureBlobStorage)
+[Azure Blob Storage Table Function](/core/reference/functions/table-functions/azureBlobStorage)
diff --git a/reference/engines/table-engines/integrations/deltalake.mdx b/core/reference/engines/table-engines/integrations/deltalake.mdx
similarity index 94%
rename from reference/engines/table-engines/integrations/deltalake.mdx
rename to core/reference/engines/table-engines/integrations/deltalake.mdx
index 348ee7df..6d44b303 100644
--- a/reference/engines/table-engines/integrations/deltalake.mdx
+++ b/core/reference/engines/table-engines/integrations/deltalake.mdx
@@ -29,7 +29,7 @@ ENGINE = DeltaLake(url, [aws_access_key_id, aws_secret_access_key,] [extra_crede
- `aws_access_key_id`, `aws_secret_access_key` - Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. Parameter is optional. If credentials are not specified, they are used from the configuration file.
- `extra_credentials` - Optional. Used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps.
-Engine parameters can be specified using [Named Collections](/concepts/features/configuration/server-config/named-collections).
+Engine parameters can be specified using [Named Collections](/core/concepts/features/configuration/server-config/named-collections).
**Example**
@@ -136,8 +136,8 @@ Writes to Azure are not yet supported but work for S3 and GCS.
### Data cache {#data-cache}
-The `DeltaLake` table engine and table function support data caching, the same as `S3`, `AzureBlobStorage`, `HDFS` storages. See ["S3 table engine"](/reference/engines/table-engines/integrations/s3#data-cache) for more details.
+The `DeltaLake` table engine and table function support data caching, the same as `S3`, `AzureBlobStorage`, `HDFS` storages. See ["S3 table engine"](/core/reference/engines/table-engines/integrations/s3#data-cache) for more details.
## See also {#see-also}
-- [deltaLake table function](/reference/functions/table-functions/deltalake)
+- [deltaLake table function](/core/reference/functions/table-functions/deltalake)
diff --git a/reference/engines/table-engines/integrations/embedded-rocksdb.mdx b/core/reference/engines/table-engines/integrations/embedded-rocksdb.mdx
similarity index 97%
rename from reference/engines/table-engines/integrations/embedded-rocksdb.mdx
rename to core/reference/engines/table-engines/integrations/embedded-rocksdb.mdx
index 066b1940..a5086066 100644
--- a/reference/engines/table-engines/integrations/embedded-rocksdb.mdx
+++ b/core/reference/engines/table-engines/integrations/embedded-rocksdb.mdx
@@ -222,5 +222,5 @@ ORDER BY key ASC
```
### More information on Joins {#more-information-on-joins}
-- [`join_algorithm` setting](/reference/settings/session-settings#join_algorithm)
-- [JOIN clause](/reference/statements/select/join)
+- [`join_algorithm` setting](/core/reference/settings/session-settings#join_algorithm)
+- [JOIN clause](/core/reference/statements/select/join)
diff --git a/reference/engines/table-engines/integrations/hdfs.mdx b/core/reference/engines/table-engines/integrations/hdfs.mdx
similarity index 90%
rename from reference/engines/table-engines/integrations/hdfs.mdx
rename to core/reference/engines/table-engines/integrations/hdfs.mdx
index 04bbc3b4..13c4110c 100644
--- a/reference/engines/table-engines/integrations/hdfs.mdx
+++ b/core/reference/engines/table-engines/integrations/hdfs.mdx
@@ -12,7 +12,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
-This engine provides integration with the [Apache Hadoop](https://en.wikipedia.org/wiki/Apache_Hadoop) ecosystem by allowing to manage data on [HDFS](https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsDesign.html) via ClickHouse. This engine is similar to the [File](/reference/engines/table-engines/special/file) and [URL](/reference/engines/table-engines/special/url) engines, but provides Hadoop-specific features.
+This engine provides integration with the [Apache Hadoop](https://en.wikipedia.org/wiki/Apache_Hadoop) ecosystem by allowing to manage data on [HDFS](https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsDesign.html) via ClickHouse. This engine is similar to the [File](/core/reference/engines/table-engines/special/file) and [URL](/core/reference/engines/table-engines/special/url) engines, but provides Hadoop-specific features.
This feature is not supported by ClickHouse engineers, and it is known to have a sketchy quality. In case of any problems, fix them yourself and submit a pull request.
@@ -28,14 +28,14 @@ ENGINE = HDFS(URI, format)
- `format` - specifies one of the available file formats. To perform
`SELECT` queries, the format must be supported for input, and to perform
`INSERT` queries – for output. The available formats are listed in the
-[Formats](/reference/formats#formats-overview) section.
+[Formats](/core/reference/formats#formats-overview) section.
- [PARTITION BY expr]
### PARTITION BY {#partition-by}
`PARTITION BY` — Optional. In most cases you don't need a partition key, and if it is needed you generally don't need a partition key more granular than by month. Partitioning does not speed up queries (in contrast to the ORDER BY expression). You should never use too granular partitioning. Don't partition your data by client identifiers or names (instead, make client identifier or name the first column in the ORDER BY expression).
-For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
+For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/core/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
**Example:**
@@ -70,7 +70,7 @@ SELECT * FROM hdfs_engine_table LIMIT 2
- Not supported:
- `ALTER` and `SELECT...SAMPLE` operations.
- Indexes.
- - [Zero-copy](/concepts/features/configuration/server-config/storing-data#zero-copy) replication is possible, but not recommended.
+ - [Zero-copy](/core/concepts/features/configuration/server-config/storing-data#zero-copy) replication is possible, but not recommended.
**Zero-copy replication is not ready for production**
@@ -87,7 +87,7 @@ Multiple path components can have globs. For being processed file should exists
- `{some_string,another_string,yet_another_one}` — Substitutes any of strings `'some_string', 'another_string', 'yet_another_one'`.
- `{N..M}` — Substitutes any number in range from N to M including both borders.
-Constructions with `{}` are similar to the [remote](/reference/functions/table-functions/remote) table function.
+Constructions with `{}` are similar to the [remote](/core/reference/functions/table-functions/remote) table function.
**Example**
@@ -243,10 +243,10 @@ libhdfs3 support HDFS namenode HA.
## Storage settings {#storage-settings}
-- [hdfs_truncate_on_insert](/reference/settings/session-settings#hdfs_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
-- [hdfs_create_new_file_on_insert](/reference/settings/session-settings#hdfs_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
-- [hdfs_skip_empty_files](/reference/settings/session-settings#hdfs_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
+- [hdfs_truncate_on_insert](/core/reference/settings/session-settings#hdfs_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
+- [hdfs_create_new_file_on_insert](/core/reference/settings/session-settings#hdfs_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
+- [hdfs_skip_empty_files](/core/reference/settings/session-settings#hdfs_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
**See Also**
-- [Virtual columns](/reference/engines/table-engines#table_engines-virtual_columns)
+- [Virtual columns](/core/reference/engines/table-engines#table_engines-virtual_columns)
diff --git a/reference/engines/table-engines/integrations/hive.mdx b/core/reference/engines/table-engines/integrations/hive.mdx
similarity index 99%
rename from reference/engines/table-engines/integrations/hive.mdx
rename to core/reference/engines/table-engines/integrations/hive.mdx
index 0c5dd017..0a498b97 100644
--- a/reference/engines/table-engines/integrations/hive.mdx
+++ b/core/reference/engines/table-engines/integrations/hive.mdx
@@ -30,7 +30,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
) ENGINE = Hive('thrift://host:port', 'database', 'table');
PARTITION BY expr
```
-See a detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See a detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
The table structure can differ from the original Hive table structure:
- Column names should be the same as in the original Hive table, but you can use just some of these columns and in any order, also you can use some alias columns calculated from other columns.
diff --git a/reference/engines/table-engines/integrations/hudi.mdx b/core/reference/engines/table-engines/integrations/hudi.mdx
similarity index 93%
rename from reference/engines/table-engines/integrations/hudi.mdx
rename to core/reference/engines/table-engines/integrations/hudi.mdx
index d59700c7..24d3f6aa 100644
--- a/reference/engines/table-engines/integrations/hudi.mdx
+++ b/core/reference/engines/table-engines/integrations/hudi.mdx
@@ -24,7 +24,7 @@ CREATE TABLE hudi_table
- `aws_access_key_id`, `aws_secret_access_key` - Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. Parameter is optional. If credentials are not specified, they are used from the configuration file.
- `extra_credentials` - Optional. Used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps.
-Engine parameters can be specified using [Named Collections](/concepts/features/configuration/server-config/named-collections).
+Engine parameters can be specified using [Named Collections](/core/concepts/features/configuration/server-config/named-collections).
**Example**
@@ -52,4 +52,4 @@ CREATE TABLE hudi_table ENGINE=Hudi(hudi_conf, filename = 'test_table')
## See also {#see-also}
-- [hudi table function](/reference/functions/table-functions/hudi)
+- [hudi table function](/core/reference/functions/table-functions/hudi)
diff --git a/reference/engines/table-engines/integrations/iceberg.mdx b/core/reference/engines/table-engines/integrations/iceberg.mdx
similarity index 96%
rename from reference/engines/table-engines/integrations/iceberg.mdx
rename to core/reference/engines/table-engines/integrations/iceberg.mdx
index 2bcdcb1f..a9af580a 100644
--- a/reference/engines/table-engines/integrations/iceberg.mdx
+++ b/core/reference/engines/table-engines/integrations/iceberg.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
---
-We recommend using the [Iceberg Table Function](/reference/functions/table-functions/iceberg) for working with Iceberg data in ClickHouse. The Iceberg Table Function currently provides sufficient functionality, offering a partial read-only interface for Iceberg tables.
+We recommend using the [Iceberg Table Function](/core/reference/functions/table-functions/iceberg) for working with Iceberg data in ClickHouse. The Iceberg Table Function currently provides sufficient functionality, offering a partial read-only interface for Iceberg tables.
The Iceberg Table Engine is available but may have limitations. ClickHouse wasn't originally designed to support tables with externally changing schemas, which can affect the functionality of the Iceberg Table Engine. As a result, some features that work with regular tables may be unavailable or may not function correctly, especially when using the old analyzer.
@@ -42,7 +42,7 @@ Description of the arguments coincides with description of arguments in engines
For `IcebergS3`, an optional `extra_credentials` parameter can be used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps.
-Engine parameters can be specified using [Named Collections](/concepts/features/configuration/server-config/named-collections)
+Engine parameters can be specified using [Named Collections](/core/concepts/features/configuration/server-config/named-collections)
### Example {#example}
@@ -321,7 +321,7 @@ CREATE TABLE example_table ENGINE = Iceberg(
## Data cache {#data-cache}
-`Iceberg` table engine and table function support data caching same as `S3`, `AzureBlobStorage`, `HDFS` storages. See [here](/reference/engines/table-engines/integrations/s3#data-cache).
+`Iceberg` table engine and table function support data caching same as `S3`, `AzureBlobStorage`, `HDFS` storages. See [here](/core/reference/engines/table-engines/integrations/s3#data-cache).
## Metadata cache {#metadata-cache}
@@ -357,4 +357,4 @@ SETTINGS iceberg_metadata_staleness_ms=120000
## See also {#see-also}
-- [iceberg table function](/reference/functions/table-functions/iceberg)
+- [iceberg table function](/core/reference/functions/table-functions/iceberg)
diff --git a/core/reference/engines/table-engines/integrations/index.mdx b/core/reference/engines/table-engines/integrations/index.mdx
new file mode 100644
index 00000000..eeb29393
--- /dev/null
+++ b/core/reference/engines/table-engines/integrations/index.mdx
@@ -0,0 +1,47 @@
+---
+description: 'Documentation for Table Engines for Integrations'
+sidebarTitle: 'Integrations'
+slug: /engines/table-engines/integrations/
+title: 'Table Engines for Integrations'
+doc_type: 'reference'
+---
+
+ClickHouse provides various means for integrating with external systems, including table engines. Like with all other table engines, the configuration is done using `CREATE TABLE` or `ALTER TABLE` queries. Then from a user perspective, the configured integration looks like a normal table, but queries to it are proxied to the external system. This transparent querying is one of the key advantages of this approach over alternative integration methods, like dictionaries or table functions, which require the use of custom query methods on each use.
+
+{/* The table of contents table for this page is automatically generated by
+https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh
+from the YAML front matter fields: slug, description, title.
+
+If you've spotted an error, please edit the YML frontmatter of the pages themselves.
+*/}
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [AzureBlobStorage table engine](/core/reference/engines/table-engines/integrations/azureBlobStorage) | This engine provides an integration with Azure Blob Storage ecosystem. |
+| [DeltaLake table engine](/core/reference/engines/table-engines/integrations/deltalake) | This engine provides a read-only integration with existing Delta Lake tables in Amazon S3. |
+| [EmbeddedRocksDB table engine](/core/reference/engines/table-engines/integrations/embedded-rocksdb) | This engine allows integrating ClickHouse with RocksDB |
+| [ExternalDistributed table engine](/core/reference/engines/table-engines/integrations/ExternalDistributed) | The `ExternalDistributed` engine allows to perform `SELECT` queries on data that is stored on a remote servers MySQL or PostgreSQL. Accepts MySQL or PostgreSQL engines as an argument so sharding is possible. |
+| [TimeSeries table engine](/core/reference/engines/table-engines/integrations/time-series) | A table engine storing time series, i.e. a set of values associated with timestamps and tags (or labels). |
+| [HDFS table engine](/core/reference/engines/table-engines/integrations/hdfs) | This engine provides integration with the Apache Hadoop ecosystem by allowing to manage data on HDFS via ClickHouse. This engine is similar to the File and URL engines, but provides Hadoop-specific features. |
+| [Hive table engine](/core/reference/engines/table-engines/integrations/hive) | The Hive engine allows you to perform `SELECT` queries on HDFS Hive table. |
+| [Hudi table engine](/core/reference/engines/table-engines/integrations/hudi) | This engine provides a read-only integration with existing Apache Hudi tables in Amazon S3. |
+| [Iceberg table engine](/core/reference/engines/table-engines/integrations/iceberg) | This engine provides a read-only integration with existing Apache Iceberg tables in Amazon S3, Azure, HDFS and locally stored tables. |
+| [Paimon table engine](/core/reference/engines/table-engines/integrations/paimon) | This engine provides a read-only integration with existing Apache Paimon tables in Amazon S3, Azure, HDFS and locally stored tables. |
+| [JDBC table engine](/core/reference/engines/table-engines/integrations/jdbc) | Allows ClickHouse to connect to external databases via JDBC. |
+| [Kafka table engine](/core/reference/engines/table-engines/integrations/kafka) | The Kafka Table Engine can be used to publish works with Apache Kafka and lets you publish or subscribe to data flows, organize fault-tolerant storage, and process streams as they become available. |
+| [MaterializedPostgreSQL table engine](/core/reference/engines/table-engines/integrations/materialized-postgresql) | Creates a ClickHouse table with an initial data dump of a PostgreSQL table and starts the replication process. |
+| [MongoDB table engine](/core/reference/engines/table-engines/integrations/mongodb) | MongoDB engine is read-only table engine which allows to read data from a remote collection. |
+| [MySQL table engine](/core/reference/engines/table-engines/integrations/mysql) | Documentation for MySQL Table Engine |
+| [NATS table engine](/core/reference/engines/table-engines/integrations/nats) | This engine allows integrating ClickHouse with NATS to publish or subscribe to message subjects, and process new messages as they become available. |
+| [ODBC table engine](/core/reference/engines/table-engines/integrations/odbc) | Allows ClickHouse to connect to external databases via ODBC. |
+| [PostgreSQL table Engine](/core/reference/engines/table-engines/integrations/postgresql) | The PostgreSQL engine allows `SELECT` and `INSERT` queries on data stored on a remote PostgreSQL server. |
+| [RabbitMQ table engine](/core/reference/engines/table-engines/integrations/rabbitmq) | This engine allows integrating ClickHouse with RabbitMQ. |
+| [Redis table engine](/core/reference/engines/table-engines/integrations/redis) | This engine allows integrating ClickHouse with Redis. |
+| [S3 table engine](/core/reference/engines/table-engines/integrations/s3) | This engine provides integration with the Amazon S3 ecosystem. Similar to the HDFS engine, but provides S3-specific features. |
+| [S3Queue table engine](/core/reference/engines/table-engines/integrations/s3queue) | This engine provides integration with the Amazon S3 ecosystem and allows streaming imports. Similar to the Kafka and RabbitMQ engines, but provides S3-specific features. |
+| [AzureQueue table engine](/core/reference/engines/table-engines/integrations/azure-queue) | This engine provides an integration with the Azure Blob Storage ecosystem, allowing streaming data import. |
+| [YTsaurus table engine](/core/reference/engines/table-engines/integrations/ytsaurus) | Table engine that allows importing data from a YTsaurus cluster. |
+| [SQLite table engine](/core/reference/engines/table-engines/integrations/sqlite) | The engine allows to import and export data to SQLite and supports queries to SQLite tables directly from ClickHouse. |
+| [ArrowFlight table engine](/core/reference/engines/table-engines/integrations/arrowflight) | The engine allows querying remote datasets via Apache Arrow Flight. |
+{/*AUTOGENERATED_END*/}
diff --git a/reference/engines/table-engines/integrations/jdbc.mdx b/core/reference/engines/table-engines/integrations/jdbc.mdx
similarity index 93%
rename from reference/engines/table-engines/integrations/jdbc.mdx
rename to core/reference/engines/table-engines/integrations/jdbc.mdx
index 41c0bb84..30581ac8 100644
--- a/reference/engines/table-engines/integrations/jdbc.mdx
+++ b/core/reference/engines/table-engines/integrations/jdbc.mdx
@@ -19,7 +19,7 @@ Allows ClickHouse to connect to external databases via [JDBC](https://en.wikiped
To implement the JDBC connection, ClickHouse uses the separate program [clickhouse-jdbc-bridge](https://github.com/ClickHouse/clickhouse-jdbc-bridge) that should run as a daemon.
-This engine supports the [Nullable](/reference/data-types/nullable) data type.
+This engine supports the [Nullable](/core/reference/data-types/nullable) data type.
## Creating a table {#creating-a-table}
@@ -42,7 +42,7 @@ ENGINE = JDBC(datasource, external_database, external_table)
- `external_table` — Name of the table in an external database or a select query like `select * from table1 where column1=1`.
-- These parameters can also be passed using [named collections](/concepts/features/configuration/server-config/named-collections).
+- These parameters can also be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections).
## Usage example {#usage-example}
@@ -101,4 +101,4 @@ FROM system.numbers
## See also {#see-also}
-- [JDBC table function](/reference/functions/table-functions/jdbc).
+- [JDBC table function](/core/reference/functions/table-functions/jdbc).
diff --git a/reference/engines/table-engines/integrations/kafka.mdx b/core/reference/engines/table-engines/integrations/kafka.mdx
similarity index 93%
rename from reference/engines/table-engines/integrations/kafka.mdx
rename to core/reference/engines/table-engines/integrations/kafka.mdx
index 5c5189c1..94be0fb2 100644
--- a/reference/engines/table-engines/integrations/kafka.mdx
+++ b/core/reference/engines/table-engines/integrations/kafka.mdx
@@ -62,7 +62,7 @@ Required parameters:
- `kafka_broker_list` — A comma-separated list of brokers (for example, `localhost:9092`).
- `kafka_topic_list` — A list of Kafka topics.
- `kafka_group_name` — A group of Kafka consumers. Reading margins are tracked for each group separately. If you do not want messages to be duplicated in the cluster, use the same group name everywhere.
-- `kafka_format` — Message format. Uses the same notation as the SQL `FORMAT` function, such as `JSONEachRow`. For more information, see the [Formats](/reference/formats) section.
+- `kafka_format` — Message format. Uses the same notation as the SQL `FORMAT` function, such as `JSONEachRow`. For more information, see the [Formats](/core/reference/formats) section.
Optional parameters:
@@ -73,13 +73,13 @@ Optional parameters:
- `kafka_schema` — Parameter that must be used if the format requires a schema definition. For example, [Cap'n Proto](https://capnproto.org/) requires the path to the schema file and the name of the root `schema.capnp:Message` object.
- `kafka_schema_registry_skip_bytes` — The number of bytes to skip from the beginning of each message when using schema registry with envelope headers (e.g., AWS Glue Schema Registry which includes a 19-byte envelope). Range: `[0, 255]`. Default: `0`.
- `kafka_num_consumers` — The number of consumers per table. Specify more consumers if the throughput of one consumer is insufficient. The total number of consumers should not exceed the number of partitions in the topic, since only one consumer can be assigned per partition, and must not be greater than the number of physical cores on the server where ClickHouse is deployed. Default: `1`.
-- `kafka_max_block_size` — The maximum batch size (in messages) for poll. Default: [max_insert_block_size](/reference/settings/session-settings#max_insert_block_size).
+- `kafka_max_block_size` — The maximum batch size (in messages) for poll. Default: [max_insert_block_size](/core/reference/settings/session-settings#max_insert_block_size).
- `kafka_skip_broken_messages` — Kafka message parser tolerance to schema-incompatible messages per block. If `kafka_skip_broken_messages = N` then the engine skips *N* Kafka messages that cannot be parsed (a message equals a row of data). Default: `0`.
- `kafka_commit_every_batch` — Commit every consumed and handled batch instead of a single commit after writing a whole block. Default: `0`.
- `kafka_client_id` — Client identifier. Empty by default.
-- `kafka_poll_timeout_ms` — Timeout for single poll from Kafka. Default: [stream_poll_timeout_ms](/reference/settings/session-settings#stream_poll_timeout_ms).
-- `kafka_poll_max_batch_size` — Maximum amount of messages to be polled in a single Kafka poll. Default: [max_block_size](/reference/settings/session-settings#max_block_size).
-- `kafka_flush_interval_ms` — Timeout for flushing data from Kafka. Default: [stream_flush_interval_ms](/reference/settings/session-settings#stream_flush_interval_ms).
+- `kafka_poll_timeout_ms` — Timeout for single poll from Kafka. Default: [stream_poll_timeout_ms](/core/reference/settings/session-settings#stream_poll_timeout_ms).
+- `kafka_poll_max_batch_size` — Maximum amount of messages to be polled in a single Kafka poll. Default: [max_block_size](/core/reference/settings/session-settings#max_block_size).
+- `kafka_flush_interval_ms` — Timeout for flushing data from Kafka. Default: [stream_flush_interval_ms](/core/reference/settings/session-settings#stream_flush_interval_ms).
- `kafka_consumer_reschedule_ms` — Reschedule interval when Kafka stream processing is stalled (e.g., when no messages are available to consume). This setting controls the delay before the consumer retries polling. Must not exceed `kafka_consumers_pool_ttl_ms`. Default: `500` milliseconds.
- `kafka_thread_per_consumer` — Provide independent thread for each consumer. When enabled, every consumer flush the data independently, in parallel (otherwise — rows from several consumers squashed to form one block). Default: `0`.
- `kafka_handle_error_mode` — How to handle errors for Kafka engine. Possible values: default (the exception will be thrown if we fail to parse a message), stream (the exception message and raw message will be saved in virtual columns `_error` and `_raw_message`), dead_letter_queue (error related data will be saved in system.dead_letter_queue).
@@ -146,7 +146,7 @@ Kafka(kafka_broker_list, kafka_topic_list, kafka_group_name, kafka_format
-The Kafka table engine doesn't support columns with [default value](/reference/statements/create/table#default_values). If you need columns with default value, you can add them at materialized view level (see below).
+The Kafka table engine doesn't support columns with [default value](/core/reference/statements/create/table#default_values). If you need columns with default value, you can add them at materialized view level (see below).
## Description {#description}
@@ -187,7 +187,7 @@ Example:
SELECT level, sum(total) FROM daily GROUP BY level;
```
-To improve performance, received messages are grouped into blocks the size of [max_insert_block_size](/reference/settings/session-settings#max_insert_block_size). If the block wasn't formed within [stream_flush_interval_ms](/reference/settings/session-settings#stream_flush_interval_ms) milliseconds, the data will be flushed to the table regardless of the completeness of the block.
+To improve performance, received messages are grouped into blocks the size of [max_insert_block_size](/core/reference/settings/session-settings#max_insert_block_size). If the block wasn't formed within [stream_flush_interval_ms](/core/reference/settings/session-settings#stream_flush_interval_ms) milliseconds, the data will be flushed to the table regardless of the completeness of the block.
To stop receiving topic data or to change the conversion logic, detach the materialized view:
@@ -317,11 +317,11 @@ The produced Kafka message has payload `{"event_json":"{\"a\":1}"}`, key `sessio
## Data formats support {#data-formats-support}
-Kafka engine supports all [formats](/reference/formats) supported in ClickHouse.
+Kafka engine supports all [formats](/core/reference/formats) supported in ClickHouse.
The number of rows in one Kafka message depends on whether the format is row-based or block-based:
- For row-based formats the number of rows in one Kafka message can be controlled by setting `kafka_max_rows_per_message`.
-- For block-based formats we cannot divide block into smaller parts, but the number of rows in one block can be controlled by general setting [max_block_size](/reference/settings/session-settings#max_block_size).
+- For block-based formats we cannot divide block into smaller parts, but the number of rows in one block can be controlled by general setting [max_block_size](/core/reference/settings/session-settings#max_block_size).
## Engine to store committed offsets in ClickHouse Keeper {#engine-to-store-committed-offsets-in-clickhouse-keeper}
@@ -352,6 +352,6 @@ As the new engine is experimental, it is not production ready yet. There are few
**See Also**
-- [Virtual columns](/reference/engines/table-engines#table_engines-virtual_columns)
-- [background_message_broker_schedule_pool_size](/reference/settings/server-settings/settings#background_message_broker_schedule_pool_size)
-- [system.kafka_consumers](/reference/system-tables/kafka_consumers)
+- [Virtual columns](/core/reference/engines/table-engines#table_engines-virtual_columns)
+- [background_message_broker_schedule_pool_size](/core/reference/settings/server-settings/settings#background_message_broker_schedule_pool_size)
+- [system.kafka_consumers](/core/reference/system-tables/kafka_consumers)
diff --git a/reference/engines/table-engines/integrations/materialized-postgresql.mdx b/core/reference/engines/table-engines/integrations/materialized-postgresql.mdx
similarity index 82%
rename from reference/engines/table-engines/integrations/materialized-postgresql.mdx
rename to core/reference/engines/table-engines/integrations/materialized-postgresql.mdx
index ed8ba9a3..90bc669a 100644
--- a/reference/engines/table-engines/integrations/materialized-postgresql.mdx
+++ b/core/reference/engines/table-engines/integrations/materialized-postgresql.mdx
@@ -27,7 +27,7 @@ SET allow_experimental_materialized_postgresql_table=1
```
-If more than one table is required, it is highly recommended to use the [MaterializedPostgreSQL](/reference/engines/database-engines/materialized-postgresql) database engine instead of the table engine and use the `materialized_postgresql_tables_list` setting, which specifies the tables to be replicated (will also be possible to add database `schema`). It will be much better in terms of CPU, fewer connections and fewer replication slots inside the remote PostgreSQL database.
+If more than one table is required, it is highly recommended to use the [MaterializedPostgreSQL](/core/reference/engines/database-engines/materialized-postgresql) database engine instead of the table engine and use the `materialized_postgresql_tables_list` setting, which specifies the tables to be replicated (will also be possible to add database `schema`). It will be much better in terms of CPU, fewer connections and fewer replication slots inside the remote PostgreSQL database.
## Creating a table {#creating-a-table}
@@ -49,7 +49,7 @@ PRIMARY KEY key;
1. The [wal_level](https://www.postgresql.org/docs/current/runtime-config-wal.html) setting must have a value `logical` and `max_replication_slots` parameter must have a value at least `2` in the PostgreSQL config file.
-2. A table with `MaterializedPostgreSQL` engine must have a primary key — the same as a replica identity index (by default: primary key) of a PostgreSQL table (see [details on replica identity index](/reference/engines/database-engines/materialized-postgresql#requirements)).
+2. A table with `MaterializedPostgreSQL` engine must have a primary key — the same as a replica identity index (by default: primary key) of a PostgreSQL table (see [details on replica identity index](/core/reference/engines/database-engines/materialized-postgresql#requirements)).
3. Only database [Atomic](https://en.wikipedia.org/wiki/Atomicity_(database_systems)) is allowed.
@@ -57,9 +57,9 @@ PRIMARY KEY key;
## Virtual columns {#virtual-columns}
-- `_version` — Transaction counter. Type: [UInt64](/reference/data-types/int-uint).
+- `_version` — Transaction counter. Type: [UInt64](/core/reference/data-types/int-uint).
-- `_sign` — Deletion mark. Type: [Int8](/reference/data-types/int-uint). Possible values:
+- `_sign` — Deletion mark. Type: [Int8](/core/reference/data-types/int-uint). Possible values:
- `1` — Row is not deleted,
- `-1` — Row is deleted.
diff --git a/reference/engines/table-engines/integrations/mongodb.mdx b/core/reference/engines/table-engines/integrations/mongodb.mdx
similarity index 99%
rename from reference/engines/table-engines/integrations/mongodb.mdx
rename to core/reference/engines/table-engines/integrations/mongodb.mdx
index 71799380..0b9e7f1d 100644
--- a/reference/engines/table-engines/integrations/mongodb.mdx
+++ b/core/reference/engines/table-engines/integrations/mongodb.mdx
@@ -128,7 +128,7 @@ SELECT count() FROM sample_oid WHERE another_oid_column = '67bf6cc40000000000ea4
Only queries with simple expressions are supported (for example, `WHERE field = ORDER BY field2 LIMIT `).
Such expressions are translated to MongoDB query language and executed on the server side.
-You can disable all these restriction, using [mongodb_throw_on_unsupported_query](/reference/settings/session-settings#mongodb_throw_on_unsupported_query).
+You can disable all these restriction, using [mongodb_throw_on_unsupported_query](/core/reference/settings/session-settings#mongodb_throw_on_unsupported_query).
In that case ClickHouse tries to convert query on best effort basis, but it can lead to full table scan and processing on ClickHouse side.
diff --git a/reference/engines/table-engines/integrations/mysql.mdx b/core/reference/engines/table-engines/integrations/mysql.mdx
similarity index 83%
rename from reference/engines/table-engines/integrations/mysql.mdx
rename to core/reference/engines/table-engines/integrations/mysql.mdx
index b516c4f6..37c82502 100644
--- a/reference/engines/table-engines/integrations/mysql.mdx
+++ b/core/reference/engines/table-engines/integrations/mysql.mdx
@@ -27,13 +27,13 @@ SETTINGS
;
```
-See a detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See a detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
The table structure can differ from the original MySQL table structure:
- Column names should be the same as in the original MySQL table, but you can use just some of these columns and in any order.
-- Column types may differ from those in the original MySQL table. ClickHouse tries to [cast](/reference/engines/database-engines/mysql#data_types-support) values to the ClickHouse data types.
-- The [external_table_functions_use_nulls](/reference/settings/session-settings#external_table_functions_use_nulls) setting defines how to handle Nullable columns. Default value: 1. If 0, the table function does not make Nullable columns and inserts default values instead of nulls. This is also applicable for NULL values inside arrays.
+- Column types may differ from those in the original MySQL table. ClickHouse tries to [cast](/core/reference/engines/database-engines/mysql#data_types-support) values to the ClickHouse data types.
+- The [external_table_functions_use_nulls](/core/reference/settings/session-settings#external_table_functions_use_nulls) setting defines how to handle Nullable columns. Default value: 1. If 0, the table function does not make Nullable columns and inserts default values instead of nulls. This is also applicable for NULL values inside arrays.
**Engine Parameters**
@@ -47,7 +47,7 @@ The table structure can differ from the original MySQL table structure:
Example: `INSERT INTO t (c1,c2) VALUES ('a', 2) ON DUPLICATE KEY UPDATE c2 = c2 + 1`, where `on_duplicate_clause` is `UPDATE c2 = c2 + 1`. See the [MySQL documentation](https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html) to find which `on_duplicate_clause` you can use with the `ON DUPLICATE KEY` clause.
To specify `on_duplicate_clause` you need to pass `0` to the `replace_query` parameter. If you simultaneously pass `replace_query = 1` and `on_duplicate_clause`, ClickHouse generates an exception.
-Arguments also can be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment.
+Arguments also can be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment.
Simple `WHERE` clauses such as `=, !=, >, >=, <, <=` are executed on the MySQL server.
@@ -95,7 +95,7 @@ CREATE TABLE mysql_table
ENGINE = MySQL('localhost:3306', 'test', 'test', 'bayonet', '123')
```
-Or using [named collections](/concepts/features/configuration/server-config/named-collections):
+Or using [named collections](/core/concepts/features/configuration/server-config/named-collections):
```sql
CREATE NAMED COLLECTION creds AS
@@ -192,5 +192,5 @@ Default value: `300`.
## See also {#see-also}
-- [The mysql table function](/reference/functions/table-functions/mysql)
-- [Using MySQL as a dictionary source](/reference/statements/create/dictionary/sources/mysql)
+- [The mysql table function](/core/reference/functions/table-functions/mysql)
+- [Using MySQL as a dictionary source](/core/reference/statements/create/dictionary/sources/mysql)
diff --git a/reference/engines/table-engines/integrations/nats.mdx b/core/reference/engines/table-engines/integrations/nats.mdx
similarity index 95%
rename from reference/engines/table-engines/integrations/nats.mdx
rename to core/reference/engines/table-engines/integrations/nats.mdx
index 815c76fd..484e2b18 100644
--- a/reference/engines/table-engines/integrations/nats.mdx
+++ b/core/reference/engines/table-engines/integrations/nats.mdx
@@ -49,7 +49,7 @@ Required parameters:
- `nats_url` – host:port (for example, `localhost:5672`)..
- `nats_subjects` – List of subject for NATS table to subscribe/publish to. Supports wildcard subjects like `foo.*.bar` or `baz.>`
-- `nats_format` – Message format. Uses the same notation as the SQL `FORMAT` function, such as `JSONEachRow`. For more information, see the [Formats](/reference/formats) section.
+- `nats_format` – Message format. Uses the same notation as the SQL `FORMAT` function, such as `JSONEachRow`. For more information, see the [Formats](/core/reference/formats) section.
Optional parameters:
@@ -62,8 +62,8 @@ Optional parameters:
- `nats_reconnect_wait` – Amount of time in milliseconds to sleep between each reconnect attempt. Default: `5000`.
- `nats_server_list` - Server list for connection. Can be specified to connect to NATS cluster.
- `nats_skip_broken_messages` - NATS message parser tolerance to schema-incompatible messages per block. Default: `0`. If `nats_skip_broken_messages = N` then the engine skips *N* NATS messages that cannot be parsed (a message equals a row of data).
-- `nats_max_block_size` - Number of row collected by poll(s) for flushing data from NATS. Default: [max_insert_block_size](/reference/settings/session-settings#max_insert_block_size).
-- `nats_flush_interval_ms` - Timeout for flushing data read from NATS. Default: [stream_flush_interval_ms](/reference/settings/session-settings#stream_flush_interval_ms).
+- `nats_max_block_size` - Number of row collected by poll(s) for flushing data from NATS. Default: [max_insert_block_size](/core/reference/settings/session-settings#max_insert_block_size).
+- `nats_flush_interval_ms` - Timeout for flushing data read from NATS. Default: [stream_flush_interval_ms](/core/reference/settings/session-settings#stream_flush_interval_ms).
- `nats_username` - NATS username.
- `nats_password` - NATS password.
- `nats_token` - NATS auth token.
@@ -128,7 +128,7 @@ More specifically you can add your password for the NATS engine:
## Description {#description}
-`SELECT` is not particularly useful for reading messages (except for debugging), because each message can be read only once. It is more practical to create real-time threads using [materialized views](/reference/statements/create/view). To do this:
+`SELECT` is not particularly useful for reading messages (except for debugging), because each message can be read only once. It is more practical to create real-time threads using [materialized views](/core/reference/statements/create/view). To do this:
1. Use the engine to create a NATS consumer and consider it a data stream.
2. Create a table with the desired structure.
@@ -180,11 +180,11 @@ Note: `_raw_message` and `_error` virtual columns are filled only in case of exc
## Data formats support {#data-formats-support}
-NATS engine supports all [formats](/reference/formats) supported in ClickHouse.
+NATS engine supports all [formats](/core/reference/formats) supported in ClickHouse.
The number of rows in one NATS message depends on whether the format is row-based or block-based:
- For row-based formats the number of rows in one NATS message can be controlled by setting `nats_max_rows_per_message`.
-- For block-based formats we cannot divide block into smaller parts, but the number of rows in one block can be controlled by general setting [max_block_size](/reference/settings/session-settings#max_block_size).
+- For block-based formats we cannot divide block into smaller parts, but the number of rows in one block can be controlled by general setting [max_block_size](/core/reference/settings/session-settings#max_block_size).
## Using JetStream {#using-jetstream}
diff --git a/reference/engines/table-engines/integrations/odbc.mdx b/core/reference/engines/table-engines/integrations/odbc.mdx
similarity index 81%
rename from reference/engines/table-engines/integrations/odbc.mdx
rename to core/reference/engines/table-engines/integrations/odbc.mdx
index 4ea23413..fed1b07a 100644
--- a/reference/engines/table-engines/integrations/odbc.mdx
+++ b/core/reference/engines/table-engines/integrations/odbc.mdx
@@ -14,7 +14,7 @@ Allows ClickHouse to connect to external databases via [ODBC](https://en.wikiped
To safely implement ODBC connections, ClickHouse uses a separate program `clickhouse-odbc-bridge`. If the ODBC driver is loaded directly from `clickhouse-server`, driver problems can crash the ClickHouse server. ClickHouse automatically starts `clickhouse-odbc-bridge` when it is required. The ODBC bridge program is installed from the same package as the `clickhouse-server`.
-This engine supports the [Nullable](/reference/data-types/nullable) data type.
+This engine supports the [Nullable](/core/reference/data-types/nullable) data type.
## Creating a table {#creating-a-table}
@@ -28,13 +28,13 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
ENGINE = ODBC(datasource, external_database, external_table)
```
-See a detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See a detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
The table structure can differ from the source table structure:
- Column names should be the same as in the source table, but you can use just some of these columns and in any order.
-- Column types may differ from those in the source table. ClickHouse tries to [cast](/reference/functions/regular-functions/type-conversion-functions#CAST) values to the ClickHouse data types.
-- The [external_table_functions_use_nulls](/reference/settings/session-settings#external_table_functions_use_nulls) setting defines how to handle Nullable columns. Default value: 1. If 0, the table function does not make Nullable columns and inserts default values instead of nulls. This is also applicable for NULL values inside arrays.
+- Column types may differ from those in the source table. ClickHouse tries to [cast](/core/reference/functions/regular-functions/type-conversion-functions#CAST) values to the ClickHouse data types.
+- The [external_table_functions_use_nulls](/core/reference/settings/session-settings#external_table_functions_use_nulls) setting defines how to handle Nullable columns. Default value: 1. If 0, the table function does not make Nullable columns and inserts default values instead of nulls. This is also applicable for NULL values inside arrays.
**Engine Parameters**
@@ -42,7 +42,7 @@ The table structure can differ from the source table structure:
- `external_database` — Name of a database in an external DBMS.
- `external_table` — Name of a table in the `external_database`.
-These parameters can also be passed using [named collections](/concepts/features/configuration/server-config/named-collections).
+These parameters can also be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections).
## Usage example {#usage-example}
@@ -135,5 +135,5 @@ SELECT * FROM odbc_t
## See also {#see-also}
-- [ODBC dictionaries](/reference/statements/create/dictionary/sources/odbc)
-- [ODBC table function](/reference/functions/table-functions/odbc)
+- [ODBC dictionaries](/core/reference/statements/create/dictionary/sources/odbc)
+- [ODBC table function](/core/reference/functions/table-functions/odbc)
diff --git a/reference/engines/table-engines/integrations/paimon.mdx b/core/reference/engines/table-engines/integrations/paimon.mdx
similarity index 99%
rename from reference/engines/table-engines/integrations/paimon.mdx
rename to core/reference/engines/table-engines/integrations/paimon.mdx
index 8985aaeb..9bf48e82 100644
--- a/reference/engines/table-engines/integrations/paimon.mdx
+++ b/core/reference/engines/table-engines/integrations/paimon.mdx
@@ -36,7 +36,7 @@ CREATE TABLE paimon_table_local
Description of the arguments coincides with description of arguments in engines `S3`, `AzureBlobStorage`, `HDFS` and `File` correspondingly.
`format` stands for the format of data files in the Paimon table.
-Engine parameters can be specified using [Named Collections](/concepts/features/configuration/server-config/named-collections)
+Engine parameters can be specified using [Named Collections](/core/concepts/features/configuration/server-config/named-collections)
### Example {#example}
diff --git a/reference/engines/table-engines/integrations/postgresql.mdx b/core/reference/engines/table-engines/integrations/postgresql.mdx
similarity index 82%
rename from reference/engines/table-engines/integrations/postgresql.mdx
rename to core/reference/engines/table-engines/integrations/postgresql.mdx
index f7b2e64b..a2dd89af 100644
--- a/reference/engines/table-engines/integrations/postgresql.mdx
+++ b/core/reference/engines/table-engines/integrations/postgresql.mdx
@@ -28,13 +28,13 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
) ENGINE = PostgreSQL({host:port, database, table, user, password[, schema, [, on_conflict]] | named_collection[, option=value [,..]]})
```
-See a detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See a detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
The table structure can differ from the original PostgreSQL table structure:
- Column names should be the same as in the original PostgreSQL table, but you can use just some of these columns and in any order.
-- Column types may differ from those in the original PostgreSQL table. ClickHouse tries to [cast](/reference/engines/database-engines/postgresql#data_types-support) values to the ClickHouse data types.
-- The [external_table_functions_use_nulls](/reference/settings/session-settings#external_table_functions_use_nulls) setting defines how to handle Nullable columns. Default value: 1. If 0, the table function does not make Nullable columns and inserts default values instead of nulls. This is also applicable for NULL values inside arrays.
+- Column types may differ from those in the original PostgreSQL table. ClickHouse tries to [cast](/core/reference/engines/database-engines/postgresql#data_types-support) values to the ClickHouse data types.
+- The [external_table_functions_use_nulls](/core/reference/settings/session-settings#external_table_functions_use_nulls) setting defines how to handle Nullable columns. Default value: 1. If 0, the table function does not make Nullable columns and inserts default values instead of nulls. This is also applicable for NULL values inside arrays.
**Engine Parameters**
@@ -46,7 +46,7 @@ The table structure can differ from the original PostgreSQL table structure:
- `schema` — Non-default table schema. Optional.
- `on_conflict` — Conflict resolution strategy. Example: `ON CONFLICT DO NOTHING`. Optional. Note: adding this option will make insertion less efficient.
-[Named collections](/concepts/features/configuration/server-config/named-collections) (available since version 21.11) are recommended for production environment. Here is an example:
+[Named collections](/core/concepts/features/configuration/server-config/named-collections) (available since version 21.11) are recommended for production environment. Here is an example:
```xml
@@ -139,7 +139,7 @@ postgresql> SELECT * FROM test;
### Creating Table in ClickHouse, and connecting to PostgreSQL table created above {#creating-table-in-clickhouse-and-connecting-to--postgresql-table-created-above}
-This example uses the [PostgreSQL table engine](/reference/engines/table-engines/integrations/postgresql) to connect the ClickHouse table to the PostgreSQL table and use both SELECT and INSERT statements to the PostgreSQL database:
+This example uses the [PostgreSQL table engine](/core/reference/engines/table-engines/integrations/postgresql) to connect the ClickHouse table to the PostgreSQL table and use both SELECT and INSERT statements to the PostgreSQL database:
```sql
CREATE TABLE default.postgresql_table
@@ -153,7 +153,7 @@ ENGINE = PostgreSQL('localhost:5432', 'public', 'test', 'postgres_user', 'postgr
### Inserting initial data from PostgreSQL table into ClickHouse table, using a SELECT query {#inserting-initial-data-from-postgresql-table-into-clickhouse-table-using-a-select-query}
-The [postgresql table function](/reference/functions/table-functions/postgresql) copies the data from PostgreSQL to ClickHouse, which is often used for improving the query performance of the data by querying or performing analytics in ClickHouse rather than in PostgreSQL, or can also be used for migrating data from PostgreSQL to ClickHouse. Since we will be copying the data from PostgreSQL to ClickHouse, we will use a MergeTree table engine in ClickHouse and call it postgresql_copy:
+The [postgresql table function](/core/reference/functions/table-functions/postgresql) copies the data from PostgreSQL to ClickHouse, which is often used for improving the query performance of the data by querying or performing analytics in ClickHouse rather than in PostgreSQL, or can also be used for migrating data from PostgreSQL to ClickHouse. Since we will be copying the data from PostgreSQL to ClickHouse, we will use a MergeTree table engine in ClickHouse and call it postgresql_copy:
```sql
CREATE TABLE default.postgresql_copy
@@ -218,8 +218,8 @@ CREATE TABLE pg_table_schema_with_dots (a UInt32)
**See Also**
-- [The `postgresql` table function](/reference/functions/table-functions/postgresql)
-- [Using PostgreSQL as a dictionary source](/reference/statements/create/dictionary/sources/postgresql)
+- [The `postgresql` table function](/core/reference/functions/table-functions/postgresql)
+- [Using PostgreSQL as a dictionary source](/core/reference/statements/create/dictionary/sources/postgresql)
## Related content {#related-content}
diff --git a/reference/engines/table-engines/integrations/rabbitmq.mdx b/core/reference/engines/table-engines/integrations/rabbitmq.mdx
similarity index 91%
rename from reference/engines/table-engines/integrations/rabbitmq.mdx
rename to core/reference/engines/table-engines/integrations/rabbitmq.mdx
index 7185ad05..682651b0 100644
--- a/reference/engines/table-engines/integrations/rabbitmq.mdx
+++ b/core/reference/engines/table-engines/integrations/rabbitmq.mdx
@@ -52,7 +52,7 @@ Required parameters:
- `rabbitmq_host_port` – host:port (for example, `localhost:5672`).
- `rabbitmq_exchange_name` – RabbitMQ exchange name.
-- `rabbitmq_format` – Message format. Uses the same notation as the SQL `FORMAT` function, such as `JSONEachRow`. For more information, see the [Formats](/reference/formats) section.
+- `rabbitmq_format` – Message format. Uses the same notation as the SQL `FORMAT` function, such as `JSONEachRow`. For more information, see the [Formats](/core/reference/formats) section.
Optional parameters:
@@ -64,8 +64,8 @@ Optional parameters:
- `rabbitmq_queue_base` - Specify a hint for queue names. Use cases of this setting are described below.
- `rabbitmq_persistent` - If set to 1 (true), in insert query delivery mode will be set to 2 (marks messages as 'persistent'). Default: `0`.
- `rabbitmq_skip_broken_messages` – RabbitMQ message parser tolerance to schema-incompatible messages per block. If `rabbitmq_skip_broken_messages = N` then the engine skips *N* RabbitMQ messages that cannot be parsed (a message equals a row of data). Default: `0`.
-- `rabbitmq_max_block_size` - Number of row collected before flushing data from RabbitMQ. Default: [max_insert_block_size](/reference/settings/session-settings#max_insert_block_size).
-- `rabbitmq_flush_interval_ms` - Timeout for flushing data from RabbitMQ. Default: [stream_flush_interval_ms](/reference/settings/session-settings#stream_flush_interval_ms).
+- `rabbitmq_max_block_size` - Number of row collected before flushing data from RabbitMQ. Default: [max_insert_block_size](/core/reference/settings/session-settings#max_insert_block_size).
+- `rabbitmq_flush_interval_ms` - Timeout for flushing data from RabbitMQ. Default: [stream_flush_interval_ms](/core/reference/settings/session-settings#stream_flush_interval_ms).
- `rabbitmq_queue_settings_list` - allows to set RabbitMQ settings when creating a queue. Available settings: `x-max-length`, `x-max-length-bytes`, `x-message-ttl`, `x-expires`, `x-priority`, `x-max-priority`, `x-overflow`, `x-dead-letter-exchange`, `x-queue-type`. The `durable` setting is enabled automatically for the queue.
- `rabbitmq_address` - Address for connection. Use ether this setting or `rabbitmq_host_port`.
- `rabbitmq_vhost` - RabbitMQ vhost. Default: `'\'`.
@@ -122,7 +122,7 @@ Additional configuration:
## Description {#description}
-`SELECT` is not particularly useful for reading messages (except for debugging), because each message can be read only once. It is more practical to create real-time threads using [materialized views](/reference/statements/create/view). To do this:
+`SELECT` is not particularly useful for reading messages (except for debugging), because each message can be read only once. It is more practical to create real-time threads using [materialized views](/core/reference/statements/create/view). To do this:
1. Use the engine to create a RabbitMQ consumer and consider it a data stream.
2. Create a table with the desired structure.
@@ -148,7 +148,7 @@ Setting `rabbitmq_queue_base` may be used for the following cases:
- to be able to restore reading from certain durable queues when not all messages were successfully consumed. To resume consumption from one specific queue - set its name in `rabbitmq_queue_base` setting and do not specify `rabbitmq_num_consumers` and `rabbitmq_num_queues` (defaults to 1). To resume consumption from all queues, which were declared for a specific table - just specify the same settings: `rabbitmq_queue_base`, `rabbitmq_num_consumers`, `rabbitmq_num_queues`. By default, queue names will be unique to tables.
- to reuse queues as they are declared durable and not auto-deleted. (Can be deleted via any of RabbitMQ CLI tools.)
-To improve performance, received messages are grouped into blocks the size of [max_insert_block_size](/reference/settings/session-settings#max_insert_block_size). If the block wasn't formed within [stream_flush_interval_ms](/reference/settings/server-settings/settings) milliseconds, the data will be flushed to the table regardless of the completeness of the block.
+To improve performance, received messages are grouped into blocks the size of [max_insert_block_size](/core/reference/settings/session-settings#max_insert_block_size). If the block wasn't formed within [stream_flush_interval_ms](/core/reference/settings/server-settings/settings) milliseconds, the data will be flushed to the table regardless of the completeness of the block.
If `rabbitmq_num_consumers` and/or `rabbitmq_num_queues` settings are specified along with `rabbitmq_exchange_type`, then:
@@ -199,12 +199,12 @@ Note: `_raw_message` and `_error` virtual columns are filled only in case of exc
## Caveats {#caveats}
-Even though you may specify [default column expressions](/reference/statements/create/table#default_values) (such as `DEFAULT`, `MATERIALIZED`, `ALIAS`) in the table definition, these will be ignored. Instead, the columns will be filled with their respective default values for their types.
+Even though you may specify [default column expressions](/core/reference/statements/create/table#default_values) (such as `DEFAULT`, `MATERIALIZED`, `ALIAS`) in the table definition, these will be ignored. Instead, the columns will be filled with their respective default values for their types.
## Data formats support {#data-formats-support}
-RabbitMQ engine supports all [formats](/reference/formats) supported in ClickHouse.
+RabbitMQ engine supports all [formats](/core/reference/formats) supported in ClickHouse.
The number of rows in one RabbitMQ message depends on whether the format is row-based or block-based:
- For row-based formats the number of rows in one RabbitMQ message can be controlled by setting `rabbitmq_max_rows_per_message`.
-- For block-based formats we cannot divide block into smaller parts, but the number of rows in one block can be controlled by general setting [max_block_size](/reference/settings/session-settings#max_block_size).
+- For block-based formats we cannot divide block into smaller parts, but the number of rows in one block can be controlled by general setting [max_block_size](/core/reference/settings/session-settings#max_block_size).
diff --git a/reference/engines/table-engines/integrations/redis.mdx b/core/reference/engines/table-engines/integrations/redis.mdx
similarity index 90%
rename from reference/engines/table-engines/integrations/redis.mdx
rename to core/reference/engines/table-engines/integrations/redis.mdx
index 3d75c674..35e63b2f 100644
--- a/reference/engines/table-engines/integrations/redis.mdx
+++ b/core/reference/engines/table-engines/integrations/redis.mdx
@@ -35,7 +35,7 @@ PRIMARY KEY(primary_key_name);
Columns other than the primary key will be serialized in binary as Redis value in corresponding order.
-Arguments also can be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment. At this moment, all parameters passed using named collections to redis are required.
+Arguments also can be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment. At this moment, all parameters passed using named collections to redis are required.
**Filtering**
@@ -58,7 +58,7 @@ CREATE TABLE redis_table
ENGINE = Redis('redis1:6379') PRIMARY KEY(key);
```
-Or using [named collections](/concepts/features/configuration/server-config/named-collections):
+Or using [named collections](/core/concepts/features/configuration/server-config/named-collections):
```xml
diff --git a/reference/engines/table-engines/integrations/s3.mdx b/core/reference/engines/table-engines/integrations/s3.mdx
similarity index 94%
rename from reference/engines/table-engines/integrations/s3.mdx
rename to core/reference/engines/table-engines/integrations/s3.mdx
index dbcdeab5..db2cf849 100644
--- a/reference/engines/table-engines/integrations/s3.mdx
+++ b/core/reference/engines/table-engines/integrations/s3.mdx
@@ -7,7 +7,7 @@ title: 'S3 table engine'
doc_type: 'reference'
---
-This engine provides integration with the [Amazon S3](https://aws.amazon.com/s3/) ecosystem. This engine is similar to the [HDFS](/reference/engines/table-engines/integrations/hdfs) engine, but provides S3-specific features.
+This engine provides integration with the [Amazon S3](https://aws.amazon.com/s3/) ecosystem. This engine is similar to the [HDFS](/core/reference/engines/table-engines/integrations/hdfs) engine, but provides S3-specific features.
## Example {#example}
@@ -41,8 +41,8 @@ CREATE TABLE s3_engine_table (name String, value UInt32)
- `path` — Bucket url with path to file. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. For more information see [below](#wildcards-in-path).
- `NOSIGN` - If this keyword is provided in place of credentials, all the requests will not be signed.
-- `format` — The [format](/reference/formats#formats-overview) of the file.
-- `aws_access_key_id`, `aws_secret_access_key` - Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. Parameter is optional. If credentials are not specified, they are used from the configuration file. For more information see [Using S3 for Data Storage](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3).
+- `format` — The [format](/core/reference/formats#formats-overview) of the file.
+- `aws_access_key_id`, `aws_secret_access_key` - Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. Parameter is optional. If credentials are not specified, they are used from the configuration file. For more information see [Using S3 for Data Storage](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3).
- `compression` — Compression type. Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. Parameter is optional. By default, it will auto-detect compression by file extension.
- `partition_strategy` – Options: `WILDCARD` or `HIVE`. `WILDCARD` requires a `{_partition_id}` in the path, which is replaced with the partition key. `HIVE` does not allow wildcards, assumes the path is the table root, and generates Hive-style partitioned directories with Snowflake IDs as filenames and the file format as the extension. Defaults to `WILDCARD`
- `partition_columns_in_data_file` - Only used with `HIVE` partition strategy. Tells ClickHouse whether to expect partition columns to be written in the data file. Defaults `false`.
@@ -52,7 +52,7 @@ CREATE TABLE s3_engine_table (name String, value UInt32)
### Data cache {#data-cache}
`S3` table engine supports data caching on local disk.
-See filesystem cache configuration options and usage in this [section](/concepts/features/configuration/server-config/storing-data#using-local-cache).
+See filesystem cache configuration options and usage in this [section](/core/concepts/features/configuration/server-config/storing-data#using-local-cache).
Caching is made depending on the path and ETag of the storage object, so clickhouse will not read a stale cache version.
To enable caching use a setting `filesystem_cache_name = ''` and `enable_filesystem_cache = 1`.
@@ -78,13 +78,13 @@ There are two ways to define cache in configuration file.
```
-2. reuse cache configuration (and therefore cache storage) from clickhouse `storage_configuration` section, [described here](/concepts/features/configuration/server-config/storing-data#using-local-cache)
+2. reuse cache configuration (and therefore cache storage) from clickhouse `storage_configuration` section, [described here](/core/concepts/features/configuration/server-config/storing-data#using-local-cache)
### PARTITION BY {#partition-by}
`PARTITION BY` — Optional. In most cases you don't need a partition key, and if it is needed you generally don't need a partition key more granular than by month. Partitioning does not speed up queries (in contrast to the ORDER BY expression). You should never use too granular partitioning. Don't partition your data by client identifiers or names (instead, make client identifier or name the first column in the ORDER BY expression).
-For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
+For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/core/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
#### Partition strategy {#partition-strategy}
@@ -235,7 +235,7 @@ Note that rows can only be inserted into new files. There are no merge cycles or
- `_etag` — ETag of the file. Type: `LowCardinality(String)`. If the etag is unknown, the value is `NULL`.
- `_tags` — Tags of the file. Type: `Map(String, String)`. If no tag exist, the value is an empty map `{}'.
-For more information about virtual columns see [here](/reference/engines/table-engines#table_engines-virtual_columns).
+For more information about virtual columns see [here](/core/reference/engines/table-engines#table_engines-virtual_columns).
## Implementation details {#implementation-details}
@@ -243,7 +243,7 @@ For more information about virtual columns see [here](/reference/engines/table-e
- Not supported:
- `ALTER` and `SELECT...SAMPLE` operations.
- Indexes.
- - [Zero-copy](/concepts/features/configuration/server-config/storing-data#zero-copy) replication is possible, but not supported.
+ - [Zero-copy](/core/concepts/features/configuration/server-config/storing-data#zero-copy) replication is possible, but not supported.
**Zero-copy replication is not ready for production**
@@ -261,7 +261,7 @@ For more information about virtual columns see [here](/reference/engines/table-e
- `{some_string,another_string,yet_another_one}` — Substitutes any of strings `'some_string', 'another_string', 'yet_another_one'`.
- `{N..M}` — Substitutes any number in range from N to M including both borders. N and M can have leading zeroes e.g. `000..078`.
-Constructions with `{}` are similar to the [remote](/reference/functions/table-functions/remote) table function.
+Constructions with `{}` are similar to the [remote](/core/reference/functions/table-functions/remote) table function.
If the listing of files contains number ranges with leading zeros, use the construction with braces for each digit separately or use `?`.
@@ -312,9 +312,9 @@ CREATE TABLE table_with_asterisk (name String, value UInt32)
## Storage settings {#storage-settings}
-- [s3_truncate_on_insert](/reference/settings/session-settings#s3_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
-- [s3_create_new_file_on_insert](/reference/settings/session-settings#s3_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
-- [s3_skip_empty_files](/reference/settings/session-settings#s3_skip_empty_files) - allows to skip empty files while reading. Enabled by default.
+- [s3_truncate_on_insert](/core/reference/settings/session-settings#s3_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
+- [s3_create_new_file_on_insert](/core/reference/settings/session-settings#s3_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
+- [s3_skip_empty_files](/core/reference/settings/session-settings#s3_skip_empty_files) - allows to skip empty files while reading. Enabled by default.
## S3-related settings {#settings}
@@ -430,5 +430,5 @@ ENGINE = S3('https://my-bucket.s3.amazonaws.com/data/*.csv', extra_credentials(r
## See also {#see-also}
-- [s3 table function](/reference/functions/table-functions/s3)
+- [s3 table function](/core/reference/functions/table-functions/s3)
- [Integrating S3 with ClickHouse](/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse)
diff --git a/reference/engines/table-engines/integrations/s3queue.mdx b/core/reference/engines/table-engines/integrations/s3queue.mdx
similarity index 96%
rename from reference/engines/table-engines/integrations/s3queue.mdx
rename to core/reference/engines/table-engines/integrations/s3queue.mdx
index cc449b02..b9d473d5 100644
--- a/reference/engines/table-engines/integrations/s3queue.mdx
+++ b/core/reference/engines/table-engines/integrations/s3queue.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
import ScalePlanFeatureBadge from "/snippets/components/ScalePlanFeatureBadge/ScalePlanFeatureBadge.jsx";
-This engine provides integration with [Amazon S3](https://aws.amazon.com/s3/) ecosystem and allows streaming import. This engine is similar to the [Kafka](/reference/engines/table-engines/integrations/kafka), [RabbitMQ](/reference/engines/table-engines/integrations/rabbitmq) engines, but provides S3-specific features.
+This engine provides integration with [Amazon S3](https://aws.amazon.com/s3/) ecosystem and allows streaming import. This engine is similar to the [Kafka](/core/reference/engines/table-engines/integrations/kafka), [RabbitMQ](/core/reference/engines/table-engines/integrations/rabbitmq) engines, but provides S3-specific features.
It is important to understand this note from the [original PR for S3Queue implementation](https://github.com/ClickHouse/ClickHouse/pull/49086/files#diff-e1106769c9c8fbe48dd84f18310ef1a250f2c248800fde97586b3104e9cd6af8R183): when the `MATERIALIZED VIEW` joins the engine, the S3Queue Table Engine starts collecting data in the background.
@@ -50,7 +50,7 @@ Before `24.7`, it is required to use `s3queue_` prefix for all settings apart fr
**Engine parameters**
-`S3Queue` parameters are the same as `S3` table engine supports. See parameters section [here](/reference/engines/table-engines/integrations/s3#parameters).
+`S3Queue` parameters are the same as `S3` table engine supports. See parameters section [here](/core/reference/engines/table-engines/integrations/s3#parameters).
**Example**
@@ -137,7 +137,7 @@ SETTINGS
after_processing_move_secret_access_key = 'test';
```
-Move from an Azure container to another Azure container requires the Blob Storage connection string as `after_processing_move_connection_string` and the container name as `after_processing_move_container`. See [the AzureQueue settings](/reference/engines/table-engines/integrations/azure-queue#settings).
+Move from an Azure container to another Azure container requires the Blob Storage connection string as `after_processing_move_connection_string` and the container name as `after_processing_move_container`. See [the AzureQueue settings](/core/reference/engines/table-engines/integrations/azure-queue#settings).
Tagging requires tag key and value provided as `after_processing_tag_key` and `after_processing_tag_value`.
@@ -335,7 +335,7 @@ Default value: `3600` (1 hour).
## S3-related settings {#s3-settings}
-Engine supports all s3 related settings. For more information about S3 settings see [here](/reference/engines/table-engines/integrations/s3).
+Engine supports all s3 related settings. For more information about S3 settings see [here](/core/reference/engines/table-engines/integrations/s3).
## S3 role-based access {#s3-role-based-access}
@@ -379,7 +379,7 @@ The S3Queue engine has a special setting for SELECT queries: `commit_on_select`.
## Description {#description}
-`SELECT` is not particularly useful for streaming import (except for debugging), because each file can be imported only once. It is more practical to create real-time threads using [materialized views](/reference/statements/create/view). To do this:
+`SELECT` is not particularly useful for streaming import (except for debugging), because each file can be imported only once. It is more practical to create real-time threads using [materialized views](/core/reference/statements/create/view). To do this:
1. Use the engine to create a table for consuming from specified path in S3 and consider it a data stream.
2. Create a table with the desired structure.
@@ -411,7 +411,7 @@ Example:
- `_size` — Size of the file.
- `_time` — Time of the file creation.
-For more information about virtual columns see [here](/reference/engines/table-engines#table_engines-virtual_columns).
+For more information about virtual columns see [here](/core/reference/engines/table-engines#table_engines-virtual_columns).
## Wildcards in path {#wildcards-in-path}
@@ -423,7 +423,7 @@ For more information about virtual columns see [here](/reference/engines/table-e
- `{some_string,another_string,yet_another_one}` — Substitutes any of strings `'some_string', 'another_string', 'yet_another_one'`.
- `{N..M}` — Substitutes any number in range from N to M including both borders. N and M can have leading zeroes e.g. `000..078`.
-Constructions with `{}` are similar to the [remote](/reference/functions/table-functions/remote) table function.
+Constructions with `{}` are similar to the [remote](/core/reference/functions/table-functions/remote) table function.
## Limitations {#limitations}
diff --git a/reference/engines/table-engines/integrations/sqlite.mdx b/core/reference/engines/table-engines/integrations/sqlite.mdx
similarity index 67%
rename from reference/engines/table-engines/integrations/sqlite.mdx
rename to core/reference/engines/table-engines/integrations/sqlite.mdx
index 1c23dad6..5c38e87c 100644
--- a/reference/engines/table-engines/integrations/sqlite.mdx
+++ b/core/reference/engines/table-engines/integrations/sqlite.mdx
@@ -32,16 +32,16 @@ The engine allows to import and export data to SQLite and supports queries to SQ
When you explicitly specify ClickHouse column types in the table definition, the following ClickHouse types can be parsed from SQLite TEXT columns:
-- [Date](/reference/data-types/date), [Date32](/reference/data-types/date32)
-- [DateTime](/reference/data-types/datetime), [DateTime64](/reference/data-types/datetime64)
-- [UUID](/reference/data-types/uuid)
-- [Enum8, Enum16](/reference/data-types/enum)
-- [Decimal32, Decimal64, Decimal128, Decimal256](/reference/data-types/decimal)
-- [FixedString](/reference/data-types/fixedstring)
-- All integer types ([UInt8, UInt16, UInt32, UInt64, Int8, Int16, Int32, Int64](/reference/data-types/int-uint))
-- [Float32, Float64](/reference/data-types/float)
+- [Date](/core/reference/data-types/date), [Date32](/core/reference/data-types/date32)
+- [DateTime](/core/reference/data-types/datetime), [DateTime64](/core/reference/data-types/datetime64)
+- [UUID](/core/reference/data-types/uuid)
+- [Enum8, Enum16](/core/reference/data-types/enum)
+- [Decimal32, Decimal64, Decimal128, Decimal256](/core/reference/data-types/decimal)
+- [FixedString](/core/reference/data-types/fixedstring)
+- All integer types ([UInt8, UInt16, UInt32, UInt64, Int8, Int16, Int32, Int64](/core/reference/data-types/int-uint))
+- [Float32, Float64](/core/reference/data-types/float)
-See [SQLite database engine](/reference/engines/database-engines/sqlite#data_types-support) for the default type mapping.
+See [SQLite database engine](/core/reference/engines/database-engines/sqlite#data_types-support) for the default type mapping.
## Usage example {#usage-example}
@@ -76,5 +76,5 @@ SELECT * FROM sqlite_db.table2 ORDER BY col1;
**See Also**
-- [SQLite](/reference/engines/database-engines/sqlite) engine
-- [sqlite](/reference/functions/table-functions/sqlite) table function
+- [SQLite](/core/reference/engines/database-engines/sqlite) engine
+- [sqlite](/core/reference/functions/table-functions/sqlite) table function
diff --git a/reference/engines/table-engines/integrations/time-series.mdx b/core/reference/engines/table-engines/integrations/time-series.mdx
similarity index 90%
rename from reference/engines/table-engines/integrations/time-series.mdx
rename to core/reference/engines/table-engines/integrations/time-series.mdx
index 38d75263..d7225164 100644
--- a/reference/engines/table-engines/integrations/time-series.mdx
+++ b/core/reference/engines/table-engines/integrations/time-series.mdx
@@ -23,7 +23,7 @@ metric_name2[...] = ...
This is an experimental feature that may change in backwards-incompatible ways in the future releases.
Enable usage of the TimeSeries table engine
-with [allow_experimental_time_series_table](/reference/settings/session-settings#allow_experimental_time_series_table) setting.
+with [allow_experimental_time_series_table](/core/reference/settings/session-settings#allow_experimental_time_series_table) setting.
Input the command `set allow_experimental_time_series_table = 1`.
@@ -46,13 +46,13 @@ CREATE TABLE my_table ENGINE=TimeSeries
```
Then this table can be used with the following protocols (a port must be assigned in the server configuration):
-- [prometheus remote-write](/integrations/connectors/data-integrations/drivers-and-interfaces/prometheus#remote-write)
-- [prometheus remote-read](/integrations/connectors/data-integrations/drivers-and-interfaces/prometheus#remote-read)
+- [prometheus remote-write](/core/concepts/features/interfaces/prometheus#remote-write)
+- [prometheus remote-read](/core/concepts/features/interfaces/prometheus#remote-read)
## Target tables {#target-tables}
A `TimeSeries` table doesn't have its own data, everything is stored in its target tables.
-This is similar to how a [materialized view](/reference/statements/create/view#materialized-view) works,
+This is similar to how a [materialized view](/core/reference/statements/create/view#materialized-view) works,
with the difference that a materialized view has one target table
whereas a `TimeSeries` table has three target tables named [data](#data-table), [tags](#tags-table), and [metrics](#metrics-table).
@@ -144,7 +144,7 @@ METRICS INNER UUID '01234567-89ab-cdef-0123-456789abcdef'
So the columns were generated automatically and also there are three inner UUIDs in this statement -
one per each inner target table that was created.
(Inner UUIDs are not shown normally until setting
-[show_table_uuid_in_table_create_query_if_not_nil](/reference/settings/session-settings#show_table_uuid_in_table_create_query_if_not_nil)
+[show_table_uuid_in_table_create_query_if_not_nil](/core/reference/settings/session-settings#show_table_uuid_in_table_create_query_if_not_nil)
is set.)
Inner target tables have names like `.inner_id.data.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`,
@@ -265,10 +265,10 @@ SETTINGS tags_to_columns = {'instance': 'instance', 'job': 'job'}
## Table engines of inner target tables {#inner-table-engines}
By default inner target tables use the following table engines:
-- the [data](#data-table) table uses [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree);
-- the [tags](#tags-table) table uses [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) because the same data is often inserted multiple times to this table so we need a way
+- the [data](#data-table) table uses [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree);
+- the [tags](#tags-table) table uses [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) because the same data is often inserted multiple times to this table so we need a way
to remove duplicates, and also because it's required to do aggregation for columns `min_time` and `max_time`;
-- the [metrics](#metrics-table) table uses [ReplacingMergeTree](/reference/engines/table-engines/mergetree-family/replacingmergetree) because the same data is often inserted multiple times to this table so we need a way
+- the [metrics](#metrics-table) table uses [ReplacingMergeTree](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) because the same data is often inserted multiple times to this table so we need a way
to remove duplicates.
Other table engines also can be used for inner target tables if it's specified so:
@@ -316,6 +316,6 @@ Here is a list of settings which can be specified while defining a `TimeSeries`
# Functions {#functions}
Here is a list of functions supporting a `TimeSeries` table as an argument:
-- [timeSeriesData](/reference/functions/table-functions/timeSeriesData)
-- [timeSeriesTags](/reference/functions/table-functions/timeSeriesTags)
-- [timeSeriesMetrics](/reference/functions/table-functions/timeSeriesMetrics)
+- [timeSeriesData](/core/reference/functions/table-functions/timeSeriesData)
+- [timeSeriesTags](/core/reference/functions/table-functions/timeSeriesTags)
+- [timeSeriesMetrics](/core/reference/functions/table-functions/timeSeriesMetrics)
diff --git a/reference/engines/table-engines/integrations/ytsaurus.mdx b/core/reference/engines/table-engines/integrations/ytsaurus.mdx
similarity index 94%
rename from reference/engines/table-engines/integrations/ytsaurus.mdx
rename to core/reference/engines/table-engines/integrations/ytsaurus.mdx
index 06594332..fdce39d2 100644
--- a/reference/engines/table-engines/integrations/ytsaurus.mdx
+++ b/core/reference/engines/table-engines/integrations/ytsaurus.mdx
@@ -28,7 +28,7 @@ The YTsaurus table engine allows you to import data from a YTsaurus cluster.
This is an experimental feature that may change in backwards-incompatible ways in future releases.
Enable usage of the YTsaurus table engine
-using setting [`allow_experimental_ytsaurus_table_engine`](/reference/settings/session-settings#allow_experimental_ytsaurus_table_engine).
+using setting [`allow_experimental_ytsaurus_table_engine`](/core/reference/settings/session-settings#allow_experimental_ytsaurus_table_engine).
You can do so using:
@@ -120,6 +120,6 @@ SELECT * FROM yt_saurus;
**See Also**
-- [ytsaurus](/reference/functions/table-functions/ytsaurus) table function
+- [ytsaurus](/core/reference/functions/table-functions/ytsaurus) table function
- [ytsaurus data schema](https://ytsaurus.tech/docs/en/user-guide/storage/static-schema)
- [ytsaurus data types](https://ytsaurus.tech/docs/en/user-guide/storage/data-types)
diff --git a/reference/engines/table-engines/log-family/index.mdx b/core/reference/engines/table-engines/log-family/index.mdx
similarity index 82%
rename from reference/engines/table-engines/log-family/index.mdx
rename to core/reference/engines/table-engines/log-family/index.mdx
index af3f0627..d3f11906 100644
--- a/reference/engines/table-engines/log-family/index.mdx
+++ b/core/reference/engines/table-engines/log-family/index.mdx
@@ -18,11 +18,11 @@ Engines of the family:
| Log Engines |
|---------------------------------------------------------------------|
-| [StripeLog](/reference/engines/table-engines/log-family/stripelog) |
-| [Log](/reference/engines/table-engines/log-family/log) |
-| [TinyLog](/reference/engines/table-engines/log-family/tinylog) |
+| [StripeLog](/core/reference/engines/table-engines/log-family/stripelog) |
+| [Log](/core/reference/engines/table-engines/log-family/log) |
+| [TinyLog](/core/reference/engines/table-engines/log-family/tinylog) |
-`Log` family table engines can store data to [HDFS](/reference/engines/table-engines/integrations/hdfs) or [S3](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3) distributed file systems.
+`Log` family table engines can store data to [HDFS](/core/reference/engines/table-engines/integrations/hdfs) or [S3](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3) distributed file systems.
**This engine is not for log data.**
@@ -42,7 +42,7 @@ Engines:
During `INSERT` queries, the table is locked, and other queries for reading and writing data both wait for the table to unlock. If there are no data writing queries, any number of data reading queries can be performed concurrently.
-- Do not support [mutations](/reference/statements/alter#mutations).
+- Do not support [mutations](/core/reference/statements/alter#mutations).
- Do not support indexes.
diff --git a/reference/engines/table-engines/log-family/log.mdx b/core/reference/engines/table-engines/log-family/log.mdx
similarity index 89%
rename from reference/engines/table-engines/log-family/log.mdx
rename to core/reference/engines/table-engines/log-family/log.mdx
index 75f82c3f..50bd986d 100644
--- a/reference/engines/table-engines/log-family/log.mdx
+++ b/core/reference/engines/table-engines/log-family/log.mdx
@@ -11,9 +11,9 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
-The engine belongs to the family of `Log` engines. See the common properties of `Log` engines and their differences in the [Log Engine Family](/reference/engines/table-engines/log-family) article.
+The engine belongs to the family of `Log` engines. See the common properties of `Log` engines and their differences in the [Log Engine Family](/core/reference/engines/table-engines/log-family) article.
-`Log` differs from [TinyLog](/reference/engines/table-engines/log-family/tinylog) in that a small file of "marks" resides with the column files. These marks are written on every data block and contain offsets that indicate where to start reading the file in order to skip the specified number of rows. This makes it possible to read table data in multiple threads.
+`Log` differs from [TinyLog](/core/reference/engines/table-engines/log-family/tinylog) in that a small file of "marks" resides with the column files. These marks are written on every data block and contain offsets that indicate where to start reading the file in order to skip the specified number of rows. This makes it possible to read table data in multiple threads.
For concurrent data access, the read operations can be performed simultaneously, while write operations block reads and each other.
The `Log` engine does not support indexes. Similarly, if writing to a table failed, the table is broken, and reading from it returns an error. The `Log` engine is appropriate for temporary data, write-once tables, and for testing or demonstration purposes.
@@ -28,7 +28,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
) ENGINE = Log
```
-See the detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See the detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
## Writing the data {#table_engines-log-writing-the-data}
diff --git a/reference/engines/table-engines/log-family/stripelog.mdx b/core/reference/engines/table-engines/log-family/stripelog.mdx
similarity index 92%
rename from reference/engines/table-engines/log-family/stripelog.mdx
rename to core/reference/engines/table-engines/log-family/stripelog.mdx
index 53e5ed0d..da67832e 100644
--- a/reference/engines/table-engines/log-family/stripelog.mdx
+++ b/core/reference/engines/table-engines/log-family/stripelog.mdx
@@ -11,9 +11,9 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
-This engine belongs to the family of log engines. See the common properties of log engines and their differences in the [Log Engine Family](/reference/engines/table-engines/log-family) article.
+This engine belongs to the family of log engines. See the common properties of log engines and their differences in the [Log Engine Family](/core/reference/engines/table-engines/log-family) article.
-Use this engine in scenarios when you need to write many tables with a small amount of data (less than 1 million rows). For example, this table can be used to store incoming data batches for transformation where atomic processing of them is required. 100k instances of this table type are viable for a ClickHouse server. This table engine should be preferred over [Log](/reference/engines/table-engines/log-family/log) when a high number of tables are required. This is at the expense of read efficiency.
+Use this engine in scenarios when you need to write many tables with a small amount of data (less than 1 million rows). For example, this table can be used to store incoming data batches for transformation where atomic processing of them is required. 100k instances of this table type are viable for a ClickHouse server. This table engine should be preferred over [Log](/core/reference/engines/table-engines/log-family/log) when a high number of tables are required. This is at the expense of read efficiency.
## Creating a table {#table_engines-stripelog-creating-a-table}
@@ -26,7 +26,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
) ENGINE = StripeLog
```
-See the detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See the detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
## Writing the data {#table_engines-stripelog-writing-the-data}
diff --git a/reference/engines/table-engines/log-family/tinylog.mdx b/core/reference/engines/table-engines/log-family/tinylog.mdx
similarity index 91%
rename from reference/engines/table-engines/log-family/tinylog.mdx
rename to core/reference/engines/table-engines/log-family/tinylog.mdx
index 2cc9d110..9f5c6543 100644
--- a/reference/engines/table-engines/log-family/tinylog.mdx
+++ b/core/reference/engines/table-engines/log-family/tinylog.mdx
@@ -11,11 +11,11 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
-The engine belongs to the log engine family. See [Log Engine Family](/reference/engines/table-engines/log-family) for common properties of log engines and their differences.
+The engine belongs to the log engine family. See [Log Engine Family](/core/reference/engines/table-engines/log-family) for common properties of log engines and their differences.
This table engine is typically used with the write-once method: write data one time, then read it as many times as necessary. For example, you can use `TinyLog`-type tables for intermediary data that is processed in small batches. Note that storing data in a large number of small tables is inefficient.
-Queries are executed in a single stream. In other words, this engine is intended for relatively small tables (up to about 1,000,000 rows). It makes sense to use this table engine if you have many small tables, since it's simpler than the [Log](/reference/engines/table-engines/log-family/log) engine (fewer files need to be opened).
+Queries are executed in a single stream. In other words, this engine is intended for relatively small tables (up to about 1,000,000 rows). It makes sense to use this table engine if you have many small tables, since it's simpler than the [Log](/core/reference/engines/table-engines/log-family/log) engine (fewer files need to be opened).
## Characteristics {#characteristics}
@@ -36,7 +36,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
) ENGINE = TinyLog
```
-See the detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See the detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
## Writing the data {#table_engines-tinylog-writing-the-data}
diff --git a/reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx b/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx
similarity index 84%
rename from reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx
index b4a36d8c..4ebdaf0b 100644
--- a/reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree.mdx
@@ -1,6 +1,6 @@
---
description: 'Replaces all rows with the same primary key (or more accurately, with
- the same [sorting key](/reference/engines/table-engines/mergetree-family/mergetree))
+ the same [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree))
with a single row (within a single data part) that stores a combination of states
of aggregate functions.'
sidebarTitle: 'AggregatingMergeTree'
@@ -9,7 +9,7 @@ title: 'AggregatingMergeTree table engine'
doc_type: 'reference'
---
-The engine inherits from [MergeTree](/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree), altering the logic for data parts merging. ClickHouse replaces all rows with the same primary key (or more accurately, with the same [sorting key](/reference/engines/table-engines/mergetree-family/mergetree)) with a single row (within a single data part) that stores a combination of states of aggregate functions.
+The engine inherits from [MergeTree](/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree), altering the logic for data parts merging. ClickHouse replaces all rows with the same primary key (or more accurately, with the same [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree)) with a single row (within a single data part) that stores a combination of states of aggregate functions.
You can use `AggregatingMergeTree` tables for incremental data aggregation, including for aggregated materialized views.
@@ -22,8 +22,8 @@ You can see an example of how to use the AggregatingMergeTree and Aggregate func
The engine processes all columns with the following types:
-- [`AggregateFunction`](/reference/data-types/aggregatefunction)
-- [`SimpleAggregateFunction`](/reference/data-types/simpleaggregatefunction)
+- [`AggregateFunction`](/core/reference/data-types/aggregatefunction)
+- [`SimpleAggregateFunction`](/core/reference/data-types/simpleaggregatefunction)
It is appropriate to use `AggregatingMergeTree` if it reduces the number of rows by orders.
@@ -43,11 +43,11 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
[SETTINGS name=value, ...]
```
-For a description of request parameters, see [request description](/reference/statements/create/table).
+For a description of request parameters, see [request description](/core/reference/statements/create/table).
**Query clauses**
-When creating an `AggregatingMergeTree` table, the same [clauses](/reference/engines/table-engines/mergetree-family/mergetree) are required as when creating a `MergeTree` table.
+When creating an `AggregatingMergeTree` table, the same [clauses](/core/reference/engines/table-engines/mergetree-family/mergetree) are required as when creating a `MergeTree` table.
@@ -71,7 +71,7 @@ All of the parameters have the same meaning as in `MergeTree`.
## SELECT and INSERT {#select-and-insert}
-To insert data, use [INSERT SELECT](/reference/statements/insert-into) query with aggregate -State- functions.
+To insert data, use [INSERT SELECT](/core/reference/statements/insert-into) query with aggregate -State- functions.
When selecting data from `AggregatingMergeTree` table, use `GROUP BY` clause and the same aggregate functions as when inserting data, but using the `-Merge` suffix.
In the results of `SELECT` query, the values of `AggregateFunction` type have implementation-specific binary representation for all of the ClickHouse output formats. For example, if you dump data into `TabSeparated` format with a `SELECT` query, then this dump can be loaded back using an `INSERT` query.
@@ -98,7 +98,7 @@ CREATE TABLE test.visits
Next, you need an `AggregatingMergeTree` table that will store `AggregationFunction`s that keep track of the total number of visits and the number of unique users.
-Create an `AggregatingMergeTree` materialized view that watches the `test.visits` table, and uses the [`AggregateFunction`](/reference/data-types/aggregatefunction) type:
+Create an `AggregatingMergeTree` materialized view that watches the `test.visits` table, and uses the [`AggregateFunction`](/core/reference/data-types/aggregatefunction) type:
```sql
CREATE TABLE test.agg_visits (
@@ -168,7 +168,7 @@ Run the `SELECT` query again, which will return the following output:
In some cases, you might want to avoid pre-aggregating rows at insert time to shift the cost of aggregation from insert time
to merge time. Ordinarily, it is necessary to include the columns which are not part of the aggregation in the `GROUP BY`
-clause of the materialized view definition to avoid an error. However, you can make use of the [`initializeAggregation`](/reference/functions/regular-functions/other-functions#initializeAggregation)
+clause of the materialized view definition to avoid an error. However, you can make use of the [`initializeAggregation`](/core/reference/functions/regular-functions/other-functions#initializeAggregation)
function with setting `optimize_on_insert = 0` (it is turned on by default) to achieve this. Use of `GROUP BY`
is no longer required in this case:
diff --git a/reference/engines/table-engines/mergetree-family/annindexes.mdx b/core/reference/engines/table-engines/mergetree-family/annindexes.mdx
similarity index 89%
rename from reference/engines/table-engines/mergetree-family/annindexes.mdx
rename to core/reference/engines/table-engines/mergetree-family/annindexes.mdx
index d53934e8..45dec2a0 100644
--- a/reference/engines/table-engines/mergetree-family/annindexes.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/annindexes.mdx
@@ -23,17 +23,17 @@ ORDER BY (vectors, reference_vector)
LIMIT
```
-The points in the vector space are stored in a column `vectors` of array type, e.g. [Array(Float64)](/reference/data-types/array), [Array(Float32)](/reference/data-types/array), or [Array(BFloat16)](/reference/data-types/array).
+The points in the vector space are stored in a column `vectors` of array type, e.g. [Array(Float64)](/core/reference/data-types/array), [Array(Float32)](/core/reference/data-types/array), or [Array(BFloat16)](/core/reference/data-types/array).
The reference vector is a constant array and given as a common table expression.
`` computes the distance between the reference point and all stored points.
-Any of the available [distance function](/reference/functions/regular-functions/distance-functions) can be used for that.
+Any of the available [distance function](/core/reference/functions/regular-functions/distance-functions) can be used for that.
`` specifies how many neighbors should be returned.
## Exact vector search {#exact-nearest-neighbor-search}
An exact vector search can be performed using above SELECT query as is.
The runtime of such queries is generally proportional to the number of stored vectors and their dimension, i.e. the number of array elements.
-Also, since ClickHouse performs a brute-force scan of all vectors, the runtime depends also on the number of threads by the query (see setting [max_threads](/reference/settings/session-settings#max_threads)).
+Also, since ClickHouse performs a brute-force scan of all vectors, the runtime depends also on the number of threads by the query (see setting [max_threads](/core/reference/settings/session-settings#max_threads)).
### Example {#exact-nearest-neighbor-search-example}
@@ -91,7 +91,7 @@ Alternatively, to add a vector similarity index to an existing table:
ALTER TABLE table ADD INDEX vectors TYPE vector_similarity(, , ) [GRANULARITY ];
```
-Vector similarity indexes are special kinds of skipping indexes (see [here](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) and [here](/concepts/features/performance/skip-indexes/skipping-indexes)).
+Vector similarity indexes are special kinds of skipping indexes (see [here](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) and [here](/core/concepts/features/performance/skip-indexes/skipping-indexes)).
Accordingly, above `ALTER TABLE` statement only causes the index to be built for future new data inserted into the table.
To build the index for existing data as well, you need to materialize it:
@@ -114,7 +114,7 @@ As a result, vector indexes with `L2Distance` and `cosineDistance` can only be u
`` specifies the array cardinality (number of elements) in the underlying column.
If ClickHouse finds an array with a different cardinality during index creation, the index is discarded and an error is returned.
-The optional GRANULARITY parameter `` refers to the size of the index granules (see [here](/concepts/features/performance/skip-indexes/skipping-indexes)).
+The optional GRANULARITY parameter `` refers to the size of the index granules (see [here](/core/concepts/features/performance/skip-indexes/skipping-indexes)).
Unlike regular skip indexes, which use a default index granularity of 1, vector similarity indexes use 100 million as default index granularity.
This value makes sure that only few indexes are build internally even for large parts.
We recommend changing the index granularity only for advanced users who understand the implications of what they are doing (see [below](#differences-to-regular-skipping-indexes)).
@@ -144,10 +144,10 @@ The default values of all HNSW-specific parameters work reasonably well in the m
We therefore do not recommend customizing the HNSW-specific parameters.
Further restrictions apply:
-- Vector similarity indexes can only be build on columns of type [Array(Float32)](/reference/data-types/array), [Array(Float64)](/reference/data-types/array), or [Array(BFloat16)](/reference/data-types/array). Arrays of nullable and low-cardinality floats such as `Array(Nullable(Float32))` and `Array(LowCardinality(Float32))` are not allowed.
+- Vector similarity indexes can only be build on columns of type [Array(Float32)](/core/reference/data-types/array), [Array(Float64)](/core/reference/data-types/array), or [Array(BFloat16)](/core/reference/data-types/array). Arrays of nullable and low-cardinality floats such as `Array(Nullable(Float32))` and `Array(LowCardinality(Float32))` are not allowed.
- Vector similarity indexes must be build on single columns.
- Vector similarity indexes may be build on calculated expressions (e.g., `INDEX index_name arraySort(vectors) TYPE vector_similarity([...])`) but such indexes cannot be used for approximate neighbor search later on.
-- Vector similarity indexes require that all arrays in the underlying column have ``-many elements - this is checked during index creation. To detect violations of this requirement as early as possible, users can add a [constraint](/reference/statements/create/table#constraints) for the vector column, e.g., `CONSTRAINT same_length CHECK length(vectors) = 256`.
+- Vector similarity indexes require that all arrays in the underlying column have ``-many elements - this is checked during index creation. To detect violations of this requirement as early as possible, users can add a [constraint](/core/reference/statements/create/table#constraints) for the vector column, e.g., `CONSTRAINT same_length CHECK length(vectors) = 256`.
- Likewise, array values in the underlying column must not be empty (`[]`) or have a default value (also `[]`).
**Estimating storage and memory consumption**
@@ -194,7 +194,7 @@ Above formula does not account for additional memory required by vector similari
#### Using a Vector Similarity Index {#using-a-vector-similarity-index}
-To use vector similarity indexes, setting [compatibility](/reference/settings/session-settings) has be `''` (the default value), or `'25.1'` or newer.
+To use vector similarity indexes, setting [compatibility](/core/reference/settings/session-settings) has be `''` (the default value), or `'25.1'` or newer.
Vector similarity indexes support SELECT queries of this form:
@@ -211,12 +211,12 @@ LIMIT
ClickHouse's query optimizer tries to match above query template and make use of available vector similarity indexes.
A query can only use a vector similarity index if the distance function in the SELECT query is the same as the distance function in the index definition.
-Advanced users may provide a custom value for setting [hnsw_candidate_list_size_for_search](/reference/settings/session-settings#hnsw_candidate_list_size_for_search) (also know as HNSW hyperparameter "ef_search") to tune the size of the candidate list during search (e.g. `SELECT [...] SETTINGS hnsw_candidate_list_size_for_search = `).
+Advanced users may provide a custom value for setting [hnsw_candidate_list_size_for_search](/core/reference/settings/session-settings#hnsw_candidate_list_size_for_search) (also know as HNSW hyperparameter "ef_search") to tune the size of the candidate list during search (e.g. `SELECT [...] SETTINGS hnsw_candidate_list_size_for_search = `).
The default value of the setting 256 works well in the majority of use cases.
Higher setting values mean better accuracy at the cost of slower performance.
If the query can use a vector similarity index, ClickHouse checks that the LIMIT `` provided in SELECT queries is within reasonable bounds.
-More specifically, an error is returned if `` is bigger than the value of setting [max_limit_for_vector_search_queries](/reference/settings/session-settings#max_limit_for_vector_search_queries) with default value 100.
+More specifically, an error is returned if `` is bigger than the value of setting [max_limit_for_vector_search_queries](/core/reference/settings/session-settings#max_limit_for_vector_search_queries) with default value 100.
Too large LIMIT values can slow down searches and usually indicate a usage error.
To check if a SELECT query uses a vector similarity index, you can prefix the query with `EXPLAIN indexes = 1`.
@@ -263,7 +263,7 @@ In this case, the vector similarity index dropped two of four granules, i.e. 50%
The more granules can be dropped, the more effective index usage becomes.
-To enforce index usage, you can run the SELECT query with setting [force_data_skipping_indexes](/reference/settings/session-settings#force_data_skipping_indices) (provide the index name as setting value).
+To enforce index usage, you can run the SELECT query with setting [force_data_skipping_indexes](/core/reference/settings/session-settings#force_data_skipping_indices) (provide the index name as setting value).
**Post-filtering and Pre-filtering**
@@ -302,7 +302,7 @@ If additional filter conditions cannot be evaluated using indexes (primary key i
*Additional filters can be evaluated using the primary key index*
-If additional filter conditions can be evaluated using the [primary key](/reference/engines/table-engines/mergetree-family/mergetree#primary-key) (i.e., they form a prefix of the primary key) and
+If additional filter conditions can be evaluated using the [primary key](/core/reference/engines/table-engines/mergetree-family/mergetree#primary-key) (i.e., they form a prefix of the primary key) and
- the filter condition eliminates at least one row within a part, the ClickHouse will fall back to pre-filtering for the "surviving" ranges within the part,
- the filter condition eliminates no rows within a part, the ClickHouse will perform post-filtering for the part.
@@ -310,12 +310,12 @@ In practical use cases, the latter case is rather unlikely.
*Additional filters can be evaluated using skipping index*
-If additional filter conditions can be evaluated using [skipping indexes](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) (minmax index, set index, etc.), Clickhouse performs post-filtering.
+If additional filter conditions can be evaluated using [skipping indexes](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) (minmax index, set index, etc.), Clickhouse performs post-filtering.
In such cases, the vector similarity index is evaluated first as it is expected to remove the most rows relative to other skipping indexes.
For finer control over post-filtering vs. pre-filtering, two settings can be used:
-Setting [vector_search_filter_strategy](/reference/settings/session-settings#vector_search_filter_strategy) (default: `auto` which implements above heuristics) may be set to `prefilter`.
+Setting [vector_search_filter_strategy](/core/reference/settings/session-settings#vector_search_filter_strategy) (default: `auto` which implements above heuristics) may be set to `prefilter`.
This is useful to force pre-filtering in cases where the additional filter conditions are extremely selective.
As an example, the following query may benefit from pre-filtering:
@@ -330,7 +330,7 @@ LIMIT 10
Assuming that only a very small number of books cost less than 2 dollar, post-filtering may return zero rows because the top 10 matches returned by the vector index could all be priced above 2 dollar.
By forcing pre-filtering (add `SETTINGS vector_search_filter_strategy = 'prefilter'` to the query), ClickHouse first finds all books with a price of less than 2 dollar and then executes a brute-force vector search for the found books.
-As an alternative approach to resolve above issue, setting [vector_search_index_fetch_multiplier](/reference/settings/session-settings#vector_search_index_fetch_multiplier) (default: `1.0`, maximum: `1000.0`) may be configured to a value > `1.0` (for example, `2.0`).
+As an alternative approach to resolve above issue, setting [vector_search_index_fetch_multiplier](/core/reference/settings/session-settings#vector_search_index_fetch_multiplier) (default: `1.0`, maximum: `1000.0`) may be configured to a value > `1.0` (for example, `2.0`).
The number of nearest neighbors fetched from the vector index is multiplied by the setting value and then the additional filter to be applied on those rows to return LIMIT-many rows.
As an example, we can query again but with multiplier `3.0`:
@@ -356,7 +356,7 @@ ClickHouse will then load these granules from disk, and repeat the distance calc
This step is called rescoring and while it can theoretically improve accuracy - remember the vector similarity index returns only an _approximate_ result, it is obvious not optimal in terms of performance.
ClickHouse therefore provides an optimization which disables rescoring and returns the most similar vectors and their distances directly from the index.
-The optimization is enabled by default, see setting [vector_search_with_rescoring](/reference/settings/session-settings#vector_search_with_rescoring).
+The optimization is enabled by default, see setting [vector_search_with_rescoring](/core/reference/settings/session-settings#vector_search_with_rescoring).
The way it works at a high level is that ClickHouse makes the most similar vectors and their distances available as a virtual column `_distances`.
To see this, run a vector search query with `EXPLAIN header = 1`:
@@ -400,7 +400,7 @@ A query run without rescoring (`vector_search_with_rescoring = 0`) and with para
**Tuning compression**
In virtually all use cases, the vectors in the underlying column are dense and do not compress well.
-As a result, [compression](/reference/statements/create/table#column_compression_codec) slows down inserts and reads into/from the vector column.
+As a result, [compression](/core/reference/statements/create/table#column_compression_codec) slows down inserts and reads into/from the vector column.
We therefore recommend to disable compression.
To do that, specify `CODEC(NONE)` for the vector column like this:
@@ -412,22 +412,22 @@ CREATE TABLE tab(id Int32, vec Array(Float32) CODEC(NONE), INDEX idx vec TYPE ve
The life cycle of vector similarity indexes is tied to the life cycle of parts.
In other words, whenever a new part with defined vector similarity index is created, the index is create as well.
-This typically happens when data is [inserted](/get-started/oss/starter-guides/inserting-data) or during [merges](/concepts/core-concepts/merges).
+This typically happens when data is [inserted](/core/concepts/features/operations/insert/inserting-data) or during [merges](/core/concepts/core-concepts/merges).
Unfortunately, HNSW is known for long index creation times which can significantly slow down inserts and merges.
Vector similarity indexes are ideally only used if the data is immutable or rarely changed.
To speed up index creation, the following techniques can be used:
First, index creation can be parallelized.
-The maximum number of index creation threads can be configured using server setting [max_build_vector_similarity_index_thread_pool_size](/reference/settings/server-settings/settings#max_build_vector_similarity_index_thread_pool_size).
+The maximum number of index creation threads can be configured using server setting [max_build_vector_similarity_index_thread_pool_size](/core/reference/settings/server-settings/settings#max_build_vector_similarity_index_thread_pool_size).
For optimal performance, the setting value should be configured to the number of CPU cores.
-Second, to speed up INSERT statements, users may disable the creation of skipping indexes on newly inserted parts using session setting [materialize_skip_indexes_on_insert](/reference/settings/session-settings#materialize_skip_indexes_on_insert).
+Second, to speed up INSERT statements, users may disable the creation of skipping indexes on newly inserted parts using session setting [materialize_skip_indexes_on_insert](/core/reference/settings/session-settings#materialize_skip_indexes_on_insert).
SELECT queries on such parts will fall back to exact search.
Since inserted parts tend to be small compared to the total table size, the performance impact of that is expected to be negligible.
-Third, to speed up merges, users may disable the creation of skipping indexes on merged parts using session setting [materialize_skip_indexes_on_merge](/reference/settings/merge-tree-settings#materialize_skip_indexes_on_merge).
-This, in conjunction with statement [ALTER TABLE \[...\] MATERIALIZE INDEX \[...\]](/reference/statements/alter/skipping-index#materialize-index), provides explicit control over the life cycle of vector similarity indexes.
+Third, to speed up merges, users may disable the creation of skipping indexes on merged parts using session setting [materialize_skip_indexes_on_merge](/core/reference/settings/merge-tree-settings#materialize_skip_indexes_on_merge).
+This, in conjunction with statement [ALTER TABLE \[...\] MATERIALIZE INDEX \[...\]](/core/reference/statements/alter/skipping-index#materialize-index), provides explicit control over the life cycle of vector similarity indexes.
For example, index creation can be deferred until all data was ingested or until a period of low system load such as the weekend.
**Tuning index usage**
@@ -435,7 +435,7 @@ For example, index creation can be deferred until all data was ingested or until
SELECT queries need to load vector similarity indexes into main memory to use them.
To avoid that the same vector similarity index is loaded repeatedly into main memory, ClickHouse provides a dedicated in-memory cache for such indexes.
The bigger this cache is, the fewer unnecessary loads will happen.
-The maximum cache size can be configured using server setting [vector_similarity_index_cache_size](/reference/settings/server-settings/settings#vector_similarity_index_cache_size).
+The maximum cache size can be configured using server setting [vector_similarity_index_cache_size](/core/reference/settings/server-settings/settings#vector_similarity_index_cache_size).
By default, the cache can grow up to 5 GB in size.
The following log messages (`system.text_log`) indicate that the vector similarity index is being loaded.
@@ -452,12 +452,12 @@ If such messages appear repeatedly for different vector search queries, this ind
The vector similarity index cache stores vector index granules.
If individual vector index granules are bigger than the cache size, they will not be cached.
-Therefore, please make sure to calculate the vector index size (based on the formula in "Estimating storage and memory consumption" or [system.data_skipping_indices](/reference/system-tables/data_skipping_indices)) and size the cache correspondingly.
+Therefore, please make sure to calculate the vector index size (based on the formula in "Estimating storage and memory consumption" or [system.data_skipping_indices](/core/reference/system-tables/data_skipping_indices)) and size the cache correspondingly.
_We reiterate that verifying and, if necessary, increasing the vector index cache should be the first step when investigating slow vector search queries._
-The current size of the vector similarity index cache is shown in [system.metrics](/reference/system-tables/metrics):
+The current size of the vector similarity index cache is shown in [system.metrics](/core/reference/system-tables/metrics):
```sql
SELECT metric, value
@@ -465,7 +465,7 @@ FROM system.metrics
WHERE metric = 'VectorSimilarityIndexCacheBytes'
```
-The cache hits and misses for a query with some query id can be obtained from [system.query_log](/reference/system-tables/query_log):
+The cache hits and misses for a query with some query id can be obtained from [system.query_log](/core/reference/system-tables/query_log):
```sql
SYSTEM FLUSH LOGS query_log;
@@ -495,7 +495,7 @@ Quantization reduces the precision of vector searches compared to searching the
However, on most datasets, half-precision brain float quantization (`bf16`) results in a negligible precision loss, therefore vector similarity indexes use this quantization technique by default.
Quarter precision (`i8`) and binary (`b1`) quantization causes appreciable precision loss in vector searches.
We recommend both quantizations only if the the size of the vector similarity index is significantly larger than the available DRAM size.
-In this case, we also suggest enabling rescoring ([vector_search_index_fetch_multiplier](/reference/settings/session-settings#vector_search_index_fetch_multiplier), [vector_search_with_rescoring](/reference/settings/session-settings#vector_search_with_rescoring)) to improve accuracy.
+In this case, we also suggest enabling rescoring ([vector_search_index_fetch_multiplier](/core/reference/settings/session-settings#vector_search_index_fetch_multiplier), [vector_search_with_rescoring](/core/reference/settings/session-settings#vector_search_with_rescoring)) to improve accuracy.
Binary quantization is only recommended for 1) normalized embeddings (i.e. vector length = 1, OpenAI models are usually normalized), and 2) if the cosine distance is used as distance function.
Binary quantization internally uses the Hamming distance to construct and search the proximity graph.
The rescoring step uses the original full-precision vectors stored in the table to identify the nearest neighbours via cosine distance.
@@ -542,7 +542,7 @@ This saves CPU time on the server side, and avoids bloat in the server logs and
#### Administration and monitoring {#administration}
-The on-disk size of vector similarity indexes can be obtained from [system.data_skipping_indices](/reference/system-tables/data_skipping_indices):
+The on-disk size of vector similarity indexes can be obtained from [system.data_skipping_indices](/core/reference/system-tables/data_skipping_indices):
```sql
SELECT database, table, name, formatReadableSize(data_compressed_bytes)
@@ -560,7 +560,7 @@ Example output:
#### Differences to regular skipping indexes {#differences-to-regular-skipping-indexes}
-As all regular [skipping indexes](/concepts/features/performance/skip-indexes/skipping-indexes), vector similarity indexes are constructed over granules and each indexed block consists of `GRANULARITY = [N]`-many granules (`[N]` = 1 by default for normal skipping indexes).
+As all regular [skipping indexes](/core/concepts/features/performance/skip-indexes/skipping-indexes), vector similarity indexes are constructed over granules and each indexed block consists of `GRANULARITY = [N]`-many granules (`[N]` = 1 by default for normal skipping indexes).
For example, if the primary index granularity of the table is 8192 (setting `index_granularity = 8192`) and `GRANULARITY = 2`, then each indexed block will contain 16384 rows.
However, data structures and algorithms for approximate neighbor search are inherently row-oriented.
They store a compact representation of a set of rows and also return rows for vector search queries.
@@ -608,14 +608,14 @@ LIMIT 3;
```
Further example datasets that use approximate vector search:
-- [LAION-400M](/get-started/sample-datasets/laion)
-- [LAION-5B](/get-started/sample-datasets/laion5b)
-- [dbpedia](/get-started/sample-datasets/dbpedia)
-- [hackernews](/get-started/sample-datasets/hacker-news-vector-search)
+- [LAION-400M](/core/get-started/sample-datasets/laion)
+- [LAION-5B](/core/get-started/sample-datasets/laion5b)
+- [dbpedia](/core/get-started/sample-datasets/dbpedia)
+- [hackernews](/core/get-started/sample-datasets/hacker-news-vector-search)
### Quantized Bit (QBit) {#approximate-nearest-neighbor-search-qbit}
-One common approach to speed up exact vector search is to use a lower-precision [float data type](/reference/data-types/float).
+One common approach to speed up exact vector search is to use a lower-precision [float data type](/core/reference/data-types/float).
For example, if vectors are stored as `Array(BFloat16)` instead of `Array(Float32)`, the data size is reduced by half, and query runtimes are expected to decrease proportionally.
This method is known as quantization. While it speeds up computation, it may reduce result accuracy despite performing an exhaustive scan of all vectors.
@@ -659,7 +659,7 @@ INSERT INTO fruit_animal VALUES
Let's find the nearest neighbors to a vector representing word 'lemon' using L2 distance. The third parameter in the distance function specifies the precision in bits - higher values provide more accuracy but require more computation.
-You can find all available distance functions for `QBit` [here](/reference/data-types/qbit#vector-search-functions).
+You can find all available distance functions for `QBit` [here](/core/reference/data-types/qbit#vector-search-functions).
**Full precision search (64-bit):**
diff --git a/reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx b/core/reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx
similarity index 86%
rename from reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx
index de9ede06..5a2ff77c 100644
--- a/reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/coalescingmergetree.mdx
@@ -15,11 +15,11 @@ doc_type: 'reference'
This table engine is available from version 25.6 and higher in both OSS and Cloud.
-This engine inherits from [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree). The key difference is in how data parts are merged: for `CoalescingMergeTree` tables, ClickHouse replaces all rows with the same primary key (or more precisely, the same [sorting key](/reference/engines/table-engines/mergetree-family/mergetree)) with a single row that contains the latest non-NULL values for each column.
+This engine inherits from [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree). The key difference is in how data parts are merged: for `CoalescingMergeTree` tables, ClickHouse replaces all rows with the same primary key (or more precisely, the same [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree)) with a single row that contains the latest non-NULL values for each column.
This enables column-level upserts, meaning you can update only specific columns rather than entire rows.
-`CoalescingMergeTree` is intended for use with Nullable types in non-key columns. If the columns are not Nullable, the behavior is the same as with [ReplacingMergeTree](/reference/engines/table-engines/mergetree-family/replacingmergetree).
+`CoalescingMergeTree` is intended for use with Nullable types in non-key columns. If the columns are not Nullable, the behavior is the same as with [ReplacingMergeTree](/core/reference/engines/table-engines/mergetree-family/replacingmergetree).
## Creating a table {#creating-a-table}
@@ -36,7 +36,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
[SETTINGS name=value, ...]
```
-For a description of request parameters, see [request description](/reference/statements/create/table).
+For a description of request parameters, see [request description](/core/reference/statements/create/table).
### Parameters of CoalescingMergeTree {#parameters-of-coalescingmergetree}
@@ -46,7 +46,7 @@ For a description of request parameters, see [request description](/reference/st
### Query clauses {#query-clauses}
-When creating a `CoalescingMergeTree` table the same [clauses](/reference/engines/table-engines/mergetree-family/mergetree) are required, as when creating a `MergeTree` table.
+When creating a `CoalescingMergeTree` table the same [clauses](/core/reference/engines/table-engines/mergetree-family/mergetree) are required, as when creating a `MergeTree` table.
diff --git a/reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx b/core/reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx
similarity index 93%
rename from reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx
index a04de558..6d532282 100644
--- a/reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/collapsingmergetree.mdx
@@ -10,7 +10,7 @@ doc_type: 'guide'
## Description {#description}
-The `CollapsingMergeTree` engine inherits from [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree)
+The `CollapsingMergeTree` engine inherits from [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree)
and adds logic for collapsing rows during the merge process.
The `CollapsingMergeTree` table engine asynchronously deletes (collapses)
pairs of rows if all the fields in a sorting key (`ORDER BY`) are equivalent except for the special field `Sign`,
@@ -27,9 +27,9 @@ increasing the efficiency of `SELECT` queries as a consequence.
## Parameters {#parameters}
All parameters of this table engine, with the exception of the `Sign` parameter,
-have the same meaning as in [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree).
+have the same meaning as in [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree).
-- `Sign` — The name given to a column with the type of row where `1` is a "state" row and `-1` is a "cancel" row. Type: [Int8](/reference/data-types/int-uint).
+- `Sign` — The name given to a column with the type of row where `1` is a "state" row and `-1` is a "cancel" row. Type: [Int8](/core/reference/data-types/int-uint).
## Creating a table {#creating-a-table}
@@ -66,12 +66,12 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
ENGINE [=] CollapsingMergeTree(date-column [, sampling_expression], (primary, key), index_granularity, Sign)
```
-`Sign` — The name given to a column with the type of row where `1` is a "state" row and `-1` is a "cancel" row. [Int8](/reference/data-types/int-uint).
+`Sign` — The name given to a column with the type of row where `1` is a "state" row and `-1` is a "cancel" row. [Int8](/core/reference/data-types/int-uint).
-- For a description of query parameters, see [query description](/reference/statements/create/table).
-- When creating a `CollapsingMergeTree` table, the same [query clauses](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) are required, as when creating a `MergeTree` table.
+- For a description of query parameters, see [query description](/core/reference/statements/create/table).
+- When creating a `CollapsingMergeTree` table, the same [query clauses](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) are required, as when creating a `MergeTree` table.
## Collapsing {#table_engine-collapsingmergetree-collapsing}
@@ -135,7 +135,7 @@ is further discussed in the [Algorithm](#table_engine-collapsingmergetree-collap
### Algorithm {#table_engine-collapsingmergetree-collapsing-algorithm}
-When ClickHouse merges data [parts](/concepts/core-concepts/glossary#parts),
+When ClickHouse merges data [parts](/core/concepts/core-concepts/glossary#parts),
each group of consecutive rows with the same sorting key (`ORDER BY`) is reduced to no more than two rows,
the "state" row with `Sign` = `1` and the "cancel" row with `Sign` = `-1`.
In other words, in ClickHouse entries collapse.
@@ -174,7 +174,7 @@ because `CollapsingMergeTree` does not save the history of the collapsed states.
If you need to extract data without aggregation
(for example, to check whether rows whose newest values match certain conditions are present),
-you can use the [`FINAL`](/reference/statements/select/from#final-modifier) modifier for the `FROM` clause. It will merge the data before returning the result.
+you can use the [`FINAL`](/core/reference/statements/select/from#final-modifier) modifier for the `FROM` clause. It will merge the data before returning the result.
For CollapsingMergeTree, only the latest state row for each key is returned.
@@ -245,8 +245,8 @@ However, collapsing **did not occur** because there was no merge of the data par
and ClickHouse merges data parts in the background at an unknown moment which we cannot predict.
We therefore need an aggregation
-which we perform with the [`sum`](/reference/functions/aggregate-functions/reference/sum)
-aggregate function and the [`HAVING`](/reference/statements/select/having) clause:
+which we perform with the [`sum`](/core/reference/functions/aggregate-functions/reference/sum)
+aggregate function and the [`HAVING`](/core/reference/statements/select/having) clause:
```sql
SELECT
diff --git a/reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx b/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx
similarity index 82%
rename from reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx
rename to core/reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx
index 4cf0546f..88382a5d 100644
--- a/reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key.mdx
@@ -12,11 +12,11 @@ In most cases you do not need a partition key, and in most other cases you do no
You should never use too granular of partitioning. Don't partition your data by client identifiers or names. Instead, make a client identifier or name the first column in the ORDER BY expression.
-Partitioning is available for the [MergeTree family tables](/reference/engines/table-engines/mergetree-family/mergetree), including [replicated tables](/reference/engines/table-engines/mergetree-family/replication) and [materialized views](/reference/statements/create/view#materialized-view).
+Partitioning is available for the [MergeTree family tables](/core/reference/engines/table-engines/mergetree-family/mergetree), including [replicated tables](/core/reference/engines/table-engines/mergetree-family/replication) and [materialized views](/core/reference/statements/create/view#materialized-view).
A partition is a logical combination of records in a table by a specified criterion. You can set a partition by an arbitrary criterion, such as by month, by day, or by event type. Each partition is stored separately to simplify manipulations of this data. When accessing the data, ClickHouse uses the smallest subset of partitions possible. Partitions improve performance for queries containing a partitioning key because ClickHouse will filter for that partition before selecting the parts and granules within the partition.
-The partition is specified in the `PARTITION BY expr` clause when [creating a table](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table). The partition key can be any expression from the table columns. For example, to specify partitioning by month, use the expression `toYYYYMM(date_column)`:
+The partition is specified in the `PARTITION BY expr` clause when [creating a table](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table). The partition key can be any expression from the table columns. For example, to specify partitioning by month, use the expression `toYYYYMM(date_column)`:
```sql
CREATE TABLE visits
@@ -30,7 +30,7 @@ PARTITION BY toYYYYMM(VisitDate)
ORDER BY Hour;
```
-The partition key can also be a tuple of expressions (similar to the [primary key](/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries)). For example:
+The partition key can also be a tuple of expressions (similar to the [primary key](/core/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries)). For example:
```sql
ENGINE = ReplicatedCollapsingMergeTree('/clickhouse/tables/name', 'replica1', Sign)
@@ -40,7 +40,7 @@ ORDER BY (CounterID, StartDate, intHash32(UserID));
In this example, we set partitioning by the event types that occurred during the current week.
-By default, the floating-point partition key is not supported. To use it enable the setting [allow_floating_point_partition_key](/reference/settings/merge-tree-settings#allow_floating_point_partition_key).
+By default, the floating-point partition key is not supported. To use it enable the setting [allow_floating_point_partition_key](/core/reference/settings/merge-tree-settings#allow_floating_point_partition_key).
When inserting new data to a table, this data is stored as a separate part (chunk) sorted by the primary key. In 10-15 minutes after inserting, the parts of the same partition are merged into the entire part.
@@ -48,7 +48,7 @@ When inserting new data to a table, this data is stored as a separate part (chun
A merge only works for data parts that have the same value for the partitioning expression. This means **you shouldn't make overly granular partitions** (more than about a thousand partitions). Otherwise, the `SELECT` query performs poorly because of an unreasonably large number of files in the file system and open file descriptors.
-Use the [system.parts](/reference/system-tables/parts) table to view the table parts and partitions. For example, let's assume that we have a `visits` table with partitioning by month. Let's perform the `SELECT` query for the `system.parts` table:
+Use the [system.parts](/core/reference/system-tables/parts) table to view the table parts and partitions. For example, let's assume that we have a `visits` table with partitioning by month. Let's perform the `SELECT` query for the `system.parts` table:
```sql
SELECT
@@ -71,9 +71,9 @@ WHERE table = 'visits'
└───────────┴───────────────────┴────────┘
```
-The `partition` column contains the names of the partitions. There are two partitions in this example: `201901` and `201902`. You can use this column value to specify the partition name in [ALTER ... PARTITION](/reference/statements/alter/partition) queries.
+The `partition` column contains the names of the partitions. There are two partitions in this example: `201901` and `201902`. You can use this column value to specify the partition name in [ALTER ... PARTITION](/core/reference/statements/alter/partition) queries.
-The `name` column contains the names of the partition data parts. You can use this column to specify the name of the part in the [ALTER ATTACH PART](/reference/statements/alter/partition#attach-partitionpart) query.
+The `name` column contains the names of the partition data parts. You can use this column to specify the name of the part in the [ALTER ATTACH PART](/core/reference/statements/alter/partition#attach-partitionpart) query.
Let's break down the name of the part: `201901_1_9_2_11`:
@@ -89,7 +89,7 @@ The parts of old-type tables have the name: `20190117_20190123_2_2_0` (minimum d
The `active` column shows the status of the part. `1` is active; `0` is inactive. The inactive parts are, for example, source parts remaining after merging to a larger part. The corrupted data parts are also indicated as inactive.
-As you can see in the example, there are several separated parts of the same partition (for example, `201901_1_3_1` and `201901_1_9_2`). This means that these parts are not merged yet. ClickHouse merges the inserted parts of data periodically, approximately 15 minutes after inserting. In addition, you can perform a non-scheduled merge using the [OPTIMIZE](/reference/statements/optimize) query. Example:
+As you can see in the example, there are several separated parts of the same partition (for example, `201901_1_3_1` and `201901_1_9_2`). This means that these parts are not merged yet. ClickHouse merges the inserted parts of data periodically, approximately 15 minutes after inserting. In addition, you can perform a non-scheduled merge using the [OPTIMIZE](/core/reference/statements/optimize) query. Example:
```sql
OPTIMIZE TABLE visits PARTITION 201902;
@@ -128,11 +128,11 @@ drwxr-xr-x 2 clickhouse clickhouse 4096 Feb 1 16:48 detached
The folders '201901_1_1_0', '201901_1_7_1' and so on are the directories of the parts. Each part relates to a corresponding partition and contains data just for a certain month (the table in this example has partitioning by month).
-The `detached` directory contains parts that were detached from the table using the [DETACH](/reference/statements/detach) query. The corrupted parts are also moved to this directory, instead of being deleted. The server does not use the parts from the `detached` directory. You can add, delete, or modify the data in this directory at any time – the server will not know about this until you run the [ATTACH](/reference/statements/alter/partition#attach-partitionpart) query.
+The `detached` directory contains parts that were detached from the table using the [DETACH](/core/reference/statements/detach) query. The corrupted parts are also moved to this directory, instead of being deleted. The server does not use the parts from the `detached` directory. You can add, delete, or modify the data in this directory at any time – the server will not know about this until you run the [ATTACH](/core/reference/statements/alter/partition#attach-partitionpart) query.
Note that on the operating server, you cannot manually change the set of parts or their data on the file system, since the server will not know about it. For non-replicated tables, you can do this when the server is stopped, but it isn't recommended. For replicated tables, the set of parts cannot be changed in any case.
-ClickHouse allows you to perform operations with the partitions: delete them, copy from one table to another, or create a backup. See the list of all operations in the section [Manipulations With Partitions and Parts](/reference/statements/alter/partition).
+ClickHouse allows you to perform operations with the partitions: delete them, copy from one table to another, or create a backup. See the list of all operations in the section [Manipulations With Partitions and Parts](/core/reference/statements/alter/partition).
## Group By optimisation using partition key {#group-by-optimisation-using-partition-key}
diff --git a/reference/engines/table-engines/mergetree-family/graphitemergetree.mdx b/core/reference/engines/table-engines/mergetree-family/graphitemergetree.mdx
similarity index 90%
rename from reference/engines/table-engines/mergetree-family/graphitemergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/graphitemergetree.mdx
index 08554948..fd464d1e 100644
--- a/reference/engines/table-engines/mergetree-family/graphitemergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/graphitemergetree.mdx
@@ -10,7 +10,7 @@ This engine is designed for thinning and aggregating/averaging (rollup) [Graphit
You can use any ClickHouse table engine to store the Graphite data if you do not need rollup, but if you need a rollup use `GraphiteMergeTree`. The engine reduces the volume of storage and increases the efficiency of queries from Graphite.
-The engine inherits properties from [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree).
+The engine inherits properties from [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree).
## Creating a table {#creating-table}
@@ -29,7 +29,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
[SETTINGS name=value, ...]
```
-See a detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See a detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
A table for the Graphite data should have the following columns for the following data:
@@ -49,7 +49,7 @@ The names of these columns should be set in the rollup configuration.
**Query clauses**
-When creating a `GraphiteMergeTree` table, the same [clauses](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) are required, as when creating a `MergeTree` table.
+When creating a `GraphiteMergeTree` table, the same [clauses](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) are required, as when creating a `MergeTree` table.
@@ -79,7 +79,7 @@ All of the parameters excepting `config_section` have the same meaning as in `Me
## Rollup configuration {#rollup-configuration}
-The settings for rollup are defined by the [graphite_rollup](/reference/settings/server-settings/settings#graphite) parameter in the server configuration. The name of the parameter could be any. You can create several configurations and use them for different tables.
+The settings for rollup are defined by the [graphite_rollup](/core/reference/settings/server-settings/settings#graphite) parameter in the server configuration. The name of the parameter could be any. You can create several configurations and use them for different tables.
Rollup configuration structure:
@@ -264,5 +264,5 @@ Valid values:
```
-Data rollup is performed during merges. Usually, for old partitions, merges are not started, so for rollup it is necessary to trigger an unscheduled merge using [optimize](/reference/statements/optimize). Or use additional tools, for example [graphite-ch-optimizer](https://github.com/innogames/graphite-ch-optimizer).
+Data rollup is performed during merges. Usually, for old partitions, merges are not started, so for rollup it is necessary to trigger an unscheduled merge using [optimize](/core/reference/statements/optimize). Or use additional tools, for example [graphite-ch-optimizer](https://github.com/innogames/graphite-ch-optimizer).
diff --git a/core/reference/engines/table-engines/mergetree-family/index.mdx b/core/reference/engines/table-engines/mergetree-family/index.mdx
new file mode 100644
index 00000000..c3d9a696
--- /dev/null
+++ b/core/reference/engines/table-engines/mergetree-family/index.mdx
@@ -0,0 +1,41 @@
+---
+description: 'Documentation for MergeTree Engine Family'
+sidebarTitle: 'MergeTree Family'
+slug: /engines/table-engines/mergetree-family/
+title: 'MergeTree Engine Family'
+doc_type: 'reference'
+---
+
+Table engines from the MergeTree family are the core of ClickHouse data storage capabilities. They provide most features for resilience and high-performance data retrieval: columnar storage, custom partitioning, sparse primary index, secondary data-skipping indexes, etc.
+
+Base [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table engine can be considered the default table engine for single-node ClickHouse instances because it is versatile and practical for a wide range of use cases.
+
+For production usage [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/replication) is the way to go, because it adds high-availability to all features of regular MergeTree engine. A bonus is automatic data deduplication on data ingestion, so the software can safely retry if there was some network issue during insert.
+
+All other engines of MergeTree family add extra functionality for some specific use cases. Usually, it's implemented as additional data manipulation in background.
+
+The main downside of MergeTree engines is that they are rather heavy-weight. So the typical pattern is to have not so many of them. If you need many small tables, for example for temporary data, consider [Log engine family](/core/reference/engines/table-engines/log-family).
+
+{/* The table of contents table for this page is automatically generated by
+https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh
+from the YAML front matter fields: slug, description, title.
+
+If you've spotted an error, please edit the YML frontmatter of the pages themselves.
+*/}
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [MergeTree table engine](/core/reference/engines/table-engines/mergetree-family/mergetree) | `MergeTree`-family table engines are designed for high data ingest rates and huge data volumes. |
+| [Replicated* table engines](/core/reference/engines/table-engines/mergetree-family/replication) | Overview of data replication with the Replicated* family of table engines in ClickHouse |
+| [Custom Partitioning Key](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key) | Learn how to add a custom partitioning key to MergeTree tables. |
+| [ReplacingMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) | differs from MergeTree in that it removes duplicate entries with the same sorting key value (`ORDER BY` table section, not `PRIMARY KEY`). |
+| [CoalescingMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/coalescingmergetree) | CoalescingMergeTree inherits from the MergeTree engine. Its key feature is the ability to automatically store last non-null value of each column during part merges. |
+| [SummingMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/summingmergetree) | SummingMergeTree inherits from the MergeTree engine. Its key feature is the ability to automatically sum numeric data during part merges. |
+| [AggregatingMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) | Replaces all rows with the same primary key (or more accurately, with the same [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree)) with a single row (within a single data part) that stores a combination of states of aggregate functions. |
+| [CollapsingMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) | Inherits from MergeTree but adds logic for collapsing rows during the merge process. |
+| [VersionedCollapsingMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) | Allows for quick writing of object states that are continually changing, and deleting old object states in the background. |
+| [GraphiteMergeTree table engine](/core/reference/engines/table-engines/mergetree-family/graphitemergetree) | Designed for thinning and aggregating/averaging (rollup) Graphite data. |
+| [Exact and Approximate Vector Search](/core/reference/engines/table-engines/mergetree-family/annindexes) | Documentation for Exact and Approximate Vector Search |
+| [Full-text Search with Text Indexes](/core/reference/engines/table-engines/mergetree-family/textindexes) | Quickly find search terms in text. |
+{/*AUTOGENERATED_END*/}
diff --git a/reference/engines/table-engines/mergetree-family/invertedindexes.mdx b/core/reference/engines/table-engines/mergetree-family/invertedindexes.mdx
similarity index 72%
rename from reference/engines/table-engines/mergetree-family/invertedindexes.mdx
rename to core/reference/engines/table-engines/mergetree-family/invertedindexes.mdx
index 69c85e8f..24fe942a 100644
--- a/reference/engines/table-engines/mergetree-family/invertedindexes.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/invertedindexes.mdx
@@ -25,7 +25,7 @@ To create a text index, first enable the corresponding experimental setting:
SET allow_experimental_full_text_index = true;
```
-A text index can be defined on a [String](/reference/data-types/string), [FixedString](/reference/data-types/fixedstring), [Array(String)](/reference/data-types/array), [Array(FixedString)](/reference/data-types/array), and [Map](/reference/data-types/map) (via [mapKeys](/reference/functions/regular-functions/tuple-map-functions#mapkeys) and [mapValues](/reference/functions/regular-functions/tuple-map-functions#mapvalues) map functions) column using the following syntax:
+A text index can be defined on a [String](/core/reference/data-types/string), [FixedString](/core/reference/data-types/fixedstring), [Array(String)](/core/reference/data-types/array), [Array(FixedString)](/core/reference/data-types/array), and [Map](/core/reference/data-types/map) (via [mapKeys](/core/reference/functions/regular-functions/tuple-map-functions#mapkeys) and [mapValues](/core/reference/functions/regular-functions/tuple-map-functions#mapvalues) map functions) column using the following syntax:
```sql
CREATE TABLE tab
@@ -50,16 +50,16 @@ ORDER BY key
**Tokenizer argument**. The `tokenizer` argument specifies the tokenizer:
-- `splitByNonAlpha` splits strings along non-alphanumeric ASCII characters (also see function [splitByNonAlpha](/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha)).
-- `splitByString(S)` splits strings along certain user-defined separator strings `S` (also see function [splitByString](/reference/functions/regular-functions/splitting-merging-functions#splitByString)).
+- `splitByNonAlpha` splits strings along non-alphanumeric ASCII characters (also see function [splitByNonAlpha](/core/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha)).
+- `splitByString(S)` splits strings along certain user-defined separator strings `S` (also see function [splitByString](/core/reference/functions/regular-functions/splitting-merging-functions#splitByString)).
The separators can be specified using an optional parameter, for example, `tokenizer = splitByString([', ', '; ', '\n', '\\'])`.
Note that each string can consist of multiple characters (`', '` in the example).
The default separator list, if not specified explicitly (for example, `tokenizer = splitByString`), is a single whitespace `[' ']`.
-- `ngrams(N)` splits strings into equally large `N`-grams (also see function [ngrams](/reference/functions/regular-functions/splitting-merging-functions#ngrams)).
+- `ngrams(N)` splits strings into equally large `N`-grams (also see function [ngrams](/core/reference/functions/regular-functions/splitting-merging-functions#ngrams)).
The ngram length can be specified using an optional integer parameter between 2 and 8, for example, `tokenizer = ngrams(3)`.
The default ngram size, if not specified explicitly (for example, `tokenizer = ngrams`), is 3.
-- `array` performs no tokenization, i.e. every row value is a token (also see function [array](/reference/functions/regular-functions/array-functions#array)).
-- `sparseGrams(min_length, max_length, min_cutoff_length)` — uses the algorithm as in the [sparseGrams](/reference/functions/regular-functions/string-functions#sparseGrams) function to split a string into all ngrams of `min_length` and several ngrams of larger size up to `max_length`, inclusive. If `min_cutoff_length` is specified, only N-grams with length greater than or equal to `min_cutoff_length` are saved in the index. Unlike `ngrams(N)`, which generates only fixed-length N-grams, `sparseGrams` produces a set of variable-length N-grams within the specified range, allowing for a more flexible representation of text context. For example, `tokenizer = sparseGrams(3, 5, 4)` will generate 3-, 4-, 5-grams from the input string and save only the 4- and 5-grams in the index.
+- `array` performs no tokenization, i.e. every row value is a token (also see function [array](/core/reference/functions/regular-functions/array-functions#array)).
+- `sparseGrams(min_length, max_length, min_cutoff_length)` — uses the algorithm as in the [sparseGrams](/core/reference/functions/regular-functions/string-functions#sparseGrams) function to split a string into all ngrams of `min_length` and several ngrams of larger size up to `max_length`, inclusive. If `min_cutoff_length` is specified, only N-grams with length greater than or equal to `min_cutoff_length` are saved in the index. Unlike `ngrams(N)`, which generates only fixed-length N-grams, `sparseGrams` produces a set of variable-length N-grams within the specified range, allowing for a more flexible representation of text context. For example, `tokenizer = sparseGrams(3, 5, 4)` will generate 3-, 4-, 5-grams from the input string and save only the 4- and 5-grams in the index.
The `splitByString` tokenizer applies the split separators left-to-right.
@@ -76,7 +76,7 @@ The currently supported tokenizers may lead to huge index sizes and large query
We plan to add specialized language-specific tokenizers in future which will handle these cases better.
-To test how the tokenizers split the input string, you can use ClickHouse's [tokens](/reference/functions/regular-functions/splitting-merging-functions#tokens) function:
+To test how the tokenizers split the input string, you can use ClickHouse's [tokens](/core/reference/functions/regular-functions/splitting-merging-functions#tokens) function:
As an example,
@@ -95,11 +95,11 @@ returns
**Preprocessor argument**. The optional argument `preprocessor` is an expression which transforms the input string before tokenization.
Typical use cases for the preprocessor argument include
-1. Lower-casing (or upper-casing) the input strings to enable case-insensitive matching, e.g., [lower](/reference/functions/regular-functions/string-functions#lower), [lowerUTF8](/reference/functions/regular-functions/string-functions#lowerUTF8), see the first example below.
-2. UTF-8 normalization, e.g. [normalizeUTF8NFC](/reference/functions/regular-functions/string-functions#normalizeUTF8NFC), [normalizeUTF8NFD](/reference/functions/regular-functions/string-functions#normalizeUTF8NFD), [normalizeUTF8NFKC](/reference/functions/regular-functions/string-functions#normalizeUTF8NFKC), [normalizeUTF8NFKD](/reference/functions/regular-functions/string-functions#normalizeUTF8NFKD), [toValidUTF8](/reference/functions/regular-functions/string-functions#toValidUTF8).
-3. Removing or transforming unwanted characters or substrings, e.g. [extractTextFromHTML](/reference/functions/regular-functions/string-functions#extractTextFromHTML), [substring](/reference/functions/regular-functions/string-functions#substring), [idnaEncode](/reference/functions/regular-functions/string-functions#idnaEncode).
+1. Lower-casing (or upper-casing) the input strings to enable case-insensitive matching, e.g., [lower](/core/reference/functions/regular-functions/string-functions#lower), [lowerUTF8](/core/reference/functions/regular-functions/string-functions#lowerUTF8), see the first example below.
+2. UTF-8 normalization, e.g. [normalizeUTF8NFC](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFC), [normalizeUTF8NFD](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFD), [normalizeUTF8NFKC](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFKC), [normalizeUTF8NFKD](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFKD), [toValidUTF8](/core/reference/functions/regular-functions/string-functions#toValidUTF8).
+3. Removing or transforming unwanted characters or substrings, e.g. [extractTextFromHTML](/core/reference/functions/regular-functions/string-functions#extractTextFromHTML), [substring](/core/reference/functions/regular-functions/string-functions#substring), [idnaEncode](/core/reference/functions/regular-functions/string-functions#idnaEncode).
-The preprocessor expression must transform an input value of type [String](/reference/data-types/string) or [FixedString](/reference/data-types/fixedstring) to a value of the same type.
+The preprocessor expression must transform an input value of type [String](/core/reference/data-types/string) or [FixedString](/core/reference/data-types/fixedstring) to a value of the same type.
Examples:
- `INDEX idx(col) TYPE text(tokenizer = 'splitByNonAlpha', preprocessor = lower(col))`
@@ -109,7 +109,7 @@ Examples:
Also, the preprocessor expression must only reference the column on top of which the text index is defined.
Using non-deterministic functions is not allowed.
-Functions [hasToken](/reference/functions/regular-functions/string-search-functions#hasToken), [hasAllTokens](/reference/functions/regular-functions/string-search-functions#hasAllTokens) and [hasAnyTokens](/reference/functions/regular-functions/string-search-functions#hasAnyTokens) use the preprocessor to first transform the search term before tokenizing it.
+Functions [hasToken](/core/reference/functions/regular-functions/string-search-functions#hasToken), [hasAllTokens](/core/reference/functions/regular-functions/string-search-functions#hasAllTokens) and [hasAnyTokens](/core/reference/functions/regular-functions/string-search-functions#hasAnyTokens) use the preprocessor to first transform the search term before tokenizing it.
For example:
@@ -141,7 +141,7 @@ ORDER BY tuple();
SELECT count() FROM tab WHERE hasToken(str, lower('Foo'));
```
-**Other arguments**. Text indexes in ClickHouse are implemented as [secondary indexes](/reference/engines/table-engines/mergetree-family/mergetree#skip-index-types).
+**Other arguments**. Text indexes in ClickHouse are implemented as [secondary indexes](/core/reference/engines/table-engines/mergetree-family/mergetree#skip-index-types).
However, unlike other skipping indexes, text indexes have a default index GRANULARITY of 64.
This value has been chosen empirically and it provides a good trade-off between speed and index size for most use cases.
Advanced users can specify a different index granularity (we do not recommend this).
@@ -184,7 +184,7 @@ WHERE string_search_function(column_with_text_index)
#### `=` and `!=`
-`=` ([equals](/reference/functions/regular-functions/comparison-functions#equals)) and `!=` ([notEquals](/reference/functions/regular-functions/comparison-functions#notEquals) ) match the entire given search term.
+`=` ([equals](/core/reference/functions/regular-functions/comparison-functions#equals)) and `!=` ([notEquals](/core/reference/functions/regular-functions/comparison-functions#notEquals) ) match the entire given search term.
Example:
@@ -196,7 +196,7 @@ The text index supports `=` and `!=`, yet equality and inequality search only ma
#### `IN` and `NOT IN`
-`IN` ([in](/reference/functions/regular-functions/in-functions)) and `NOT IN` ([notIn](/reference/functions/regular-functions/in-functions)) are similar to functions `equals` and `notEquals` but they match all (`IN`) or none (`NOT IN`) of the search terms.
+`IN` ([in](/core/reference/functions/regular-functions/in-functions)) and `NOT IN` ([notIn](/core/reference/functions/regular-functions/in-functions)) are similar to functions `equals` and `notEquals` but they match all (`IN`) or none (`NOT IN`) of the search terms.
Example:
@@ -212,7 +212,7 @@ The same restrictions as for `=` and `!=` apply, i.e. `IN` and `NOT IN` only mak
These functions currently use the text index for filtering only if the index tokenizer is either `splitByNonAlpha` or `ngrams`.
-In order to use `LIKE` [like](/reference/functions/regular-functions/string-search-functions#like), `NOT LIKE` ([notLike](/reference/functions/regular-functions/string-search-functions#notLike)), and the [match](/reference/functions/regular-functions/string-search-functions#match) function with text indexes, ClickHouse must be able to extract complete tokens from the search term.
+In order to use `LIKE` [like](/core/reference/functions/regular-functions/string-search-functions#like), `NOT LIKE` ([notLike](/core/reference/functions/regular-functions/string-search-functions#notLike)), and the [match](/core/reference/functions/regular-functions/string-search-functions#match) function with text indexes, ClickHouse must be able to extract complete tokens from the search term.
Example:
@@ -233,7 +233,7 @@ The spaces left and right of `support` make sure that the term can be extracted
#### `startsWith` and `endsWith`
-Similar to `LIKE`, functions [startsWith](/reference/functions/regular-functions/string-functions#startsWith) and [endsWith](/reference/functions/regular-functions/string-functions#endsWith) can only use a text index, if complete tokens can be extracted from the search term.
+Similar to `LIKE`, functions [startsWith](/core/reference/functions/regular-functions/string-functions#startsWith) and [endsWith](/core/reference/functions/regular-functions/string-functions#endsWith) can only use a text index, if complete tokens can be extracted from the search term.
Example:
@@ -258,7 +258,7 @@ SELECT count() FROM tab WHERE endsWith(comment, ' olap engine');
#### `hasToken` and `hasTokenOrNull`
-Functions [hasToken](/reference/functions/regular-functions/string-search-functions#hasToken) and [hasTokenOrNull](/reference/functions/regular-functions/string-search-functions#hasTokenOrNull) match against a single given token.
+Functions [hasToken](/core/reference/functions/regular-functions/string-search-functions#hasToken) and [hasTokenOrNull](/core/reference/functions/regular-functions/string-search-functions#hasTokenOrNull) match against a single given token.
Unlike the previously mentioned functions, they do not tokenize the search term (they assume the input is a single token).
@@ -272,7 +272,7 @@ Functions `hasToken` and `hasTokenOrNull` are the most performant functions to u
#### `hasAnyTokens` and `hasAllTokens`
-Functions [hasAnyTokens](/reference/functions/regular-functions/string-search-functions#hasAnyTokens) and [hasAllTokens](/reference/functions/regular-functions/string-search-functions#hasAllTokens) match against one or all of the given tokens.
+Functions [hasAnyTokens](/core/reference/functions/regular-functions/string-search-functions#hasAnyTokens) and [hasAllTokens](/core/reference/functions/regular-functions/string-search-functions#hasAllTokens) match against one or all of the given tokens.
These two functions accept the search tokens as either a string which will be tokenized using the same tokenizer used for the index column, or as an array of already processed tokens to which no tokenization will be applied prior to searching.
See the function documentation for more info.
@@ -291,7 +291,7 @@ SELECT count() FROM tab WHERE hasAllTokens(comment, ['clickhouse', 'olap']);
#### `has`
-Array function [has](/reference/functions/regular-functions/array-functions#has) matches against a single token in the array of strings.
+Array function [has](/core/reference/functions/regular-functions/array-functions#has) matches against a single token in the array of strings.
Example:
@@ -301,7 +301,7 @@ SELECT count() FROM tab WHERE has(array, 'clickhouse');
#### `mapContains`
-Function [mapContains](/reference/functions/regular-functions/tuple-map-functions#mapcontains)(alias of: `mapContainsKey`) matches against a single token in the keys of a map.
+Function [mapContains](/core/reference/functions/regular-functions/tuple-map-functions#mapcontains)(alias of: `mapContainsKey`) matches against a single token in the keys of a map.
Example:
@@ -313,7 +313,7 @@ SELECT count() FROM tab WHERE mapContains(map, 'clickhouse');
#### `operator[]`
-Access [operator[]](/reference/operators#access-operators) can be used with the text index to filter out keys and values.
+Access [operator[]](/core/reference/operators#access-operators) can be used with the text index to filter out keys and values.
Example:
@@ -382,7 +382,7 @@ ENGINE = MergeTree
ORDER BY (timestamp);
```
-Without a text index, searching through [Map](/reference/data-types/map) data requires full table scans:
+Without a text index, searching through [Map](/core/reference/data-types/map) data requires full table scans:
1. Finds all logs with rate limiting:
@@ -398,15 +398,15 @@ SELECT count() FROM logs WHERE has(mapValues(attributes), '192.168.1.1'); -- slo
As log volume grows, these queries become slow.
-The solution is creating a text index for the [Map](/reference/data-types/map) keys and values.
+The solution is creating a text index for the [Map](/core/reference/data-types/map) keys and values.
-Use [mapKeys](/reference/functions/regular-functions/tuple-map-functions#mapkeys) to create a text index when you need to find logs by field names or attribute types:
+Use [mapKeys](/core/reference/functions/regular-functions/tuple-map-functions#mapkeys) to create a text index when you need to find logs by field names or attribute types:
```sql
ALTER TABLE logs ADD INDEX attributes_keys_idx mapKeys(attributes) TYPE text(tokenizer = array);
```
-Use [mapValues](/reference/functions/regular-functions/tuple-map-functions#mapvalues) to create a text index when you need to search within the actual content of attributes:
+Use [mapValues](/core/reference/functions/regular-functions/tuple-map-functions#mapvalues) to create a text index when you need to search within the actual content of attributes:
```sql
ALTER TABLE logs ADD INDEX attributes_vals_idx mapValues(attributes) TYPE text(tokenizer = array);
@@ -453,7 +453,7 @@ A dictionary blocks file (.dct) consists all the dictionary blocks of all index
**Index granules file (.idx)**
The index granules file contains for each dictionary block the block's first token, its relative offset in the dictionary blocks file, and a bloom filter for all tokens in the block.
-This sparse index structure is similar to ClickHouse's [sparse primary key index](/guides/cloud-oss/data-modelling/sparse-primary-indexes)).
+This sparse index structure is similar to ClickHouse's [sparse primary key index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes)).
The bloom filter allows to skip dictionary blocks early if the searched token is not contained in a dictionary block.
**Postings lists file (.pst)**
@@ -479,8 +479,8 @@ The direct read optimization in ClickHouse answers the query exclusively using t
Text index lookups read relatively little data and are therefore much faster than usual skip indexes in ClickHouse (which do a skip index lookup, followed by loading and filtering surviving granules).
Direct read is controlled by two settings:
-- Setting [query_plan_direct_read_from_text_index](/reference/settings/session-settings#query_plan_direct_read_from_text_index) (default: 1) which specifies if direct read is generally enabled.
-- Setting [use_skip_indexes_on_data_read](/reference/settings/session-settings#use_skip_indexes_on_data_read) (default: 1) which is another prerequisite for direct read. Note that on ClickHouse databases with [compatibility](/reference/settings/session-settings#compatibility) < 25.10, `use_skip_indexes_on_data_read` is disabled, so you either need to raise the compatibility setting value or `SET use_skip_indexes_on_data_read = 1` explicitly.
+- Setting [query_plan_direct_read_from_text_index](/core/reference/settings/session-settings#query_plan_direct_read_from_text_index) (default: 1) which specifies if direct read is generally enabled.
+- Setting [use_skip_indexes_on_data_read](/core/reference/settings/session-settings#use_skip_indexes_on_data_read) (default: 1) which is another prerequisite for direct read. Note that on ClickHouse databases with [compatibility](/core/reference/settings/session-settings#compatibility) < 25.10, `use_skip_indexes_on_data_read` is disabled, so you either need to raise the compatibility setting value or `SET use_skip_indexes_on_data_read = 1` explicitly.
Also, the text index must be fully materialized to use direct reading (use `ALTER TABLE ... MATERIALIZE INDEX` for that).
@@ -761,7 +761,7 @@ For this specific case, `hasAnyTokens(comment, ['ClickHouse', 'clickhouse'])` wo
Currently, there are caches for the deserialized dictionary blocks, headers and posting lists of the text index to reduce I/O.
-They can be enabled via settings [use_text_index_dictionary_cache](/reference/settings/session-settings#use_text_index_dictionary_cache), [use_text_index_header_cache](/reference/settings/session-settings#use_text_index_header_cache) and [use_text_index_postings_cache](/reference/settings/session-settings#use_text_index_postings_cache) respectively. By default, they are disabled.
+They can be enabled via settings [use_text_index_dictionary_cache](/core/reference/settings/session-settings#use_text_index_dictionary_cache), [use_text_index_header_cache](/core/reference/settings/session-settings#use_text_index_header_cache) and [use_text_index_postings_cache](/core/reference/settings/session-settings#use_text_index_postings_cache) respectively. By default, they are disabled.
Refer the following server settings to configure the cache.
@@ -771,28 +771,28 @@ Refer the following server settings to configure the cache.
| Setting | Description | Default |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------|--------------|
-| [text_index_dictionary_block_cache_policy](/reference/settings/server-settings/settings#text_index_dictionary_block_cache_policy) | Text index dictionary block cache policy name. | `SLRU` |
-| [text_index_dictionary_block_cache_size](/reference/settings/server-settings/settings#text_index_dictionary_block_cache_size) | Maximum cache size in bytes. | `1073741824` |
-| [text_index_dictionary_block_cache_max_entries](/reference/settings/server-settings/settings#text_index_dictionary_block_cache_max_entries) | Maximum number of deserialized dictionary blocks in cache. | `1'000'000` |
-| [text_index_dictionary_block_cache_size_ratio](/reference/settings/server-settings/settings#text_index_dictionary_block_cache_size_ratio) | The size of the protected queue in the text index dictionary block cache relative to the cache\'s total size. | `0.5` |
+| [text_index_dictionary_block_cache_policy](/core/reference/settings/server-settings/settings#text_index_dictionary_block_cache_policy) | Text index dictionary block cache policy name. | `SLRU` |
+| [text_index_dictionary_block_cache_size](/core/reference/settings/server-settings/settings#text_index_dictionary_block_cache_size) | Maximum cache size in bytes. | `1073741824` |
+| [text_index_dictionary_block_cache_max_entries](/core/reference/settings/server-settings/settings#text_index_dictionary_block_cache_max_entries) | Maximum number of deserialized dictionary blocks in cache. | `1'000'000` |
+| [text_index_dictionary_block_cache_size_ratio](/core/reference/settings/server-settings/settings#text_index_dictionary_block_cache_size_ratio) | The size of the protected queue in the text index dictionary block cache relative to the cache\'s total size. | `0.5` |
#### Header cache settings
| Setting | Description | Default |
|--------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|--------------|
-| [text_index_header_cache_policy](/reference/settings/server-settings/settings#text_index_header_cache_policy) | Text index header cache policy name. | `SLRU` |
-| [text_index_header_cache_size](/reference/settings/server-settings/settings#text_index_header_cache_size) | Maximum cache size in bytes. | `1073741824` |
-| [text_index_header_cache_max_entries](/reference/settings/server-settings/settings#text_index_header_cache_max_entries) | Maximum number of deserialized headers in cache. | `100'000` |
-| [text_index_header_cache_size_ratio](/reference/settings/server-settings/settings#text_index_header_cache_size_ratio) | The size of the protected queue in the text index header cache relative to the cache\'s total size. | `0.5` |
+| [text_index_header_cache_policy](/core/reference/settings/server-settings/settings#text_index_header_cache_policy) | Text index header cache policy name. | `SLRU` |
+| [text_index_header_cache_size](/core/reference/settings/server-settings/settings#text_index_header_cache_size) | Maximum cache size in bytes. | `1073741824` |
+| [text_index_header_cache_max_entries](/core/reference/settings/server-settings/settings#text_index_header_cache_max_entries) | Maximum number of deserialized headers in cache. | `100'000` |
+| [text_index_header_cache_size_ratio](/core/reference/settings/server-settings/settings#text_index_header_cache_size_ratio) | The size of the protected queue in the text index header cache relative to the cache\'s total size. | `0.5` |
#### Posting lists cache settings
| Setting | Description | Default |
|---------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|--------------|
-| [text_index_postings_cache_policy](/reference/settings/server-settings/settings#text_index_postings_cache_policy) | Text index postings cache policy name. | `SLRU` |
-| [text_index_postings_cache_size](/reference/settings/server-settings/settings#text_index_postings_cache_size) | Maximum cache size in bytes. | `2147483648` |
-| [text_index_postings_cache_max_entries](/reference/settings/server-settings/settings#text_index_postings_cache_max_entries) | Maximum number of deserialized postings in cache. | `1'000'000` |
-| [text_index_postings_cache_size_ratio](/reference/settings/server-settings/settings#text_index_postings_cache_size_ratio) | The size of the protected queue in the text index postings cache relative to the cache\'s total size. | `0.5` |
+| [text_index_postings_cache_policy](/core/reference/settings/server-settings/settings#text_index_postings_cache_policy) | Text index postings cache policy name. | `SLRU` |
+| [text_index_postings_cache_size](/core/reference/settings/server-settings/settings#text_index_postings_cache_size) | Maximum cache size in bytes. | `2147483648` |
+| [text_index_postings_cache_max_entries](/core/reference/settings/server-settings/settings#text_index_postings_cache_max_entries) | Maximum number of deserialized postings in cache. | `1'000'000` |
+| [text_index_postings_cache_size_ratio](/core/reference/settings/server-settings/settings#text_index_postings_cache_size_ratio) | The size of the protected queue in the text index postings cache relative to the cache\'s total size. | `0.5` |
## Related content
diff --git a/reference/engines/table-engines/mergetree-family/mergetree.mdx b/core/reference/engines/table-engines/mergetree-family/mergetree.mdx
similarity index 78%
rename from reference/engines/table-engines/mergetree-family/mergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/mergetree.mdx
index 37004964..aab8f3f8 100644
--- a/reference/engines/table-engines/mergetree-family/mergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/mergetree.mdx
@@ -21,12 +21,12 @@ Main features of `MergeTree`-family table engines.
- Tables can be partitioned using an arbitrary partition expression. Partition pruning ensures partitions are omitted from reading when the query allows it.
-- Data can be replicated across multiple cluster nodes for high availability, failover, and zero downtime upgrades. See [Data replication](/reference/engines/table-engines/mergetree-family/replication).
+- Data can be replicated across multiple cluster nodes for high availability, failover, and zero downtime upgrades. See [Data replication](/core/reference/engines/table-engines/mergetree-family/replication).
- `MergeTree` table engines support various statistics kinds and sampling methods to help query optimization.
-Despite a similar name, the [Merge](/reference/engines/table-engines/special/merge) engine is different from `*MergeTree` engines.
+Despite a similar name, the [Merge](/core/reference/engines/table-engines/special/merge) engine is different from `*MergeTree` engines.
## Creating tables {#table_engine-mergetree-creating-a-table}
@@ -54,7 +54,7 @@ ORDER BY expr
[SETTINGS name = value, ...]
```
-For a detailed description of the parameters, see the [CREATE TABLE](/reference/statements/create/table) statement
+For a detailed description of the parameters, see the [CREATE TABLE](/core/reference/statements/create/table) statement
### Query clauses {#mergetree-query-clauses}
@@ -75,9 +75,9 @@ Alternatively, if setting `create_table_empty_primary_key_by_default` is enabled
#### PARTITION BY {#partition-by}
-`PARTITION BY` — The [partitioning key](/reference/engines/table-engines/mergetree-family/custom-partitioning-key). Optional. In most cases, you don't need a partition key, and if you do need to partition, generally you do not need a partition key more granular than by month. Partitioning does not speed up queries (in contrast to the ORDER BY expression). You should never use too granular partitioning. Don't partition your data by client identifiers or names (instead, make client identifier or name the first column in the ORDER BY expression).
+`PARTITION BY` — The [partitioning key](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key). Optional. In most cases, you don't need a partition key, and if you do need to partition, generally you do not need a partition key more granular than by month. Partitioning does not speed up queries (in contrast to the ORDER BY expression). You should never use too granular partitioning. Don't partition your data by client identifiers or names (instead, make client identifier or name the first column in the ORDER BY expression).
-For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
+For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/core/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
#### PRIMARY KEY {#primary-key}
@@ -107,7 +107,7 @@ For more details, see [TTL for columns and tables](#table_engine-mergetree-ttl)
#### SETTINGS {#settings}
-See [MergeTree Settings](/reference/settings/merge-tree-settings).
+See [MergeTree Settings](/core/reference/settings/merge-tree-settings).
**Example of Sections Setting**
@@ -117,7 +117,7 @@ ENGINE MergeTree() PARTITION BY toYYYYMM(EventDate) ORDER BY (CounterID, EventDa
In the example, we set partitioning by month.
-We also set an expression for sampling as a hash by the user ID. This allows you to pseudorandomize the data in the table for each `CounterID` and `EventDate`. If you define a [SAMPLE](/reference/statements/select/sample) clause when selecting the data, ClickHouse will return an evenly pseudorandom data sample for a subset of users.
+We also set an expression for sampling as a hash by the user ID. This allows you to pseudorandomize the data in the table for each `CounterID` and `EventDate`. If you define a [SAMPLE](/core/reference/statements/select/sample) clause when selecting the data, ClickHouse will return an evenly pseudorandom data sample for a subset of users.
The `index_granularity` setting can be omitted because 8192 is the default value.
@@ -140,9 +140,9 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
**MergeTree() Parameters**
-- `date-column` — The name of a column of the [Date](/reference/data-types/date) type. ClickHouse automatically creates partitions by month based on this column. The partition names are in the `"YYYYMM"` format.
+- `date-column` — The name of a column of the [Date](/core/reference/data-types/date) type. ClickHouse automatically creates partitions by month based on this column. The partition names are in the `"YYYYMM"` format.
- `sampling_expression` — An expression for sampling.
-- `(primary, key)` — Primary key. Type: [Tuple()](/reference/data-types/tuple)
+- `(primary, key)` — Primary key. Type: [Tuple()](/core/reference/data-types/tuple)
- `index_granularity` — The granularity of an index. The number of data rows between the "marks" of an index. The value 8192 is appropriate for most tasks.
**Example**
@@ -197,7 +197,7 @@ Sparse indexes allow you to work with a very large number of table rows, because
ClickHouse does not require a unique primary key. You can insert multiple rows with the same primary key.
-You can use `Nullable`-typed expressions in the `PRIMARY KEY` and `ORDER BY` clauses but it is strongly discouraged. To allow this feature, turn on the [allow_nullable_key](/reference/settings/merge-tree-settings#allow_nullable_key) setting. The [NULLS_LAST](/reference/statements/select/order-by#sorting-of-special-values) principle applies for `NULL` values in the `ORDER BY` clause.
+You can use `Nullable`-typed expressions in the `PRIMARY KEY` and `ORDER BY` clauses but it is strongly discouraged. To allow this feature, turn on the [allow_nullable_key](/core/reference/settings/merge-tree-settings#allow_nullable_key) setting. The [NULLS_LAST](/core/reference/statements/select/order-by#sorting-of-special-values) principle applies for `NULL` values in the `ORDER BY` clause.
### Selecting a primary key {#selecting-a-primary-key}
@@ -214,26 +214,26 @@ The number of columns in the primary key is not explicitly limited. Depending on
ClickHouse sorts data by primary key, so the higher the consistency, the better the compression.
-- Provide additional logic when merging data parts in the [CollapsingMergeTree](/reference/engines/table-engines/mergetree-family/collapsingmergetree) and [SummingMergeTree](/reference/engines/table-engines/mergetree-family/summingmergetree) engines.
+- Provide additional logic when merging data parts in the [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) and [SummingMergeTree](/core/reference/engines/table-engines/mergetree-family/summingmergetree) engines.
In this case it makes sense to specify the *sorting key* that is different from the primary key.
A long primary key will negatively affect the insert performance and memory consumption, but extra columns in the primary key do not affect ClickHouse performance during `SELECT` queries.
-You can create a table without a primary key using the `ORDER BY tuple()` syntax. In this case, ClickHouse stores data in the order of inserting. If you want to save data order when inserting data by `INSERT ... SELECT` queries, set [max_insert_threads = 1](/reference/settings/session-settings#max_insert_threads).
+You can create a table without a primary key using the `ORDER BY tuple()` syntax. In this case, ClickHouse stores data in the order of inserting. If you want to save data order when inserting data by `INSERT ... SELECT` queries, set [max_insert_threads = 1](/core/reference/settings/session-settings#max_insert_threads).
-To select data in the initial order, use [single-threaded](/reference/settings/session-settings#max_threads) `SELECT` queries.
+To select data in the initial order, use [single-threaded](/core/reference/settings/session-settings#max_threads) `SELECT` queries.
### Choosing a primary key that differs from the sorting key {#choosing-a-primary-key-that-differs-from-the-sorting-key}
It is possible to specify a primary key (an expression with values that are written in the index file for each mark) that is different from the sorting key (an expression for sorting the rows in data parts). In this case the primary key expression tuple must be a prefix of the sorting key expression tuple.
-This feature is helpful when using the [SummingMergeTree](/reference/engines/table-engines/mergetree-family/summingmergetree) and
-[AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table engines. In a common case when using these engines, the table has two types of columns: *dimensions* and *measures*. Typical queries aggregate values of measure columns with arbitrary `GROUP BY` and filtering by dimensions. Because SummingMergeTree and AggregatingMergeTree aggregate rows with the same value of the sorting key, it is natural to add all dimensions to it. As a result, the key expression consists of a long list of columns and this list must be frequently updated with newly added dimensions.
+This feature is helpful when using the [SummingMergeTree](/core/reference/engines/table-engines/mergetree-family/summingmergetree) and
+[AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table engines. In a common case when using these engines, the table has two types of columns: *dimensions* and *measures*. Typical queries aggregate values of measure columns with arbitrary `GROUP BY` and filtering by dimensions. Because SummingMergeTree and AggregatingMergeTree aggregate rows with the same value of the sorting key, it is natural to add all dimensions to it. As a result, the key expression consists of a long list of columns and this list must be frequently updated with newly added dimensions.
In this case it makes sense to leave only a few columns in the primary key that will provide efficient range scans and add the remaining dimension columns to the sorting key tuple.
-[ALTER](/reference/statements/alter) of the sorting key is a lightweight operation because when a new column is simultaneously added to the table and to the sorting key, existing data parts do not need to be changed. Since the old sorting key is a prefix of the new sorting key and there is no data in the newly added column, the data is sorted by both the old and new sorting keys at the moment of table modification.
+[ALTER](/core/reference/statements/alter) of the sorting key is a lightweight operation because when a new column is simultaneously added to the table and to the sorting key, existing data parts do not need to be changed. Since the old sorting key is a prefix of the new sorting key and there is no data in the newly added column, the data is sorted by both the old and new sorting keys at the moment of table modification.
### Use of indexes and partitions in queries {#use-of-indexes-and-partitions-in-queries}
@@ -277,7 +277,7 @@ In the example below, the index can't be used.
SELECT count() FROM table WHERE CounterID = 34 OR URL LIKE '%upyachka%'
```
-To check whether ClickHouse can use the index when running a query, use the settings [force_index_by_date](/reference/settings/session-settings#force_index_by_date) and [force_primary_key](/reference/settings/session-settings#force_primary_key).
+To check whether ClickHouse can use the index when running a query, use the settings [force_index_by_date](/core/reference/settings/session-settings#force_index_by_date) and [force_primary_key](/core/reference/settings/session-settings#force_primary_key).
The key for partitioning by month allows reading only those data blocks which contain dates from the proper range. In this case, the data block may contain data for many dates (up to an entire month). Within a block, data is sorted by primary key, which might not contain the date as the first column. Because of this, using a query with only a date condition that does not specify the primary key prefix will cause more data to be read than for a single date.
@@ -394,7 +394,7 @@ INDEX nested_2_index col.nested_col2 TYPE bloom_filter
The `MergeTree` table engine supports the following types of skip indexes.
For more information on how skip indexes can be used for performance optimization
-see ["Understanding ClickHouse data skipping indexes"](/concepts/features/performance/skip-indexes/skipping-indexes).
+see ["Understanding ClickHouse data skipping indexes"](/core/concepts/features/performance/skip-indexes/skipping-indexes).
- [`MinMax`](#minmax) index
- [`Set`](#set) index
@@ -449,13 +449,13 @@ The following data types are supported:
**Map data type: specifying index creation with keys or values**
-For the `Map` data type, the client can specify if the index should be created for keys or for values using the [`mapKeys`](/reference/functions/regular-functions/tuple-map-functions#mapKeys) or [`mapValues`](/reference/functions/regular-functions/tuple-map-functions#mapValues) functions.
+For the `Map` data type, the client can specify if the index should be created for keys or for values using the [`mapKeys`](/core/reference/functions/regular-functions/tuple-map-functions#mapKeys) or [`mapValues`](/core/reference/functions/regular-functions/tuple-map-functions#mapValues) functions.
**JSON data type: indexing JSON paths**
-For the [`JSON`](/reference/data-types/newjson) data type, a bloom filter index can be created on the set of paths using the [`JSONAllPaths`](/reference/functions/regular-functions/json-functions#JSONAllPaths) function. This allows skipping granules where a queried JSON path is absent. See [Data skipping indexes for JSON](/reference/data-types/newjson#data-skipping-indexes-for-json) for details.
+For the [`JSON`](/core/reference/data-types/newjson) data type, a bloom filter index can be created on the set of paths using the [`JSONAllPaths`](/core/reference/functions/regular-functions/json-functions#JSONAllPaths) function. This allows skipping granules where a queried JSON path is absent. See [Data skipping indexes for JSON](/core/reference/data-types/newjson#data-skipping-indexes-for-json) for details.
#### N-gram bloom filter *(Deprecated)* {#n-gram-bloom-filter}
@@ -463,7 +463,7 @@ For the [`JSON`](/reference/data-types/newjson) data type, a bloom filter index
With general availability (GA) of the `text` index starting from ClickHouse version 26.2, the `ngrambf_v1` index is no longer recommended for full text search.
-See page ["Full-text search with text indexes"](/reference/engines/table-engines/mergetree-family/textindexes) for details.
+See page ["Full-text search with text indexes"](/core/reference/engines/table-engines/mergetree-family/textindexes) for details.
For each index granule stores a [bloom filter](https://en.wikipedia.org/wiki/Bloom_filter) for the [n-grams](https://en.wikipedia.org/wiki/N-gram) of the specified columns.
@@ -480,11 +480,11 @@ ngrambf_v1(n, size_of_bloom_filter_in_bytes, number_of_hash_functions, random_se
|`random_seed` |Seed for the bloom filter hash functions.|
This index only works with the following data types:
-- [`String`](/reference/data-types/string)
-- [`FixedString`](/reference/data-types/fixedstring)
-- [`Map`](/reference/data-types/map)
+- [`String`](/core/reference/data-types/string)
+- [`FixedString`](/core/reference/data-types/fixedstring)
+- [`Map`](/core/reference/data-types/map)
-To estimate the parameters of `ngrambf_v1`, you can use the following [User Defined Functions (UDFs)](/reference/statements/create/function).
+To estimate the parameters of `ngrambf_v1`, you can use the following [User Defined Functions (UDFs)](/core/reference/statements/create/function).
```sql title="UDFs for ngrambf_v1"
CREATE FUNCTION bfEstimateFunctions [ON CLUSTER cluster]
@@ -535,7 +535,7 @@ The functions above refer to the bloom filter calculator [here](https://hur.st/b
With general availability (GA) of the `text` index starting from ClickHouse version 26.2, the `tokenbf_v1` index is no longer recommended for full text search.
-See page ["Full-text search with text indexes"](/reference/engines/table-engines/mergetree-family/textindexes) for details.
+See page ["Full-text search with text indexes"](/core/reference/engines/table-engines/mergetree-family/textindexes) for details.
```text title="Syntax"
@@ -544,7 +544,7 @@ tokenbf_v1(size_of_bloom_filter_in_bytes, number_of_hash_functions, random_seed)
#### Sparse grams bloom filter {#sparse-grams-bloom-filter}
-The sparse grams bloom filter is similar to `ngrambf_v1` but uses [sparse grams tokens](/reference/functions/regular-functions/string-functions#sparseGrams) instead of ngrams.
+The sparse grams bloom filter is similar to `ngrambf_v1` but uses [sparse grams tokens](/core/reference/functions/regular-functions/string-functions#sparseGrams) instead of ngrams.
```text title="Syntax"
sparse_grams(min_ngram_length, max_ngram_length, min_cutoff_length, size_of_bloom_filter_in_bytes, number_of_hash_functions, random_seed)
@@ -552,11 +552,11 @@ sparse_grams(min_ngram_length, max_ngram_length, min_cutoff_length, size_of_bloo
### Text index {#text}
-Builds an inverted index over tokenized string data, enabling efficient and deterministic full-text search. See [here](/reference/engines/table-engines/mergetree-family/textindexes) for details.
+Builds an inverted index over tokenized string data, enabling efficient and deterministic full-text search. See [here](/core/reference/engines/table-engines/mergetree-family/textindexes) for details.
#### Vector similarity {#vector-similarity}
-Supports approximate nearest neighbor search, see [here](/reference/engines/table-engines/mergetree-family/annindexes) for details.
+Supports approximate nearest neighbor search, see [here](/core/reference/engines/table-engines/mergetree-family/annindexes) for details.
### Functions support {#functions-support}
@@ -566,36 +566,36 @@ Indexes of type `set` can be utilized by all functions. The other index types ar
| Function (operator) / Index | primary key | minmax | ngrambf_v1 | tokenbf_v1 | bloom_filter | sparse_grams | text |
|--------------------------------------------------------------------------------------------------------------------------------|-------------|--------|------------|------------|--------------|--------------|------|
-| [equals (=, ==)](/reference/functions/regular-functions/comparison-functions#equals) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| [notEquals(!=, <>)](/reference/functions/regular-functions/comparison-functions#notEquals) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✗ |
-| [like](/reference/functions/regular-functions/string-search-functions#like) | ✔ | ✔ | ✔ | ✔ | ✗ | ✔ | ✔ |
-| [notLike](/reference/functions/regular-functions/string-search-functions#notLike) | ✔ | ✔ | ✔ | ✔ | ✗ | ✔ | ✗ |
-| [match](/reference/functions/regular-functions/string-search-functions#match) | ✗ | ✗ | ✔ | ✔ | ✗ | ✔ | ✔ |
-| [startsWith](/reference/functions/regular-functions/string-functions#startsWith) | ✔ | ✔ | ✔ | ✔ | ✗ | ✔ | ✔ |
-| [endsWith](/reference/functions/regular-functions/string-functions#endsWith) | ✗ | ✗ | ✔ | ✔ | ✗ | ✔ | ✔ |
-| [multiSearchAny](/reference/functions/regular-functions/string-search-functions#multiSearchAny) | ✗ | ✗ | ✔ | ✗ | ✗ | ✗ | ✗ |
-| [in](/reference/functions/regular-functions/in-functions) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| [notIn](/reference/functions/regular-functions/in-functions) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✗ |
-| [less (`<`)](/reference/functions/regular-functions/comparison-functions#less) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
-| [greater (`>`)](/reference/functions/regular-functions/comparison-functions#greater) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
-| [lessOrEquals (`<=`)](/reference/functions/regular-functions/comparison-functions#lessOrEquals) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
-| [greaterOrEquals (`>=`)](/reference/functions/regular-functions/comparison-functions#greaterOrEquals) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
-| [empty](/reference/functions/regular-functions/array-functions#empty) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
-| [notEmpty](/reference/functions/regular-functions/array-functions#notEmpty) | ✗ | ✔ | ✗ | ✗ | ✗ | ✔ | ✗ |
-| [has](/reference/functions/regular-functions/array-functions#has) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| [hasAny](/reference/functions/regular-functions/array-functions#hasAny) | ✗ | ✗ | ✔ | ✔ | ✔ | ✔ | ✗ |
-| [hasAll](/reference/functions/regular-functions/array-functions#hasAll) | ✗ | ✗ | ✔ | ✔ | ✔ | ✔ | ✗ |
-| [hasToken](/reference/functions/regular-functions/string-search-functions#hasToken) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✔ |
-| [hasTokenOrNull](/reference/functions/regular-functions/string-search-functions#hasTokenOrNull) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✔ |
-| [hasTokenCaseInsensitive (`*`)](/reference/functions/regular-functions/string-search-functions#hasTokenCaseInsensitive) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✗ |
-| [hasTokenCaseInsensitiveOrNull (`*`)](/reference/functions/regular-functions/string-search-functions#hasTokenCaseInsensitiveOrNull) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✗ |
-| [hasAnyTokens](/reference/functions/regular-functions/string-search-functions#hasAnyTokens) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
-| [hasAllTokens](/reference/functions/regular-functions/string-search-functions#hasAllTokens) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
-| [pointInPolygon](/reference/functions/regular-functions/geo/coordinates#pointinpolygon) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
-| [mapContains (mapContainsKey)](/reference/functions/regular-functions/tuple-map-functions#mapContainsKey) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
-| [mapContainsKeyLike](/reference/functions/regular-functions/tuple-map-functions#mapContainsKeyLike) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
-| [mapContainsValue](/reference/functions/regular-functions/tuple-map-functions#mapContainsValue) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
-| [mapContainsValueLike](/reference/functions/regular-functions/tuple-map-functions#mapContainsValueLike) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
+| [equals (=, ==)](/core/reference/functions/regular-functions/comparison-functions#equals) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| [notEquals(!=, <>)](/core/reference/functions/regular-functions/comparison-functions#notEquals) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✗ |
+| [like](/core/reference/functions/regular-functions/string-search-functions#like) | ✔ | ✔ | ✔ | ✔ | ✗ | ✔ | ✔ |
+| [notLike](/core/reference/functions/regular-functions/string-search-functions#notLike) | ✔ | ✔ | ✔ | ✔ | ✗ | ✔ | ✗ |
+| [match](/core/reference/functions/regular-functions/string-search-functions#match) | ✗ | ✗ | ✔ | ✔ | ✗ | ✔ | ✔ |
+| [startsWith](/core/reference/functions/regular-functions/string-functions#startsWith) | ✔ | ✔ | ✔ | ✔ | ✗ | ✔ | ✔ |
+| [endsWith](/core/reference/functions/regular-functions/string-functions#endsWith) | ✗ | ✗ | ✔ | ✔ | ✗ | ✔ | ✔ |
+| [multiSearchAny](/core/reference/functions/regular-functions/string-search-functions#multiSearchAny) | ✗ | ✗ | ✔ | ✗ | ✗ | ✗ | ✗ |
+| [in](/core/reference/functions/regular-functions/in-functions) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| [notIn](/core/reference/functions/regular-functions/in-functions) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✗ |
+| [less (`<`)](/core/reference/functions/regular-functions/comparison-functions#less) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
+| [greater (`>`)](/core/reference/functions/regular-functions/comparison-functions#greater) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
+| [lessOrEquals (`<=`)](/core/reference/functions/regular-functions/comparison-functions#lessOrEquals) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
+| [greaterOrEquals (`>=`)](/core/reference/functions/regular-functions/comparison-functions#greaterOrEquals) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
+| [empty](/core/reference/functions/regular-functions/array-functions#empty) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
+| [notEmpty](/core/reference/functions/regular-functions/array-functions#notEmpty) | ✗ | ✔ | ✗ | ✗ | ✗ | ✔ | ✗ |
+| [has](/core/reference/functions/regular-functions/array-functions#has) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| [hasAny](/core/reference/functions/regular-functions/array-functions#hasAny) | ✗ | ✗ | ✔ | ✔ | ✔ | ✔ | ✗ |
+| [hasAll](/core/reference/functions/regular-functions/array-functions#hasAll) | ✗ | ✗ | ✔ | ✔ | ✔ | ✔ | ✗ |
+| [hasToken](/core/reference/functions/regular-functions/string-search-functions#hasToken) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✔ |
+| [hasTokenOrNull](/core/reference/functions/regular-functions/string-search-functions#hasTokenOrNull) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✔ |
+| [hasTokenCaseInsensitive (`*`)](/core/reference/functions/regular-functions/string-search-functions#hasTokenCaseInsensitive) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✗ |
+| [hasTokenCaseInsensitiveOrNull (`*`)](/core/reference/functions/regular-functions/string-search-functions#hasTokenCaseInsensitiveOrNull) | ✗ | ✗ | ✗ | ✔ | ✗ | ✗ | ✗ |
+| [hasAnyTokens](/core/reference/functions/regular-functions/string-search-functions#hasAnyTokens) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
+| [hasAllTokens](/core/reference/functions/regular-functions/string-search-functions#hasAllTokens) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
+| [pointInPolygon](/core/reference/functions/regular-functions/geo/coordinates#pointinpolygon) | ✔ | ✔ | ✗ | ✗ | ✗ | ✗ | ✗ |
+| [mapContains (mapContainsKey)](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsKey) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
+| [mapContainsKeyLike](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsKeyLike) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
+| [mapContainsValue](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsValue) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
+| [mapContainsValueLike](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsValueLike) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✔ |
Functions with a constant argument that is less than ngram size can't be used by `ngrambf_v1` for query optimization.
@@ -621,13 +621,13 @@ For example:
## Projections {#projections}
-Projections are like [materialized views](/reference/statements/create/view) but defined in part-level. It provides consistency guarantees along with automatic usage in queries.
+Projections are like [materialized views](/core/reference/statements/create/view) but defined in part-level. It provides consistency guarantees along with automatic usage in queries.
-When you are implementing projections you should also consider the [force_optimize_projection](/reference/settings/session-settings#force_optimize_projection) setting.
+When you are implementing projections you should also consider the [force_optimize_projection](/core/reference/settings/session-settings#force_optimize_projection) setting.
-Projections are not supported in the `SELECT` statements with the [FINAL](/reference/statements/select/from#final-modifier) modifier.
+Projections are not supported in the `SELECT` statements with the [FINAL](/core/reference/statements/select/from#final-modifier) modifier.
### Projection query {#projection-query}
A projection query is what defines a projection. It implicitly selects data from the parent table.
@@ -637,7 +637,7 @@ A projection query is what defines a projection. It implicitly selects data from
SELECT [GROUP BY] [ORDER BY]
```
-Projections can be modified or dropped with the [ALTER](/reference/statements/alter/projection) statement.
+Projections can be modified or dropped with the [ALTER](/core/reference/statements/alter/projection) statement.
### Projection indexes {#projection-index}
@@ -676,7 +676,7 @@ Currently supported:
The framework allows adding more index types in the future.
### Projection storage {#projection-storage}
-Projections are stored inside the part directory. It's similar to an index but contains a subdirectory that stores an anonymous `MergeTree` table's part. The table is induced by the definition query of the projection. If there is a `GROUP BY` clause, the underlying storage engine becomes [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree), and all aggregate functions are converted to `AggregateFunction`. If there is an `ORDER BY` clause, the `MergeTree` table uses it as its primary key expression. During the merge process the projection part is merged via its storage's merge routine. The checksum of the parent table's part is combined with the projection's part. Other maintenance jobs are similar to skip indices.
+Projections are stored inside the part directory. It's similar to an index but contains a subdirectory that stores an anonymous `MergeTree` table's part. The table is induced by the definition query of the projection. If there is a `GROUP BY` clause, the underlying storage engine becomes [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree), and all aggregate functions are converted to `AggregateFunction`. If there is an `ORDER BY` clause, the `MergeTree` table uses it as its primary key expression. During the merge process the projection part is merged via its storage's merge routine. The checksum of the parent table's part is combined with the projection's part. Other maintenance jobs are similar to skip indices.
### Query analysis {#projection-query-analysis}
1. Check if the projection can be used to answer the given query, that is, it generates the same answer as querying the base table.
@@ -695,7 +695,7 @@ Determines the lifetime of values.
The `TTL` clause can be set for the whole table and for each individual column. Table-level `TTL` can also specify the logic of automatic moving data between disks and volumes, or recompressing parts where all the data has been expired.
-Expressions must evaluate to [Date](/reference/data-types/date), [Date32](/reference/data-types/date32), [DateTime](/reference/data-types/datetime) or [DateTime64](/reference/data-types/datetime64) data type.
+Expressions must evaluate to [Date](/core/reference/data-types/date), [Date32](/core/reference/data-types/date32), [DateTime](/core/reference/data-types/datetime) or [DateTime64](/core/reference/data-types/datetime64) data type.
**Avoid non-deterministic functions in TTL expressions**
@@ -714,7 +714,7 @@ TTL time_column
TTL time_column + interval
```
-To define `interval`, use [time interval](/reference/operators#operators-for-working-with-dates-and-times) operators, for example:
+To define `interval`, use [time interval](/core/reference/operators#operators-for-working-with-dates-and-times) operators, for example:
```sql
TTL date_time + INTERVAL 1 MONTH
@@ -864,23 +864,23 @@ Data with an expired `TTL` is removed when ClickHouse merges data parts.
When ClickHouse detects that data is expired, it performs an off-schedule merge. To control the frequency of such merges, you can set `merge_with_ttl_timeout`. If the value is too low, it will perform many off-schedule merges that may consume a lot of resources.
-If you perform the `SELECT` query between merges, you may get expired data. To avoid it, use the [OPTIMIZE](/reference/statements/optimize) query before `SELECT`.
+If you perform the `SELECT` query between merges, you may get expired data. To avoid it, use the [OPTIMIZE](/core/reference/statements/optimize) query before `SELECT`.
**See Also**
-- [ttl_only_drop_parts](/reference/settings/merge-tree-settings#ttl_only_drop_parts) setting
+- [ttl_only_drop_parts](/core/reference/settings/merge-tree-settings#ttl_only_drop_parts) setting
## Disk types {#disk-types}
In addition to local block devices, ClickHouse supports these storage types:
- [`s3` for S3 and MinIO](#table_engine-mergetree-s3)
-- [`gcs` for GCS](/reference/functions/table-functions/gcs#creating-a-disk)
-- [`blob_storage_disk` for Azure Blob Storage](/concepts/features/configuration/server-config/storing-data#azure-blob-storage)
-- [`hdfs` for HDFS](/reference/engines/table-engines/integrations/hdfs)
-- [`web` for read-only from web](/concepts/features/configuration/server-config/storing-data#web-storage)
-- [`cache` for local caching](/concepts/features/configuration/server-config/storing-data#using-local-cache)
-- [`s3_plain` for backups to S3](/concepts/features/backup-restore/local-disk)
-- [`s3_plain_rewritable` for immutable, non-replicated tables in S3](/concepts/features/configuration/server-config/storing-data#s3-plain-rewritable-storage)
+- [`gcs` for GCS](/core/reference/functions/table-functions/gcs#creating-a-disk)
+- [`blob_storage_disk` for Azure Blob Storage](/core/concepts/features/configuration/server-config/storing-data#azure-blob-storage)
+- [`hdfs` for HDFS](/core/reference/engines/table-engines/integrations/hdfs)
+- [`web` for read-only from web](/core/concepts/features/configuration/server-config/storing-data#web-storage)
+- [`cache` for local caching](/core/concepts/features/configuration/server-config/storing-data#using-local-cache)
+- [`s3_plain` for backups to S3](/core/concepts/features/backup-restore/local-disk)
+- [`s3_plain_rewritable` for immutable, non-replicated tables in S3](/core/concepts/features/configuration/server-config/storing-data#s3-plain-rewritable-storage)
## Using multiple block devices for data storage {#table_engine-mergetree-multiple-volumes}
@@ -890,16 +890,16 @@ In addition to local block devices, ClickHouse supports these storage types:
This applies to all disk types, including S3 and other object storage disks. For example, you can spread data across multiple S3 buckets within a single volume, or create tiered policies that move data from local disks to S3. See [Using S3 disks with multiple volumes](#s3-multiple-volumes) for details.
-Data part is the minimum movable unit for `MergeTree`-engine tables. The data belonging to one part are stored on one disk. Data parts can be moved between disks in the background (according to user settings) as well as by means of the [ALTER](/reference/statements/alter/partition) queries.
+Data part is the minimum movable unit for `MergeTree`-engine tables. The data belonging to one part are stored on one disk. Data parts can be moved between disks in the background (according to user settings) as well as by means of the [ALTER](/core/reference/statements/alter/partition) queries.
### Terms {#terms}
- Disk — Block device mounted to the filesystem.
-- Default disk — Disk that stores the path specified in the [path](/reference/settings/server-settings/settings#path) server setting.
+- Default disk — Disk that stores the path specified in the [path](/core/reference/settings/server-settings/settings#path) server setting.
- Volume — Ordered set of equal disks (similar to [JBOD](https://en.wikipedia.org/wiki/Non-RAID_drive_architectures)).
- Storage policy — Set of volumes and the rules for moving data between them.
-The names given to the described entities can be found in the system tables, [system.storage_policies](/reference/system-tables/storage_policies) and [system.disks](/reference/system-tables/disks). To apply one of the configured storage policies for a table, use the `storage_policy` setting of `MergeTree`-engine family tables.
+The names given to the described entities can be found in the system tables, [system.storage_policies](/core/reference/system-tables/storage_policies) and [system.disks](/core/reference/system-tables/disks). To apply one of the configured storage policies for a table, use the `storage_policy` setting of `MergeTree`-engine family tables.
### Configuration {#table_engine-mergetree-multiple-volumes_configure}
@@ -908,7 +908,7 @@ Disks, volumes and storage policies should be declared inside the `
Disks can also be declared in the `SETTINGS` section of a query. This is useful
for ad-hoc analysis to temporarily attach a disk that is, for example, hosted at a URL.
-See [dynamic storage](/concepts/features/configuration/server-config/storing-data#dynamic-configuration) for more details.
+See [dynamic storage](/core/concepts/features/configuration/server-config/storing-data#dynamic-configuration) for more details.
Configuration structure:
@@ -1058,16 +1058,16 @@ SETTINGS storage_policy = 'moving_from_ssd_to_hdd'
The `default` storage policy implies using only one volume, which consists of only one disk given in ``.
You could change storage policy after table creation with [ALTER TABLE ... MODIFY SETTING] query, new policy should include all old disks and volumes with same names.
-The number of threads performing background moves of data parts can be changed by [background_move_pool_size](/reference/settings/server-settings/settings#background_move_pool_size) setting.
+The number of threads performing background moves of data parts can be changed by [background_move_pool_size](/core/reference/settings/server-settings/settings#background_move_pool_size) setting.
### Details {#details}
In the case of `MergeTree` tables, data is getting to disk in different ways:
- As a result of an insert (`INSERT` query).
-- During background merges and [mutations](/reference/statements/alter#mutations).
+- During background merges and [mutations](/core/reference/statements/alter#mutations).
- When downloading from another replica.
-- As a result of partition freezing [ALTER TABLE ... FREEZE PARTITION](/reference/statements/alter/partition#freeze-partition).
+- As a result of partition freezing [ALTER TABLE ... FREEZE PARTITION](/core/reference/statements/alter/partition#freeze-partition).
In all these cases except for mutations and partition freezing, a part is stored on a volume and a disk according to the given storage policy:
@@ -1077,20 +1077,20 @@ In all these cases except for mutations and partition freezing, a part is stored
Under the hood, mutations and partition freezing make use of [hard links](https://en.wikipedia.org/wiki/Hard_link). Hard links between different disks are not supported, therefore in such cases the resulting parts are stored on the same disks as the initial ones.
In the background, parts are moved between volumes on the basis of the amount of free space (`move_factor` parameter) according to the order the volumes are declared in the configuration file.
-Data is never transferred from the last one and into the first one. One may use system tables [system.part_log](/reference/system-tables/part_log) (field `type = MOVE_PART`) and [system.parts](/reference/system-tables/parts) (fields `path` and `disk`) to monitor background moves. Also, the detailed information can be found in server logs.
+Data is never transferred from the last one and into the first one. One may use system tables [system.part_log](/core/reference/system-tables/part_log) (field `type = MOVE_PART`) and [system.parts](/core/reference/system-tables/parts) (fields `path` and `disk`) to monitor background moves. Also, the detailed information can be found in server logs.
-User can force moving a part or a partition from one volume to another using the query [ALTER TABLE ... MOVE PART\|PARTITION ... TO VOLUME\|DISK ...](/reference/statements/alter/partition), all the restrictions for background operations are taken into account. The query initiates a move on its own and does not wait for background operations to be completed. User will get an error message if not enough free space is available or if any of the required conditions are not met.
+User can force moving a part or a partition from one volume to another using the query [ALTER TABLE ... MOVE PART\|PARTITION ... TO VOLUME\|DISK ...](/core/reference/statements/alter/partition), all the restrictions for background operations are taken into account. The query initiates a move on its own and does not wait for background operations to be completed. User will get an error message if not enough free space is available or if any of the required conditions are not met.
Moving data does not interfere with data replication. Therefore, different storage policies can be specified for the same table on different replicas.
After the completion of background merges and mutations, old parts are removed only after a certain amount of time (`old_parts_lifetime`).
During this time, they are not moved to other volumes or disks. Therefore, until the parts are finally removed, they are still taken into account for evaluation of the occupied disk space.
-User can assign new big parts to different disks of a [JBOD](https://en.wikipedia.org/wiki/Non-RAID_drive_architectures) volume in a balanced way using the [min_bytes_to_rebalance_partition_over_jbod](/reference/settings/merge-tree-settings#min_bytes_to_rebalance_partition_over_jbod) setting.
+User can assign new big parts to different disks of a [JBOD](https://en.wikipedia.org/wiki/Non-RAID_drive_architectures) volume in a balanced way using the [min_bytes_to_rebalance_partition_over_jbod](/core/reference/settings/merge-tree-settings#min_bytes_to_rebalance_partition_over_jbod) setting.
## Using external storage for data storage {#table_engine-mergetree-s3}
-[MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) family table engines can store data to `S3`, `AzureBlobStorage`, `HDFS` using a disk with types `s3`, `azure_blob_storage`, `hdfs` accordingly. See [configuring external storage options](/concepts/features/configuration/server-config/storing-data#configuring-external-storage) for more details.
+[MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family table engines can store data to `S3`, `AzureBlobStorage`, `HDFS` using a disk with types `s3`, `azure_blob_storage`, `hdfs` accordingly. See [configuring external storage options](/core/concepts/features/configuration/server-config/storing-data#configuring-external-storage) for more details.
Example for [S3](https://aws.amazon.com/s3/) as external storage using a disk with type `s3`.
@@ -1134,7 +1134,7 @@ Configuration markup:
```
-Also see [configuring external storage options](/concepts/features/configuration/server-config/storing-data#configuring-external-storage).
+Also see [configuring external storage options](/core/concepts/features/configuration/server-config/storing-data#configuring-external-storage).
### Using S3 disks with multiple volumes {#s3-multiple-volumes}
@@ -1207,12 +1207,12 @@ You can also combine local and S3 volumes in a tiered policy, for example moving
When using `use_environment_credentials` for S3 authentication, the environment credentials (`AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_SESSION_TOKEN`) are shared across all S3 disks. It is not possible to use different environment credentials for different disks. If you need different credentials for each S3 disk, use explicit `access_key_id` and `secret_access_key` settings per disk instead.
-It is possible to set up non-replicated MergeTree tables with a one-writer, many-readers scenario on shared storage. This is provided by the automatic refresh of the parts list, which can be set up on readers. Note that this requires shared filesystem metadata across replicas (or `table_disk = true` with a table-local disk). See [refresh_parts_interval and table_disk](/concepts/features/configuration/server-config/storing-data#refresh-parts-interval-and-table-disk).
+It is possible to set up non-replicated MergeTree tables with a one-writer, many-readers scenario on shared storage. This is provided by the automatic refresh of the parts list, which can be set up on readers. Note that this requires shared filesystem metadata across replicas (or `table_disk = true` with a table-local disk). See [refresh_parts_interval and table_disk](/core/concepts/features/configuration/server-config/storing-data#refresh-parts-interval-and-table-disk).
**cache configuration**
-ClickHouse versions 22.3 through 22.7 use a different cache configuration, see [using local cache](/concepts/features/configuration/server-config/storing-data#using-local-cache) if you are using one of those versions.
+ClickHouse versions 22.3 through 22.7 use a different cache configuration, see [using local cache](/core/concepts/features/configuration/server-config/storing-data#using-local-cache) if you are using one of those versions.
## Virtual columns {#virtual-columns}
@@ -1362,7 +1362,7 @@ ENGINE = MergeTree
ORDER BY id
```
-Column-level settings can be modified or removed using [ALTER MODIFY COLUMN](/reference/statements/alter/column), for example:
+Column-level settings can be modified or removed using [ALTER MODIFY COLUMN](/core/reference/statements/alter/column), for example:
- Remove `SETTINGS` from column declaration:
diff --git a/reference/engines/table-engines/mergetree-family/replacingmergetree.mdx b/core/reference/engines/table-engines/mergetree-family/replacingmergetree.mdx
similarity index 91%
rename from reference/engines/table-engines/mergetree-family/replacingmergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/replacingmergetree.mdx
index cbcfac52..b9b8afe5 100644
--- a/reference/engines/table-engines/mergetree-family/replacingmergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/replacingmergetree.mdx
@@ -7,14 +7,14 @@ title: 'ReplacingMergeTree table engine'
doc_type: 'reference'
---
-The engine differs from [MergeTree](/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) in that it removes duplicate entries with the same [sorting key](/reference/engines/table-engines/mergetree-family/mergetree) value (`ORDER BY` table section, not `PRIMARY KEY`).
+The engine differs from [MergeTree](/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) in that it removes duplicate entries with the same [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree) value (`ORDER BY` table section, not `PRIMARY KEY`).
Data deduplication occurs only during a merge. Merging occurs in the background at an unknown time, so you can't plan for it. Some of the data may remain unprocessed. Although you can run an unscheduled merge using the `OPTIMIZE` query, do not count on using it, because the `OPTIMIZE` query will read and write a large amount of data.
Thus, `ReplacingMergeTree` is suitable for clearing out duplicate data in the background in order to save space, but it does not guarantee the absence of duplicates.
-A detailed guide on ReplacingMergeTree, including best practices and how to optimize performance, is available [here](/concepts/operations/update/replacing-merge-tree).
+A detailed guide on ReplacingMergeTree, including best practices and how to optimize performance, is available [here](/core/concepts/features/operations/update/replacing-merge-tree).
## Creating a table {#creating-a-table}
@@ -33,7 +33,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
[SETTINGS name=value, ...]
```
-For a description of request parameters, see [statement description](/reference/statements/create/table).
+For a description of request parameters, see [statement description](/core/reference/statements/create/table).
Uniqueness of rows is determined by the `ORDER BY` table section, not `PRIMARY KEY`.
@@ -149,7 +149,7 @@ select * from myThirdReplacingMT final;
## Query clauses {#query-clauses}
-When creating a `ReplacingMergeTree` table the same [clauses](/reference/engines/table-engines/mergetree-family/mergetree) are required, as when creating a `MergeTree` table.
+When creating a `ReplacingMergeTree` table the same [clauses](/core/reference/engines/table-engines/mergetree-family/mergetree) are required, as when creating a `MergeTree` table.
@@ -220,4 +220,4 @@ FINAL
1 row in set. Elapsed: 0.002 sec.
```
-For further details on `FINAL`, including how to optimize `FINAL` performance, we recommend reading our [detailed guide on ReplacingMergeTree](/concepts/operations/update/replacing-merge-tree).
+For further details on `FINAL`, including how to optimize `FINAL` performance, we recommend reading our [detailed guide on ReplacingMergeTree](/core/concepts/features/operations/update/replacing-merge-tree).
diff --git a/reference/engines/table-engines/mergetree-family/replication.mdx b/core/reference/engines/table-engines/mergetree-family/replication.mdx
similarity index 88%
rename from reference/engines/table-engines/mergetree-family/replication.mdx
rename to core/reference/engines/table-engines/mergetree-family/replication.mdx
index a09ac3fa..acde6eb6 100644
--- a/reference/engines/table-engines/mergetree-family/replication.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/replication.mdx
@@ -38,7 +38,7 @@ Replication works at the level of an individual table, not the entire server. A
Replication does not depend on sharding. Each shard has its own independent replication.
-Compressed data for `INSERT` and `ALTER` queries is replicated (for more information, see the documentation for [ALTER](/reference/statements/alter).
+Compressed data for `INSERT` and `ALTER` queries is replicated (for more information, see the documentation for [ALTER](/core/reference/statements/alter).
`CREATE`, `DROP`, `ATTACH`, `DETACH` and `RENAME` queries are executed on a single server and are not replicated:
@@ -46,9 +46,9 @@ Compressed data for `INSERT` and `ALTER` queries is replicated (for more informa
- The `DROP TABLE` query deletes the replica located on the server where the query is run.
- The `RENAME` query renames the table on one of the replicas. In other words, replicated tables can have different names on different replicas.
-ClickHouse uses [ClickHouse Keeper](/guides/oss/deployment-and-scaling/keeper) for storing replicas meta information. It is possible to use ZooKeeper version 3.4.5 or newer, but ClickHouse Keeper is recommended.
+ClickHouse uses [ClickHouse Keeper](/core/guides/oss/deployment-and-scaling/keeper) for storing replicas meta information. It is possible to use ZooKeeper version 3.4.5 or newer, but ClickHouse Keeper is recommended.
-To use replication, set parameters in the [zookeeper](/reference/settings/server-settings/settings#zookeeper) server configuration section.
+To use replication, set parameters in the [zookeeper](/core/reference/settings/server-settings/settings#zookeeper) server configuration section.
Don't neglect the security setting. ClickHouse supports the `digest` [ACL scheme](https://zookeeper.apache.org/doc/current/zookeeperProgrammers.html#sc_ZooKeeperAccessControl) of the ZooKeeper security subsystem.
@@ -113,21 +113,21 @@ You can specify any existing ZooKeeper cluster and the system will use a directo
If ZooKeeper is not set in the config file, you can't create replicated tables, and any existing replicated tables will be read-only.
-ZooKeeper is not used in `SELECT` queries because replication does not affect the performance of `SELECT` and queries run just as fast as they do for non-replicated tables. When querying distributed replicated tables, ClickHouse behavior is controlled by the settings [max_replica_delay_for_distributed_queries](/reference/settings/session-settings#max_replica_delay_for_distributed_queries) and [fallback_to_stale_replicas_for_distributed_queries](/reference/settings/session-settings#fallback_to_stale_replicas_for_distributed_queries).
+ZooKeeper is not used in `SELECT` queries because replication does not affect the performance of `SELECT` and queries run just as fast as they do for non-replicated tables. When querying distributed replicated tables, ClickHouse behavior is controlled by the settings [max_replica_delay_for_distributed_queries](/core/reference/settings/session-settings#max_replica_delay_for_distributed_queries) and [fallback_to_stale_replicas_for_distributed_queries](/core/reference/settings/session-settings#fallback_to_stale_replicas_for_distributed_queries).
For each `INSERT` query, approximately ten entries are added to ZooKeeper through several transactions. (To be more precise, this is for each inserted block of data; an INSERT query contains one block or one block per `max_insert_block_size = 1048576` rows.) This leads to slightly longer latencies for `INSERT` compared to non-replicated tables. But if you follow the recommendations to insert data in batches of no more than one `INSERT` per second, it does not create any problems. The entire ClickHouse cluster used for coordinating one ZooKeeper cluster has a total of several hundred `INSERTs` per second. The throughput on data inserts (the number of rows per second) is just as high as for non-replicated data.
For very large clusters, you can use different ZooKeeper clusters for different shards. However, from our experience this has not proven necessary based on production clusters with approximately 300 servers.
-Replication is asynchronous and multi-master. `INSERT` queries (as well as `ALTER`) can be sent to any available server. Data is inserted on the server where the query is run, and then it is copied to the other servers. Because it is asynchronous, recently inserted data appears on the other replicas with some latency. If part of the replicas are not available, the data is written when they become available. If a replica is available, the latency is the amount of time it takes to transfer the block of compressed data over the network. The number of threads performing background tasks for replicated tables can be set by [background_schedule_pool_size](/reference/settings/server-settings/settings#background_schedule_pool_size) setting.
+Replication is asynchronous and multi-master. `INSERT` queries (as well as `ALTER`) can be sent to any available server. Data is inserted on the server where the query is run, and then it is copied to the other servers. Because it is asynchronous, recently inserted data appears on the other replicas with some latency. If part of the replicas are not available, the data is written when they become available. If a replica is available, the latency is the amount of time it takes to transfer the block of compressed data over the network. The number of threads performing background tasks for replicated tables can be set by [background_schedule_pool_size](/core/reference/settings/server-settings/settings#background_schedule_pool_size) setting.
-`ReplicatedMergeTree` engine uses a separate thread pool for replicated fetches. Size of the pool is limited by the [background_fetches_pool_size](/reference/settings/server-settings/settings#background_fetches_pool_size) setting which can be tuned with a server restart.
+`ReplicatedMergeTree` engine uses a separate thread pool for replicated fetches. Size of the pool is limited by the [background_fetches_pool_size](/core/reference/settings/server-settings/settings#background_fetches_pool_size) setting which can be tuned with a server restart.
By default, an INSERT query waits for confirmation of writing the data from only one replica. If the data was successfully written to only one replica and the server with this replica ceases to exist, the stored data will be lost. To enable getting confirmation of data writes from multiple replicas, use the `insert_quorum` option.
Each block of data is written atomically. The INSERT query is divided into blocks up to `max_insert_block_size = 1048576` rows. In other words, if the `INSERT` query has less than 1048576 rows, it is made atomically.
-Data blocks are deduplicated. For multiple writes of the same data block (data blocks of the same size containing the same rows in the same order), the block is only written once. The reason for this is in case of network failures when the client application does not know if the data was written to the DB, so the `INSERT` query can simply be repeated. It does not matter which replica INSERTs were sent to with identical data. `INSERTs` are idempotent. Deduplication parameters are controlled by [merge_tree](/reference/settings/server-settings/settings#merge_tree) server settings.
+Data blocks are deduplicated. For multiple writes of the same data block (data blocks of the same size containing the same rows in the same order), the block is only written once. The reason for this is in case of network failures when the client application does not know if the data was written to the DB, so the `INSERT` query can simply be repeated. It does not matter which replica INSERTs were sent to with identical data. `INSERTs` are idempotent. Deduplication parameters are controlled by [merge_tree](/core/reference/settings/server-settings/settings#merge_tree) server settings.
During replication, only the source data to insert is transferred over the network. Further data transformation (merging) is coordinated and performed on all the replicas in the same way. This minimizes network usage, which means that replication works well when replicas reside in different datacenters. (Note that duplicating data in different datacenters is the main goal of replication.)
@@ -140,7 +140,7 @@ The system monitors data synchronicity on replicas and is able to recover after
In ClickHouse Cloud, replication is handled automatically.
-Create tables using [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) without replication arguments. The system internally rewrites [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) to [`SharedMergeTree`](/products/cloud/features/infrastructure/shared-merge-tree) for replication and data distribution.
+Create tables using [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) without replication arguments. The system internally rewrites [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) to [`SharedMergeTree`](/products/cloud/features/infrastructure/shared-merge-tree) for replication and data distribution.
Avoid using `ReplicatedMergeTree` or specifying replication parameters, as replication is managed by the platform.
@@ -184,7 +184,7 @@ CREATE TABLE table_name
-As the example shows, these parameters can contain substitutions in `{}`. The substituted values are taken from the [macros](/reference/settings/server-settings/settings#macros) section of the configuration file.
+As the example shows, these parameters can contain substitutions in `{}`. The substituted values are taken from the [macros](/core/reference/settings/server-settings/settings#macros) section of the configuration file.
Example:
@@ -290,7 +290,7 @@ We use the term `MergeTree` to refer to all table engines in the `MergeTree fami
If you had a `MergeTree` table that was manually replicated, you can convert it to a replicated table. You might need to do this if you have already collected a large amount of data in a `MergeTree` table and now you want to enable replication.
-[ATTACH TABLE ... AS REPLICATED](/reference/statements/attach#attach-mergetree-table-as-replicatedmergetree) statement allows to attach detached `MergeTree` table as `ReplicatedMergeTree`.
+[ATTACH TABLE ... AS REPLICATED](/core/reference/statements/attach#attach-mergetree-table-as-replicatedmergetree) statement allows to attach detached `MergeTree` table as `ReplicatedMergeTree`.
`MergeTree` table can be automatically converted on server restart if `convert_to_replicated` flag is set at the table's data directory (`/store/xxx/xxxyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/` for `Atomic` database).
Create empty `convert_to_replicated` file and the table will be loaded as replicated on next server restart.
@@ -318,7 +318,7 @@ Then run `ALTER TABLE ATTACH PARTITION` on one of the replicas to add these data
## Converting from ReplicatedMergeTree to MergeTree {#converting-from-replicatedmergetree-to-mergetree}
-Use [ATTACH TABLE ... AS NOT REPLICATED](/reference/statements/attach#attach-mergetree-table-as-replicatedmergetree) statement to attach detached `ReplicatedMergeTree` table as `MergeTree` on a single server.
+Use [ATTACH TABLE ... AS NOT REPLICATED](/core/reference/statements/attach#attach-mergetree-table-as-replicatedmergetree) statement to attach detached `ReplicatedMergeTree` table as `MergeTree` on a single server.
Another way to do this involves server restart. Create a MergeTree table with a different name. Move all the data from the directory with the `ReplicatedMergeTree` table data to the new table's data directory. Then delete the `ReplicatedMergeTree` table and restart the server.
@@ -335,8 +335,8 @@ If the data in ClickHouse Keeper was lost or damaged, you can save data by movin
**See Also**
-- [background_schedule_pool_size](/reference/settings/server-settings/settings#background_schedule_pool_size)
-- [background_fetches_pool_size](/reference/settings/server-settings/settings#background_fetches_pool_size)
-- [execute_merges_on_single_replica_time_threshold](/reference/settings/merge-tree-settings#execute_merges_on_single_replica_time_threshold)
-- [max_replicated_fetches_network_bandwidth](/reference/settings/merge-tree-settings#max_replicated_fetches_network_bandwidth)
-- [max_replicated_sends_network_bandwidth](/reference/settings/merge-tree-settings#max_replicated_sends_network_bandwidth)
+- [background_schedule_pool_size](/core/reference/settings/server-settings/settings#background_schedule_pool_size)
+- [background_fetches_pool_size](/core/reference/settings/server-settings/settings#background_fetches_pool_size)
+- [execute_merges_on_single_replica_time_threshold](/core/reference/settings/merge-tree-settings#execute_merges_on_single_replica_time_threshold)
+- [max_replicated_fetches_network_bandwidth](/core/reference/settings/merge-tree-settings#max_replicated_fetches_network_bandwidth)
+- [max_replicated_sends_network_bandwidth](/core/reference/settings/merge-tree-settings#max_replicated_sends_network_bandwidth)
diff --git a/reference/engines/table-engines/mergetree-family/summingmergetree.mdx b/core/reference/engines/table-engines/mergetree-family/summingmergetree.mdx
similarity index 82%
rename from reference/engines/table-engines/mergetree-family/summingmergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/summingmergetree.mdx
index 50511776..bc1efb9f 100644
--- a/reference/engines/table-engines/mergetree-family/summingmergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/summingmergetree.mdx
@@ -7,7 +7,7 @@ title: 'SummingMergeTree table engine'
doc_type: 'reference'
---
-The engine inherits from [MergeTree](/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree). The difference is that when merging data parts for `SummingMergeTree` tables ClickHouse replaces all the rows with the same primary key (or more accurately, with the same [sorting key](/reference/engines/table-engines/mergetree-family/mergetree)) with one row which contains summed values for the columns with the numeric data type. If the sorting key is composed in a way that a single key value corresponds to large number of rows, this significantly reduces storage volume and speeds up data selection.
+The engine inherits from [MergeTree](/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree). The difference is that when merging data parts for `SummingMergeTree` tables ClickHouse replaces all the rows with the same primary key (or more accurately, with the same [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree)) with one row which contains summed values for the columns with the numeric data type. If the sorting key is composed in a way that a single key value corresponds to large number of rows, this significantly reduces storage volume and speeds up data selection.
We recommend using the engine together with `MergeTree`. Store complete data in `MergeTree` table, and use `SummingMergeTree` for aggregated data storing, for example, when preparing reports. Such an approach will prevent you from losing valuable data due to an incorrectly composed primary key.
@@ -26,7 +26,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
[SETTINGS name=value, ...]
```
-For a description of request parameters, see [request description](/reference/statements/create/table).
+For a description of request parameters, see [request description](/core/reference/statements/create/table).
### Parameters of SummingMergeTree {#parameters-of-summingmergetree}
@@ -39,7 +39,7 @@ For a description of request parameters, see [request description](/reference/st
### Query clauses {#query-clauses}
-When creating a `SummingMergeTree` table the same [clauses](/reference/engines/table-engines/mergetree-family/mergetree) are required, as when creating a `MergeTree` table.
+When creating a `SummingMergeTree` table the same [clauses](/core/reference/engines/table-engines/mergetree-family/mergetree) are required, as when creating a `MergeTree` table.
@@ -101,7 +101,7 @@ SELECT key, sum(value) FROM summtt GROUP BY key
When data are inserted into a table, they are saved as-is. ClickHouse merges the inserted parts of data periodically and this is when rows with the same primary key are summed and replaced with one for each resulting part of data.
-ClickHouse can merge the data parts so that different resulting parts of data can consist rows with the same primary key, i.e. the summation will be incomplete. Therefore (`SELECT`) an aggregate function [sum()](/reference/functions/aggregate-functions/reference/sum) and `GROUP BY` clause should be used in a query as described in the example above.
+ClickHouse can merge the data parts so that different resulting parts of data can consist rows with the same primary key, i.e. the summation will be incomplete. Therefore (`SELECT`) an aggregate function [sum()](/core/reference/functions/aggregate-functions/reference/sum) and `GROUP BY` clause should be used in a query as described in the example above.
### Common rules for summation {#common-rules-for-summation}
@@ -115,7 +115,7 @@ The values are not summed for columns in the primary key.
### The summation in the AggregateFunction columns {#the-summation-in-the-aggregatefunction-columns}
-For columns of [AggregateFunction type](/reference/data-types/aggregatefunction) ClickHouse behaves as [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) engine aggregating according to the function.
+For columns of [AggregateFunction type](/core/reference/data-types/aggregatefunction) ClickHouse behaves as [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) engine aggregating according to the function.
### Nested structures {#nested-structures}
@@ -184,7 +184,7 @@ ARRAY JOIN
└──────┴─────────┴─────────────┴────────┘
```
-When requesting data, use the [sumMap(key, value)](/reference/functions/aggregate-functions/reference/sumMap) function for aggregation of `Map`.
+When requesting data, use the [sumMap(key, value)](/core/reference/functions/aggregate-functions/reference/sumMap) function for aggregation of `Map`.
For nested data structure, you do not need to specify its columns in the tuple of columns for summation.
diff --git a/reference/engines/table-engines/mergetree-family/textindexes.mdx b/core/reference/engines/table-engines/mergetree-family/textindexes.mdx
similarity index 79%
rename from reference/engines/table-engines/mergetree-family/textindexes.mdx
rename to core/reference/engines/table-engines/mergetree-family/textindexes.mdx
index 6b6d977a..31735c98 100644
--- a/reference/engines/table-engines/mergetree-family/textindexes.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/textindexes.mdx
@@ -65,7 +65,7 @@ In these versions, no special settings need to be configured to use the text ind
We strongly recommend using ClickHouse versions >= 26.2 for production use cases.
-Text indexes can be used with any ClickHouse version >= 26.2, regardless of the [compatibility](/reference/settings/session-settings#compatibility) setting.
+Text indexes can be used with any ClickHouse version >= 26.2, regardless of the [compatibility](/core/reference/settings/session-settings#compatibility) setting.
To create a text index use the following syntax:
@@ -97,12 +97,12 @@ ORDER BY key
```
Text indexes can be defined on columns of these types:
-- [String](/reference/data-types/string) and [FixedString](/reference/data-types/fixedstring),
-- [Array(String)](/reference/data-types/array) and [Array(FixedString)](/reference/data-types/array),
-- [Map](/reference/data-types/map) (via [mapKeys](/reference/functions/regular-functions/tuple-map-functions#mapKeys) and [mapValues](/reference/functions/regular-functions/tuple-map-functions#mapValues) functions), and
-- [JSON](/reference/data-types/newjson) (via [JSONAllPaths](/reference/functions/regular-functions/json-functions#JSONAllPaths) and [`JSONAllValues`](/reference/functions/regular-functions/json-functions#JSONAllValues) functions).
+- [String](/core/reference/data-types/string) and [FixedString](/core/reference/data-types/fixedstring),
+- [Array(String)](/core/reference/data-types/array) and [Array(FixedString)](/core/reference/data-types/array),
+- [Map](/core/reference/data-types/map) (via [mapKeys](/core/reference/functions/regular-functions/tuple-map-functions#mapKeys) and [mapValues](/core/reference/functions/regular-functions/tuple-map-functions#mapValues) functions), and
+- [JSON](/core/reference/data-types/newjson) (via [JSONAllPaths](/core/reference/functions/regular-functions/json-functions#JSONAllPaths) and [`JSONAllValues`](/core/reference/functions/regular-functions/json-functions#JSONAllValues) functions).
-Columns of type [Nullable(T)](/reference/data-types/nullable) and [LowCardinality()](/reference/data-types/lowcardinality) are also supported, including `Array(Nullable(String or FixedString))`.
+Columns of type [Nullable(T)](/core/reference/data-types/nullable) and [LowCardinality()](/core/reference/data-types/lowcardinality) are also supported, including `Array(Nullable(String or FixedString))`.
Alternatively, to add a text index to an existing table:
@@ -141,23 +141,23 @@ ALTER TABLE table DROP INDEX text_idx;
**Tokenizer argument (mandatory)**. The `tokenizer` argument specifies the tokenizer:
-- `splitByNonAlpha` splits strings along non-alphanumeric ASCII characters (see function [splitByNonAlpha](/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha)).
-- `splitByString(S)` splits strings along certain user-defined separator strings `S` (see function [splitByString](/reference/functions/regular-functions/splitting-merging-functions#splitByString)).
+- `splitByNonAlpha` splits strings along non-alphanumeric ASCII characters (see function [splitByNonAlpha](/core/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha)).
+- `splitByString(S)` splits strings along certain user-defined separator strings `S` (see function [splitByString](/core/reference/functions/regular-functions/splitting-merging-functions#splitByString)).
The separators can be specified using an optional parameter, for example, `tokenizer = splitByString([', ', '; ', '\n', '\\'])`.
Note that each string can consist of multiple characters (`', '` in the example).
The default separator list, if not specified explicitly (for example, `tokenizer = splitByString`), is a single whitespace `[' ']`.
- `asciiCJK` splits strings into tokens using Unicode word boundary rules (similar to [Unicode Text Segmentation (UAX #29)](https://unicode.org/reports/tr29/)). ASCII alphanumeric characters and underscores form tokens with connectors (ASCII `:` for letters, `.` and `'` for same-type characters). Non-ASCII Unicode characters, including [CJK](https://en.wikipedia.org/wiki/CJK_characters) characters, become single-character tokens.
-- `ngrams(N)` splits strings into equally large `N`-grams (see function [ngrams](/reference/functions/regular-functions/splitting-merging-functions#ngrams)).
+- `ngrams(N)` splits strings into equally large `N`-grams (see function [ngrams](/core/reference/functions/regular-functions/splitting-merging-functions#ngrams)).
The ngram length can be specified using an optional integer parameter between 1 and 8, for example, `tokenizer = ngrams(3)`.
The default ngram size, if not specified explicitly (for example, `tokenizer = ngrams`), is 3.
-- `sparseGrams(min_length, max_length, min_cutoff_length)` splits strings into variable-length n-grams of at least `min_length` and at most `max_length` (inclusive) characters (see function [sparseGrams](/reference/functions/regular-functions/string-functions#sparseGrams)).
+- `sparseGrams(min_length, max_length, min_cutoff_length)` splits strings into variable-length n-grams of at least `min_length` and at most `max_length` (inclusive) characters (see function [sparseGrams](/core/reference/functions/regular-functions/string-functions#sparseGrams)).
Unless specified explicitly, `min_length` and `max_length` default to 3 and 100.
If parameter `min_cutoff_length` is provided, only n-grams with length greater or equal than `min_cutoff_length` are returned.
Compared to `ngrams(N)`, the `sparseGrams` tokenizer produces variable-length N-grams, allowing for a more flexible representation of the original text.
For example, `tokenizer = sparseGrams(3, 5, 4)` internally generates 3-, 4-, 5-grams from the input string but only the 4- and 5-grams are returned.
-- `array` performs no tokenization, i.e. every row value is a token (see function [array](/reference/functions/regular-functions/array-functions#array)).
+- `array` performs no tokenization, i.e. every row value is a token (see function [array](/core/reference/functions/regular-functions/array-functions#array)).
-All available tokenizers are listed in [system.tokenizers](/reference/system-tables/tokenizers).
+All available tokenizers are listed in [system.tokenizers](/core/reference/system-tables/tokenizers).
The `splitByString` tokenizer applies the split separators left-to-right.
@@ -168,7 +168,7 @@ This can generally be done by passing the separator strings in order of descendi
If the separator strings happen to form a [prefix code](https://en.wikipedia.org/wiki/Prefix_code), they can be passed in arbitrary order.
-To understand how a tokenizer split the input string, you can use the [tokens](/reference/functions/regular-functions/splitting-merging-functions#tokens) and [tokensForLikePattern](/reference/functions/regular-functions/splitting-merging-functions#tokensForLikePattern) functions:
+To understand how a tokenizer split the input string, you can use the [tokens](/core/reference/functions/regular-functions/splitting-merging-functions#tokens) and [tokensForLikePattern](/core/reference/functions/regular-functions/splitting-merging-functions#tokensForLikePattern) functions:
Example:
@@ -188,11 +188,11 @@ For non-ASCII text, the `asciiCJK` tokenizer is recommended as it correctly hand
**Preprocessor argument (optional)**. The preprocessor refers to an expression which is applied to the input string before tokenization.
Typical use cases for the preprocessor argument include
-1. Lower/upper-casing, or case folding to enable case-insensitive matching, e.g., [lower](/reference/functions/regular-functions/string-functions#lower), [lowerUTF8](/reference/functions/regular-functions/string-functions#lowerUTF8), [caseFoldUTF8](/reference/functions/regular-functions/string-functions#caseFoldUTF8).
-2. UTF-8 normalization, e.g. [normalizeUTF8NFC](/reference/functions/regular-functions/string-functions#normalizeUTF8NFC), [normalizeUTF8NFD](/reference/functions/regular-functions/string-functions#normalizeUTF8NFD), [normalizeUTF8NFKC](/reference/functions/regular-functions/string-functions#normalizeUTF8NFKC), [normalizeUTF8NFKD](/reference/functions/regular-functions/string-functions#normalizeUTF8NFKD), [normalizeUTF8NFKCCasefold](/reference/functions/regular-functions/string-functions#normalizeUTF8NFKCCasefold), [toValidUTF8](/reference/functions/regular-functions/string-functions#toValidUTF8).
-3. Removing or transforming unwanted characters or substrings, such as accents e.g. [extractTextFromHTML](/reference/functions/regular-functions/string-functions#extractTextFromHTML), [substring](/reference/functions/regular-functions/string-functions#substring), [idnaEncode](/reference/functions/regular-functions/string-functions#idnaEncode), [translate](/reference/functions/regular-functions/string-replace-functions#translate), [removeDiacriticsUTF8](/reference/functions/regular-functions/string-functions#removeDiacriticsUTF8).
+1. Lower/upper-casing, or case folding to enable case-insensitive matching, e.g., [lower](/core/reference/functions/regular-functions/string-functions#lower), [lowerUTF8](/core/reference/functions/regular-functions/string-functions#lowerUTF8), [caseFoldUTF8](/core/reference/functions/regular-functions/string-functions#caseFoldUTF8).
+2. UTF-8 normalization, e.g. [normalizeUTF8NFC](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFC), [normalizeUTF8NFD](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFD), [normalizeUTF8NFKC](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFKC), [normalizeUTF8NFKD](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFKD), [normalizeUTF8NFKCCasefold](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFKCCasefold), [toValidUTF8](/core/reference/functions/regular-functions/string-functions#toValidUTF8).
+3. Removing or transforming unwanted characters or substrings, such as accents e.g. [extractTextFromHTML](/core/reference/functions/regular-functions/string-functions#extractTextFromHTML), [substring](/core/reference/functions/regular-functions/string-functions#substring), [idnaEncode](/core/reference/functions/regular-functions/string-functions#idnaEncode), [translate](/core/reference/functions/regular-functions/string-replace-functions#translate), [removeDiacriticsUTF8](/core/reference/functions/regular-functions/string-functions#removeDiacriticsUTF8).
-The preprocessor expression must transform an input value of type [String](/reference/data-types/string) or [FixedString](/reference/data-types/fixedstring) to a value of the same type.
+The preprocessor expression must transform an input value of type [String](/core/reference/data-types/string) or [FixedString](/core/reference/data-types/fixedstring) to a value of the same type.
If the text index was build on a column of type `Nullable(T)` or `LowCardinality(T)` column, then the preprocessor expression should accept nullable or low-cardinality values (i.e. not throw an exception).
Examples:
@@ -212,7 +212,7 @@ Examples:
Using non-deterministic functions is disallowed.
-Functions [hasToken](/reference/functions/regular-functions/string-search-functions#hasToken), [hasAllTokens](/reference/functions/regular-functions/string-search-functions#hasAllTokens) and [hasAnyTokens](/reference/functions/regular-functions/string-search-functions#hasAnyTokens) use the preprocessor to first transform the search term before tokenizing it.
+Functions [hasToken](/core/reference/functions/regular-functions/string-search-functions#hasToken), [hasAllTokens](/core/reference/functions/regular-functions/string-search-functions#hasAllTokens) and [hasAnyTokens](/core/reference/functions/regular-functions/string-search-functions#hasAnyTokens) use the preprocessor to first transform the search term before tokenizing it.
For example,
@@ -261,7 +261,7 @@ ORDER BY tuple();
SELECT count() FROM tab WHERE hasAllTokens(arr, 'foo');
```
-To define a preprocessor in a text index on build [Map](/reference/data-types/map)-type columns, users need to decide if the index is
+To define a preprocessor in a text index on build [Map](/core/reference/data-types/map)-type columns, users need to decide if the index is
build on the map keys or values.
Example:
@@ -299,7 +299,7 @@ Optional parameter `posting_list_codec` (default: `none`) specifies the codec fo
*Index granularity.*
-Text indexes are implemented within ClickHouse as a type of [skip indexes](/reference/engines/table-engines/mergetree-family/mergetree#skip-index-types).
+Text indexes are implemented within ClickHouse as a type of [skip indexes](/core/reference/engines/table-engines/mergetree-family/mergetree#skip-index-types).
However, unlike other skip indexes, text indexes use an infinite granularity (100 million).
This can be seen in the table definition of a text index.
@@ -356,7 +356,7 @@ WHERE string_search_function(column_with_text_index)
#### `=` {#functions-example-equals}
-`=` ([equals](/reference/functions/regular-functions/comparison-functions#equals)) matches the entire given search term.
+`=` ([equals](/core/reference/functions/regular-functions/comparison-functions#equals)) matches the entire given search term.
Example:
@@ -366,7 +366,7 @@ SELECT * from table WHERE str = 'Hello';
#### `IN` {#functions-example-in}
-`IN` ([in](/reference/functions/regular-functions/in-functions)) is similar to `equals` but matches all search terms.
+`IN` ([in](/core/reference/functions/regular-functions/in-functions)) is similar to `equals` but matches all search terms.
Example:
@@ -388,7 +388,7 @@ These functions currently use the text index for filtering only if the index tok
`NOT LIKE` (`notLike`) is not supported by the text index.
-In order to use `LIKE` ([like](/reference/functions/regular-functions/string-search-functions#like)) and the [match](/reference/functions/regular-functions/string-search-functions#match) function with text indexes, ClickHouse must be able to extract complete tokens from the search term.
+In order to use `LIKE` ([like](/core/reference/functions/regular-functions/string-search-functions#like)) and the [match](/core/reference/functions/regular-functions/string-search-functions#match) function with text indexes, ClickHouse must be able to extract complete tokens from the search term.
For the index with `ngrams` tokenizer, this is the case if the length of the searched strings between wildcards is equal or longer than the ngram length.
Example for the text index with `splitByNonAlpha` tokenizer:
@@ -414,7 +414,7 @@ See the [LIKE/ILIKE performance tuning section](#like-ilike-queries-perf) for de
#### `startsWith` and `endsWith` {#functions-example-startswith-endswith}
-Similar to `LIKE`, functions [startsWith](/reference/functions/regular-functions/string-functions#startsWith) and [endsWith](/reference/functions/regular-functions/string-functions#endsWith) can only use a text index, if complete tokens can be extracted from the search term.
+Similar to `LIKE`, functions [startsWith](/core/reference/functions/regular-functions/string-functions#startsWith) and [endsWith](/core/reference/functions/regular-functions/string-functions#endsWith) can only use a text index, if complete tokens can be extracted from the search term.
For the index with `ngrams` tokenizer, this is the case if the length of the searched strings between wildcards is equal or longer than the ngram length.
Example for the text index with `splitByNonAlpha` tokenizer:
@@ -445,7 +445,7 @@ Function `hasToken` looks straightforward to use but it has certain pitfalls wit
We recommend using functions `hasAnyTokens` and `hasAllTokens` instead.
-Functions [hasToken](/reference/functions/regular-functions/string-search-functions#hasToken) and [hasTokenOrNull](/reference/functions/regular-functions/string-search-functions#hasTokenOrNull) match against a single given token.
+Functions [hasToken](/core/reference/functions/regular-functions/string-search-functions#hasToken) and [hasTokenOrNull](/core/reference/functions/regular-functions/string-search-functions#hasTokenOrNull) match against a single given token.
Unlike the previously mentioned functions, they do not tokenize the search term (they assume the input is a single token).
@@ -457,7 +457,7 @@ SELECT count() FROM table WHERE hasToken(comment, 'clickhouse');
#### `hasAnyTokens` and `hasAllTokens` {#functions-example-hasanytokens-hasalltokens}
-Functions [hasAnyTokens](/reference/functions/regular-functions/string-search-functions#hasAnyTokens) and [hasAllTokens](/reference/functions/regular-functions/string-search-functions#hasAllTokens) match against one or all of the given tokens.
+Functions [hasAnyTokens](/core/reference/functions/regular-functions/string-search-functions#hasAnyTokens) and [hasAllTokens](/core/reference/functions/regular-functions/string-search-functions#hasAllTokens) match against one or all of the given tokens.
These two functions accept the search tokens as either a string which will be tokenized using the same tokenizer used for the index column, or as an array of already processed tokens to which no tokenization will be applied prior to searching.
See the function documentation for more info.
@@ -476,7 +476,7 @@ SELECT count() FROM table WHERE hasAllTokens(comment, ['clickhouse', 'olap']);
#### `hasPhrase` {#functions-example-hasphrase}
-Function [hasPhrase](/reference/functions/regular-functions/string-search-functions#hasPhrase) matches against a phrase: all tokens must appear consecutively and in the same order as in the search string.
+Function [hasPhrase](/core/reference/functions/regular-functions/string-search-functions#hasPhrase) matches against a phrase: all tokens must appear consecutively and in the same order as in the search string.
Unlike `hasAllTokens`, which only requires all tokens to be present somewhere, `hasPhrase` requires them to appear as a consecutive sequence.
The search phrase is tokenized using the same tokenizer configured for the index column.
@@ -494,7 +494,7 @@ SELECT count() FROM table WHERE hasPhrase(comment, 'clickhouse olap');
#### `has` {#functions-example-has}
-Array function [has](/reference/functions/regular-functions/array-functions#has) matches against a single token in the array of strings.
+Array function [has](/core/reference/functions/regular-functions/array-functions#has) matches against a single token in the array of strings.
Example:
@@ -504,7 +504,7 @@ SELECT count() FROM table WHERE has(array, 'clickhouse');
#### `hasAny` and `hasAll` {#functions-example-hasany-hasall}
-Array functions [hasAny](/reference/functions/regular-functions/array-functions#hasAny) and [hasAll](/reference/functions/regular-functions/array-functions#hasAll) test whether the indexed array column contains any or all of a constant set of needle strings.
+Array functions [hasAny](/core/reference/functions/regular-functions/array-functions#hasAny) and [hasAll](/core/reference/functions/regular-functions/array-functions#hasAll) test whether the indexed array column contains any or all of a constant set of needle strings.
Example:
@@ -515,7 +515,7 @@ SELECT count() FROM table WHERE hasAll(tags, ['clickhouse', 'olap']);
#### `mapContains` {#functions-example-mapcontains}
-Function [mapContains](/reference/functions/regular-functions/tuple-map-functions#mapContainsKey) (an alias of `mapContainsKey`) matches against tokens extracted from the searched string in the keys of a map.
+Function [mapContains](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsKey) (an alias of `mapContainsKey`) matches against tokens extracted from the searched string in the keys of a map.
The behaviour is similar to the `equals` function with a `String` column.
The text index is only used if it was created on a `mapKeys(map)` expression.
@@ -529,7 +529,7 @@ SELECT count() FROM table WHERE mapContains(map, 'clickhouse');
#### `mapContainsValue` {#functions-example-mapcontainsvalue}
-Function [mapContainsValue](/reference/functions/regular-functions/tuple-map-functions#mapContainsValue) matches against tokens extracted from the searched string in the values of a map.
+Function [mapContainsValue](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsValue) matches against tokens extracted from the searched string in the values of a map.
The behaviour is similar to the `equals` function with a `String` column.
The text index is only used if it was created on a `mapValues(map)` expression.
@@ -541,7 +541,7 @@ SELECT count() FROM table WHERE mapContainsValue(map, 'clickhouse');
#### `mapContainsKeyLike` and `mapContainsValueLike` {#functions-example-mapcontainslike}
-The functions [mapContainsKeyLike](/reference/functions/regular-functions/tuple-map-functions#mapContainsKeyLike) and [mapContainsValueLike](/reference/functions/regular-functions/tuple-map-functions#mapContainsValueLike) match a pattern against all keys or values (respectively) of a map.
+The functions [mapContainsKeyLike](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsKeyLike) and [mapContainsValueLike](/core/reference/functions/regular-functions/tuple-map-functions#mapContainsValueLike) match a pattern against all keys or values (respectively) of a map.
Example:
@@ -552,7 +552,7 @@ SELECT count() FROM table WHERE mapContainsValueLike(map, '% clickhouse %');
#### `operator[]` {#functions-example-access-operator}
-Access [operator[]](/reference/operators#access-operators) can be used with the text index to filter out keys and values. The text index is only used if it is created on `mapKeys(map)` or `mapValues(map)` expressions, or both.
+Access [operator[]](/core/reference/operators#access-operators) can be used with the text index to filter out keys and values. The text index is only used if it is created on `mapKeys(map)` or `mapValues(map)` expressions, or both.
Example:
@@ -615,7 +615,7 @@ ENGINE = MergeTree
ORDER BY (timestamp);
```
-Without a text index, searching through [Map](/reference/data-types/map) data requires full table scans:
+Without a text index, searching through [Map](/core/reference/data-types/map) data requires full table scans:
```sql
-- Finds all logs with rate limiting data:
@@ -627,15 +627,15 @@ SELECT * FROM logs WHERE has(mapValues(attributes), '192.168.1.1'); -- slow full
As log volume grows, these queries become slow.
-The solution is creating a text index for the [Map](/reference/data-types/map) keys and values.
-Use [mapKeys](/reference/functions/regular-functions/tuple-map-functions#mapKeys) to create a text index when you need to find logs by field names or attribute types:
+The solution is creating a text index for the [Map](/core/reference/data-types/map) keys and values.
+Use [mapKeys](/core/reference/functions/regular-functions/tuple-map-functions#mapKeys) to create a text index when you need to find logs by field names or attribute types:
```sql
ALTER TABLE logs ADD INDEX attributes_keys_idx mapKeys(attributes) TYPE text(tokenizer = array);
ALTER TABLE posts MATERIALIZE INDEX attributes_keys_idx;
```
-Use [mapValues](/reference/functions/regular-functions/tuple-map-functions#mapValues) to create a text index when you need to search within the actual content of attributes:
+Use [mapValues](/core/reference/functions/regular-functions/tuple-map-functions#mapValues) to create a text index when you need to search within the actual content of attributes:
```sql
ALTER TABLE logs ADD INDEX attributes_vals_idx mapValues(attributes) TYPE text(tokenizer = array);
@@ -660,8 +660,8 @@ SELECT * FROM logs WHERE mapContainsValueLike(attributes, '% error %'); -- fast
Text indexes can be used with `JSON` columns in three ways:
1. **Indexes on specific subcolumns** — create a text index on a known JSON path, just like on a regular column. This indexes the *values* at that path.
-2. **Path-based indexes with [JSONAllPaths](/reference/functions/regular-functions/json-functions#JSONAllPaths)** — indexes *all paths* present in each granule to skip granules that cannot contain the queried path. Similar to `Map` columns.
-3. **Value-based indexes with [JSONAllValues](/reference/functions/regular-functions/json-functions#JSONAllValues)** — indexes *all values* across all JSON paths to accelerate full-text search on any JSON subcolumn with a single index.
+2. **Path-based indexes with [JSONAllPaths](/core/reference/functions/regular-functions/json-functions#JSONAllPaths)** — indexes *all paths* present in each granule to skip granules that cannot contain the queried path. Similar to `Map` columns.
+3. **Value-based indexes with [JSONAllValues](/core/reference/functions/regular-functions/json-functions#JSONAllValues)** — indexes *all values* across all JSON paths to accelerate full-text search on any JSON subcolumn with a single index.
#### Indexes on specific subcolumns {#json-indexes-on-subcolumns}
@@ -725,7 +725,7 @@ EXPLAIN indexes = 1 SELECT * FROM sensor_data WHERE data.location::String = 'roo
#### Path-based indexes with JSONAllPaths {#json-indexes-jsonallpaths}
-Similar to `Map` columns, text indexes can be created on [JSON](/reference/data-types/newjson) columns using [`JSONAllPaths`](/reference/functions/regular-functions/json-functions#JSONAllPaths).
+Similar to `Map` columns, text indexes can be created on [JSON](/core/reference/data-types/newjson) columns using [`JSONAllPaths`](/core/reference/functions/regular-functions/json-functions#JSONAllPaths).
The index stores the set of JSON paths present in each granule and uses them to skip granules where a queried path is absent.
Example index definition:
@@ -803,7 +803,7 @@ EXPLAIN indexes = 1 SELECT * FROM events WHERE data.user.name IS NOT NULL;
#### Value-based indexes with JSONAllValues {#json-indexes-jsonallvalues}
-Text indexes can be used to accelerate searches on [JSON](/reference/data-types/newjson) columns via function [`JSONAllValues`](/reference/functions/regular-functions/json-functions#JSONAllValues).
+Text indexes can be used to accelerate searches on [JSON](/core/reference/data-types/newjson) columns via function [`JSONAllValues`](/core/reference/functions/regular-functions/json-functions#JSONAllValues).
`JSONAllValues` returns all values from a JSON column as `Array(String)`.
Values of non-string datatypes (e.g. integers and arrays) are converted to their text representation.
@@ -921,8 +921,8 @@ The direct read optimization answers the query exclusively using the text index
Text index lookups read relatively little data and are therefore much faster than usual skip indexes in ClickHouse (which do a skip index lookup, followed by loading and filtering remaining granules).
Direct read is controlled by two settings:
-- Setting [query_plan_direct_read_from_text_index](/reference/settings/session-settings#query_plan_direct_read_from_text_index) (true by default) which specifies if direct read is generally enabled.
-- Setting [use_skip_indexes_on_data_read](/reference/settings/session-settings#use_skip_indexes_on_data_read) was a prerequisite for direct read in ClickHouse versions < 26.4.
+- Setting [query_plan_direct_read_from_text_index](/core/reference/settings/session-settings#query_plan_direct_read_from_text_index) (true by default) which specifies if direct read is generally enabled.
+- Setting [use_skip_indexes_on_data_read](/core/reference/settings/session-settings#use_skip_indexes_on_data_read) was a prerequisite for direct read in ClickHouse versions < 26.4.
**Supported functions**
@@ -991,7 +991,7 @@ Supported functions are: `like`, `startsWith`, `endsWith`, `equals`, `has`, `has
The additional filter can provide additional selectivity to restrict the result set in combination with other filters further, helping to reduce the amount of data read from other columns.
-Direct read as a hint is controlled by setting [query_plan_text_index_add_hint](/reference/settings/session-settings#query_plan_text_index_add_hint) (enabled by default).
+Direct read as a hint is controlled by setting [query_plan_text_index_add_hint](/core/reference/settings/session-settings#query_plan_text_index_add_hint) (enabled by default).
Example of query without hint:
@@ -1031,7 +1031,7 @@ Prewhere filter column: and(__text_index_idx_col_like_d306f7c9c95238594618ac23eb
```
In the second EXPLAIN PLAN output, you can see that an additional conjunct (`__text_index_...`) has been added to the filter condition.
-Thanks to the [PREWHERE](/reference/statements/select/prewhere) optimization, the filter condition is broken down into three separate conjuncts, which are applied in order of increasing computational complexity.
+Thanks to the [PREWHERE](/core/reference/statements/select/prewhere) optimization, the filter condition is broken down into three separate conjuncts, which are applied in order of increasing computational complexity.
For this query, the application order is `__text_index_...`, then `greaterOrEquals(...)`, and finally `like(...)`.
This ordering enables skipping even more data granules than the granules skipped by the text index and the original filter, before reading the heavy columns used in the query after `WHERE` clause further reducing the amount of data to read.
@@ -1042,11 +1042,11 @@ When a LIKE/ILIKE query pattern is `%%`
When the optimization is enabled, LIKE/ILIKE queries should be significantly faster than a full-table scan. However, when the pattern matches most dictionary tokens, the performance can be worse compared to a full-table scan. Luckily, there is a fallback mechanism to prevent that.
The optimization is controlled by a setting:
-- [use_text_index_like_evaluation_by_dictionary_scan](/reference/settings/session-settings#use_text_index_like_evaluation_by_dictionary_scan)
+- [use_text_index_like_evaluation_by_dictionary_scan](/core/reference/settings/session-settings#use_text_index_like_evaluation_by_dictionary_scan)
The fallback mechanism is controlled by two settings:
-- [text_index_like_min_pattern_length](/reference/settings/session-settings#text_index_like_min_pattern_length)
-- [text_index_like_max_postings_to_read](/reference/settings/session-settings#text_index_like_max_postings_to_read)
+- [text_index_like_min_pattern_length](/core/reference/settings/session-settings#text_index_like_min_pattern_length)
+- [text_index_like_max_postings_to_read](/core/reference/settings/session-settings#text_index_like_max_postings_to_read)
This optimization supports only functions `like` and `ilike`.
@@ -1054,10 +1054,10 @@ This optimization supports only functions `like` and `ilike`.
Different caches are available to buffer parts of the text index in memory (see section [Implementation Details](#implementation)):
Currently, there are caches for the deserialized headers, tokens, and posting lists of the text index to reduce I/O.
-They can be enabled via settings [use_text_index_header_cache](/reference/settings/session-settings#use_text_index_header_cache), [use_text_index_tokens_cache](/reference/settings/session-settings#use_text_index_tokens_cache), and [use_text_index_postings_cache](/reference/settings/session-settings#use_text_index_postings_cache).
+They can be enabled via settings [use_text_index_header_cache](/core/reference/settings/session-settings#use_text_index_header_cache), [use_text_index_tokens_cache](/core/reference/settings/session-settings#use_text_index_tokens_cache), and [use_text_index_postings_cache](/core/reference/settings/session-settings#use_text_index_postings_cache).
By default, all caches are disabled.
-To clear the caches, use statement [SYSTEM CLEAR TEXT INDEX CACHES](/reference/statements/system#drop-text-index-caches)
+To clear the caches, use statement [SYSTEM CLEAR TEXT INDEX CACHES](/core/reference/statements/system#drop-text-index-caches)
Please refer the following server settings to configure the caches.
@@ -1065,28 +1065,28 @@ Please refer the following server settings to configure the caches.
| Setting | Description |
|----------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------|
-| [text_index_tokens_cache_policy](/reference/settings/server-settings/settings#text_index_tokens_cache_policy) | Text index tokens cache policy name. |
-| [text_index_tokens_cache_size](/reference/settings/server-settings/settings#text_index_tokens_cache_size) | Maximum cache size in bytes. |
-| [text_index_tokens_cache_max_entries](/reference/settings/server-settings/settings#text_index_tokens_cache_max_entries) | Maximum number of deserialized tokens in cache. |
-| [text_index_tokens_cache_size_ratio](/reference/settings/server-settings/settings#text_index_tokens_cache_size_ratio) | The size of the protected queue in the text index tokens cache relative to the cache\'s total size. |
+| [text_index_tokens_cache_policy](/core/reference/settings/server-settings/settings#text_index_tokens_cache_policy) | Text index tokens cache policy name. |
+| [text_index_tokens_cache_size](/core/reference/settings/server-settings/settings#text_index_tokens_cache_size) | Maximum cache size in bytes. |
+| [text_index_tokens_cache_max_entries](/core/reference/settings/server-settings/settings#text_index_tokens_cache_max_entries) | Maximum number of deserialized tokens in cache. |
+| [text_index_tokens_cache_size_ratio](/core/reference/settings/server-settings/settings#text_index_tokens_cache_size_ratio) | The size of the protected queue in the text index tokens cache relative to the cache\'s total size. |
#### Header cache settings {#caching-header}
| Setting | Description |
|--------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------|
-| [text_index_header_cache_policy](/reference/settings/server-settings/settings#text_index_header_cache_policy) | Text index header cache policy name. |
-| [text_index_header_cache_size](/reference/settings/server-settings/settings#text_index_header_cache_size) | Maximum cache size in bytes. |
-| [text_index_header_cache_max_entries](/reference/settings/server-settings/settings#text_index_header_cache_max_entries) | Maximum number of deserialized headers in cache. |
-| [text_index_header_cache_size_ratio](/reference/settings/server-settings/settings#text_index_header_cache_size_ratio) | The size of the protected queue in the text index header cache relative to the cache\'s total size. |
+| [text_index_header_cache_policy](/core/reference/settings/server-settings/settings#text_index_header_cache_policy) | Text index header cache policy name. |
+| [text_index_header_cache_size](/core/reference/settings/server-settings/settings#text_index_header_cache_size) | Maximum cache size in bytes. |
+| [text_index_header_cache_max_entries](/core/reference/settings/server-settings/settings#text_index_header_cache_max_entries) | Maximum number of deserialized headers in cache. |
+| [text_index_header_cache_size_ratio](/core/reference/settings/server-settings/settings#text_index_header_cache_size_ratio) | The size of the protected queue in the text index header cache relative to the cache\'s total size. |
#### Posting lists cache settings {#caching-posting-lists}
| Setting | Description |
|---------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|
-| [text_index_postings_cache_policy](/reference/settings/server-settings/settings#text_index_postings_cache_policy) | Text index postings cache policy name. |
-| [text_index_postings_cache_size](/reference/settings/server-settings/settings#text_index_postings_cache_size) | Maximum cache size in bytes. |
-| [text_index_postings_cache_max_entries](/reference/settings/server-settings/settings#text_index_postings_cache_max_entries) | Maximum number of deserialized postings in cache. |
-| [text_index_postings_cache_size_ratio](/reference/settings/server-settings/settings#text_index_postings_cache_size_ratio) | The size of the protected queue in the text index postings cache relative to the cache\'s total size. |
+| [text_index_postings_cache_policy](/core/reference/settings/server-settings/settings#text_index_postings_cache_policy) | Text index postings cache policy name. |
+| [text_index_postings_cache_size](/core/reference/settings/server-settings/settings#text_index_postings_cache_size) | Maximum cache size in bytes. |
+| [text_index_postings_cache_max_entries](/core/reference/settings/server-settings/settings#text_index_postings_cache_max_entries) | Maximum number of deserialized postings in cache. |
+| [text_index_postings_cache_size_ratio](/core/reference/settings/server-settings/settings#text_index_postings_cache_size_ratio) | The size of the protected queue in the text index postings cache relative to the cache\'s total size. |
## Limitations {#limitations}
@@ -1104,7 +1104,7 @@ String predicates can be sped up using text indexes and bloom-filter-based based
- Are based on probabilistic data structures which may produce false positives.
- Are only able to answer set membership questions, i.e. the column may contain token X vs. definitely does not contain X.
- Store granule-level information to enable skipping coarse ranges during query execution.
-- Are hard to tune properly (see [here](/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) for an example).
+- Are hard to tune properly (see [here](/core/reference/engines/table-engines/mergetree-family/mergetree#n-gram-bloom-filter) for an example).
- Are rather compact (a few kilobytes or megabytes per part).
**Text indexes**
@@ -1146,7 +1146,7 @@ A dictionary blocks file (.dct) consists all the dictionary blocks of all index
The index header file contains for each dictionary block the block's first token and its relative offset in the dictionary blocks file.
-This sparse index structure is similar to ClickHouse's [sparse primary key index](/guides/cloud-oss/data-modelling/sparse-primary-indexes)).
+This sparse index structure is similar to ClickHouse's [sparse primary key index](/core/guides/clickhouse/data-modelling/sparse-primary-indexes)).
**Postings lists file (.pst)**
@@ -1159,12 +1159,12 @@ If the posting list is larger than `posting_list_block_size`, it is split into m
When data parts are merged, the text index does not need to be rebuilt from scratch; instead, it can be merged efficiently in a separate step of the merge process.
During this step, the sorted dictionaries of the text indexes of each input part are read and combined into a new unified dictionary.
The row numbers in the postings lists are also recalculated to reflect their new positions in the merged data part, using a mapping of old to new row numbers that is created during the initial merge phase.
-This method of merging text indexes is similar to how [projections](/reference/statements/alter/projection#projection-indexes) with `_part_offset` column are merged.
+This method of merging text indexes is similar to how [projections](/core/reference/statements/alter/projection#projection-indexes) with `_part_offset` column are merged.
If index is not materialized in the source part, it is built, written into a temporary file and then merged together with indexes from the other parts and from other temporary index files.
**Debugging**
-Table function [mergeTreeTextIndex](/reference/functions/table-functions/mergeTreeTextIndex) can be used to introspect text indexes.
+Table function [mergeTreeTextIndex](/core/reference/functions/table-functions/mergeTreeTextIndex) can be used to introspect text indexes.
## Example: Hackernews dataset {#hacker-news-dataset}
diff --git a/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx b/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx
similarity index 90%
rename from reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx
rename to core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx
index 9b5c8b13..99e2ead7 100644
--- a/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx
+++ b/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree.mdx
@@ -14,7 +14,7 @@ This engine:
See the section [Collapsing](#table_engines_versionedcollapsingmergetree) for details.
-The engine inherits from [MergeTree](/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) and adds the logic for collapsing rows to the algorithm for merging data parts. `VersionedCollapsingMergeTree` serves the same purpose as [CollapsingMergeTree](/reference/engines/table-engines/mergetree-family/collapsingmergetree) but uses a different collapsing algorithm that allows inserting the data in any order with multiple threads. In particular, the `Version` column helps to collapse the rows properly even if they are inserted in the wrong order. In contrast, `CollapsingMergeTree` allows only strictly consecutive insertion.
+The engine inherits from [MergeTree](/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) and adds the logic for collapsing rows to the algorithm for merging data parts. `VersionedCollapsingMergeTree` serves the same purpose as [CollapsingMergeTree](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree) but uses a different collapsing algorithm that allows inserting the data in any order with multiple threads. In particular, the `Version` column helps to collapse the rows properly even if they are inserted in the wrong order. In contrast, `CollapsingMergeTree` allows only strictly consecutive insertion.
## Creating a table {#creating-a-table}
@@ -31,7 +31,7 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
[SETTINGS name=value, ...]
```
-For a description of query parameters, see the [query description](/reference/statements/create/table).
+For a description of query parameters, see the [query description](/core/reference/statements/create/table).
### Engine parameters {#engine-parameters}
@@ -41,12 +41,12 @@ VersionedCollapsingMergeTree(sign, version)
| Parameter | Description | Type |
|-----------|----------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `sign` | Name of the column with the type of row: `1` is a "state" row, `-1` is a "cancel" row. | [`Int8`](/reference/data-types/int-uint) |
-| `version` | Name of the column with the version of the object state. | [`Int*`](/reference/data-types/int-uint), [`UInt*`](/reference/data-types/int-uint), [`Date`](/reference/data-types/date), [`Date32`](/reference/data-types/date32), [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) |
+| `sign` | Name of the column with the type of row: `1` is a "state" row, `-1` is a "cancel" row. | [`Int8`](/core/reference/data-types/int-uint) |
+| `version` | Name of the column with the version of the object state. | [`Int*`](/core/reference/data-types/int-uint), [`UInt*`](/core/reference/data-types/int-uint), [`Date`](/core/reference/data-types/date), [`Date32`](/core/reference/data-types/date32), [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) |
### Query clauses {#query-clauses}
-When creating a `VersionedCollapsingMergeTree` table, the same [clauses](/reference/engines/table-engines/mergetree-family/mergetree) are required as when creating a `MergeTree` table.
+When creating a `VersionedCollapsingMergeTree` table, the same [clauses](/core/reference/engines/table-engines/mergetree-family/mergetree) are required as when creating a `MergeTree` table.
diff --git a/reference/engines/table-engines/special/alias.mdx b/core/reference/engines/table-engines/special/alias.mdx
similarity index 98%
rename from reference/engines/table-engines/special/alias.mdx
rename to core/reference/engines/table-engines/special/alias.mdx
index 1bb19536..ecfa5ea3 100644
--- a/reference/engines/table-engines/special/alias.mdx
+++ b/core/reference/engines/table-engines/special/alias.mdx
@@ -15,7 +15,7 @@ The `Alias` engine creates a proxy to another table. All read and write operatio
This is an experimental feature that may change in backwards-incompatible ways in the future releases.
Enable usage of the Alias table engine
-with [allow_experimental_alias_table_engine](/reference/settings/session-settings#allow_experimental_alias_table_engine) setting.
+with [allow_experimental_alias_table_engine](/core/reference/settings/session-settings#allow_experimental_alias_table_engine) setting.
Input the command `set allow_experimental_alias_table_engine = 1`.
diff --git a/reference/engines/table-engines/special/buffer.mdx b/core/reference/engines/table-engines/special/buffer.mdx
similarity index 98%
rename from reference/engines/table-engines/special/buffer.mdx
rename to core/reference/engines/table-engines/special/buffer.mdx
index 2b583885..bc2e4823 100644
--- a/reference/engines/table-engines/special/buffer.mdx
+++ b/core/reference/engines/table-engines/special/buffer.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
Buffers the data to write in RAM, periodically flushing it to another table. During the read operation, data is read from the buffer and the other table simultaneously.
-A recommended alternative to the Buffer Table Engine is enabling [asynchronous inserts](/concepts/operations/insert/asyncinserts).
+A recommended alternative to the Buffer Table Engine is enabling [asynchronous inserts](/core/concepts/features/operations/insert/asyncinserts).
```sql
diff --git a/reference/engines/table-engines/special/dictionary.mdx b/core/reference/engines/table-engines/special/dictionary.mdx
similarity index 88%
rename from reference/engines/table-engines/special/dictionary.mdx
rename to core/reference/engines/table-engines/special/dictionary.mdx
index 1d93b5ef..a4a9981c 100644
--- a/reference/engines/table-engines/special/dictionary.mdx
+++ b/core/reference/engines/table-engines/special/dictionary.mdx
@@ -7,7 +7,7 @@ title: 'Dictionary table engine'
doc_type: 'reference'
---
-The `Dictionary` engine displays the [dictionary](/reference/statements/create/dictionary) data as a ClickHouse table.
+The `Dictionary` engine displays the [dictionary](/core/reference/statements/create/dictionary) data as a ClickHouse table.
## Example {#example}
@@ -66,7 +66,7 @@ WHERE name = 'products'
└──────────┴──────┴────────┴─────────────────┴─────────────────┴─────────────────┴───────────────┴─────────────────┘
```
-You can use the [dictGet\*](/reference/functions/regular-functions/ext-dict-functions) functions to get the dictionary data in this format.
+You can use the [dictGet\*](/core/reference/functions/regular-functions/ext-dict-functions) functions to get the dictionary data in this format.
This view isn't helpful when you need to get raw data, or when performing a `JOIN` operation. For these cases, you can use the `Dictionary` engine, which displays the dictionary data in a table.
@@ -98,4 +98,4 @@ SELECT * FROM products LIMIT 1;
**See Also**
-- [Dictionary function](/reference/functions/table-functions/dictionary)
+- [Dictionary function](/core/reference/functions/table-functions/dictionary)
diff --git a/reference/engines/table-engines/special/distributed.mdx b/core/reference/engines/table-engines/special/distributed.mdx
similarity index 83%
rename from reference/engines/table-engines/special/distributed.mdx
rename to core/reference/engines/table-engines/special/distributed.mdx
index 513893fd..0fda061d 100644
--- a/reference/engines/table-engines/special/distributed.mdx
+++ b/core/reference/engines/table-engines/special/distributed.mdx
@@ -12,7 +12,7 @@ doc_type: 'reference'
**Distributed engine in Cloud**
-To create a distributed table engine in ClickHouse Cloud, you can use the [`remote` and `remoteSecure`](/reference/functions/table-functions/remote) table functions.
+To create a distributed table engine in ClickHouse Cloud, you can use the [`remote` and `remoteSecure`](/core/reference/functions/table-functions/remote) table functions.
The `Distributed(...)` syntax cannot be used in ClickHouse Cloud.
@@ -51,8 +51,8 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] AS [db2.]name2
**See Also**
-- [distributed_foreground_insert](/reference/settings/session-settings#distributed_foreground_insert) setting
-- [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes) for the examples
+- [distributed_foreground_insert](/core/reference/settings/session-settings#distributed_foreground_insert) setting
+- [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes) for the examples
### Distributed settings {#distributed-settings}
| Setting | Description | Default value |
@@ -63,10 +63,10 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] AS [db2.]name2
| `bytes_to_throw_insert` | If more than this number of compressed bytes will be pending for background `INSERT`, an exception will be thrown. `0` - do not throw. | `0` |
| `bytes_to_delay_insert` | If more than this number of compressed bytes will be pending for background INSERT, the query will be delayed. 0 - do not delay. | `0` |
| `max_delay_to_insert` | Max delay of inserting data into Distributed table in seconds, if there are a lot of pending bytes for background send. | `60` |
-| `background_insert_batch` | The same as [`distributed_background_insert_batch`](/reference/settings/session-settings#distributed_background_insert_batch) | `0` |
-| `background_insert_split_batch_on_failure` | The same as [`distributed_background_insert_split_batch_on_failure`](/reference/settings/session-settings#distributed_background_insert_split_batch_on_failure) | `0` |
-| `background_insert_sleep_time_ms` | The same as [`distributed_background_insert_sleep_time_ms`](/reference/settings/session-settings#distributed_background_insert_sleep_time_ms) | `0` |
-| `background_insert_max_sleep_time_ms` | The same as [`distributed_background_insert_max_sleep_time_ms`](/reference/settings/session-settings#distributed_background_insert_max_sleep_time_ms) | `0` |
+| `background_insert_batch` | The same as [`distributed_background_insert_batch`](/core/reference/settings/session-settings#distributed_background_insert_batch) | `0` |
+| `background_insert_split_batch_on_failure` | The same as [`distributed_background_insert_split_batch_on_failure`](/core/reference/settings/session-settings#distributed_background_insert_split_batch_on_failure) | `0` |
+| `background_insert_sleep_time_ms` | The same as [`distributed_background_insert_sleep_time_ms`](/core/reference/settings/session-settings#distributed_background_insert_sleep_time_ms) | `0` |
+| `background_insert_max_sleep_time_ms` | The same as [`distributed_background_insert_max_sleep_time_ms`](/core/reference/settings/session-settings#distributed_background_insert_max_sleep_time_ms) | `0` |
| `flush_on_detach` | Flush data to remote nodes on `DETACH`/`DROP`/server shutdown. | `true` |
@@ -78,8 +78,8 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] AS [db2.]name2
For **Insert limit settings** (`..._insert`) see also:
-- [`distributed_foreground_insert`](/reference/settings/session-settings#distributed_foreground_insert) setting
-- [`prefer_localhost_replica`](/reference/settings/session-settings#prefer_localhost_replica) setting
+- [`distributed_foreground_insert`](/core/reference/settings/session-settings#distributed_foreground_insert) setting
+- [`prefer_localhost_replica`](/core/reference/settings/session-settings#prefer_localhost_replica) setting
- `bytes_to_throw_insert` handled before `bytes_to_delay_insert`, so you should not set it to the value less then `bytes_to_delay_insert`
@@ -99,7 +99,7 @@ Instead of the database name, you can use a constant expression that returns a s
## Clusters {#distributed-clusters}
-Clusters are configured in the [server configuration file](/concepts/features/configuration/server-config/configuration-files):
+Clusters are configured in the [server configuration file](/core/concepts/features/configuration/server-config/configuration-files):
```xml
@@ -165,13 +165,13 @@ The parameters `host`, `port`, and optionally `user`, `password`, `secure`, `com
|---------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------|
| `host` | The address of the remote server. You can use either the domain or the IPv4 or IPv6 address. If you specify the domain, the server makes a DNS request when it starts, and the result is stored as long as the server is running. If the DNS request fails, the server does not start. If you change the DNS record, restart the server. | - |
| `port` | The TCP port for messenger activity (`tcp_port` in the config, usually set to 9000). Not to be confused with `http_port`. | - |
-| `user` | Name of the user for connecting to a remote server. This user must have access to connect to the specified server. Access is configured in the `users.xml` file. For more information, see the section [Access rights](/concepts/features/security/access-rights). | `default` |
+| `user` | Name of the user for connecting to a remote server. This user must have access to connect to the specified server. Access is configured in the `users.xml` file. For more information, see the section [Access rights](/core/concepts/features/security/access-rights). | `default` |
| `password` | The password for connecting to a remote server (not masked). | '' |
| `secure` | Whether to use a secure SSL/TLS connection. Usually also requires specifying the port (the default secure port is `9440`). The server should listen on `9440` and be configured with correct certificates. | `false` |
| `compression` | Use data compression. | `true` |
| `bind_host` | The source address to use when connecting to the remote server from this node. IPv4 address only supported. Intended for advanced deployment use cases where setting the source IP address used by ClickHouse distributed queries is needed. | - |
-When specifying replicas, one of the available replicas will be selected for each of the shards when reading. You can configure the algorithm for load balancing (the preference for which replica to access) – see the [load_balancing](/reference/settings/session-settings#load_balancing) setting. If the connection with the server is not established, there will be an attempt to connect with a short timeout. If the connection failed, the next replica will be selected, and so on for all the replicas. If the connection attempt failed for all the replicas, the attempt will be repeated the same way, several times. This works in favour of resiliency, but does not provide complete fault tolerance: a remote server might accept the connection, but might not work, or work poorly.
+When specifying replicas, one of the available replicas will be selected for each of the shards when reading. You can configure the algorithm for load balancing (the preference for which replica to access) – see the [load_balancing](/core/reference/settings/session-settings#load_balancing) setting. If the connection with the server is not established, there will be an attempt to connect with a short timeout. If the connection failed, the next replica will be selected, and so on for all the replicas. If the connection attempt failed for all the replicas, the attempt will be repeated the same way, several times. This works in favour of resiliency, but does not provide complete fault tolerance: a remote server might accept the connection, but might not work, or work poorly.
You can specify just one of the shards (in this case, query processing should be called remote, rather than distributed) or up to any number of shards. In each shard, you can specify from one to any number of replicas. You can specify a different number of replicas for each shard.
@@ -181,7 +181,7 @@ To view your clusters, use the `system.clusters` table.
The `Distributed` engine allows working with a cluster like a local server. However, the cluster's configuration cannot be specified dynamically, it has to be configured in the server config file. Usually, all servers in a cluster will have the same cluster config (though this is not required). Clusters from the config file are updated on the fly, without restarting the server.
-If you need to send a query to an unknown set of shards and replicas each time, you do not need to create a `Distributed` table – use the `remote` table function instead. See the section [Table functions](/reference/functions/table-functions).
+If you need to send a query to an unknown set of shards and replicas each time, you do not need to create a `Distributed` table – use the `remote` table function instead. See the section [Table functions](/core/reference/functions/table-functions).
## Writing data {#distributed-writing-data}
@@ -208,7 +208,7 @@ You should be concerned about the sharding scheme in the following cases:
- Queries are used that require joining data (`IN` or `JOIN`) by a specific key. If data is sharded by this key, you can use local `IN` or `JOIN` instead of `GLOBAL IN` or `GLOBAL JOIN`, which is much more efficient.
- A large number of servers is used (hundreds or more) with a large number of small queries, for example, queries for data of individual clients (e.g. websites, advertisers, or partners). In order for the small queries to not affect the entire cluster, it makes sense to locate data for a single client on a single shard. Alternatively, you can set up bi-level sharding: divide the entire cluster into "layers", where a layer may consist of multiple shards. Data for a single client is located on a single layer, but shards can be added to a layer as necessary, and data is randomly distributed within them. `Distributed` tables are created for each layer, and a single shared distributed table is created for global queries.
-Data is written in background. When inserted in the table, the data block is just written to the local file system. The data is sent to the remote servers in the background as soon as possible. The periodicity for sending data is managed by the [distributed_background_insert_sleep_time_ms](/reference/settings/session-settings#distributed_background_insert_sleep_time_ms) and [distributed_background_insert_max_sleep_time_ms](/reference/settings/session-settings#distributed_background_insert_max_sleep_time_ms) settings. The `Distributed` engine sends each file with inserted data separately, but you can enable batch sending of files with the [distributed_background_insert_batch](/reference/settings/session-settings#distributed_background_insert_batch) setting. This setting improves cluster performance by better utilizing local server and network resources. You should check whether data is sent successfully by checking the list of files (data waiting to be sent) in the table directory: `/var/lib/clickhouse/data/database/table/`. The number of threads performing background tasks can be set by [background_distributed_schedule_pool_size](/reference/settings/server-settings/settings#background_distributed_schedule_pool_size) setting.
+Data is written in background. When inserted in the table, the data block is just written to the local file system. The data is sent to the remote servers in the background as soon as possible. The periodicity for sending data is managed by the [distributed_background_insert_sleep_time_ms](/core/reference/settings/session-settings#distributed_background_insert_sleep_time_ms) and [distributed_background_insert_max_sleep_time_ms](/core/reference/settings/session-settings#distributed_background_insert_max_sleep_time_ms) settings. The `Distributed` engine sends each file with inserted data separately, but you can enable batch sending of files with the [distributed_background_insert_batch](/core/reference/settings/session-settings#distributed_background_insert_batch) setting. This setting improves cluster performance by better utilizing local server and network resources. You should check whether data is sent successfully by checking the list of files (data waiting to be sent) in the table directory: `/var/lib/clickhouse/data/database/table/`. The number of threads performing background tasks can be set by [background_distributed_schedule_pool_size](/core/reference/settings/server-settings/settings#background_distributed_schedule_pool_size) setting.
If the server ceased to exist or had a rough restart (for example, due to a hardware failure) after an `INSERT` to a `Distributed` table, the inserted data might be lost. If a damaged data part is detected in the table directory, it is transferred to the `broken` subdirectory and no longer used.
@@ -216,22 +216,22 @@ If the server ceased to exist or had a rough restart (for example, due to a hard
When querying a `Distributed` table, `SELECT` queries are sent to all shards and work regardless of how data is distributed across the shards (they can be distributed completely randomly). When you add a new shard, you do not have to transfer old data into it. Instead, you can write new data to it by using a heavier weight – the data will be distributed slightly unevenly, but queries will work correctly and efficiently.
-When the `max_parallel_replicas` option is enabled, query processing is parallelized across all replicas within a single shard. For more information, see the section [max_parallel_replicas](/reference/settings/session-settings#max_parallel_replicas).
+When the `max_parallel_replicas` option is enabled, query processing is parallelized across all replicas within a single shard. For more information, see the section [max_parallel_replicas](/core/reference/settings/session-settings#max_parallel_replicas).
-To learn more about how distributed `in` and `global in` queries are processed, refer to [this](/reference/statements/in#distributed-subqueries) documentation.
+To learn more about how distributed `in` and `global in` queries are processed, refer to [this](/core/reference/statements/in#distributed-subqueries) documentation.
## Virtual columns {#virtual-columns}
#### _Shard_num {#_shard_num}
-`_shard_num` — Contains the `shard_num` value from the table `system.clusters`. Type: [UInt32](/reference/data-types/int-uint).
+`_shard_num` — Contains the `shard_num` value from the table `system.clusters`. Type: [UInt32](/core/reference/data-types/int-uint).
-Since [`remote`](/reference/functions/table-functions/remote) and [`cluster](../../../sql-reference/table-functions/cluster.md) table functions internally create temporary Distributed table, `_shard_num` is available there too.
+Since [`remote`](/core/reference/functions/table-functions/remote) and [`cluster](../../../sql-reference/table-functions/cluster.md) table functions internally create temporary Distributed table, `_shard_num` is available there too.
**See Also**
-- [Virtual columns](/reference/engines/table-engines#table_engines-virtual_columns) description
-- [`background_distributed_schedule_pool_size`](/reference/settings/server-settings/settings#background_distributed_schedule_pool_size) setting
-- [`shardNum()`](/reference/functions/regular-functions/other-functions#shardNum) and [`shardCount()`](/reference/functions/regular-functions/other-functions#shardCount) functions
+- [Virtual columns](/core/reference/engines/table-engines#table_engines-virtual_columns) description
+- [`background_distributed_schedule_pool_size`](/core/reference/settings/server-settings/settings#background_distributed_schedule_pool_size) setting
+- [`shardNum()`](/core/reference/functions/regular-functions/other-functions#shardNum) and [`shardCount()`](/core/reference/functions/regular-functions/other-functions#shardCount) functions
diff --git a/reference/engines/table-engines/special/executable.mdx b/core/reference/engines/table-engines/special/executable.mdx
similarity index 96%
rename from reference/engines/table-engines/special/executable.mdx
rename to core/reference/engines/table-engines/special/executable.mdx
index 29634d7e..4b06dfe8 100644
--- a/reference/engines/table-engines/special/executable.mdx
+++ b/core/reference/engines/table-engines/special/executable.mdx
@@ -101,7 +101,7 @@ SELECT * FROM my_executable_table
Users of the Hacker News website leave comments. Python contains a natural language processing toolkit (`nltk`) with a `SentimentIntensityAnalyzer` for determining if comments are positive, negative, or neutral - including assigning a value between -1 (a very negative comment) and 1 (a very positive comment). Let's create an `Executable` table that computes the sentiment of Hacker News comments using `nltk`.
-This example uses the `hackernews` table described [here](/reference/engines/table-engines/mergetree-family/textindexes#hacker-news-dataset). The `hackernews` table includes an `id` column of type `UInt64` and a `String` column named `comment`. Let's start by defining the `Executable` table:
+This example uses the `hackernews` table described [here](/core/reference/engines/table-engines/mergetree-family/textindexes#hacker-news-dataset). The `hackernews` table includes an `id` column of type `UInt64` and a `String` column named `comment`. Let's start by defining the `Executable` table:
```sql
CREATE TABLE sentiment (
diff --git a/reference/engines/table-engines/special/external-data.mdx b/core/reference/engines/table-engines/special/external-data.mdx
similarity index 100%
rename from reference/engines/table-engines/special/external-data.mdx
rename to core/reference/engines/table-engines/special/external-data.mdx
diff --git a/reference/engines/table-engines/special/file.mdx b/core/reference/engines/table-engines/special/file.mdx
similarity index 64%
rename from reference/engines/table-engines/special/file.mdx
rename to core/reference/engines/table-engines/special/file.mdx
index f8822520..3e350477 100644
--- a/reference/engines/table-engines/special/file.mdx
+++ b/core/reference/engines/table-engines/special/file.mdx
@@ -7,7 +7,7 @@ title: 'File table engine'
doc_type: 'reference'
---
-The File table engine keeps the data in a file in one of the supported [file formats](/reference/formats#formats-overview) (`TabSeparated`, `Native`, etc.).
+The File table engine keeps the data in a file in one of the supported [file formats](/core/reference/formats#formats-overview) (`TabSeparated`, `Native`, etc.).
Usage scenarios:
@@ -16,7 +16,7 @@ Usage scenarios:
- Updating data in ClickHouse via editing a file on a disk.
-This engine is not currently available in ClickHouse Cloud, please [use the S3 table function instead](/reference/functions/table-functions/s3).
+This engine is not currently available in ClickHouse Cloud, please [use the S3 table function instead](/core/reference/functions/table-functions/s3).
## Usage in ClickHouse Server {#usage-in-clickhouse-server}
@@ -28,13 +28,13 @@ File(Format)
The `Format` parameter specifies one of the available file formats. To perform
`SELECT` queries, the format must be supported for input, and to perform
`INSERT` queries – for output. The available formats are listed in the
-[Formats](/reference/formats#formats-overview) section.
+[Formats](/core/reference/formats#formats-overview) section.
-ClickHouse does not allow specifying filesystem path for `File`. It will use folder defined by [path](/reference/settings/server-settings/settings) setting in server configuration.
+ClickHouse does not allow specifying filesystem path for `File`. It will use folder defined by [path](/core/reference/settings/server-settings/settings) setting in server configuration.
When creating table using `File(Format)` it creates empty subdirectory in that folder. When data is written to that table, it's put into `data.Format` file in that subdirectory.
-You may manually create this subfolder and file in server filesystem and then [ATTACH](/reference/statements/attach) it to table information with matching name, so you can query data from that file.
+You may manually create this subfolder and file in server filesystem and then [ATTACH](/core/reference/statements/attach) it to table information with matching name, so you can query data from that file.
Be careful with this functionality, because ClickHouse does not keep track of external changes to such files. The result of simultaneous writes via ClickHouse and outside of ClickHouse is undefined.
@@ -73,7 +73,7 @@ SELECT * FROM file_engine_table
## Usage in ClickHouse-local {#usage-in-clickhouse-local}
-In [clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local) File engine accepts file path in addition to `Format`. Default input/output streams can be specified using numeric or human-readable names like `0` or `stdin`, `1` or `stdout`. It is possible to read and write compressed files based on an additional engine parameter or file extension (`gz`, `br` or `xz`).
+In [clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local) File engine accepts file path in addition to `Format`. Default input/output streams can be specified using numeric or human-readable names like `0` or `stdin`, `1` or `stdout`. It is possible to read and write compressed files based on an additional engine parameter or file extension (`gz`, `br` or `xz`).
**Example:**
@@ -96,7 +96,7 @@ $ echo -e "1,2\n3,4" | clickhouse-local -q "CREATE TABLE table (a Int64, b Int64
`PARTITION BY` — Optional. It is possible to create separate files by partitioning the data on a partition key. In most cases, you don't need a partition key, and if it is needed you generally don't need a partition key more granular than by month. Partitioning does not speed up queries (in contrast to the ORDER BY expression). You should never use too granular partitioning. Don't partition your data by client identifiers or names (instead, make client identifier or name the first column in the ORDER BY expression).
-For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
+For partitioning by month, use the `toYYYYMM(date_column)` expression, where `date_column` is a column with a date of the type [Date](/core/reference/data-types/date). The partition names here have the `"YYYYMM"` format.
## Virtual columns {#virtual-columns}
@@ -107,8 +107,8 @@ For partitioning by month, use the `toYYYYMM(date_column)` expression, where `da
## Settings {#settings}
-- [engine_file_empty_if_not_exists](/reference/settings/session-settings#engine_file_empty_if_not_exists) - allows to select empty data from a file that doesn't exist. Disabled by default.
-- [engine_file_truncate_on_insert](/reference/settings/session-settings#engine_file_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
-- [engine_file_allow_create_multiple_files](/reference/settings/session-settings#engine_file_allow_create_multiple_files) - allows to create a new file on each insert if format has suffix. Disabled by default.
-- [engine_file_skip_empty_files](/reference/settings/session-settings#engine_file_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
-- [storage_file_read_method](/reference/settings/session-settings#engine_file_empty_if_not_exists) - method of reading data from storage file, one of: `read`, `pread`, `mmap`. The mmap method does not apply to clickhouse-server (it's intended for clickhouse-local). Default value: `pread` for clickhouse-server, `mmap` for clickhouse-local.
+- [engine_file_empty_if_not_exists](/core/reference/settings/session-settings#engine_file_empty_if_not_exists) - allows to select empty data from a file that doesn't exist. Disabled by default.
+- [engine_file_truncate_on_insert](/core/reference/settings/session-settings#engine_file_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
+- [engine_file_allow_create_multiple_files](/core/reference/settings/session-settings#engine_file_allow_create_multiple_files) - allows to create a new file on each insert if format has suffix. Disabled by default.
+- [engine_file_skip_empty_files](/core/reference/settings/session-settings#engine_file_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
+- [storage_file_read_method](/core/reference/settings/session-settings#engine_file_empty_if_not_exists) - method of reading data from storage file, one of: `read`, `pread`, `mmap`. The mmap method does not apply to clickhouse-server (it's intended for clickhouse-local). Default value: `pread` for clickhouse-server, `mmap` for clickhouse-local.
diff --git a/reference/engines/table-engines/special/filelog.mdx b/core/reference/engines/table-engines/special/filelog.mdx
similarity index 92%
rename from reference/engines/table-engines/special/filelog.mdx
rename to core/reference/engines/table-engines/special/filelog.mdx
index 5be2ac88..ab102444 100644
--- a/reference/engines/table-engines/special/filelog.mdx
+++ b/core/reference/engines/table-engines/special/filelog.mdx
@@ -40,9 +40,9 @@ Engine arguments:
Optional parameters:
-- `poll_timeout_ms` - Timeout for single poll from log file. Default: [stream_poll_timeout_ms](/reference/settings/session-settings#stream_poll_timeout_ms).
-- `poll_max_batch_size` — Maximum amount of records to be polled in a single poll. Default: [max_block_size](/reference/settings/session-settings#max_block_size).
-- `max_block_size` — The maximum batch size (in records) for poll. Default: [max_insert_block_size](/reference/settings/session-settings#max_insert_block_size).
+- `poll_timeout_ms` - Timeout for single poll from log file. Default: [stream_poll_timeout_ms](/core/reference/settings/session-settings#stream_poll_timeout_ms).
+- `poll_max_batch_size` — Maximum amount of records to be polled in a single poll. Default: [max_block_size](/core/reference/settings/session-settings#max_block_size).
+- `max_block_size` — The maximum batch size (in records) for poll. Default: [max_insert_block_size](/core/reference/settings/session-settings#max_insert_block_size).
- `max_threads` - Number of max threads to parse files, default is 0, which means the number will be max(1, physical_cpu_cores / 4).
- `poll_directory_watch_events_backoff_init` - The initial sleep value for watch directory thread. Default: `500`.
- `poll_directory_watch_events_backoff_max` - The max sleep value for watch directory thread. Default: `32000`.
@@ -53,7 +53,7 @@ Optional parameters:
The delivered records are tracked automatically, so each record in a log file is only counted once.
-`SELECT` is not particularly useful for reading records (except for debugging), because each record can be read only once. It is more practical to create real-time threads using [materialized views](/reference/statements/create/view). To do this:
+`SELECT` is not particularly useful for reading records (except for debugging), because each record can be read only once. It is more practical to create real-time threads using [materialized views](/core/reference/statements/create/view). To do this:
1. Use the engine to create a FileLog table and consider it a data stream.
2. Create a table with the desired structure.
diff --git a/reference/engines/table-engines/special/generate.mdx b/core/reference/engines/table-engines/special/generate.mdx
similarity index 92%
rename from reference/engines/table-engines/special/generate.mdx
rename to core/reference/engines/table-engines/special/generate.mdx
index 1bfd8d44..ed4f004e 100644
--- a/reference/engines/table-engines/special/generate.mdx
+++ b/core/reference/engines/table-engines/special/generate.mdx
@@ -25,7 +25,7 @@ array or map columns and strings correspondingly in generated data.
Generate table engine supports only `SELECT` queries.
-It supports all [DataTypes](/reference/data-types) that can be stored in a table except `AggregateFunction`.
+It supports all [DataTypes](/core/reference/data-types) that can be stored in a table except `AggregateFunction`.
## Example {#example}
diff --git a/core/reference/engines/table-engines/special/index.mdx b/core/reference/engines/table-engines/special/index.mdx
new file mode 100644
index 00000000..dda96c1c
--- /dev/null
+++ b/core/reference/engines/table-engines/special/index.mdx
@@ -0,0 +1,44 @@
+---
+description: 'Documentation for Special Table Engines'
+sidebarTitle: 'Special'
+slug: /engines/table-engines/special/
+title: 'Special table engines'
+doc_type: 'reference'
+---
+
+There are three main categories of table engines:
+
+- [MergeTree engine family](/core/reference/engines/table-engines/mergetree-family) for main production use.
+- [Log engine family](/core/reference/engines/table-engines/log-family) for small temporary data.
+- [Table engines for integrations](/core/reference/engines/table-engines/integrations).
+
+The remaining engines are unique in their purpose and are not grouped into families yet, thus they are placed in this "special" category.
+
+{/* The table of contents table for this page is automatically generated by
+https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh
+from the YAML front matter fields: slug, description, title.
+
+If you've spotted an error, please edit the YML frontmatter of the pages themselves.
+*/}
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [Alias table engine](/core/reference/engines/table-engines/special/alias) | The Alias table engine creates a transparent proxy to another table. All operations are forwarded to the target table while the alias itself stores no data. |
+| [Distributed table engine](/core/reference/engines/table-engines/special/distributed) | Tables with Distributed engine do not store any data of their own, but allow distributed query processing on multiple servers. Reading is automatically parallelized. During a read, the table indexes on remote servers are used, if there are any. |
+| [Dictionary table engine](/core/reference/engines/table-engines/special/dictionary) | The `Dictionary` engine displays the dictionary data as a ClickHouse table. |
+| [Merge table engine](/core/reference/engines/table-engines/special/merge) | The `Merge` engine (not to be confused with `MergeTree`) does not store data itself, but allows reading from any number of other tables simultaneously. |
+| [Executable and ExecutablePool table engines](/core/reference/engines/table-engines/special/executable) | The `Executable` and `ExecutablePool` table engines allow you to define a table whose rows are generated from a script that you define (by writing rows to **stdout**). |
+| [File table engine](/core/reference/engines/table-engines/special/file) | The File table engine keeps the data in a file in one of the supported file formats (`TabSeparated`, `Native`, etc.). |
+| [Null table engine](/core/reference/engines/table-engines/special/null) | When writing to a `Null` table, data is ignored. When reading from a `Null` table, the response is empty. |
+| [Set table engine](/core/reference/engines/table-engines/special/set) | A data set that is always in RAM. It is intended for use on the right side of the `IN` operator. |
+| [Join table engine](/core/reference/engines/table-engines/special/join) | Optional prepared data structure for usage in JOIN operations. |
+| [URL table engine](/core/reference/engines/table-engines/special/url) | Queries data to/from a remote HTTP/HTTPS server. This engine is similar to the File engine. |
+| [View table engine](/core/reference/engines/table-engines/special/view) | Used for implementing views (for more information, see the `CREATE VIEW query`). It does not store data, but only stores the specified `SELECT` query. When reading from a table, it runs this query (and deletes all unnecessary columns from the query). |
+| [Memory table engine](/core/reference/engines/table-engines/special/memory) | The Memory engine stores data in RAM, in uncompressed form. Data is stored in exactly the same form as it is received when read. In other words, reading from this table is completely free. |
+| [Buffer table engine](/core/reference/engines/table-engines/special/buffer) | Buffers the data to write in RAM, periodically flushing it to another table. During the read operation, data is read from the buffer and the other table simultaneously. |
+| [External data for query processing](/core/reference/engines/table-engines/special/external-data) | ClickHouse allows sending a server the data that is needed for processing a query, together with a `SELECT` query. This data is put in a temporary table and can be used in the query (for example, in `IN` operators). |
+| [GenerateRandom table engine](/core/reference/engines/table-engines/special/generate) | The GenerateRandom table engine produces random data for given table schema. |
+| [KeeperMap table engine](/core/reference/engines/table-engines/special/keepermap) | This engine allows you to use Keeper/ZooKeeper cluster as consistent key-value store with linearizable writes and sequentially consistent reads. |
+| [FileLog table engine](/core/reference/engines/table-engines/special/filelog) | This engine allows processing of application log files as a stream of records. |
+{/*AUTOGENERATED_END*/}
diff --git a/reference/engines/table-engines/special/join.mdx b/core/reference/engines/table-engines/special/join.mdx
similarity index 74%
rename from reference/engines/table-engines/special/join.mdx
rename to core/reference/engines/table-engines/special/join.mdx
index 9b7e4ff3..a06e5f4e 100644
--- a/reference/engines/table-engines/special/join.mdx
+++ b/core/reference/engines/table-engines/special/join.mdx
@@ -6,7 +6,7 @@ title: 'Join table engine'
doc_type: 'reference'
---
-Optional prepared data structure for usage in [JOIN](/reference/statements/select/join) operations.
+Optional prepared data structure for usage in [JOIN](/core/reference/statements/select/join) operations.
In ClickHouse Cloud, if your service was created with a version earlier than 25.4, you will need to set the compatibility to at least 25.4 using `SET compatibility=25.4`.
@@ -22,17 +22,17 @@ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
) ENGINE = Join(join_strictness, join_type, k1[, k2, ...])
```
-See the detailed description of the [CREATE TABLE](/reference/statements/create/table) query.
+See the detailed description of the [CREATE TABLE](/core/reference/statements/create/table) query.
## Engine parameters {#engine-parameters}
### `join_strictness` {#join_strictness}
-`join_strictness` – [JOIN strictness](/reference/statements/select/join#supported-types-of-join).
+`join_strictness` – [JOIN strictness](/core/reference/statements/select/join#supported-types-of-join).
### `join_type` {#join_type}
-`join_type` – [JOIN type](/reference/statements/select/join#supported-types-of-join).
+`join_type` – [JOIN type](/core/reference/statements/select/join#supported-types-of-join).
### Key columns {#key-columns}
@@ -55,11 +55,11 @@ You can use `INSERT` queries to add data to the `Join`-engine tables. If the tab
Main use-cases for `Join`-engine tables are following:
- Place the table to the right side in a `JOIN` clause.
-- Call the [joinGet](/reference/functions/regular-functions/other-functions#joinGet) function, which lets you extract data from the table the same way as from a dictionary.
+- Call the [joinGet](/core/reference/functions/regular-functions/other-functions#joinGet) function, which lets you extract data from the table the same way as from a dictionary.
### Deleting data {#deleting-data}
-`ALTER DELETE` queries for `Join`-engine tables are implemented as [mutations](/reference/statements/alter#mutations). `DELETE` mutation reads filtered data and overwrites data of memory and disk.
+`ALTER DELETE` queries for `Join`-engine tables are implemented as [mutations](/core/reference/statements/alter#mutations). `DELETE` mutation reads filtered data and overwrites data of memory and disk.
### Limitations and settings {#join-limitations-and-settings}
@@ -67,28 +67,28 @@ When creating a table, the following settings are applied:
#### `join_use_nulls` {#join_use_nulls}
-[join_use_nulls](/reference/settings/session-settings#join_use_nulls)
+[join_use_nulls](/core/reference/settings/session-settings#join_use_nulls)
#### `max_rows_in_join` {#max_rows_in_join}
-[max_rows_in_join](/reference/settings/session-settings#max_rows_in_join)
+[max_rows_in_join](/core/reference/settings/session-settings#max_rows_in_join)
#### `max_bytes_in_join` {#max_bytes_in_join}
-[max_bytes_in_join](/reference/settings/session-settings#max_bytes_in_join)
+[max_bytes_in_join](/core/reference/settings/session-settings#max_bytes_in_join)
#### `join_overflow_mode` {#join_overflow_mode}
-[join_overflow_mode](/reference/settings/session-settings#join_overflow_mode)
+[join_overflow_mode](/core/reference/settings/session-settings#join_overflow_mode)
#### `join_any_take_last_row` {#join_any_take_last_row}
-[join_any_take_last_row](/reference/settings/session-settings#join_any_take_last_row)
+[join_any_take_last_row](/core/reference/settings/session-settings#join_any_take_last_row)
#### `join_use_nulls` {#join_use_nulls-1}
#### Persistent {#persistent}
-Disables persistency for the Join and [Set](/reference/engines/table-engines/special/set) table engines.
+Disables persistency for the Join and [Set](/core/reference/engines/table-engines/special/set) table engines.
Reduces the I/O overhead. Suitable for scenarios that pursue performance and do not require persistence.
@@ -101,7 +101,7 @@ Default value: `1`.
The `Join`-engine tables can't be used in `GLOBAL JOIN` operations.
-The `Join`-engine allows to specify [join_use_nulls](/reference/settings/session-settings#join_use_nulls) setting in the `CREATE TABLE` statement. [SELECT](/reference/statements/select) query should have the same `join_use_nulls` value.
+The `Join`-engine allows to specify [join_use_nulls](/core/reference/settings/session-settings#join_use_nulls) setting in the `CREATE TABLE` statement. [SELECT](/core/reference/statements/select) query should have the same `join_use_nulls` value.
## Usage examples {#example}
diff --git a/reference/engines/table-engines/special/keepermap.mdx b/core/reference/engines/table-engines/special/keepermap.mdx
similarity index 100%
rename from reference/engines/table-engines/special/keepermap.mdx
rename to core/reference/engines/table-engines/special/keepermap.mdx
diff --git a/reference/engines/table-engines/special/memory.mdx b/core/reference/engines/table-engines/special/memory.mdx
similarity index 98%
rename from reference/engines/table-engines/special/memory.mdx
rename to core/reference/engines/table-engines/special/memory.mdx
index f72292b5..d8dd0930 100644
--- a/reference/engines/table-engines/special/memory.mdx
+++ b/core/reference/engines/table-engines/special/memory.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
When using the Memory table engine on ClickHouse Cloud, data is not replicated across all nodes (by design). To guarantee that all queries are routed to the same node and that the Memory table engine works as expected, you can do one of the following:
- Execute all operations in the same session
-- Use a client that uses TCP or the native interface (which enables support for sticky connections) such as [clickhouse-client](/integrations/connectors/data-integrations/drivers-and-interfaces/client)
+- Use a client that uses TCP or the native interface (which enables support for sticky connections) such as [clickhouse-client](/core/concepts/features/interfaces/client)
The Memory engine stores data in RAM, in uncompressed form. Data is stored in exactly the same form as it is received when read. In other words, reading from this table is completely free.
diff --git a/reference/engines/table-engines/special/merge.mdx b/core/reference/engines/table-engines/special/merge.mdx
similarity index 92%
rename from reference/engines/table-engines/special/merge.mdx
rename to core/reference/engines/table-engines/special/merge.mdx
index af7a96dc..c39f603a 100644
--- a/reference/engines/table-engines/special/merge.mdx
+++ b/core/reference/engines/table-engines/special/merge.mdx
@@ -95,13 +95,13 @@ SELECT * FROM WatchLog;
## Virtual columns {#virtual-columns}
-- `_table` — The name of the table from which data was read. Type: [String](/reference/data-types/string).
+- `_table` — The name of the table from which data was read. Type: [String](/core/reference/data-types/string).
If you filter on `_table`, (for example `WHERE _table='xyz'`) only tables which satisfy the filter condition are read.
-- `_database` — Contains the name of the database from which data was read. Type: [String](/reference/data-types/string).
+- `_database` — Contains the name of the database from which data was read. Type: [String](/core/reference/data-types/string).
**See Also**
-- [Virtual columns](/reference/engines/table-engines#table_engines-virtual_columns)
-- [merge](/reference/functions/table-functions/merge) table function
+- [Virtual columns](/core/reference/engines/table-engines#table_engines-virtual_columns)
+- [merge](/core/reference/functions/table-functions/merge) table function
diff --git a/reference/engines/table-engines/special/null.mdx b/core/reference/engines/table-engines/special/null.mdx
similarity index 100%
rename from reference/engines/table-engines/special/null.mdx
rename to core/reference/engines/table-engines/special/null.mdx
diff --git a/reference/engines/table-engines/special/set.mdx b/core/reference/engines/table-engines/special/set.mdx
similarity index 93%
rename from reference/engines/table-engines/special/set.mdx
rename to core/reference/engines/table-engines/special/set.mdx
index 2a84dd80..a22c6a47 100644
--- a/reference/engines/table-engines/special/set.mdx
+++ b/core/reference/engines/table-engines/special/set.mdx
@@ -26,7 +26,7 @@ When creating a table, the following settings are applied:
#### Persistent {#persistent}
-Disables persistency for the Set and [Join](/reference/engines/table-engines/special/join) table engines.
+Disables persistency for the Set and [Join](/core/reference/engines/table-engines/special/join) table engines.
Reduces the I/O overhead. Suitable for scenarios that pursue performance and do not require persistence.
diff --git a/reference/engines/table-engines/special/url.mdx b/core/reference/engines/table-engines/special/url.mdx
similarity index 79%
rename from reference/engines/table-engines/special/url.mdx
rename to core/reference/engines/table-engines/special/url.mdx
index 50d36841..ef507d24 100644
--- a/reference/engines/table-engines/special/url.mdx
+++ b/core/reference/engines/table-engines/special/url.mdx
@@ -7,13 +7,13 @@ title: 'URL table engine'
doc_type: 'reference'
---
-Queries data to/from a remote HTTP/HTTPS server. This engine is similar to the [File](/reference/engines/table-engines/special/file) engine.
+Queries data to/from a remote HTTP/HTTPS server. This engine is similar to the [File](/core/reference/engines/table-engines/special/file) engine.
Syntax: `URL(URL [,Format] [,CompressionMethod])`
- The `URL` parameter must conform to the structure of a Uniform Resource Locator. The specified URL must point to a server that uses HTTP or HTTPS. This does not require any additional headers for getting a response from the server.
-- The `Format` must be one that ClickHouse can use in `SELECT` queries and, if necessary, in `INSERTs`. For the full list of supported formats, see [Formats](/reference/formats#formats-overview).
+- The `Format` must be one that ClickHouse can use in `SELECT` queries and, if necessary, in `INSERTs`. For the full list of supported formats, see [Formats](/core/reference/formats#formats-overview).
If this argument is not specified, ClickHouse detects the format automatically from the suffix of the `URL` parameter. If the suffix of `URL` parameter does not match any supported formats, it fails to create table. For example, for engine expression `URL('http://localhost/test.json')`, `JSON` format is applied.
@@ -43,7 +43,7 @@ For example, for engine expression `URL('http://localhost/test.gzip')`, `gzip` c
respectively. For processing `POST` requests, the remote server must support
[Chunked transfer encoding](https://en.wikipedia.org/wiki/Chunked_transfer_encoding).
-You can limit the maximum number of HTTP GET redirect hops using the [max_http_get_redirects](/reference/settings/session-settings#max_http_get_redirects) setting.
+You can limit the maximum number of HTTP GET redirect hops using the [max_http_get_redirects](/core/reference/settings/session-settings#max_http_get_redirects) setting.
## Example {#example}
@@ -108,7 +108,7 @@ SELECT * FROM url_engine_table
## Resolving relative URLs {#resolving-relative-urls}
-The [url_base](/reference/settings/session-settings#url_base) setting allows using a relative URL in the `URL` engine. When `url_base` is set, the URL passed to the engine is resolved against it per [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). For a full description of the resolution rules, see the [url table function docs](/reference/functions/table-functions/url#resolving-relative-urls).
+The [url_base](/core/reference/settings/session-settings#url_base) setting allows using a relative URL in the `URL` engine. When `url_base` is set, the URL passed to the engine is resolved against it per [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986). For a full description of the resolution rules, see the [url table function docs](/core/reference/functions/table-functions/url#resolving-relative-urls).
**Example**
@@ -120,6 +120,6 @@ SELECT * FROM url_engine_table;
## Storage settings {#storage-settings}
-- [engine_url_skip_empty_files](/reference/settings/session-settings#engine_url_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
-- [enable_url_encoding](/reference/settings/session-settings#enable_url_encoding) - allows to enable/disable decoding/encoding path in uri. Enabled by default.
-- [url_base](/reference/settings/session-settings#url_base) - base URL for resolving relative URLs passed to the engine.
+- [engine_url_skip_empty_files](/core/reference/settings/session-settings#engine_url_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
+- [enable_url_encoding](/core/reference/settings/session-settings#enable_url_encoding) - allows to enable/disable decoding/encoding path in uri. Enabled by default.
+- [url_base](/core/reference/settings/session-settings#url_base) - base URL for resolving relative URLs passed to the engine.
diff --git a/reference/engines/table-engines/special/view.mdx b/core/reference/engines/table-engines/special/view.mdx
similarity index 100%
rename from reference/engines/table-engines/special/view.mdx
rename to core/reference/engines/table-engines/special/view.mdx
diff --git a/reference/formats/Arrow/Arrow.mdx b/core/reference/formats/Arrow/Arrow.mdx
similarity index 50%
rename from reference/formats/Arrow/Arrow.mdx
rename to core/reference/formats/Arrow/Arrow.mdx
index 9cd164d9..3821710e 100644
--- a/reference/formats/Arrow/Arrow.mdx
+++ b/core/reference/formats/Arrow/Arrow.mdx
@@ -20,40 +20,40 @@ doc_type: 'reference'
## Data types matching {#data-types-matching}
-The table below shows the supported data types and how they correspond to ClickHouse [data types](/reference/data-types) in `INSERT` and `SELECT` queries.
+The table below shows the supported data types and how they correspond to ClickHouse [data types](/core/reference/data-types) in `INSERT` and `SELECT` queries.
| Arrow data type (`INSERT`) | ClickHouse data type | Arrow data type (`SELECT`) |
|-----------------------------------------|------------------------------------------------------------------------------------------------------------|----------------------------|
-| `BOOL` | [Bool](/reference/data-types/boolean) | `BOOL` |
-| `UINT8`, `BOOL` | [UInt8](/reference/data-types/int-uint) | `UINT8` |
-| `INT8` | [Int8](/reference/data-types/int-uint)/[Enum8](/reference/data-types/enum) | `INT8` |
-| `UINT16` | [UInt16](/reference/data-types/int-uint) | `UINT16` |
-| `INT16` | [Int16](/reference/data-types/int-uint)/[Enum16](/reference/data-types/enum) | `INT16` |
-| `UINT32` | [UInt32](/reference/data-types/int-uint) | `UINT32` |
-| `INT32` | [Int32](/reference/data-types/int-uint) | `INT32` |
-| `UINT64` | [UInt64](/reference/data-types/int-uint) | `UINT64` |
-| `INT64` | [Int64](/reference/data-types/int-uint) | `INT64` |
-| `FLOAT`, `HALF_FLOAT` | [Float32](/reference/data-types/float) | `FLOAT32` |
-| `DOUBLE` | [Float64](/reference/data-types/float) | `FLOAT64` |
-| `DATE32` | [Date32](/reference/data-types/date32) | `UINT16` |
-| `DATE64` | [DateTime](/reference/data-types/datetime) | `UINT32` |
-| `TIMESTAMP`, `TIME32`, `TIME64` | [DateTime64](/reference/data-types/datetime64) | `TIMESTAMP` |
-| `STRING`, `BINARY` | [String](/reference/data-types/string) | `BINARY` |
-| `STRING`, `BINARY`, `FIXED_SIZE_BINARY` | [FixedString](/reference/data-types/fixedstring) | `FIXED_SIZE_BINARY` |
-| `DECIMAL` | [Decimal](/reference/data-types/decimal) | `DECIMAL` |
-| `DECIMAL256` | [Decimal256](/reference/data-types/decimal) | `DECIMAL256` |
-| `LIST` | [Array](/reference/data-types/array) | `LIST` |
-| `STRUCT` | [Tuple](/reference/data-types/tuple) | `STRUCT` |
-| `MAP` | [Map](/reference/data-types/map) | `MAP` |
-| `UINT32` | [IPv4](/reference/data-types/ipv4) | `UINT32` |
-| `FIXED_SIZE_BINARY`, `BINARY` | [IPv6](/reference/data-types/ipv6) | `FIXED_SIZE_BINARY` |
-| `FIXED_SIZE_BINARY`, `BINARY` | [Int128/UInt128/Int256/UInt256](/reference/data-types/int-uint) | `FIXED_SIZE_BINARY` |
-| `DURATION` | [Interval](/reference/data-types/special-data-types/interval) (Nanosecond/Microsecond/Millisecond/Second) | `DURATION` |
-| `INT64` | [Interval](/reference/data-types/special-data-types/interval) (Minute/Hour/Day/Week/Month/Quarter/Year) | `INT64` |
+| `BOOL` | [Bool](/core/reference/data-types/boolean) | `BOOL` |
+| `UINT8`, `BOOL` | [UInt8](/core/reference/data-types/int-uint) | `UINT8` |
+| `INT8` | [Int8](/core/reference/data-types/int-uint)/[Enum8](/core/reference/data-types/enum) | `INT8` |
+| `UINT16` | [UInt16](/core/reference/data-types/int-uint) | `UINT16` |
+| `INT16` | [Int16](/core/reference/data-types/int-uint)/[Enum16](/core/reference/data-types/enum) | `INT16` |
+| `UINT32` | [UInt32](/core/reference/data-types/int-uint) | `UINT32` |
+| `INT32` | [Int32](/core/reference/data-types/int-uint) | `INT32` |
+| `UINT64` | [UInt64](/core/reference/data-types/int-uint) | `UINT64` |
+| `INT64` | [Int64](/core/reference/data-types/int-uint) | `INT64` |
+| `FLOAT`, `HALF_FLOAT` | [Float32](/core/reference/data-types/float) | `FLOAT32` |
+| `DOUBLE` | [Float64](/core/reference/data-types/float) | `FLOAT64` |
+| `DATE32` | [Date32](/core/reference/data-types/date32) | `UINT16` |
+| `DATE64` | [DateTime](/core/reference/data-types/datetime) | `UINT32` |
+| `TIMESTAMP`, `TIME32`, `TIME64` | [DateTime64](/core/reference/data-types/datetime64) | `TIMESTAMP` |
+| `STRING`, `BINARY` | [String](/core/reference/data-types/string) | `BINARY` |
+| `STRING`, `BINARY`, `FIXED_SIZE_BINARY` | [FixedString](/core/reference/data-types/fixedstring) | `FIXED_SIZE_BINARY` |
+| `DECIMAL` | [Decimal](/core/reference/data-types/decimal) | `DECIMAL` |
+| `DECIMAL256` | [Decimal256](/core/reference/data-types/decimal) | `DECIMAL256` |
+| `LIST` | [Array](/core/reference/data-types/array) | `LIST` |
+| `STRUCT` | [Tuple](/core/reference/data-types/tuple) | `STRUCT` |
+| `MAP` | [Map](/core/reference/data-types/map) | `MAP` |
+| `UINT32` | [IPv4](/core/reference/data-types/ipv4) | `UINT32` |
+| `FIXED_SIZE_BINARY`, `BINARY` | [IPv6](/core/reference/data-types/ipv6) | `FIXED_SIZE_BINARY` |
+| `FIXED_SIZE_BINARY`, `BINARY` | [Int128/UInt128/Int256/UInt256](/core/reference/data-types/int-uint) | `FIXED_SIZE_BINARY` |
+| `DURATION` | [Interval](/core/reference/data-types/special-data-types/interval) (Nanosecond/Microsecond/Millisecond/Second) | `DURATION` |
+| `INT64` | [Interval](/core/reference/data-types/special-data-types/interval) (Minute/Hour/Day/Week/Month/Quarter/Year) | `INT64` |
Arrays can be nested and can have a value of the `Nullable` type as an argument. `Tuple` and `Map` types can also be nested.
-The `DICTIONARY` type is supported for `INSERT` queries, and for `SELECT` queries there is an [`output_format_arrow_low_cardinality_as_dictionary`](/reference/settings/formats#output_format_arrow_low_cardinality_as_dictionary) setting that allows to output [LowCardinality](/reference/data-types/lowcardinality) type as a `DICTIONARY` type. Note that there might be unused values in `LowCardinality` dictionary, which can lead to unused values in Arrow `DICTIONARY` during output.
+The `DICTIONARY` type is supported for `INSERT` queries, and for `SELECT` queries there is an [`output_format_arrow_low_cardinality_as_dictionary`](/core/reference/settings/formats#output_format_arrow_low_cardinality_as_dictionary) setting that allows to output [LowCardinality](/core/reference/data-types/lowcardinality) type as a `DICTIONARY` type. Note that there might be unused values in `LowCardinality` dictionary, which can lead to unused values in Arrow `DICTIONARY` during output.
Unsupported Arrow data types:
- `FIXED_SIZE_BINARY`
@@ -61,7 +61,7 @@ Unsupported Arrow data types:
- `UUID`
- `ENUM`.
-The data types of ClickHouse table columns do not have to match the corresponding Arrow data fields. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/reference/functions/regular-functions/type-conversion-functions#CAST) the data to the data type set for the ClickHouse table column.
+The data types of ClickHouse table columns do not have to match the corresponding Arrow data fields. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/core/reference/functions/regular-functions/type-conversion-functions#CAST) the data to the data type set for the ClickHouse table column.
## Example usage {#example-usage}
diff --git a/reference/formats/Arrow/ArrowStream.mdx b/core/reference/formats/Arrow/ArrowStream.mdx
similarity index 100%
rename from reference/formats/Arrow/ArrowStream.mdx
rename to core/reference/formats/Arrow/ArrowStream.mdx
diff --git a/reference/formats/Avro/Avro.mdx b/core/reference/formats/Avro/Avro.mdx
similarity index 88%
rename from reference/formats/Avro/Avro.mdx
rename to core/reference/formats/Avro/Avro.mdx
index d7740180..87430684 100644
--- a/reference/formats/Avro/Avro.mdx
+++ b/core/reference/formats/Avro/Avro.mdx
@@ -17,7 +17,7 @@ import DataTypeMapping from '/snippets/data-types-matching.mdx';
## Description {#description}
-[Apache Avro](https://avro.apache.org/) is a row-oriented serialization format that uses binary encoding for efficient data processing. The `Avro` format supports reading and writing [Avro data files](https://avro.apache.org/docs/++version++/specification/#object-container-files). This format expects self-describing messages with an embedded schema. If you're using Avro with a schema registry, refer to the [`AvroConfluent`](/reference/formats/Avro/AvroConfluent) format.
+[Apache Avro](https://avro.apache.org/) is a row-oriented serialization format that uses binary encoding for efficient data processing. The `Avro` format supports reading and writing [Avro data files](https://avro.apache.org/docs/++version++/specification/#object-container-files). This format expects self-describing messages with an embedded schema. If you're using Avro with a schema registry, refer to the [`AvroConfluent`](/core/reference/formats/Avro/AvroConfluent) format.
## Data type mapping {#data-type-mapping}
@@ -49,9 +49,9 @@ The root schema of the ingested Avro file must be of type `record`.
To find the correspondence between table columns and fields of Avro schema, ClickHouse compares their names.
This comparison is case-sensitive and unused fields are skipped.
-Data types of ClickHouse table columns can differ from the corresponding fields of the Avro data inserted. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/reference/functions/regular-functions/type-conversion-functions#CAST) the data to the corresponding column type.
+Data types of ClickHouse table columns can differ from the corresponding fields of the Avro data inserted. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/core/reference/functions/regular-functions/type-conversion-functions#CAST) the data to the corresponding column type.
-While importing data, when a field is not found in the schema and setting [`input_format_avro_allow_missing_fields`](/reference/settings/formats#input_format_avro_allow_missing_fields) is enabled, the default value will be used instead of throwing an error.
+While importing data, when a field is not found in the schema and setting [`input_format_avro_allow_missing_fields`](/core/reference/settings/formats#input_format_avro_allow_missing_fields) is enabled, the default value will be used instead of throwing an error.
### Writing Avro data {#writing-avro-data}
@@ -66,11 +66,11 @@ Column names must:
- Start with `[A-Za-z_]`
- Be followed by only `[A-Za-z0-9_]`
-The output compression and sync interval for Avro files can be configured using the [`output_format_avro_codec`](/reference/settings/formats#output_format_avro_codec) and [`output_format_avro_sync_interval`](/reference/settings/formats#output_format_avro_sync_interval) settings, respectively.
+The output compression and sync interval for Avro files can be configured using the [`output_format_avro_codec`](/core/reference/settings/formats#output_format_avro_codec) and [`output_format_avro_sync_interval`](/core/reference/settings/formats#output_format_avro_sync_interval) settings, respectively.
### Inferring the Avro schema {#inferring-the-avro-schema}
-Using the ClickHouse [`DESCRIBE`](/reference/statements/describe-table) function, you can quickly view the inferred format of an Avro file like the following example.
+Using the ClickHouse [`DESCRIBE`](/core/reference/statements/describe-table) function, you can quickly view the inferred format of an Avro file like the following example.
This example includes the URL of a publicly accessible Avro file in the ClickHouse S3 public bucket:
```sql
diff --git a/reference/formats/Avro/AvroConfluent.mdx b/core/reference/formats/Avro/AvroConfluent.mdx
similarity index 92%
rename from reference/formats/Avro/AvroConfluent.mdx
rename to core/reference/formats/Avro/AvroConfluent.mdx
index aa77ebb3..628bd34d 100644
--- a/reference/formats/Avro/AvroConfluent.mdx
+++ b/core/reference/formats/Avro/AvroConfluent.mdx
@@ -45,7 +45,7 @@ Each message uses the Confluent wire format: a magic byte (`0x00`) followed by a
### Reading from Kafka {#reading-from-kafka}
-To read an Avro-encoded Kafka topic using the [Kafka table engine](/reference/engines/table-engines/integrations/kafka), use the `format_avro_schema_registry_url` setting to provide the URL of the schema registry.
+To read an Avro-encoded Kafka topic using the [Kafka table engine](/core/reference/engines/table-engines/integrations/kafka), use the `format_avro_schema_registry_url` setting to provide the URL of the schema registry.
```sql
CREATE TABLE topic1_stream
@@ -106,14 +106,14 @@ format_avro_schema_registry_url = 'https://:@schema-registry
## Troubleshooting {#troubleshooting}
-To monitor ingestion progress and debug errors with the Kafka consumer, you can query the [`system.kafka_consumers` system table](/reference/system-tables/kafka_consumers). If your deployment has multiple replicas (e.g., ClickHouse Cloud), you must use the [`clusterAllReplicas`](/reference/functions/table-functions/cluster) table function.
+To monitor ingestion progress and debug errors with the Kafka consumer, you can query the [`system.kafka_consumers` system table](/core/reference/system-tables/kafka_consumers). If your deployment has multiple replicas (e.g., ClickHouse Cloud), you must use the [`clusterAllReplicas`](/core/reference/functions/table-functions/cluster) table function.
```sql
SELECT * FROM clusterAllReplicas('default',system.kafka_consumers)
ORDER BY assignments.partition_id ASC;
```
-If you run into schema resolution issues, you can use [kafkacat](https://github.com/edenhill/kafkacat) with [clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local) to troubleshoot:
+If you run into schema resolution issues, you can use [kafkacat](https://github.com/edenhill/kafkacat) with [clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local) to troubleshoot:
```bash
$ kafkacat -b kafka-broker -C -t topic1 -o beginning -f '%s' -c 3 | clickhouse-local --input-format AvroConfluent --format_avro_schema_registry_url 'http://schema-registry' -S "field1 Int64, field2 String" -q 'select * from table'
diff --git a/core/reference/formats/Avro/_snippets/data-types-matching.mdx b/core/reference/formats/Avro/_snippets/data-types-matching.mdx
new file mode 100644
index 00000000..17e5fafd
--- /dev/null
+++ b/core/reference/formats/Avro/_snippets/data-types-matching.mdx
@@ -0,0 +1,39 @@
+The table below shows all data types supported by the Apache Avro format, and their corresponding ClickHouse [data types](/core/reference/data-types) in `INSERT` and `SELECT` queries.
+
+| Avro data type `INSERT` | ClickHouse data type | Avro data type `SELECT` |
+|---------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|---------------------------------|
+| `boolean`, `int`, `long`, `float`, `double` | [Int(8\16\32)](/core/reference/data-types/int-uint), [UInt(8\16\32)](/core/reference/data-types/int-uint) | `int` |
+| `boolean`, `int`, `long`, `float`, `double` | [Int64](/core/reference/data-types/int-uint), [UInt64](/core/reference/data-types/int-uint) | `long` |
+| `boolean`, `int`, `long`, `float`, `double` | [Float32](/core/reference/data-types/float) | `float` |
+| `boolean`, `int`, `long`, `float`, `double` | [Float64](/core/reference/data-types/float) | `double` |
+| `bytes`, `string`, `fixed`, `enum` | [String](/core/reference/data-types/string) | `bytes` or `string` \* |
+| `bytes`, `string`, `fixed` | [FixedString(N)](/core/reference/data-types/fixedstring) | `fixed(N)` |
+| `enum` | [Enum(8\16)](/core/reference/data-types/enum) | `enum` |
+| `array(T)` | [Array(T)](/core/reference/data-types/array) | `array(T)` |
+| `map(V, K)` | [Map(V, K)](/core/reference/data-types/map) | `map(string, K)` |
+| `union(null, T)`, `union(T, null)` | [Nullable(T)](/core/reference/data-types/date) | `union(null, T)` |
+| `union(T1, T2, …)` \** | [Variant(T1, T2, …)](/core/reference/data-types/variant) | `union(T1, T2, …)` \** |
+| `null` | [Nullable(Nothing)](/core/reference/data-types/special-data-types/nothing) | `null` |
+| `int (date)` \**\* | [Date](/core/reference/data-types/date), [Date32](/core/reference/data-types/date32) | `int (date)` \**\* |
+| `long (timestamp-millis)` \**\* | [DateTime64(3)](/core/reference/data-types/datetime) | `long (timestamp-millis)` \**\* |
+| `long (timestamp-micros)` \**\* | [DateTime64(6)](/core/reference/data-types/datetime) | `long (timestamp-micros)` \**\* |
+| `bytes (decimal)` \**\* | [DateTime64(N)](/core/reference/data-types/datetime) | `bytes (decimal)` \**\* |
+| `int` | [IPv4](/core/reference/data-types/ipv4) | `int` |
+| `fixed(16)` | [IPv6](/core/reference/data-types/ipv6) | `fixed(16)` |
+| `bytes (decimal)` \**\* | [Decimal(P, S)](/core/reference/data-types/decimal) | `bytes (decimal)` \**\* |
+| `string (uuid)` \**\* | [UUID](/core/reference/data-types/uuid) | `string (uuid)` \**\* |
+| `fixed(16)` | [Int128/UInt128](/core/reference/data-types/int-uint) | `fixed(16)` |
+| `fixed(32)` | [Int256/UInt256](/core/reference/data-types/int-uint) | `fixed(32)` |
+| `record` | [Tuple](/core/reference/data-types/tuple) | `record` |
+
+\* `bytes` is default, controlled by setting [`output_format_avro_string_column_pattern`](/core/reference/settings/formats#output_format_avro_string_column_pattern)
+
+\** The [Variant type](/core/reference/data-types/variant) implicitly accepts `null` as a field value, so for example the Avro `union(T1, T2, null)` will be converted to `Variant(T1, T2)`.
+As a result, when producing Avro from ClickHouse, we have to always include the `null` type to the Avro `union` type set as we don't know if any value is actually `null` during the schema inference.
+
+\**\* [Avro logical types](https://avro.apache.org/docs/current/spec.html#Logical+Types)
+
+Unsupported Avro logical data types:
+- `time-millis`
+- `time-micros`
+- `duration`
\ No newline at end of file
diff --git a/reference/formats/BSONEachRow.mdx b/core/reference/formats/BSONEachRow.mdx
similarity index 50%
rename from reference/formats/BSONEachRow.mdx
rename to core/reference/formats/BSONEachRow.mdx
index c4169fe7..ea72a030 100644
--- a/reference/formats/BSONEachRow.mdx
+++ b/core/reference/formats/BSONEachRow.mdx
@@ -24,54 +24,54 @@ For output it uses the following correspondence between ClickHouse types and BSO
| ClickHouse type | BSON Type |
|-----------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------|
-| [Bool](/reference/data-types/boolean) | `\x08` boolean |
-| [Int8/UInt8](/reference/data-types/int-uint)/[Enum8](/reference/data-types/enum) | `\x10` int32 |
-| [Int16/UInt16](/reference/data-types/int-uint)/[Enum16](/reference/data-types/enum) | `\x10` int32 |
-| [Int32](/reference/data-types/int-uint) | `\x10` int32 |
-| [UInt32](/reference/data-types/int-uint) | `\x12` int64 |
-| [Int64/UInt64](/reference/data-types/int-uint) | `\x12` int64 |
-| [Float32/Float64](/reference/data-types/float) | `\x01` double |
-| [Date](/reference/data-types/date)/[Date32](/reference/data-types/date32) | `\x10` int32 |
-| [DateTime](/reference/data-types/datetime) | `\x12` int64 |
-| [DateTime64](/reference/data-types/datetime64) | `\x09` datetime |
-| [Decimal32](/reference/data-types/decimal) | `\x10` int32 |
-| [Decimal64](/reference/data-types/decimal) | `\x12` int64 |
-| [Decimal128](/reference/data-types/decimal) | `\x05` binary, `\x00` binary subtype, size = 16 |
-| [Decimal256](/reference/data-types/decimal) | `\x05` binary, `\x00` binary subtype, size = 32 |
-| [Int128/UInt128](/reference/data-types/int-uint) | `\x05` binary, `\x00` binary subtype, size = 16 |
-| [Int256/UInt256](/reference/data-types/int-uint) | `\x05` binary, `\x00` binary subtype, size = 32 |
-| [String](/reference/data-types/string)/[FixedString](/reference/data-types/fixedstring) | `\x05` binary, `\x00` binary subtype or \x02 string if setting output_format_bson_string_as_string is enabled |
-| [UUID](/reference/data-types/uuid) | `\x05` binary, `\x04` uuid subtype, size = 16 |
-| [Array](/reference/data-types/array) | `\x04` array |
-| [Tuple](/reference/data-types/tuple) | `\x04` array |
-| [Named Tuple](/reference/data-types/tuple) | `\x03` document |
-| [Map](/reference/data-types/map) | `\x03` document |
-| [IPv4](/reference/data-types/ipv4) | `\x10` int32 |
-| [IPv6](/reference/data-types/ipv6) | `\x05` binary, `\x00` binary subtype |
+| [Bool](/core/reference/data-types/boolean) | `\x08` boolean |
+| [Int8/UInt8](/core/reference/data-types/int-uint)/[Enum8](/core/reference/data-types/enum) | `\x10` int32 |
+| [Int16/UInt16](/core/reference/data-types/int-uint)/[Enum16](/core/reference/data-types/enum) | `\x10` int32 |
+| [Int32](/core/reference/data-types/int-uint) | `\x10` int32 |
+| [UInt32](/core/reference/data-types/int-uint) | `\x12` int64 |
+| [Int64/UInt64](/core/reference/data-types/int-uint) | `\x12` int64 |
+| [Float32/Float64](/core/reference/data-types/float) | `\x01` double |
+| [Date](/core/reference/data-types/date)/[Date32](/core/reference/data-types/date32) | `\x10` int32 |
+| [DateTime](/core/reference/data-types/datetime) | `\x12` int64 |
+| [DateTime64](/core/reference/data-types/datetime64) | `\x09` datetime |
+| [Decimal32](/core/reference/data-types/decimal) | `\x10` int32 |
+| [Decimal64](/core/reference/data-types/decimal) | `\x12` int64 |
+| [Decimal128](/core/reference/data-types/decimal) | `\x05` binary, `\x00` binary subtype, size = 16 |
+| [Decimal256](/core/reference/data-types/decimal) | `\x05` binary, `\x00` binary subtype, size = 32 |
+| [Int128/UInt128](/core/reference/data-types/int-uint) | `\x05` binary, `\x00` binary subtype, size = 16 |
+| [Int256/UInt256](/core/reference/data-types/int-uint) | `\x05` binary, `\x00` binary subtype, size = 32 |
+| [String](/core/reference/data-types/string)/[FixedString](/core/reference/data-types/fixedstring) | `\x05` binary, `\x00` binary subtype or \x02 string if setting output_format_bson_string_as_string is enabled |
+| [UUID](/core/reference/data-types/uuid) | `\x05` binary, `\x04` uuid subtype, size = 16 |
+| [Array](/core/reference/data-types/array) | `\x04` array |
+| [Tuple](/core/reference/data-types/tuple) | `\x04` array |
+| [Named Tuple](/core/reference/data-types/tuple) | `\x03` document |
+| [Map](/core/reference/data-types/map) | `\x03` document |
+| [IPv4](/core/reference/data-types/ipv4) | `\x10` int32 |
+| [IPv6](/core/reference/data-types/ipv6) | `\x05` binary, `\x00` binary subtype |
For input it uses the following correspondence between BSON types and ClickHouse types:
| BSON Type | ClickHouse Type |
|------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `\x01` double | [Float32/Float64](/reference/data-types/float) |
-| `\x02` string | [String](/reference/data-types/string)/[FixedString](/reference/data-types/fixedstring) |
-| `\x03` document | [Map](/reference/data-types/map)/[Named Tuple](/reference/data-types/tuple) |
-| `\x04` array | [Array](/reference/data-types/array)/[Tuple](/reference/data-types/tuple) |
-| `\x05` binary, `\x00` binary subtype | [String](/reference/data-types/string)/[FixedString](/reference/data-types/fixedstring)/[IPv6](/reference/data-types/ipv6) |
-| `\x05` binary, `\x02` old binary subtype | [String](/reference/data-types/string)/[FixedString](/reference/data-types/fixedstring) |
-| `\x05` binary, `\x03` old uuid subtype | [UUID](/reference/data-types/uuid) |
-| `\x05` binary, `\x04` uuid subtype | [UUID](/reference/data-types/uuid) |
-| `\x07` ObjectId | [String](/reference/data-types/string)/[FixedString](/reference/data-types/fixedstring) |
-| `\x08` boolean | [Bool](/reference/data-types/boolean) |
-| `\x09` datetime | [DateTime64](/reference/data-types/datetime64) |
-| `\x0A` null value | [NULL](/reference/data-types/nullable) |
-| `\x0D` JavaScript code | [String](/reference/data-types/string)/[FixedString](/reference/data-types/fixedstring) |
-| `\x0E` symbol | [String](/reference/data-types/string)/[FixedString](/reference/data-types/fixedstring) |
-| `\x10` int32 | [Int32/UInt32](/reference/data-types/int-uint)/[Decimal32](/reference/data-types/decimal)/[IPv4](/reference/data-types/ipv4)/[Enum8/Enum16](/reference/data-types/enum) |
-| `\x12` int64 | [Int64/UInt64](/reference/data-types/int-uint)/[Decimal64](/reference/data-types/decimal)/[DateTime64](/reference/data-types/datetime64) |
+| `\x01` double | [Float32/Float64](/core/reference/data-types/float) |
+| `\x02` string | [String](/core/reference/data-types/string)/[FixedString](/core/reference/data-types/fixedstring) |
+| `\x03` document | [Map](/core/reference/data-types/map)/[Named Tuple](/core/reference/data-types/tuple) |
+| `\x04` array | [Array](/core/reference/data-types/array)/[Tuple](/core/reference/data-types/tuple) |
+| `\x05` binary, `\x00` binary subtype | [String](/core/reference/data-types/string)/[FixedString](/core/reference/data-types/fixedstring)/[IPv6](/core/reference/data-types/ipv6) |
+| `\x05` binary, `\x02` old binary subtype | [String](/core/reference/data-types/string)/[FixedString](/core/reference/data-types/fixedstring) |
+| `\x05` binary, `\x03` old uuid subtype | [UUID](/core/reference/data-types/uuid) |
+| `\x05` binary, `\x04` uuid subtype | [UUID](/core/reference/data-types/uuid) |
+| `\x07` ObjectId | [String](/core/reference/data-types/string)/[FixedString](/core/reference/data-types/fixedstring) |
+| `\x08` boolean | [Bool](/core/reference/data-types/boolean) |
+| `\x09` datetime | [DateTime64](/core/reference/data-types/datetime64) |
+| `\x0A` null value | [NULL](/core/reference/data-types/nullable) |
+| `\x0D` JavaScript code | [String](/core/reference/data-types/string)/[FixedString](/core/reference/data-types/fixedstring) |
+| `\x0E` symbol | [String](/core/reference/data-types/string)/[FixedString](/core/reference/data-types/fixedstring) |
+| `\x10` int32 | [Int32/UInt32](/core/reference/data-types/int-uint)/[Decimal32](/core/reference/data-types/decimal)/[IPv4](/core/reference/data-types/ipv4)/[Enum8/Enum16](/core/reference/data-types/enum) |
+| `\x12` int64 | [Int64/UInt64](/core/reference/data-types/int-uint)/[Decimal64](/core/reference/data-types/decimal)/[DateTime64](/core/reference/data-types/datetime64) |
Other BSON types are not supported. Additionally, it performs conversion between different integer types.
-For example, it is possible to insert a BSON `int32` value into ClickHouse as [`UInt8`](/reference/data-types/int-uint).
+For example, it is possible to insert a BSON `int32` value into ClickHouse as [`UInt8`](/core/reference/data-types/int-uint).
Big integers and decimals such as `Int128`/`UInt128`/`Int256`/`UInt256`/`Decimal128`/`Decimal256` can be parsed from a BSON Binary value with the `\x00` binary subtype.
In this case, the format will validate that the size of the binary data equals the size of the expected value.
@@ -132,5 +132,5 @@ BSON is a binary format that does not display in a human-readable form on the te
| Setting | Description | Default |
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------|----------|
-| [`output_format_bson_string_as_string`](/reference/settings/formats#output_format_bson_string_as_string) | Use BSON String type instead of Binary for String columns. | `false` |
-| [`input_format_bson_skip_fields_with_unsupported_types_in_schema_inference`](/reference/settings/formats#input_format_bson_skip_fields_with_unsupported_types_in_schema_inference) | Allow skipping columns with unsupported types while schema inference for format BSONEachRow. | `false` |
\ No newline at end of file
+| [`output_format_bson_string_as_string`](/core/reference/settings/formats#output_format_bson_string_as_string) | Use BSON String type instead of Binary for String columns. | `false` |
+| [`input_format_bson_skip_fields_with_unsupported_types_in_schema_inference`](/core/reference/settings/formats#input_format_bson_skip_fields_with_unsupported_types_in_schema_inference) | Allow skipping columns with unsupported types while schema inference for format BSONEachRow. | `false` |
\ No newline at end of file
diff --git a/reference/formats/Buffers.mdx b/core/reference/formats/Buffers.mdx
similarity index 82%
rename from reference/formats/Buffers.mdx
rename to core/reference/formats/Buffers.mdx
index 54b8392d..2ecbfd03 100644
--- a/reference/formats/Buffers.mdx
+++ b/core/reference/formats/Buffers.mdx
@@ -17,16 +17,16 @@ doc_type: 'reference'
`Buffers` is a very simple binary format for **ephemeral** data exchange, where both the consumer and producer already know the schema and column order.
-Unlike [Native](/reference/formats/Native), it does **not** store column names, column types, or any extra metadata.
+Unlike [Native](/core/reference/formats/Native), it does **not** store column names, column types, or any extra metadata.
-In this format, data is written and read by [blocks](/resources/contribute/architecture#block) in a binary format. Buffers uses the same per-column binary representation as the [Native](/reference/formats/Native) format and respects the same Native format settings.
+In this format, data is written and read by [blocks](/resources/develop-contribute/introduction/architecture#block) in a binary format. Buffers uses the same per-column binary representation as the [Native](/core/reference/formats/Native) format and respects the same Native format settings.
For each block, the following sequence is written:
1. Number of columns (UInt64, little-endian).
2. Number of rows (UInt64, little-endian).
3. For each column:
- Total byte size of the serialized column data (UInt64, little-endian).
-- Serialized column data bytes, exactly as in the [Native](/reference/formats/Native) format.
+- Serialized column data bytes, exactly as in the [Native](/core/reference/formats/Native) format.
## Example usage {#example-usage}
diff --git a/core/reference/formats/CSV/CSV.mdx b/core/reference/formats/CSV/CSV.mdx
new file mode 100644
index 00000000..78914938
--- /dev/null
+++ b/core/reference/formats/CSV/CSV.mdx
@@ -0,0 +1,71 @@
+---
+alias: []
+description: 'Documentation for the CSV format'
+input_format: true
+keywords: ['CSV']
+output_format: true
+slug: /interfaces/formats/CSV
+title: 'CSV'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Comma Separated Values format ([RFC](https://tools.ietf.org/html/rfc4180)).
+When formatting, rows are enclosed in double quotes. A double quote inside a string is output as two double quotes in a row.
+There are no other rules for escaping characters.
+
+- Date and date-time are enclosed in double quotes.
+- Numbers are output without quotes.
+- Values are separated by a delimiter character, which is `,` by default. The delimiter character is defined in the setting [format_csv_delimiter](/core/reference/settings/formats#format_csv_delimiter).
+- Rows are separated using the Unix line feed (LF).
+- Arrays are serialized in CSV as follows:
+ - first, the array is serialized to a string as in TabSeparated format
+ - The resulting string is output to CSV in double quotes.
+- Tuples in CSV format are serialized as separate columns (that is, their nesting in the tuple is lost).
+
+```bash
+$ clickhouse-client --format_csv_delimiter="|" --query="INSERT INTO test.csv FORMAT CSV" < data.csv
+```
+
+
+By default, the delimiter is `,`
+See the [format_csv_delimiter](/core/reference/settings/formats#format_csv_delimiter) setting for more information.
+
+
+When parsing, all values can be parsed either with or without quotes. Both double and single quotes are supported.
+
+Rows can also be arranged without quotes. In this case, they are parsed up to the delimiter character or line feed (CR or LF).
+However, in violation of the RFC, when parsing rows without quotes, the leading and trailing spaces and tabs are ignored.
+The line feed supports: Unix (LF), Windows (CR LF) and Mac OS Classic (CR LF) types.
+
+`NULL` is formatted according to setting [format_csv_null_representation](/core/reference/settings/formats#format_csv_null_representation) (the default value is `\N`).
+
+In the input data, `ENUM` values can be represented as names or as ids.
+First, we try to match the input value to the ENUM name.
+If we fail and the input value is a number, we try to match this number to the ENUM id.
+If input data contains only ENUM ids, it's recommended to enable the setting [input_format_csv_enum_as_number](/core/reference/settings/formats#input_format_csv_enum_as_number) to optimize `ENUM` parsing.
+
+## Example usage {#example-usage}
+
+## Format settings {#format-settings}
+
+| Setting | Description | Default | Notes |
+|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------|---------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| [format_csv_delimiter](/core/reference/settings/formats#format_csv_delimiter) | the character to be considered as a delimiter in CSV data. | `,` | |
+| [format_csv_allow_single_quotes](/core/reference/settings/formats#format_csv_allow_single_quotes) | allow strings in single quotes. | `true` | |
+| [format_csv_allow_double_quotes](/core/reference/settings/formats#format_csv_allow_double_quotes) | allow strings in double quotes. | `true` | |
+| [format_csv_null_representation](/core/reference/settings/formats#format_tsv_null_representation) | custom NULL representation in CSV format. | `\N` | |
+| [input_format_csv_empty_as_default](/core/reference/settings/formats#input_format_csv_empty_as_default) | treat empty fields in CSV input as default values. | `true` | For complex default expressions, [input_format_defaults_for_omitted_fields](/core/reference/settings/formats#input_format_defaults_for_omitted_fields) must be enabled too. |
+| [input_format_csv_enum_as_number](/core/reference/settings/formats#input_format_csv_enum_as_number) | treat inserted enum values in CSV formats as enum indices. | `false` | |
+| [input_format_csv_use_best_effort_in_schema_inference](/core/reference/settings/formats#input_format_csv_use_best_effort_in_schema_inference) | use some tweaks and heuristics to infer schema in CSV format. If disabled, all fields will be inferred as Strings. | `true` | |
+| [input_format_csv_arrays_as_nested_csv](/core/reference/settings/formats#input_format_csv_arrays_as_nested_csv) | when reading Array from CSV, expect that its elements were serialized in nested CSV and then put into string. | `false` | |
+| [output_format_csv_crlf_end_of_line](/core/reference/settings/formats#output_format_csv_crlf_end_of_line) | if it is set to true, end of line in CSV output format will be `\r\n` instead of `\n`. | `false` | |
+| [input_format_csv_skip_first_lines](/core/reference/settings/formats#input_format_csv_skip_first_lines) | skip the specified number of lines at the beginning of data. | `0` | |
+| [input_format_csv_detect_header](/core/reference/settings/formats#input_format_csv_detect_header) | automatically detect header with names and types in CSV format. | `true` | |
+| [input_format_csv_skip_trailing_empty_lines](/core/reference/settings/formats#input_format_csv_skip_trailing_empty_lines) | skip trailing empty lines at the end of data. | `false` | |
+| [input_format_csv_trim_whitespaces](/core/reference/settings/formats#input_format_csv_trim_whitespaces) | trim spaces and tabs in non-quoted CSV strings. | `true` | |
+| [input_format_csv_allow_whitespace_or_tab_as_delimiter](/core/reference/settings/formats#input_format_csv_allow_whitespace_or_tab_as_delimiter) | Allow to use whitespace or tab as field delimiter in CSV strings. | `false` | |
+| [input_format_csv_allow_variable_number_of_columns](/core/reference/settings/formats#input_format_csv_allow_variable_number_of_columns) | allow variable number of columns in CSV format, ignore extra columns and use default values on missing columns. | `false` | |
+| [input_format_csv_use_default_on_bad_values](/core/reference/settings/formats#input_format_csv_use_default_on_bad_values) | Allow to set default value to column when CSV field deserialization failed on bad value. | `false` | |
+| [input_format_csv_try_infer_numbers_from_strings](/core/reference/settings/formats#input_format_csv_try_infer_numbers_from_strings) | Try to infer numbers from string fields while schema inference. | `false` | |
\ No newline at end of file
diff --git a/reference/formats/CSV/CSVWithNames.mdx b/core/reference/formats/CSV/CSVWithNames.mdx
similarity index 91%
rename from reference/formats/CSV/CSVWithNames.mdx
rename to core/reference/formats/CSV/CSVWithNames.mdx
index 69999a6d..754d2785 100644
--- a/reference/formats/CSV/CSVWithNames.mdx
+++ b/core/reference/formats/CSV/CSVWithNames.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Also prints the header row with column names, similar to [TabSeparatedWithNames](/reference/formats/TabSeparated/TabSeparatedWithNames).
+Also prints the header row with column names, similar to [TabSeparatedWithNames](/core/reference/formats/TabSeparated/TabSeparatedWithNames).
## Example usage {#example-usage}
@@ -106,7 +106,7 @@ The output will be a CSV with a single header row:
## Format settings {#format-settings}
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
Otherwise, the first row will be skipped.
diff --git a/reference/formats/CSV/CSVWithNamesAndTypes.mdx b/core/reference/formats/CSV/CSVWithNamesAndTypes.mdx
similarity index 88%
rename from reference/formats/CSV/CSVWithNamesAndTypes.mdx
rename to core/reference/formats/CSV/CSVWithNamesAndTypes.mdx
index 81495fc8..95d1d76f 100644
--- a/reference/formats/CSV/CSVWithNamesAndTypes.mdx
+++ b/core/reference/formats/CSV/CSVWithNamesAndTypes.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Also prints two header rows with column names and types, similar to [TabSeparatedWithNamesAndTypes](/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes).
+Also prints two header rows with column names and types, similar to [TabSeparatedWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes).
## Example usage {#example-usage}
@@ -108,12 +108,12 @@ The output will be a CSV with a two header rows for column names and types:
## Format settings {#format-settings}
-If setting [input_format_with_names_use_header](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+If setting [input_format_with_names_use_header](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
Otherwise, the first row will be skipped.
-If setting [input_format_with_types_use_header](/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
+If setting [input_format_with_types_use_header](/core/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
the types from input data will be compared with the types of the corresponding columns from the table. Otherwise, the second row will be skipped.
\ No newline at end of file
diff --git a/reference/formats/CapnProto.mdx b/core/reference/formats/CapnProto.mdx
similarity index 58%
rename from reference/formats/CapnProto.mdx
rename to core/reference/formats/CapnProto.mdx
index bf92136c..0bc9ec16 100644
--- a/reference/formats/CapnProto.mdx
+++ b/core/reference/formats/CapnProto.mdx
@@ -19,40 +19,40 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
## Description {#description}
-The `CapnProto` format is a binary message format similar to the [`Protocol Buffers`](https://developers.google.com/protocol-buffers/) format and [Thrift](https://en.wikipedia.org/wiki/Apache_Thrift), but not like [JSON](/reference/formats/JSON/JSON) or [MessagePack](https://msgpack.org/).
+The `CapnProto` format is a binary message format similar to the [`Protocol Buffers`](https://developers.google.com/protocol-buffers/) format and [Thrift](https://en.wikipedia.org/wiki/Apache_Thrift), but not like [JSON](/core/reference/formats/JSON/JSON) or [MessagePack](https://msgpack.org/).
CapnProto messages are strictly typed and not self-describing, meaning they need an external schema description. The schema is applied on the fly and cached for each query.
-See also [Format Schema](/reference/formats#formatschema).
+See also [Format Schema](/core/reference/formats#formatschema).
## Data types matching {#data_types-matching-capnproto}
-The table below shows supported data types and how they match ClickHouse [data types](/reference/data-types) in `INSERT` and `SELECT` queries.
+The table below shows supported data types and how they match ClickHouse [data types](/core/reference/data-types) in `INSERT` and `SELECT` queries.
| CapnProto data type (`INSERT`) | ClickHouse data type | CapnProto data type (`SELECT`) |
|------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------|
-| `UINT8`, `BOOL` | [UInt8](/reference/data-types/int-uint) | `UINT8` |
-| `INT8` | [Int8](/reference/data-types/int-uint) | `INT8` |
-| `UINT16` | [UInt16](/reference/data-types/int-uint), [Date](/reference/data-types/date) | `UINT16` |
-| `INT16` | [Int16](/reference/data-types/int-uint) | `INT16` |
-| `UINT32` | [UInt32](/reference/data-types/int-uint), [DateTime](/reference/data-types/datetime) | `UINT32` |
-| `INT32` | [Int32](/reference/data-types/int-uint), [Decimal32](/reference/data-types/decimal) | `INT32` |
-| `UINT64` | [UInt64](/reference/data-types/int-uint) | `UINT64` |
-| `INT64` | [Int64](/reference/data-types/int-uint), [DateTime64](/reference/data-types/datetime), [Decimal64](/reference/data-types/decimal) | `INT64` |
-| `FLOAT32` | [Float32](/reference/data-types/float) | `FLOAT32` |
-| `FLOAT64` | [Float64](/reference/data-types/float) | `FLOAT64` |
-| `TEXT, DATA` | [String](/reference/data-types/string), [FixedString](/reference/data-types/fixedstring) | `TEXT, DATA` |
-| `union(T, Void), union(Void, T)` | [Nullable(T)](/reference/data-types/date) | `union(T, Void), union(Void, T)` |
-| `ENUM` | [Enum(8/16)](/reference/data-types/enum) | `ENUM` |
-| `LIST` | [Array](/reference/data-types/array) | `LIST` |
-| `STRUCT` | [Tuple](/reference/data-types/tuple) | `STRUCT` |
-| `UINT32` | [IPv4](/reference/data-types/ipv4) | `UINT32` |
-| `DATA` | [IPv6](/reference/data-types/ipv6) | `DATA` |
-| `DATA` | [Int128/UInt128/Int256/UInt256](/reference/data-types/int-uint) | `DATA` |
-| `DATA` | [Decimal128/Decimal256](/reference/data-types/decimal) | `DATA` |
-| `STRUCT(entries LIST(STRUCT(key Key, value Value)))` | [Map](/reference/data-types/map) | `STRUCT(entries LIST(STRUCT(key Key, value Value)))` |
+| `UINT8`, `BOOL` | [UInt8](/core/reference/data-types/int-uint) | `UINT8` |
+| `INT8` | [Int8](/core/reference/data-types/int-uint) | `INT8` |
+| `UINT16` | [UInt16](/core/reference/data-types/int-uint), [Date](/core/reference/data-types/date) | `UINT16` |
+| `INT16` | [Int16](/core/reference/data-types/int-uint) | `INT16` |
+| `UINT32` | [UInt32](/core/reference/data-types/int-uint), [DateTime](/core/reference/data-types/datetime) | `UINT32` |
+| `INT32` | [Int32](/core/reference/data-types/int-uint), [Decimal32](/core/reference/data-types/decimal) | `INT32` |
+| `UINT64` | [UInt64](/core/reference/data-types/int-uint) | `UINT64` |
+| `INT64` | [Int64](/core/reference/data-types/int-uint), [DateTime64](/core/reference/data-types/datetime), [Decimal64](/core/reference/data-types/decimal) | `INT64` |
+| `FLOAT32` | [Float32](/core/reference/data-types/float) | `FLOAT32` |
+| `FLOAT64` | [Float64](/core/reference/data-types/float) | `FLOAT64` |
+| `TEXT, DATA` | [String](/core/reference/data-types/string), [FixedString](/core/reference/data-types/fixedstring) | `TEXT, DATA` |
+| `union(T, Void), union(Void, T)` | [Nullable(T)](/core/reference/data-types/date) | `union(T, Void), union(Void, T)` |
+| `ENUM` | [Enum(8/16)](/core/reference/data-types/enum) | `ENUM` |
+| `LIST` | [Array](/core/reference/data-types/array) | `LIST` |
+| `STRUCT` | [Tuple](/core/reference/data-types/tuple) | `STRUCT` |
+| `UINT32` | [IPv4](/core/reference/data-types/ipv4) | `UINT32` |
+| `DATA` | [IPv6](/core/reference/data-types/ipv6) | `DATA` |
+| `DATA` | [Int128/UInt128/Int256/UInt256](/core/reference/data-types/int-uint) | `DATA` |
+| `DATA` | [Decimal128/Decimal256](/core/reference/data-types/decimal) | `DATA` |
+| `STRUCT(entries LIST(STRUCT(key Key, value Value)))` | [Map](/core/reference/data-types/map) | `STRUCT(entries LIST(STRUCT(key Key, value Value)))` |
- Integer types can be converted into each other during input/output.
-- For working with `Enum` in CapnProto format use the [format_capn_proto_enum_comparising_mode](/reference/settings/formats#format_capn_proto_enum_comparising_mode) setting.
+- For working with `Enum` in CapnProto format use the [format_capn_proto_enum_comparising_mode](/core/reference/settings/formats#format_capn_proto_enum_comparising_mode) setting.
- Arrays can be nested and can have a value of the `Nullable` type as an argument. `Tuple` and `Map` types also can be nested.
## Example usage {#example-usage}
@@ -92,7 +92,7 @@ FORMAT CapnProto
SETTINGS format_capn_proto_use_autogenerated_schema=1
```
-In this case, ClickHouse will autogenerate CapnProto schema according to the table structure using function [structureToCapnProtoSchema](/reference/functions/regular-functions/other-functions#structureToCapnProtoSchema) and will use this schema to serialize data in CapnProto format.
+In this case, ClickHouse will autogenerate CapnProto schema according to the table structure using function [structureToCapnProtoSchema](/core/reference/functions/regular-functions/other-functions#structureToCapnProtoSchema) and will use this schema to serialize data in CapnProto format.
You can also read CapnProto file with autogenerated schema (in this case the file must be created using the same schema):
@@ -102,9 +102,9 @@ $ cat hits.bin | clickhouse-client --query "INSERT INTO test.hits SETTINGS forma
## Format settings {#format-settings}
-The setting [`format_capn_proto_use_autogenerated_schema`](/reference/settings/formats#format_capn_proto_use_autogenerated_schema) is enabled by default and is applicable if [`format_schema`](/reference/formats#formatschema) is not set.
+The setting [`format_capn_proto_use_autogenerated_schema`](/core/reference/settings/formats#format_capn_proto_use_autogenerated_schema) is enabled by default and is applicable if [`format_schema`](/core/reference/formats#formatschema) is not set.
-You can also save the autogenerated schema to a file during input/output using setting [`output_format_schema`](/reference/settings/formats#output_format_schema).
+You can also save the autogenerated schema to a file during input/output using setting [`output_format_schema`](/core/reference/settings/formats#output_format_schema).
For example:
diff --git a/reference/formats/CustomSeparated/CustomSeparated.mdx b/core/reference/formats/CustomSeparated/CustomSeparated.mdx
similarity index 68%
rename from reference/formats/CustomSeparated/CustomSeparated.mdx
rename to core/reference/formats/CustomSeparated/CustomSeparated.mdx
index 37a084b8..514c6b72 100644
--- a/reference/formats/CustomSeparated/CustomSeparated.mdx
+++ b/core/reference/formats/CustomSeparated/CustomSeparated.mdx
@@ -15,20 +15,20 @@ doc_type: 'reference'
## Description {#description}
-Similar to [Template](/reference/formats/Template/Template), but it prints or reads all names and types of columns and uses escaping rule from [format_custom_escaping_rule](/reference/settings/formats#format_custom_escaping_rule) setting and delimiters from the following settings:
+Similar to [Template](/core/reference/formats/Template/Template), but it prints or reads all names and types of columns and uses escaping rule from [format_custom_escaping_rule](/core/reference/settings/formats#format_custom_escaping_rule) setting and delimiters from the following settings:
-- [format_custom_field_delimiter](/reference/settings/formats#format_custom_field_delimiter)
-- [format_custom_row_before_delimiter](/reference/settings/formats#format_custom_row_before_delimiter)
-- [format_custom_row_after_delimiter](/reference/settings/formats#format_custom_row_after_delimiter)
-- [format_custom_row_between_delimiter](/reference/settings/formats#format_custom_row_between_delimiter)
-- [format_custom_result_before_delimiter](/reference/settings/formats#format_custom_result_before_delimiter)
-- [format_custom_result_after_delimiter](/reference/settings/formats#format_custom_result_after_delimiter)
+- [format_custom_field_delimiter](/core/reference/settings/formats#format_custom_field_delimiter)
+- [format_custom_row_before_delimiter](/core/reference/settings/formats#format_custom_row_before_delimiter)
+- [format_custom_row_after_delimiter](/core/reference/settings/formats#format_custom_row_after_delimiter)
+- [format_custom_row_between_delimiter](/core/reference/settings/formats#format_custom_row_between_delimiter)
+- [format_custom_result_before_delimiter](/core/reference/settings/formats#format_custom_result_before_delimiter)
+- [format_custom_result_after_delimiter](/core/reference/settings/formats#format_custom_result_after_delimiter)
It does not use escaping rules settings and delimiters from format strings.
-There is also the [`CustomSeparatedIgnoreSpaces`](/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces) format, which is similar to [TemplateIgnoreSpaces](/reference/formats/Template/TemplateIgnoreSpaces).
+There is also the [`CustomSeparatedIgnoreSpaces`](/core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces) format, which is similar to [TemplateIgnoreSpaces](/core/reference/formats/Template/TemplateIgnoreSpaces).
## Example usage {#example-usage}
@@ -88,6 +88,6 @@ Additional settings:
| Setting | Description | Default |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------|---------|
-| [input_format_custom_detect_header](/reference/settings/formats#input_format_custom_detect_header) | enables automatic detection of header with names and types if any. | `true` |
-| [input_format_custom_skip_trailing_empty_lines](/reference/settings/formats#input_format_custom_skip_trailing_empty_lines) | skip trailing empty lines at the end of file. | `false` |
-| [input_format_custom_allow_variable_number_of_columns](/reference/settings/formats#input_format_custom_allow_variable_number_of_columns) | allow variable number of columns in CustomSeparated format, ignore extra columns and use default values for missing columns. | `false` |
\ No newline at end of file
+| [input_format_custom_detect_header](/core/reference/settings/formats#input_format_custom_detect_header) | enables automatic detection of header with names and types if any. | `true` |
+| [input_format_custom_skip_trailing_empty_lines](/core/reference/settings/formats#input_format_custom_skip_trailing_empty_lines) | skip trailing empty lines at the end of file. | `false` |
+| [input_format_custom_allow_variable_number_of_columns](/core/reference/settings/formats#input_format_custom_allow_variable_number_of_columns) | allow variable number of columns in CustomSeparated format, ignore extra columns and use default values for missing columns. | `false` |
\ No newline at end of file
diff --git a/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.mdx b/core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.mdx
similarity index 100%
rename from reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.mdx
rename to core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces.mdx
diff --git a/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.mdx b/core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.mdx
similarity index 100%
rename from reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.mdx
rename to core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames.mdx
diff --git a/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.mdx b/core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.mdx
similarity index 100%
rename from reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.mdx
rename to core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes.mdx
diff --git a/reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx b/core/reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx
similarity index 92%
rename from reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx
rename to core/reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx
index 2e9f5364..a2f7e007 100644
--- a/reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx
+++ b/core/reference/formats/CustomSeparated/CustomSeparatedWithNames.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Also prints the header row with column names, similar to [TabSeparatedWithNames](/reference/formats/TabSeparated/TabSeparatedWithNames).
+Also prints the header row with column names, similar to [TabSeparatedWithNames](/core/reference/formats/TabSeparated/TabSeparatedWithNames).
## Example usage {#example-usage}
@@ -72,8 +72,8 @@ row('date';'season';'home_team';'away_team';'home_team_goals';'away_team_goals')
## Format settings {#format-settings}
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
the columns from the input data will be mapped to the columns from the table by their names,
-columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
Otherwise, the first row will be skipped.
\ No newline at end of file
diff --git a/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx b/core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx
similarity index 89%
rename from reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx
rename to core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx
index 23a2cc40..677957b8 100644
--- a/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx
+++ b/core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Also prints two header rows with column names and types, similar to [TabSeparatedWithNamesAndTypes](/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes).
+Also prints two header rows with column names and types, similar to [TabSeparatedWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes).
## Example usage {#example-usage}
@@ -72,12 +72,12 @@ row('date';'season';'home_team';'away_team';'home_team_goals';'away_team_goals')
## Format settings {#format-settings}
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
Otherwise, the first row will be skipped.
-If setting [`input_format_with_types_use_header`](/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
+If setting [`input_format_with_types_use_header`](/core/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
the types from input data will be compared with the types of the corresponding columns from the table. Otherwise, the second row will be skipped.
diff --git a/reference/formats/DWARF.mdx b/core/reference/formats/DWARF.mdx
similarity index 100%
rename from reference/formats/DWARF.mdx
rename to core/reference/formats/DWARF.mdx
diff --git a/reference/formats/Form.mdx b/core/reference/formats/Form.mdx
similarity index 100%
rename from reference/formats/Form.mdx
rename to core/reference/formats/Form.mdx
diff --git a/reference/formats/Hash.mdx b/core/reference/formats/Hash.mdx
similarity index 100%
rename from reference/formats/Hash.mdx
rename to core/reference/formats/Hash.mdx
diff --git a/reference/formats/HiveText.mdx b/core/reference/formats/HiveText.mdx
similarity index 100%
rename from reference/formats/HiveText.mdx
rename to core/reference/formats/HiveText.mdx
diff --git a/reference/formats/JSON/JSON.mdx b/core/reference/formats/JSON/JSON.mdx
similarity index 88%
rename from reference/formats/JSON/JSON.mdx
rename to core/reference/formats/JSON/JSON.mdx
index 6c0b257f..6b84edb9 100644
--- a/reference/formats/JSON/JSON.mdx
+++ b/core/reference/formats/JSON/JSON.mdx
@@ -36,9 +36,9 @@ The `JSON` type is compatible with JavaScript. To ensure this, some characters a
- Invalid UTF-8 sequences are changed to the replacement character � so the output text will consist of valid UTF-8 sequences.
For compatibility with JavaScript, Int64 and UInt64 integers are enclosed in double quotes by default.
-To remove the quotes, you can set the configuration parameter [`output_format_json_quote_64bit_integers`](/reference/settings/formats#output_format_json_quote_64bit_integers) to `0`.
+To remove the quotes, you can set the configuration parameter [`output_format_json_quote_64bit_integers`](/core/reference/settings/formats#output_format_json_quote_64bit_integers) to `0`.
-ClickHouse supports [NULL](/reference/syntax), which is displayed as `null` in the JSON output. To enable `+nan`, `-nan`, `+inf`, `-inf` values in output, set the [output_format_json_quote_denormals](/reference/settings/formats#output_format_json_quote_denormals) to `1`.
+ClickHouse supports [NULL](/core/reference/syntax), which is displayed as `null` in the JSON output. To enable `+nan`, `-nan`, `+inf`, `-inf` values in output, set the [output_format_json_quote_denormals](/core/reference/settings/formats#output_format_json_quote_denormals) to `1`.
## Example usage {#example-usage}
@@ -100,10 +100,10 @@ SELECT SearchPhrase, count() AS c FROM test.hits GROUP BY SearchPhrase WITH TOTA
## Format settings {#format-settings}
-For JSON input format, if setting [`input_format_json_validate_types_from_metadata`](/reference/settings/formats#input_format_json_validate_types_from_metadata) is set to `1`,
+For JSON input format, if setting [`input_format_json_validate_types_from_metadata`](/core/reference/settings/formats#input_format_json_validate_types_from_metadata) is set to `1`,
the types from metadata in input data will be compared with the types of the corresponding columns from the table.
## See also {#see-also}
-- [JSONEachRow](/reference/formats/JSON/JSONEachRow) format
-- [output_format_json_array_of_rows](/reference/settings/formats#output_format_json_array_of_rows) setting
+- [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) format
+- [output_format_json_array_of_rows](/core/reference/settings/formats#output_format_json_array_of_rows) setting
diff --git a/reference/formats/JSON/JSONAsObject.mdx b/core/reference/formats/JSON/JSONAsObject.mdx
similarity index 81%
rename from reference/formats/JSON/JSONAsObject.mdx
rename to core/reference/formats/JSON/JSONAsObject.mdx
index c444d09b..a97bebc8 100644
--- a/reference/formats/JSON/JSONAsObject.mdx
+++ b/core/reference/formats/JSON/JSONAsObject.mdx
@@ -11,9 +11,9 @@ doc_type: 'reference'
## Description {#description}
-In this format, a single JSON object is interpreted as a single [JSON](/reference/data-types/newjson) value. If the input has several JSON objects (comma separated), they are interpreted as separate rows. If the input data is enclosed in `[]`, it is interpreted as an array of JSONs.
+In this format, a single JSON object is interpreted as a single [JSON](/core/reference/data-types/newjson) value. If the input has several JSON objects (comma separated), they are interpreted as separate rows. If the input data is enclosed in `[]`, it is interpreted as an array of JSONs.
-This format can only be parsed for a table with a single field of type [JSON](/reference/data-types/newjson). The remaining columns must be set to [`DEFAULT`](/reference/statements/create/table#default) or [`MATERIALIZED`](/reference/statements/create/view#materialized-view).
+This format can only be parsed for a table with a single field of type [JSON](/core/reference/data-types/newjson). The remaining columns must be set to [`DEFAULT`](/core/reference/statements/create/table#default) or [`MATERIALIZED`](/core/reference/statements/create/view#materialized-view).
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONAsString.mdx b/core/reference/formats/JSON/JSONAsString.mdx
similarity index 86%
rename from reference/formats/JSON/JSONAsString.mdx
rename to core/reference/formats/JSON/JSONAsString.mdx
index 188096a0..a06d7d6a 100644
--- a/reference/formats/JSON/JSONAsString.mdx
+++ b/core/reference/formats/JSON/JSONAsString.mdx
@@ -20,12 +20,12 @@ If the input has several JSON objects (which are comma separated), they are inte
If the input data is enclosed in `[]`, it is interpreted as an array of JSON objects.
-This format can only be parsed for a table with a single field of type [String](/reference/data-types/string).
-The remaining columns must be set to either [`DEFAULT`](/reference/statements/create/table#default) or [`MATERIALIZED`](/reference/statements/create/view#materialized-view),
+This format can only be parsed for a table with a single field of type [String](/core/reference/data-types/string).
+The remaining columns must be set to either [`DEFAULT`](/core/reference/statements/create/table#default) or [`MATERIALIZED`](/core/reference/statements/create/view#materialized-view),
or be omitted.
-Once you serialize the entire JSON object to a String you can use the [JSON functions](/reference/functions/regular-functions/json-functions) to process it.
+Once you serialize the entire JSON object to a String you can use the [JSON functions](/core/reference/functions/regular-functions/json-functions) to process it.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONColumns.mdx b/core/reference/formats/JSON/JSONColumns.mdx
similarity index 94%
rename from reference/formats/JSON/JSONColumns.mdx
rename to core/reference/formats/JSON/JSONColumns.mdx
index ad2e9435..77f3310e 100644
--- a/reference/formats/JSON/JSONColumns.mdx
+++ b/core/reference/formats/JSON/JSONColumns.mdx
@@ -74,5 +74,5 @@ The output will be in JSON format:
## Format settings {#format-settings}
-During import, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
-Columns that are not present in the block will be filled with default values (you can use the [`input_format_defaults_for_omitted_fields`](/reference/settings/formats#input_format_defaults_for_omitted_fields) setting here)
\ No newline at end of file
+During import, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+Columns that are not present in the block will be filled with default values (you can use the [`input_format_defaults_for_omitted_fields`](/core/reference/settings/formats#input_format_defaults_for_omitted_fields) setting here)
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONColumnsWithMetadata.mdx b/core/reference/formats/JSON/JSONColumnsWithMetadata.mdx
similarity index 82%
rename from reference/formats/JSON/JSONColumnsWithMetadata.mdx
rename to core/reference/formats/JSON/JSONColumnsWithMetadata.mdx
index 30f7f94d..a6cdec3b 100644
--- a/reference/formats/JSON/JSONColumnsWithMetadata.mdx
+++ b/core/reference/formats/JSON/JSONColumnsWithMetadata.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`JSONColumns`](/reference/formats/JSON/JSONColumns) format in that it also contains some metadata and statistics (similar to the [`JSON`](/reference/formats/JSON/JSON) format).
+Differs from the [`JSONColumns`](/core/reference/formats/JSON/JSONColumns) format in that it also contains some metadata and statistics (similar to the [`JSON`](/core/reference/formats/JSON/JSON) format).
The `JSONColumnsWithMetadata` format buffers all data in memory and then outputs it as a single block, so, it can lead to high memory consumption.
@@ -64,7 +64,7 @@ Example:
}
```
-For the `JSONColumnsWithMetadata` input format, if setting [`input_format_json_validate_types_from_metadata`](/reference/settings/formats#input_format_json_validate_types_from_metadata) is set to `1`,
+For the `JSONColumnsWithMetadata` input format, if setting [`input_format_json_validate_types_from_metadata`](/core/reference/settings/formats#input_format_json_validate_types_from_metadata) is set to `1`,
the types from metadata in input data will be compared with the types of the corresponding columns from the table.
## Format settings {#format-settings}
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONCompact.mdx b/core/reference/formats/JSON/JSONCompact.mdx
similarity index 97%
rename from reference/formats/JSON/JSONCompact.mdx
rename to core/reference/formats/JSON/JSONCompact.mdx
index 4b2e69df..eb3e429e 100644
--- a/reference/formats/JSON/JSONCompact.mdx
+++ b/core/reference/formats/JSON/JSONCompact.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from [JSON](/reference/formats/JSON/JSON) only in that data rows are output as arrays, not as objects.
+Differs from [JSON](/core/reference/formats/JSON/JSON) only in that data rows are output as arrays, not as objects.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONCompactColumns.mdx b/core/reference/formats/JSON/JSONCompactColumns.mdx
similarity index 97%
rename from reference/formats/JSON/JSONCompactColumns.mdx
rename to core/reference/formats/JSON/JSONCompactColumns.mdx
index a6524bc6..85bd0366 100644
--- a/reference/formats/JSON/JSONCompactColumns.mdx
+++ b/core/reference/formats/JSON/JSONCompactColumns.mdx
@@ -67,6 +67,6 @@ The output will be in JSON format:
]
```
-Columns that are not present in the block will be filled with default values (you can use [`input_format_defaults_for_omitted_fields`](/reference/settings/formats#input_format_defaults_for_omitted_fields) setting here)
+Columns that are not present in the block will be filled with default values (you can use [`input_format_defaults_for_omitted_fields`](/core/reference/settings/formats#input_format_defaults_for_omitted_fields) setting here)
## Format settings {#format-settings}
diff --git a/reference/formats/JSON/JSONCompactEachRow.mdx b/core/reference/formats/JSON/JSONCompactEachRow.mdx
similarity index 95%
rename from reference/formats/JSON/JSONCompactEachRow.mdx
rename to core/reference/formats/JSON/JSONCompactEachRow.mdx
index 77b1668a..52c211cc 100644
--- a/reference/formats/JSON/JSONCompactEachRow.mdx
+++ b/core/reference/formats/JSON/JSONCompactEachRow.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from [`JSONEachRow`](/reference/formats/JSON/JSONEachRow) only in that data rows are output as arrays, not as objects.
+Differs from [`JSONEachRow`](/core/reference/formats/JSON/JSONEachRow) only in that data rows are output as arrays, not as objects.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONCompactEachRowWithNames.mdx b/core/reference/formats/JSON/JSONCompactEachRowWithNames.mdx
similarity index 86%
rename from reference/formats/JSON/JSONCompactEachRowWithNames.mdx
rename to core/reference/formats/JSON/JSONCompactEachRowWithNames.mdx
index 8719f0e3..3c437678 100644
--- a/reference/formats/JSON/JSONCompactEachRowWithNames.mdx
+++ b/core/reference/formats/JSON/JSONCompactEachRowWithNames.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`JSONCompactEachRow`](/reference/formats/JSON/JSONCompactEachRow) format in that it also prints the header row with column names, similar to the [`TabSeparatedWithNames`](/reference/formats/TabSeparated/TabSeparatedWithNames) format.
+Differs from the [`JSONCompactEachRow`](/core/reference/formats/JSON/JSONCompactEachRow) format in that it also prints the header row with column names, similar to the [`TabSeparatedWithNames`](/core/reference/formats/TabSeparated/TabSeparatedWithNames) format.
## Example usage {#example-usage}
@@ -86,7 +86,7 @@ The output will be in JSON format:
## Format settings {#format-settings}
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to 1,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to 1,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
Otherwise, the first row will be skipped.
diff --git a/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx b/core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx
similarity index 84%
rename from reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx
rename to core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx
index fc307a63..774d104d 100644
--- a/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx
+++ b/core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`JSONCompactEachRow`](/reference/formats/JSON/JSONCompactEachRow) format in that it also prints two header rows with column names and types, similar to the [TabSeparatedWithNamesAndTypes](/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes) format.
+Differs from the [`JSONCompactEachRow`](/core/reference/formats/JSON/JSONCompactEachRow) format in that it also prints two header rows with column names and types, similar to the [TabSeparatedWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes) format.
## Example usage {#example-usage}
@@ -88,9 +88,9 @@ The output will be in JSON format:
## Format settings {#format-settings}
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
Otherwise, the first row will be skipped.
-If setting [`input_format_with_types_use_header`](/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
+If setting [`input_format_with_types_use_header`](/core/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
the types from input data will be compared with the types of the corresponding columns from the table. Otherwise, the second row will be skipped.
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONCompactEachRowWithProgress.mdx b/core/reference/formats/JSON/JSONCompactEachRowWithProgress.mdx
similarity index 100%
rename from reference/formats/JSON/JSONCompactEachRowWithProgress.mdx
rename to core/reference/formats/JSON/JSONCompactEachRowWithProgress.mdx
diff --git a/reference/formats/JSON/JSONCompactStrings.mdx b/core/reference/formats/JSON/JSONCompactStrings.mdx
similarity index 94%
rename from reference/formats/JSON/JSONCompactStrings.mdx
rename to core/reference/formats/JSON/JSONCompactStrings.mdx
index 48280238..8ead19f2 100644
--- a/reference/formats/JSON/JSONCompactStrings.mdx
+++ b/core/reference/formats/JSON/JSONCompactStrings.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-The `JSONCompactStrings` format differs from [JSONStrings](/reference/formats/JSON/JSONStrings) only in that data rows are output as arrays, not as objects.
+The `JSONCompactStrings` format differs from [JSONStrings](/core/reference/formats/JSON/JSONStrings) only in that data rows are output as arrays, not as objects.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONCompactStringsEachRow.mdx b/core/reference/formats/JSON/JSONCompactStringsEachRow.mdx
similarity index 95%
rename from reference/formats/JSON/JSONCompactStringsEachRow.mdx
rename to core/reference/formats/JSON/JSONCompactStringsEachRow.mdx
index 20bcd8a3..7b119c45 100644
--- a/reference/formats/JSON/JSONCompactStringsEachRow.mdx
+++ b/core/reference/formats/JSON/JSONCompactStringsEachRow.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from [`JSONCompactEachRow`](/reference/formats/JSON/JSONCompactEachRow) only in that data fields are output as strings, not as typed JSON values.
+Differs from [`JSONCompactEachRow`](/core/reference/formats/JSON/JSONCompactEachRow) only in that data fields are output as strings, not as typed JSON values.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx b/core/reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx
similarity index 87%
rename from reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx
rename to core/reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx
index ee42c226..9fd0d7d1 100644
--- a/reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx
+++ b/core/reference/formats/JSON/JSONCompactStringsEachRowWithNames.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`JSONCompactEachRow`](/reference/formats/JSON/JSONCompactEachRow) format in that it also prints the header row with column names, similar to the [TabSeparatedWithNames](/reference/formats/TabSeparated/TabSeparatedWithNames) format.
+Differs from the [`JSONCompactEachRow`](/core/reference/formats/JSON/JSONCompactEachRow) format in that it also prints the header row with column names, similar to the [TabSeparatedWithNames](/core/reference/formats/TabSeparated/TabSeparatedWithNames) format.
## Example usage {#example-usage}
@@ -86,7 +86,7 @@ The output will be in JSON format:
## Format settings {#format-settings}
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
Otherwise, the first row will be skipped.
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx b/core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx
similarity index 89%
rename from reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx
rename to core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx
index 56896bfd..0a1e1c20 100644
--- a/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx
+++ b/core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes.mdx
@@ -12,7 +12,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from `JSONCompactEachRow` format in that it also prints two header rows with column names and types, similar to [TabSeparatedWithNamesAndTypes](/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes).
+Differs from `JSONCompactEachRow` format in that it also prints two header rows with column names and types, similar to [TabSeparatedWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes).
## Example usage {#example-usage}
@@ -85,12 +85,12 @@ The output will be in JSON format:
## Format settings {#format-settings}
-If setting [input_format_with_names_use_header](/reference/settings/formats#input_format_with_names_use_header) is set to 1,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
+If setting [input_format_with_names_use_header](/core/reference/settings/formats#input_format_with_names_use_header) is set to 1,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
Otherwise, the first row will be skipped.
-If setting [input_format_with_types_use_header](/reference/settings/formats#input_format_with_types_use_header) is set to 1,
+If setting [input_format_with_types_use_header](/core/reference/settings/formats#input_format_with_types_use_header) is set to 1,
the types from input data will be compared with the types of the corresponding columns from the table. Otherwise, the second row will be skipped.
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx b/core/reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx
similarity index 92%
rename from reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx
rename to core/reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx
index 64dd0dc2..cefa77e4 100644
--- a/reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx
+++ b/core/reference/formats/JSON/JSONCompactStringsEachRowWithProgress.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Similar to [`JSONCompactEachRowWithProgress`](/reference/formats/JSON/JSONCompactEachRowWithProgress), but all values are converted to strings.
+Similar to [`JSONCompactEachRowWithProgress`](/core/reference/formats/JSON/JSONCompactEachRowWithProgress), but all values are converted to strings.
This is useful when you need consistent string representation of all data types.
Key features:
diff --git a/reference/formats/JSON/JSONEachRow.mdx b/core/reference/formats/JSON/JSONEachRow.mdx
similarity index 97%
rename from reference/formats/JSON/JSONEachRow.mdx
rename to core/reference/formats/JSON/JSONEachRow.mdx
index 2b007bac..42a1a4da 100644
--- a/reference/formats/JSON/JSONEachRow.mdx
+++ b/core/reference/formats/JSON/JSONEachRow.mdx
@@ -79,6 +79,6 @@ The output will be in JSON format:
{"date":"2022-05-07","season":2021,"home_team":"Walsall","away_team":"Swindon Town","home_team_goals":0,"away_team_goals":3}
```
-Importing data columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
+Importing data columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
## Format settings {#format-settings}
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONEachRowWithProgress.mdx b/core/reference/formats/JSON/JSONEachRowWithProgress.mdx
similarity index 77%
rename from reference/formats/JSON/JSONEachRowWithProgress.mdx
rename to core/reference/formats/JSON/JSONEachRowWithProgress.mdx
index e1ff14bd..1a0f5956 100644
--- a/reference/formats/JSON/JSONEachRowWithProgress.mdx
+++ b/core/reference/formats/JSON/JSONEachRowWithProgress.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from [`JSONEachRow`](/reference/formats/JSON/JSONEachRow)/[`JSONStringsEachRow`](/reference/formats/JSON/JSONStringsEachRow) in that ClickHouse will also yield progress information as JSON values.
+Differs from [`JSONEachRow`](/core/reference/formats/JSON/JSONEachRow)/[`JSONStringsEachRow`](/core/reference/formats/JSON/JSONStringsEachRow) in that ClickHouse will also yield progress information as JSON values.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONLines.mdx b/core/reference/formats/JSON/JSONLines.mdx
similarity index 97%
rename from reference/formats/JSON/JSONLines.mdx
rename to core/reference/formats/JSON/JSONLines.mdx
index 84303ad3..ff0ca810 100644
--- a/reference/formats/JSON/JSONLines.mdx
+++ b/core/reference/formats/JSON/JSONLines.mdx
@@ -81,6 +81,6 @@ The output will be in JSON format:
{"date":"2022-05-07","season":2021,"home_team":"Walsall","away_team":"Swindon Town","home_team_goals":0,"away_team_goals":3}
```
-Importing data columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
+Importing data columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
## Format settings {#format-settings}
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONObjectEachRow.mdx b/core/reference/formats/JSON/JSONObjectEachRow.mdx
similarity index 56%
rename from reference/formats/JSON/JSONObjectEachRow.mdx
rename to core/reference/formats/JSON/JSONObjectEachRow.mdx
index 8d15bf4d..cbedf82c 100644
--- a/reference/formats/JSON/JSONObjectEachRow.mdx
+++ b/core/reference/formats/JSON/JSONObjectEachRow.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-In this format, all data is represented as a single JSON Object, with each row represented as a separate field of this object similar to the [`JSONEachRow`](/reference/formats/JSON/JSONEachRow) format.
+In this format, all data is represented as a single JSON Object, with each row represented as a separate field of this object similar to the [`JSONEachRow`](/core/reference/formats/JSON/JSONEachRow) format.
## Example usage {#example-usage}
@@ -31,7 +31,7 @@ Given some JSON:
}
```
-To use an object name as a column value you can use the special setting [`format_json_object_each_row_column_for_object_name`](/reference/settings/formats#format_json_object_each_row_column_for_object_name).
+To use an object name as a column value you can use the special setting [`format_json_object_each_row_column_for_object_name`](/core/reference/settings/formats#format_json_object_each_row_column_for_object_name).
The value of this setting is set to the name of a column, that is used as JSON key for a row in the resulting object.
#### Output {#output}
@@ -104,9 +104,9 @@ ClickHouse ignores spaces between elements and commas after the objects. You can
#### Omitted values processing {#omitted-values-processing}
-ClickHouse substitutes omitted values with the default values for the corresponding [data types](/reference/data-types).
+ClickHouse substitutes omitted values with the default values for the corresponding [data types](/core/reference/data-types).
-If `DEFAULT expr` is specified, ClickHouse uses different substitution rules depending on the [input_format_defaults_for_omitted_fields](/reference/settings/formats#input_format_defaults_for_omitted_fields) setting.
+If `DEFAULT expr` is specified, ClickHouse uses different substitution rules depending on the [input_format_defaults_for_omitted_fields](/core/reference/settings/formats#input_format_defaults_for_omitted_fields) setting.
Consider the following table:
@@ -143,15 +143,15 @@ The query `SELECT * FROM UserActivity FORMAT JSONEachRow` returns:
{"UserID":"4324182021466249494","PageViews":6,"Duration":185,"Sign":1}
```
-Unlike the [JSON](/reference/formats/JSON/JSON) format, there is no substitution of invalid UTF-8 sequences. Values are escaped in the same way as for `JSON`.
+Unlike the [JSON](/core/reference/formats/JSON/JSON) format, there is no substitution of invalid UTF-8 sequences. Values are escaped in the same way as for `JSON`.
-Any set of bytes can be output in the strings. Use the [`JSONEachRow`](/reference/formats/JSON/JSONEachRow) format if you are sure that the data in the table can be formatted as JSON without losing any information.
+Any set of bytes can be output in the strings. Use the [`JSONEachRow`](/core/reference/formats/JSON/JSONEachRow) format if you are sure that the data in the table can be formatted as JSON without losing any information.
### Usage of Nested Structures {#jsoneachrow-nested}
-If you have a table with the [`Nested`](/reference/data-types/nested-data-structures) data type columns, you can insert JSON data with the same structure. Enable this feature with the [input_format_import_nested_json](/reference/settings/formats#input_format_import_nested_json) setting.
+If you have a table with the [`Nested`](/core/reference/data-types/nested-data-structures) data type columns, you can insert JSON data with the same structure. Enable this feature with the [input_format_import_nested_json](/core/reference/settings/formats#input_format_import_nested_json) setting.
For example, consider the following table:
@@ -165,7 +165,7 @@ As you can see in the `Nested` data type description, ClickHouse treats each com
INSERT INTO json_each_row_nested FORMAT JSONEachRow {"n.s": ["abc", "def"], "n.i": [1, 23]}
```
-To insert data as a hierarchical JSON object, set [`input_format_import_nested_json=1`](/reference/settings/formats#input_format_import_nested_json).
+To insert data as a hierarchical JSON object, set [`input_format_import_nested_json=1`](/core/reference/settings/formats#input_format_import_nested_json).
```json
{
@@ -212,26 +212,26 @@ SELECT * FROM json_each_row_nested
| Setting | Description | Default | Notes |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [`input_format_import_nested_json`](/reference/settings/formats#input_format_import_nested_json) | map nested JSON data to nested tables (it works for JSONEachRow format). | `false` | |
-| [`input_format_json_read_bools_as_numbers`](/reference/settings/formats#input_format_json_read_bools_as_numbers) | allow to parse bools as numbers in JSON input formats. | `true` | |
-| [`input_format_json_read_bools_as_strings`](/reference/settings/formats#input_format_json_read_bools_as_strings) | allow to parse bools as strings in JSON input formats. | `true` | |
-| [`input_format_json_read_numbers_as_strings`](/reference/settings/formats#input_format_json_read_numbers_as_strings) | allow to parse numbers as strings in JSON input formats. | `true` | |
-| [`input_format_json_read_arrays_as_strings`](/reference/settings/formats#input_format_json_read_arrays_as_strings) | allow to parse JSON arrays as strings in JSON input formats. | `true` | |
-| [`input_format_json_read_objects_as_strings`](/reference/settings/formats#input_format_json_read_objects_as_strings) | allow to parse JSON objects as strings in JSON input formats. | `true` | |
-| [`input_format_json_named_tuples_as_objects`](/reference/settings/formats#input_format_json_named_tuples_as_objects) | parse named tuple columns as JSON objects. | `true` | |
-| [`input_format_json_try_infer_numbers_from_strings`](/reference/settings/formats#input_format_json_try_infer_numbers_from_strings) | try to infer numbers from string fields while schema inference. | `false` | |
-| [`input_format_json_try_infer_named_tuples_from_objects`](/reference/settings/formats#input_format_json_try_infer_named_tuples_from_objects) | try to infer named tuple from JSON objects during schema inference. | `true` | |
-| [`input_format_json_infer_incomplete_types_as_strings`](/reference/settings/formats#input_format_json_infer_incomplete_types_as_strings) | use type String for keys that contains only Nulls or empty objects/arrays during schema inference in JSON input formats. | `true` | |
-| [`input_format_json_defaults_for_missing_elements_in_named_tuple`](/reference/settings/formats#input_format_json_defaults_for_missing_elements_in_named_tuple) | insert default values for missing elements in JSON object while parsing named tuple. | `true` | |
-| [`input_format_json_ignore_unknown_keys_in_named_tuple`](/reference/settings/formats#input_format_json_ignore_unknown_keys_in_named_tuple) | ignore unknown keys in json object for named tuples. | `false` | |
-| [`input_format_json_compact_allow_variable_number_of_columns`](/reference/settings/formats#input_format_json_compact_allow_variable_number_of_columns) | allow variable number of columns in JSONCompact/JSONCompactEachRow format, ignore extra columns and use default values on missing columns. | `false` | |
-| [`input_format_json_throw_on_bad_escape_sequence`](/reference/settings/formats#input_format_json_throw_on_bad_escape_sequence) | throw an exception if JSON string contains bad escape sequence. If disabled, bad escape sequences will remain as is in the data. | `true` | |
-| [`input_format_json_empty_as_default`](/reference/settings/formats#input_format_json_empty_as_default) | treat empty fields in JSON input as default values. | `false`. | For complex default expressions [`input_format_defaults_for_omitted_fields`](/reference/settings/formats#input_format_defaults_for_omitted_fields) must be enabled too. |
-| [`output_format_json_quote_64bit_integers`](/reference/settings/formats#output_format_json_quote_64bit_integers) | controls quoting of 64-bit integers in JSON output format. | `true` | |
-| [`output_format_json_quote_64bit_floats`](/reference/settings/formats#output_format_json_quote_64bit_floats) | controls quoting of 64-bit floats in JSON output format. | `false` | |
-| [`output_format_json_quote_denormals`](/reference/settings/formats#output_format_json_quote_denormals) | enables '+nan', '-nan', '+inf', '-inf' outputs in JSON output format. | `false` | |
-| [`output_format_json_quote_decimals`](/reference/settings/formats#output_format_json_quote_decimals) | controls quoting of decimals in JSON output format. | `false` | |
-| [`output_format_json_escape_forward_slashes`](/reference/settings/formats#output_format_json_escape_forward_slashes) | controls escaping forward slashes for string outputs in JSON output format. | `true` | |
-| [`output_format_json_named_tuples_as_objects`](/reference/settings/formats#output_format_json_named_tuples_as_objects) | serialize named tuple columns as JSON objects. | `true` | |
-| [`output_format_json_array_of_rows`](/reference/settings/formats#output_format_json_array_of_rows) | output a JSON array of all rows in JSONEachRow(Compact) format. | `false` | |
-| [`output_format_json_validate_utf8`](/reference/settings/formats#output_format_json_validate_utf8) | enables validation of UTF-8 sequences in JSON output formats (note that it doesn't impact formats JSON/JSONCompact/JSONColumnsWithMetadata, they always validate utf8). | `false` | |
\ No newline at end of file
+| [`input_format_import_nested_json`](/core/reference/settings/formats#input_format_import_nested_json) | map nested JSON data to nested tables (it works for JSONEachRow format). | `false` | |
+| [`input_format_json_read_bools_as_numbers`](/core/reference/settings/formats#input_format_json_read_bools_as_numbers) | allow to parse bools as numbers in JSON input formats. | `true` | |
+| [`input_format_json_read_bools_as_strings`](/core/reference/settings/formats#input_format_json_read_bools_as_strings) | allow to parse bools as strings in JSON input formats. | `true` | |
+| [`input_format_json_read_numbers_as_strings`](/core/reference/settings/formats#input_format_json_read_numbers_as_strings) | allow to parse numbers as strings in JSON input formats. | `true` | |
+| [`input_format_json_read_arrays_as_strings`](/core/reference/settings/formats#input_format_json_read_arrays_as_strings) | allow to parse JSON arrays as strings in JSON input formats. | `true` | |
+| [`input_format_json_read_objects_as_strings`](/core/reference/settings/formats#input_format_json_read_objects_as_strings) | allow to parse JSON objects as strings in JSON input formats. | `true` | |
+| [`input_format_json_named_tuples_as_objects`](/core/reference/settings/formats#input_format_json_named_tuples_as_objects) | parse named tuple columns as JSON objects. | `true` | |
+| [`input_format_json_try_infer_numbers_from_strings`](/core/reference/settings/formats#input_format_json_try_infer_numbers_from_strings) | try to infer numbers from string fields while schema inference. | `false` | |
+| [`input_format_json_try_infer_named_tuples_from_objects`](/core/reference/settings/formats#input_format_json_try_infer_named_tuples_from_objects) | try to infer named tuple from JSON objects during schema inference. | `true` | |
+| [`input_format_json_infer_incomplete_types_as_strings`](/core/reference/settings/formats#input_format_json_infer_incomplete_types_as_strings) | use type String for keys that contains only Nulls or empty objects/arrays during schema inference in JSON input formats. | `true` | |
+| [`input_format_json_defaults_for_missing_elements_in_named_tuple`](/core/reference/settings/formats#input_format_json_defaults_for_missing_elements_in_named_tuple) | insert default values for missing elements in JSON object while parsing named tuple. | `true` | |
+| [`input_format_json_ignore_unknown_keys_in_named_tuple`](/core/reference/settings/formats#input_format_json_ignore_unknown_keys_in_named_tuple) | ignore unknown keys in json object for named tuples. | `false` | |
+| [`input_format_json_compact_allow_variable_number_of_columns`](/core/reference/settings/formats#input_format_json_compact_allow_variable_number_of_columns) | allow variable number of columns in JSONCompact/JSONCompactEachRow format, ignore extra columns and use default values on missing columns. | `false` | |
+| [`input_format_json_throw_on_bad_escape_sequence`](/core/reference/settings/formats#input_format_json_throw_on_bad_escape_sequence) | throw an exception if JSON string contains bad escape sequence. If disabled, bad escape sequences will remain as is in the data. | `true` | |
+| [`input_format_json_empty_as_default`](/core/reference/settings/formats#input_format_json_empty_as_default) | treat empty fields in JSON input as default values. | `false`. | For complex default expressions [`input_format_defaults_for_omitted_fields`](/core/reference/settings/formats#input_format_defaults_for_omitted_fields) must be enabled too. |
+| [`output_format_json_quote_64bit_integers`](/core/reference/settings/formats#output_format_json_quote_64bit_integers) | controls quoting of 64-bit integers in JSON output format. | `true` | |
+| [`output_format_json_quote_64bit_floats`](/core/reference/settings/formats#output_format_json_quote_64bit_floats) | controls quoting of 64-bit floats in JSON output format. | `false` | |
+| [`output_format_json_quote_denormals`](/core/reference/settings/formats#output_format_json_quote_denormals) | enables '+nan', '-nan', '+inf', '-inf' outputs in JSON output format. | `false` | |
+| [`output_format_json_quote_decimals`](/core/reference/settings/formats#output_format_json_quote_decimals) | controls quoting of decimals in JSON output format. | `false` | |
+| [`output_format_json_escape_forward_slashes`](/core/reference/settings/formats#output_format_json_escape_forward_slashes) | controls escaping forward slashes for string outputs in JSON output format. | `true` | |
+| [`output_format_json_named_tuples_as_objects`](/core/reference/settings/formats#output_format_json_named_tuples_as_objects) | serialize named tuple columns as JSON objects. | `true` | |
+| [`output_format_json_array_of_rows`](/core/reference/settings/formats#output_format_json_array_of_rows) | output a JSON array of all rows in JSONEachRow(Compact) format. | `false` | |
+| [`output_format_json_validate_utf8`](/core/reference/settings/formats#output_format_json_validate_utf8) | enables validation of UTF-8 sequences in JSON output formats (note that it doesn't impact formats JSON/JSONCompact/JSONColumnsWithMetadata, they always validate utf8). | `false` | |
\ No newline at end of file
diff --git a/reference/formats/JSON/JSONStrings.mdx b/core/reference/formats/JSON/JSONStrings.mdx
similarity index 98%
rename from reference/formats/JSON/JSONStrings.mdx
rename to core/reference/formats/JSON/JSONStrings.mdx
index 3127ba39..ce71704e 100644
--- a/reference/formats/JSON/JSONStrings.mdx
+++ b/core/reference/formats/JSON/JSONStrings.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [JSON](/reference/formats/JSON/JSON) format only in that data fields are output as strings, not as typed JSON values.
+Differs from the [JSON](/core/reference/formats/JSON/JSON) format only in that data fields are output as strings, not as typed JSON values.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONStringsEachRow.mdx b/core/reference/formats/JSON/JSONStringsEachRow.mdx
similarity index 97%
rename from reference/formats/JSON/JSONStringsEachRow.mdx
rename to core/reference/formats/JSON/JSONStringsEachRow.mdx
index af83a503..0c8b85ef 100644
--- a/reference/formats/JSON/JSONStringsEachRow.mdx
+++ b/core/reference/formats/JSON/JSONStringsEachRow.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`JSONEachRow`](/reference/formats/JSON/JSONEachRow) only in that data fields are output in strings, not in typed JSON values.
+Differs from the [`JSONEachRow`](/core/reference/formats/JSON/JSONEachRow) only in that data fields are output in strings, not in typed JSON values.
## Example usage {#example-usage}
diff --git a/reference/formats/JSON/JSONStringsEachRowWithProgress.mdx b/core/reference/formats/JSON/JSONStringsEachRowWithProgress.mdx
similarity index 100%
rename from reference/formats/JSON/JSONStringsEachRowWithProgress.mdx
rename to core/reference/formats/JSON/JSONStringsEachRowWithProgress.mdx
diff --git a/reference/formats/JSON/PrettyJSONEachRow.mdx b/core/reference/formats/JSON/PrettyJSONEachRow.mdx
similarity index 97%
rename from reference/formats/JSON/PrettyJSONEachRow.mdx
rename to core/reference/formats/JSON/PrettyJSONEachRow.mdx
index c7738685..30254720 100644
--- a/reference/formats/JSON/PrettyJSONEachRow.mdx
+++ b/core/reference/formats/JSON/PrettyJSONEachRow.mdx
@@ -15,7 +15,7 @@ doc_type: 'guide'
## Description {#description}
-Differs from [JSONEachRow](/reference/formats/JSON/JSONEachRow) only in that JSON is pretty formatted with new line delimiters and 4 space indents.
+Differs from [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) only in that JSON is pretty formatted with new line delimiters and 4 space indents.
## Example usage {#example-usage}
### Inserting data {#inserting-data}
diff --git a/core/reference/formats/JSON/format-settings.mdx b/core/reference/formats/JSON/format-settings.mdx
new file mode 100644
index 00000000..d5e0edae
--- /dev/null
+++ b/core/reference/formats/JSON/format-settings.mdx
@@ -0,0 +1,37 @@
+---
+description: 'List of format settings for the JSON format'
+keywords: ['Format Settings', 'JSON']
+slug: /interfaces/formats/JSON/format-settings
+title: 'Format Settings For JSON'
+doc_type: 'reference'
+---
+
+On this page you can find format settings common to all JSON formats.
+
+{/* TO DO - AUTOGENERATE THE TABLE BELOW */}
+
+| Setting | Description | Default | Note |
+|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------|---------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| [`input_format_import_nested_json`](/core/reference/settings/formats#input_format_import_nested_json) | Map nested JSON data to nested tables (it works for JSONEachRow format). | `false` | |
+| [`input_format_json_read_bools_as_numbers`](/core/reference/settings/formats#input_format_json_read_bools_as_numbers) | Allow to parse bools as numbers in JSON input formats. | `true` | |
+| [`input_format_json_read_bools_as_strings`](/core/reference/settings/formats#input_format_json_read_bools_as_strings) | Allow to parse bools as strings in JSON input formats. | `true` | |
+| [`input_format_json_read_numbers_as_strings`](/core/reference/settings/formats#input_format_json_read_numbers_as_strings) | Allow to parse numbers as strings in JSON input formats. | `true` | |
+| [`input_format_json_read_arrays_as_strings`](/core/reference/settings/formats#input_format_json_read_arrays_as_strings) | Allow to parse JSON arrays as strings in JSON input formats. | `true` | |
+| [`input_format_json_read_objects_as_strings`](/core/reference/settings/formats#input_format_json_read_objects_as_strings) | Allow to parse JSON objects as strings in JSON input formats. | `true` | |
+| [`input_format_json_named_tuples_as_objects`](/core/reference/settings/formats#input_format_json_named_tuples_as_objects) | Parse named tuple columns as JSON objects. | `true` | |
+| [`input_format_json_try_infer_numbers_from_strings`](/core/reference/settings/formats#input_format_json_try_infer_numbers_from_strings) | Try to infer numbers from string fields while schema inference. | `false` | |
+| [`input_format_json_try_infer_named_tuples_from_objects`](/core/reference/settings/formats#input_format_json_try_infer_named_tuples_from_objects) | Try to infer named tuple from JSON objects during schema inference. | `true` | |
+| [`input_format_json_infer_incomplete_types_as_strings`](/core/reference/settings/formats#input_format_json_infer_incomplete_types_as_strings) | Use type String for keys that contains only Nulls or empty objects/arrays during schema inference in JSON input formats. | `true` | |
+| [`input_format_json_defaults_for_missing_elements_in_named_tuple`](/core/reference/settings/formats#input_format_json_defaults_for_missing_elements_in_named_tuple) | Insert default values for missing elements in JSON object while parsing named tuple. | `true` | |
+| [`input_format_json_ignore_unknown_keys_in_named_tuple`](/core/reference/settings/formats#input_format_json_ignore_unknown_keys_in_named_tuple) | Ignore unknown keys in json object for named tuples. | `false` | |
+| [`input_format_json_compact_allow_variable_number_of_columns`](/core/reference/settings/formats#input_format_json_compact_allow_variable_number_of_columns) | Allow variable number of columns in JSONCompact/JSONCompactEachRow format, ignore extra columns and use default values on missing columns. | `false` | |
+| [`input_format_json_throw_on_bad_escape_sequence`](/core/reference/settings/formats#input_format_json_throw_on_bad_escape_sequence) | Throw an exception if JSON string contains bad escape sequence. If disabled, bad escape sequences will remain as is in the data. | `true` | |
+| [`input_format_json_empty_as_default`](/core/reference/settings/formats#input_format_json_empty_as_default) | Treat empty fields in JSON input as default values. | `false` | For complex default expressions [input_format_defaults_for_omitted_fields](/core/reference/settings/formats#input_format_defaults_for_omitted_fields) must be enabled too. |
+| [`output_format_json_quote_64bit_integers`](/core/reference/settings/formats#output_format_json_quote_64bit_integers) | Controls quoting of 64-bit integers in JSON output format. | `true` | |
+| [`output_format_json_quote_64bit_floats`](/core/reference/settings/formats#output_format_json_quote_64bit_floats) | Controls quoting of 64-bit floats in JSON output format. | `false` | |
+| [`output_format_json_quote_denormals`](/core/reference/settings/formats#output_format_json_quote_denormals) | Enables '+nan', '-nan', '+inf', '-inf' outputs in JSON output format. | `false` | |
+| [`output_format_json_quote_decimals`](/core/reference/settings/formats#output_format_json_quote_decimals) | Controls quoting of decimals in JSON output format. | `false` | |
+| [`output_format_json_escape_forward_slashes`](/core/reference/settings/formats#output_format_json_escape_forward_slashes) | Controls escaping forward slashes for string outputs in JSON output format. | `true` | |
+| [`output_format_json_named_tuples_as_objects`](/core/reference/settings/formats#output_format_json_named_tuples_as_objects) | Serialize named tuple columns as JSON objects. | `true` | |
+| [`output_format_json_array_of_rows`](/core/reference/settings/formats#output_format_json_array_of_rows) | Output a JSON array of all rows in JSONEachRow(Compact) format. | `false` | |
+| [`output_format_json_validate_utf8`](/core/reference/settings/formats#output_format_json_validate_utf8) | Enables validation of UTF-8 sequences in JSON output formats | `false` | Note that it doesn't impact formats JSON/JSONCompact/JSONColumnsWithMetadata, they always validate utf8. |
diff --git a/reference/formats/LineAsString/LineAsString.mdx b/core/reference/formats/LineAsString/LineAsString.mdx
similarity index 83%
rename from reference/formats/LineAsString/LineAsString.mdx
rename to core/reference/formats/LineAsString/LineAsString.mdx
index 9f3a9177..0cbf81e9 100644
--- a/reference/formats/LineAsString/LineAsString.mdx
+++ b/core/reference/formats/LineAsString/LineAsString.mdx
@@ -16,8 +16,8 @@ doc_type: 'reference'
## Description {#description}
The `LineAsString` format interprets every line of input data as a single string value.
-This format can only be parsed for a table with a single field of type [String](/reference/data-types/string).
-The remaining columns must be set to [`DEFAULT`](/reference/statements/create/table#default), [`MATERIALIZED`](/reference/statements/create/view#materialized-view), or omitted.
+This format can only be parsed for a table with a single field of type [String](/core/reference/data-types/string).
+The remaining columns must be set to [`DEFAULT`](/core/reference/statements/create/table#default), [`MATERIALIZED`](/core/reference/statements/create/view#materialized-view), or omitted.
## Example usage {#example-usage}
diff --git a/reference/formats/LineAsString/LineAsStringWithNames.mdx b/core/reference/formats/LineAsString/LineAsStringWithNames.mdx
similarity index 88%
rename from reference/formats/LineAsString/LineAsStringWithNames.mdx
rename to core/reference/formats/LineAsString/LineAsStringWithNames.mdx
index b0c88bd7..c33495bb 100644
--- a/reference/formats/LineAsString/LineAsStringWithNames.mdx
+++ b/core/reference/formats/LineAsString/LineAsStringWithNames.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-The `LineAsStringWithNames` format is similar to the [`LineAsString`](/reference/formats/LineAsString/LineAsString) format but prints the header row with column names.
+The `LineAsStringWithNames` format is similar to the [`LineAsString`](/core/reference/formats/LineAsString/LineAsString) format but prints the header row with column names.
## Example usage {#example-usage}
diff --git a/reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx b/core/reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx
similarity index 93%
rename from reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx
rename to core/reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx
index f0c3ab1b..aec5b9ef 100644
--- a/reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx
+++ b/core/reference/formats/LineAsString/LineAsStringWithNamesAndTypes.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-The `LineAsStringWithNames` format is similar to the [`LineAsString`](/reference/formats/LineAsString/LineAsString) format
+The `LineAsStringWithNames` format is similar to the [`LineAsString`](/core/reference/formats/LineAsString/LineAsString) format
but prints two header rows: one with column names, the other with types.
## Example usage {#example-usage}
diff --git a/reference/formats/Markdown.mdx b/core/reference/formats/Markdown.mdx
similarity index 100%
rename from reference/formats/Markdown.mdx
rename to core/reference/formats/Markdown.mdx
diff --git a/core/reference/formats/MsgPack.mdx b/core/reference/formats/MsgPack.mdx
new file mode 100644
index 00000000..b1a488e9
--- /dev/null
+++ b/core/reference/formats/MsgPack.mdx
@@ -0,0 +1,60 @@
+---
+alias: []
+description: 'Documentation for the MsgPack format'
+input_format: true
+keywords: ['MsgPack']
+output_format: true
+slug: /interfaces/formats/MsgPack
+title: 'MsgPack'
+doc_type: 'reference'
+---
+
+| Input | Output | Alias |
+|-------|--------|-------|
+| ✔ | ✔ | |
+
+## Description {#description}
+
+ClickHouse supports reading and writing [MessagePack](https://msgpack.org/) data files.
+
+## Data types matching {#data-types-matching}
+
+| MessagePack data type (`INSERT`) | ClickHouse data type | MessagePack data type (`SELECT`) |
+|--------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|----------------------------------|
+| `uint N`, `positive fixint` | [`UIntN`](/core/reference/data-types/int-uint) | `uint N` |
+| `int N`, `negative fixint` | [`IntN`](/core/reference/data-types/int-uint) | `int N` |
+| `bool` | [`UInt8`](/core/reference/data-types/int-uint) | `uint 8` |
+| `fixstr`, `str 8`, `str 16`, `str 32`, `bin 8`, `bin 16`, `bin 32` | [`String`](/core/reference/data-types/string) | `bin 8`, `bin 16`, `bin 32` |
+| `fixstr`, `str 8`, `str 16`, `str 32`, `bin 8`, `bin 16`, `bin 32` | [`FixedString`](/core/reference/data-types/fixedstring) | `bin 8`, `bin 16`, `bin 32` |
+| `float 32` | [`Float32`](/core/reference/data-types/float) | `float 32` |
+| `float 64` | [`Float64`](/core/reference/data-types/float) | `float 64` |
+| `uint 16` | [`Date`](/core/reference/data-types/date) | `uint 16` |
+| `int 32` | [`Date32`](/core/reference/data-types/date32) | `int 32` |
+| `uint 32` | [`DateTime`](/core/reference/data-types/datetime) | `uint 32` |
+| `uint 64` | [`DateTime64`](/core/reference/data-types/datetime) | `uint 64` |
+| `fixarray`, `array 16`, `array 32` | [`Array`](/core/reference/data-types/array)/[`Tuple`](/core/reference/data-types/tuple) | `fixarray`, `array 16`, `array 32` |
+| `fixmap`, `map 16`, `map 32` | [`Map`](/core/reference/data-types/map) | `fixmap`, `map 16`, `map 32` |
+| `uint 32` | [`IPv4`](/core/reference/data-types/ipv4) | `uint 32` |
+| `bin 8` | [`String`](/core/reference/data-types/string) | `bin 8` |
+| `int 8` | [`Enum8`](/core/reference/data-types/enum) | `int 8` |
+| `bin 8` | [`(U)Int128`/`(U)Int256`](/core/reference/data-types/int-uint) | `bin 8` |
+| `int 32` | [`Decimal32`](/core/reference/data-types/decimal) | `int 32` |
+| `int 64` | [`Decimal64`](/core/reference/data-types/decimal) | `int 64` |
+| `bin 8` | [`Decimal128`/`Decimal256`](/core/reference/data-types/decimal) | `bin 8 ` |
+
+## Example usage {#example-usage}
+
+Writing to a file ".msgpk":
+
+```sql
+$ clickhouse-client --query="CREATE TABLE msgpack (array Array(UInt8)) ENGINE = Memory;"
+$ clickhouse-client --query="INSERT INTO msgpack VALUES ([0, 1, 2, 3, 42, 253, 254, 255]), ([255, 254, 253, 42, 3, 2, 1, 0])";
+$ clickhouse-client --query="SELECT * FROM msgpack FORMAT MsgPack" > tmp_msgpack.msgpk;
+```
+
+## Format settings {#format-settings}
+
+| Setting | Description | Default |
+|--------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------|---------|
+| [`input_format_msgpack_number_of_columns`](/core/reference/settings/formats#input_format_msgpack_number_of_columns) | the number of columns in inserted MsgPack data. Used for automatic schema inference from data. | `0` |
+| [`output_format_msgpack_uuid_representation`](/core/reference/settings/formats#output_format_msgpack_uuid_representation) | the way how to output UUID in MsgPack format. | `EXT` |
\ No newline at end of file
diff --git a/reference/formats/MySQLDump.mdx b/core/reference/formats/MySQLDump.mdx
similarity index 93%
rename from reference/formats/MySQLDump.mdx
rename to core/reference/formats/MySQLDump.mdx
index d20ea630..c02685ae 100644
--- a/reference/formats/MySQLDump.mdx
+++ b/core/reference/formats/MySQLDump.mdx
@@ -82,6 +82,6 @@ SETTINGS input_format_mysql_dump_table_name = 'test2'
## Format settings {#format-settings}
-You can specify the name of the table from which to read data from using the [`input_format_mysql_dump_table_name`](/reference/settings/formats#input_format_mysql_dump_table_name) setting.
+You can specify the name of the table from which to read data from using the [`input_format_mysql_dump_table_name`](/core/reference/settings/formats#input_format_mysql_dump_table_name) setting.
If setting `input_format_mysql_dump_map_columns` is set to `1` and the dump contains a `CREATE` query for specified table or column names in the `INSERT` query, the columns from the input data will map to the columns from the table by name.
-Columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
\ No newline at end of file
+Columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
\ No newline at end of file
diff --git a/reference/formats/MySQLWire.mdx b/core/reference/formats/MySQLWire.mdx
similarity index 100%
rename from reference/formats/MySQLWire.mdx
rename to core/reference/formats/MySQLWire.mdx
diff --git a/reference/formats/Native.mdx b/core/reference/formats/Native.mdx
similarity index 89%
rename from reference/formats/Native.mdx
rename to core/reference/formats/Native.mdx
index 8be8a451..0463347b 100644
--- a/reference/formats/Native.mdx
+++ b/core/reference/formats/Native.mdx
@@ -18,7 +18,7 @@ doc_type: 'reference'
The `Native` format is ClickHouse's most efficient format because it is truly "columnar"
in that it does not convert columns to rows.
-In this format data is written and read by [blocks](/resources/contribute/architecture#block) in a binary format.
+In this format data is written and read by [blocks](/resources/develop-contribute/introduction/architecture#block) in a binary format.
For each block, the number of rows, number of columns, column names and types, and parts of columns in the block are recorded one after another.
This is the format used in the native interface for interaction between servers, for using the command-line client, and for C++ clients.
@@ -33,7 +33,7 @@ It might not be practical to work with this format yourself.
Data is sent over the wire in a columnar format, which means that each column is sent separately,
and all values of a column are sent together as a single array.
-Each column in a block contains a header similar to [RowBinaryWithNamesAndTypes](/reference/formats/RowBinary/RowBinaryWithNamesAndTypes).
+Each column in a block contains a header similar to [RowBinaryWithNamesAndTypes](/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes).
When using the native TCP binary protocol (or when the HTTP endpoint receives `?client_protocol_version=`),
@@ -155,7 +155,7 @@ The full list of types that match this description includes:
- IPv6
- UUID
-Refer to the descriptions of the types above in ["RowBinary data types wire format"](/reference/formats/RowBinary/RowBinary#data-types-wire-format) for more details.
+Refer to the descriptions of the types above in ["RowBinary data types wire format"](/core/reference/formats/RowBinary/RowBinary#data-types-wire-format) for more details.
### Complex data types {#complex-data-types}
@@ -291,7 +291,7 @@ const data = new Uint8Array([
#### LowCardinality {#lowcardinality}
-Unlike [RowBinary](/reference/formats/RowBinary/RowBinary#lowcardinality) where `LowCardinality` is transparent, the Native format uses a dictionary-based columnar encoding. A column is encoded as a version prefix, then a dictionary of unique values, and an array of integer indexes into that dictionary.
+Unlike [RowBinary](/core/reference/formats/RowBinary/RowBinary#lowcardinality) where `LowCardinality` is transparent, the Native format uses a dictionary-based columnar encoding. A column is encoded as a version prefix, then a dictionary of unique values, and an array of integer indexes into that dictionary.
A column can be defined as `LowCardinality(Nullable(T))`, but it is not possible to define it as `Nullable(LowCardinality(T))` — it will always result in an error from the server.
@@ -339,7 +339,7 @@ With `LowCardinality(Nullable(String))`, index 0 is `NULL`:
#### Array {#array}
-Unlike [RowBinary](/reference/formats/RowBinary/RowBinary#array) where each array is prefixed with a LEB128 element count, the Native format encodes arrays as two columnar sub-streams:
+Unlike [RowBinary](/core/reference/formats/RowBinary/RowBinary#array) where each array is prefixed with a LEB128 element count, the Native format encodes arrays as two columnar sub-streams:
- N cumulative `UInt64` offsets (little-endian, 8 bytes each). Row `i` has `offset[i] - offset[i-1]` elements, with `offset[-1]` implicitly 0.
- All nested elements across all rows, bulk-serialized contiguously.
@@ -378,7 +378,7 @@ An empty array has the same offset as the previous row. For example, `Array(Stri
#### Map {#map}
-A `Map(K, V)` is encoded as `Array(Tuple(K, V))` — array offsets followed by all keys, then all values. This differs from [RowBinary](/reference/formats/RowBinary/RowBinary#map) where keys and values are interleaved per entry.
+A `Map(K, V)` is encoded as `Array(Tuple(K, V))` — array offsets followed by all keys, then all values. This differs from [RowBinary](/core/reference/formats/RowBinary/RowBinary#map) where keys and values are interleaved per entry.
For example, `Map(String, UInt64)` with 3 rows `[{'a':0,'b':10}, {'a':1,'b':11}, {'a':2,'b':12}]`:
@@ -407,7 +407,7 @@ For example, `Map(String, UInt64)` with 3 rows `[{'a':0,'b':10}, {'a':1,'b':11},
#### Variant {#variant}
-Unlike [RowBinary](/reference/formats/RowBinary/RowBinary#variant) where each row carries its own discriminant byte followed by the value inline, the Native format separates discriminators from data.
+Unlike [RowBinary](/core/reference/formats/RowBinary/RowBinary#variant) where each row carries its own discriminant byte followed by the value inline, the Native format separates discriminators from data.
As with RowBinary, the types in the definition are always sorted alphabetically, and the discriminant is the index in that sorted list. `0xFF` (255) represents `NULL`.
@@ -436,7 +436,7 @@ For example, `Variant(String, UInt32)` with 5 rows `[0::UInt32, 'hello', NULL, 3
#### Dynamic {#dynamic}
-Unlike [RowBinary](/reference/formats/RowBinary/RowBinary#dynamic) where each value is self-describing (type prefix + value), the Native format serializes `Dynamic` as a structure prefix followed by a [Variant](#variant) column.
+Unlike [RowBinary](/core/reference/formats/RowBinary/RowBinary#dynamic) where each value is self-describing (type prefix + value), the Native format serializes `Dynamic` as a structure prefix followed by a [Variant](#variant) column.
The structure prefix contains a `UInt64(LE)` serialization version, then the number of dynamic types (as VarUInt), then the type names as strings. In version V1 the type count is written twice for compatibility. The data that follows is a `Variant` column whose type list is the dynamic types plus an internal `SharedVariant` type, sorted alphabetically.
@@ -463,6 +463,6 @@ For example, `Dynamic` with 5 rows `[0::UInt32, 'hello', NULL, 3::UInt32, 'hello
#### JSON {#json}
-Unlike [RowBinary](/reference/formats/RowBinary/RowBinary#json) where each row is self-describing with path names and values, the Native format serializes `JSON` in a columnar structure. The encoding is complex and version-dependent: it consists of a structure prefix with the serialization version, dynamic path names, and shared data layout, followed by typed paths (each as a bulk column), dynamic paths (each as a [Dynamic](#dynamic) column), and shared data for overflow paths.
+Unlike [RowBinary](/core/reference/formats/RowBinary/RowBinary#json) where each row is self-describing with path names and values, the Native format serializes `JSON` in a columnar structure. The encoding is complex and version-dependent: it consists of a structure prefix with the serialization version, dynamic path names, and shared data layout, followed by typed paths (each as a bulk column), dynamic paths (each as a [Dynamic](#dynamic) column), and shared data for overflow paths.
For simpler interoperability, consider using the setting `output_format_native_write_json_as_string=1`, which serializes JSON columns as plain JSON text strings (one `String` per row).
diff --git a/reference/formats/Npy.mdx b/core/reference/formats/Npy.mdx
similarity index 58%
rename from reference/formats/Npy.mdx
rename to core/reference/formats/Npy.mdx
index 8e5158f6..ac080d25 100644
--- a/reference/formats/Npy.mdx
+++ b/core/reference/formats/Npy.mdx
@@ -25,18 +25,18 @@ The table below gives the supported Npy data types and their corresponding type
| Npy data type (`INSERT`) | ClickHouse data type | Npy data type (`SELECT`) |
|--------------------------|-----------------------------------------------------------------|-------------------------|
-| `i1` | [Int8](/reference/data-types/int-uint) | `i1` |
-| `i2` | [Int16](/reference/data-types/int-uint) | `i2` |
-| `i4` | [Int32](/reference/data-types/int-uint) | `i4` |
-| `i8` | [Int64](/reference/data-types/int-uint) | `i8` |
-| `u1`, `b1` | [UInt8](/reference/data-types/int-uint) | `u1` |
-| `u2` | [UInt16](/reference/data-types/int-uint) | `u2` |
-| `u4` | [UInt32](/reference/data-types/int-uint) | `u4` |
-| `u8` | [UInt64](/reference/data-types/int-uint) | `u8` |
-| `f2`, `f4` | [Float32](/reference/data-types/float) | `f4` |
-| `f8` | [Float64](/reference/data-types/float) | `f8` |
-| `S`, `U` | [String](/reference/data-types/string) | `S` |
-| | [FixedString](/reference/data-types/fixedstring) | `S` |
+| `i1` | [Int8](/core/reference/data-types/int-uint) | `i1` |
+| `i2` | [Int16](/core/reference/data-types/int-uint) | `i2` |
+| `i4` | [Int32](/core/reference/data-types/int-uint) | `i4` |
+| `i8` | [Int64](/core/reference/data-types/int-uint) | `i8` |
+| `u1`, `b1` | [UInt8](/core/reference/data-types/int-uint) | `u1` |
+| `u2` | [UInt16](/core/reference/data-types/int-uint) | `u2` |
+| `u4` | [UInt32](/core/reference/data-types/int-uint) | `u4` |
+| `u8` | [UInt64](/core/reference/data-types/int-uint) | `u8` |
+| `f2`, `f4` | [Float32](/core/reference/data-types/float) | `f4` |
+| `f8` | [Float64](/core/reference/data-types/float) | `f8` |
+| `S`, `U` | [String](/core/reference/data-types/string) | `S` |
+| | [FixedString](/core/reference/data-types/fixedstring) | `S` |
## Example usage {#example-usage}
diff --git a/reference/formats/Null.mdx b/core/reference/formats/Null.mdx
similarity index 100%
rename from reference/formats/Null.mdx
rename to core/reference/formats/Null.mdx
diff --git a/reference/formats/ODBCDriver2.mdx b/core/reference/formats/ODBCDriver2.mdx
similarity index 100%
rename from reference/formats/ODBCDriver2.mdx
rename to core/reference/formats/ODBCDriver2.mdx
diff --git a/reference/formats/ORC.mdx b/core/reference/formats/ORC.mdx
similarity index 52%
rename from reference/formats/ORC.mdx
rename to core/reference/formats/ORC.mdx
index 7feb6769..cb064c96 100644
--- a/reference/formats/ORC.mdx
+++ b/core/reference/formats/ORC.mdx
@@ -19,32 +19,32 @@ doc_type: 'reference'
## Data types matching {#data-types-matching-orc}
-The table below compares supported ORC data types and their corresponding ClickHouse [data types](/reference/data-types) in `INSERT` and `SELECT` queries.
+The table below compares supported ORC data types and their corresponding ClickHouse [data types](/core/reference/data-types) in `INSERT` and `SELECT` queries.
| ORC data type (`INSERT`) | ClickHouse data type | ORC data type (`SELECT`) |
|---------------------------------------|-------------------------------------------------------------------------------------------------------------------|--------------------------|
-| `Boolean` | [UInt8](/reference/data-types/int-uint) | `Boolean` |
-| `Tinyint` | [Int8/UInt8](/reference/data-types/int-uint)/[Enum8](/reference/data-types/enum) | `Tinyint` |
-| `Smallint` | [Int16/UInt16](/reference/data-types/int-uint)/[Enum16](/reference/data-types/enum) | `Smallint` |
-| `Int` | [Int32/UInt32](/reference/data-types/int-uint) | `Int` |
-| `Bigint` | [Int64/UInt32](/reference/data-types/int-uint) | `Bigint` |
-| `Float` | [Float32](/reference/data-types/float) | `Float` |
-| `Double` | [Float64](/reference/data-types/float) | `Double` |
-| `Decimal` | [Decimal](/reference/data-types/decimal) | `Decimal` |
-| `Date` | [Date32](/reference/data-types/date32) | `Date` |
-| `Timestamp` | [DateTime64](/reference/data-types/datetime64) | `Timestamp` |
-| `String`, `Char`, `Varchar`, `Binary` | [String](/reference/data-types/string) | `Binary` |
-| `List` | [Array](/reference/data-types/array) | `List` |
-| `Struct` | [Tuple](/reference/data-types/tuple) | `Struct` |
-| `Map` | [Map](/reference/data-types/map) | `Map` |
-| `Int` | [IPv4](/reference/data-types/int-uint) | `Int` |
-| `Binary` | [IPv6](/reference/data-types/ipv6) | `Binary` |
-| `Binary` | [Int128/UInt128/Int256/UInt256](/reference/data-types/int-uint) | `Binary` |
-| `Binary` | [Decimal256](/reference/data-types/decimal) | `Binary` |
+| `Boolean` | [UInt8](/core/reference/data-types/int-uint) | `Boolean` |
+| `Tinyint` | [Int8/UInt8](/core/reference/data-types/int-uint)/[Enum8](/core/reference/data-types/enum) | `Tinyint` |
+| `Smallint` | [Int16/UInt16](/core/reference/data-types/int-uint)/[Enum16](/core/reference/data-types/enum) | `Smallint` |
+| `Int` | [Int32/UInt32](/core/reference/data-types/int-uint) | `Int` |
+| `Bigint` | [Int64/UInt32](/core/reference/data-types/int-uint) | `Bigint` |
+| `Float` | [Float32](/core/reference/data-types/float) | `Float` |
+| `Double` | [Float64](/core/reference/data-types/float) | `Double` |
+| `Decimal` | [Decimal](/core/reference/data-types/decimal) | `Decimal` |
+| `Date` | [Date32](/core/reference/data-types/date32) | `Date` |
+| `Timestamp` | [DateTime64](/core/reference/data-types/datetime64) | `Timestamp` |
+| `String`, `Char`, `Varchar`, `Binary` | [String](/core/reference/data-types/string) | `Binary` |
+| `List` | [Array](/core/reference/data-types/array) | `List` |
+| `Struct` | [Tuple](/core/reference/data-types/tuple) | `Struct` |
+| `Map` | [Map](/core/reference/data-types/map) | `Map` |
+| `Int` | [IPv4](/core/reference/data-types/int-uint) | `Int` |
+| `Binary` | [IPv6](/core/reference/data-types/ipv6) | `Binary` |
+| `Binary` | [Int128/UInt128/Int256/UInt256](/core/reference/data-types/int-uint) | `Binary` |
+| `Binary` | [Decimal256](/core/reference/data-types/decimal) | `Binary` |
- Other types are not supported.
- Arrays can be nested and can have a value of the `Nullable` type as an argument. `Tuple` and `Map` types also can be nested.
-- The data types of ClickHouse table columns do not have to match the corresponding ORC data fields. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/reference/functions/regular-functions/type-conversion-functions#CAST) the data to the data type set for the ClickHouse table column.
+- The data types of ClickHouse table columns do not have to match the corresponding ORC data fields. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/core/reference/functions/regular-functions/type-conversion-functions#CAST) the data to the data type set for the ClickHouse table column.
## Example usage {#example-usage}
@@ -99,10 +99,10 @@ ORC is a binary format that does not display in a human-readable form on the ter
| Setting | Description | Default |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------|---------|
-| [`output_format_arrow_string_as_string`](/reference/settings/formats#output_format_arrow_string_as_string) | Use Arrow String type instead of Binary for String columns. | `false` |
-| [`output_format_orc_compression_method`](/reference/settings/formats#output_format_orc_compression_method) | Compression method used in output ORC format. Default value | `none` |
-| [`input_format_arrow_case_insensitive_column_matching`](/reference/settings/formats#input_format_arrow_case_insensitive_column_matching) | Ignore case when matching Arrow columns with ClickHouse columns. | `false` |
-| [`input_format_arrow_allow_missing_columns`](/reference/settings/formats#input_format_arrow_allow_missing_columns) | Allow missing columns while reading Arrow data. | `false` |
-| [`input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference`](/reference/settings/formats#input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference) | Allow skipping columns with unsupported types while schema inference for Arrow format. | `false` |
+| [`output_format_arrow_string_as_string`](/core/reference/settings/formats#output_format_arrow_string_as_string) | Use Arrow String type instead of Binary for String columns. | `false` |
+| [`output_format_orc_compression_method`](/core/reference/settings/formats#output_format_orc_compression_method) | Compression method used in output ORC format. Default value | `none` |
+| [`input_format_arrow_case_insensitive_column_matching`](/core/reference/settings/formats#input_format_arrow_case_insensitive_column_matching) | Ignore case when matching Arrow columns with ClickHouse columns. | `false` |
+| [`input_format_arrow_allow_missing_columns`](/core/reference/settings/formats#input_format_arrow_allow_missing_columns) | Allow missing columns while reading Arrow data. | `false` |
+| [`input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference`](/core/reference/settings/formats#input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference) | Allow skipping columns with unsupported types while schema inference for Arrow format. | `false` |
-To exchange data with Hadoop, you can use [HDFS table engine](/reference/engines/table-engines/integrations/hdfs).
+To exchange data with Hadoop, you can use [HDFS table engine](/core/reference/engines/table-engines/integrations/hdfs).
diff --git a/reference/formats/One.mdx b/core/reference/formats/One.mdx
similarity index 91%
rename from reference/formats/One.mdx
rename to core/reference/formats/One.mdx
index 1e870c09..57e57379 100644
--- a/reference/formats/One.mdx
+++ b/core/reference/formats/One.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-The `One` format is a special input format that doesn't read any data from file, and returns only one row with column of type [`UInt8`](/reference/data-types/int-uint), name `dummy` and value `0` (like the `system.one` table).
+The `One` format is a special input format that doesn't read any data from file, and returns only one row with column of type [`UInt8`](/core/reference/data-types/int-uint), name `dummy` and value `0` (like the `system.one` table).
Can be used with virtual columns `_file/_path` to list all files without reading actual data.
## Example usage {#example-usage}
diff --git a/reference/formats/Parquet/Parquet.mdx b/core/reference/formats/Parquet/Parquet.mdx
similarity index 85%
rename from reference/formats/Parquet/Parquet.mdx
rename to core/reference/formats/Parquet/Parquet.mdx
index d94373a2..130d76b6 100644
--- a/reference/formats/Parquet/Parquet.mdx
+++ b/core/reference/formats/Parquet/Parquet.mdx
@@ -19,48 +19,48 @@ doc_type: 'reference'
## Data types matching {#data-types-matching-parquet}
-The table below shows how Parquet data types match ClickHouse [data types](/reference/data-types).
+The table below shows how Parquet data types match ClickHouse [data types](/core/reference/data-types).
| Parquet type (logical, converted, or physical) | ClickHouse data type |
|------------------------------------------------|----------------------|
-| `BOOLEAN` | [Bool](/reference/data-types/boolean) |
-| `UINT_8` | [UInt8](/reference/data-types/int-uint) |
-| `INT_8` | [Int8](/reference/data-types/int-uint) |
-| `UINT_16` | [UInt16](/reference/data-types/int-uint) |
-| `INT_16` | [Int16](/reference/data-types/int-uint)/[Enum16](/reference/data-types/enum) |
-| `UINT_32` | [UInt32](/reference/data-types/int-uint) |
-| `INT_32` | [Int32](/reference/data-types/int-uint) |
-| `UINT_64` | [UInt64](/reference/data-types/int-uint) |
-| `INT_64` | [Int64](/reference/data-types/int-uint) |
-| `DATE` | [Date32](/reference/data-types/date) |
-| `TIMESTAMP`, `TIME` | [DateTime64](/reference/data-types/datetime64) |
-| `FLOAT` | [Float32](/reference/data-types/float) |
-| `DOUBLE` | [Float64](/reference/data-types/float) |
-| `INT96` | [DateTime64(9, 'UTC')](/reference/data-types/datetime64) |
-| `BYTE_ARRAY`, `UTF8`, `ENUM`, `BSON` | [String](/reference/data-types/string) |
-| `JSON` | [JSON](/reference/data-types/newjson) |
-| `FIXED_LEN_BYTE_ARRAY` | [FixedString](/reference/data-types/fixedstring) |
-| `DECIMAL` | [Decimal](/reference/data-types/decimal) |
-| `LIST` | [Array](/reference/data-types/array) |
-| `MAP` | [Map](/reference/data-types/map) |
-| struct | [Tuple](/reference/data-types/tuple) |
-| `FLOAT16` | [Float32](/reference/data-types/float) |
-| `UUID` | [FixedString(16)](/reference/data-types/fixedstring) |
-| `INTERVAL` | [FixedString(12)](/reference/data-types/fixedstring) |
+| `BOOLEAN` | [Bool](/core/reference/data-types/boolean) |
+| `UINT_8` | [UInt8](/core/reference/data-types/int-uint) |
+| `INT_8` | [Int8](/core/reference/data-types/int-uint) |
+| `UINT_16` | [UInt16](/core/reference/data-types/int-uint) |
+| `INT_16` | [Int16](/core/reference/data-types/int-uint)/[Enum16](/core/reference/data-types/enum) |
+| `UINT_32` | [UInt32](/core/reference/data-types/int-uint) |
+| `INT_32` | [Int32](/core/reference/data-types/int-uint) |
+| `UINT_64` | [UInt64](/core/reference/data-types/int-uint) |
+| `INT_64` | [Int64](/core/reference/data-types/int-uint) |
+| `DATE` | [Date32](/core/reference/data-types/date) |
+| `TIMESTAMP`, `TIME` | [DateTime64](/core/reference/data-types/datetime64) |
+| `FLOAT` | [Float32](/core/reference/data-types/float) |
+| `DOUBLE` | [Float64](/core/reference/data-types/float) |
+| `INT96` | [DateTime64(9, 'UTC')](/core/reference/data-types/datetime64) |
+| `BYTE_ARRAY`, `UTF8`, `ENUM`, `BSON` | [String](/core/reference/data-types/string) |
+| `JSON` | [JSON](/core/reference/data-types/newjson) |
+| `FIXED_LEN_BYTE_ARRAY` | [FixedString](/core/reference/data-types/fixedstring) |
+| `DECIMAL` | [Decimal](/core/reference/data-types/decimal) |
+| `LIST` | [Array](/core/reference/data-types/array) |
+| `MAP` | [Map](/core/reference/data-types/map) |
+| struct | [Tuple](/core/reference/data-types/tuple) |
+| `FLOAT16` | [Float32](/core/reference/data-types/float) |
+| `UUID` | [FixedString(16)](/core/reference/data-types/fixedstring) |
+| `INTERVAL` | [FixedString(12)](/core/reference/data-types/fixedstring) |
When writing Parquet file, data types that don't have a matching Parquet type are converted to the nearest available type:
| ClickHouse data type | Parquet type |
|----------------------|--------------|
-| [IPv4](/reference/data-types/ipv4) | `UINT_32` |
-| [IPv6](/reference/data-types/ipv6) | `FIXED_LEN_BYTE_ARRAY` (16 bytes) |
-| [Date](/reference/data-types/date) (16 bits) | `DATE` (32 bits) |
-| [DateTime](/reference/data-types/datetime) (32 bits, seconds) | `TIMESTAMP` (64 bits, milliseconds) |
-| [Int128/UInt128/Int256/UInt256](/reference/data-types/int-uint) | `FIXED_LEN_BYTE_ARRAY` (16/32 bytes, little-endian) |
+| [IPv4](/core/reference/data-types/ipv4) | `UINT_32` |
+| [IPv6](/core/reference/data-types/ipv6) | `FIXED_LEN_BYTE_ARRAY` (16 bytes) |
+| [Date](/core/reference/data-types/date) (16 bits) | `DATE` (32 bits) |
+| [DateTime](/core/reference/data-types/datetime) (32 bits, seconds) | `TIMESTAMP` (64 bits, milliseconds) |
+| [Int128/UInt128/Int256/UInt256](/core/reference/data-types/int-uint) | `FIXED_LEN_BYTE_ARRAY` (16/32 bytes, little-endian) |
Arrays can be nested and can have a value of `Nullable` type as an argument. `Tuple` and `Map` types can also be nested.
-Data types of ClickHouse table columns can differ from the corresponding fields of the Parquet data inserted. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/reference/functions/regular-functions/type-conversion-functions#CAST) the data to that data type which is set for the ClickHouse table column. E.g. a `UINT_32` Parquet column can be read into an [IPv4](/reference/data-types/ipv4) ClickHouse column.
+Data types of ClickHouse table columns can differ from the corresponding fields of the Parquet data inserted. When inserting data, ClickHouse interprets data types according to the table above and then [casts](/core/reference/functions/regular-functions/type-conversion-functions#CAST) the data to that data type which is set for the ClickHouse table column. E.g. a `UINT_32` Parquet column can be read into an [IPv4](/core/reference/data-types/ipv4) ClickHouse column.
For some Parquet types there's no closely matching ClickHouse type. We read them as follows:
* `TIME` (time of day) is read as a timestamp. E.g. `10:23:13.000` becomes `1970-01-01 10:23:13.000`.
@@ -116,7 +116,7 @@ FORMAT Parquet
Parquet is a binary format that does not display in a human-readable form on the terminal. Use the `INTO OUTFILE` to output Parquet files.
-To exchange data with Hadoop, you can use the [`HDFS table engine`](/reference/engines/table-engines/integrations/hdfs).
+To exchange data with Hadoop, you can use the [`HDFS table engine`](/core/reference/engines/table-engines/integrations/hdfs).
## Format settings {#format-settings}
diff --git a/reference/formats/Parquet/ParquetMetadata.mdx b/core/reference/formats/Parquet/ParquetMetadata.mdx
similarity index 100%
rename from reference/formats/Parquet/ParquetMetadata.mdx
rename to core/reference/formats/Parquet/ParquetMetadata.mdx
diff --git a/reference/formats/PostgreSQLWire.mdx b/core/reference/formats/PostgreSQLWire.mdx
similarity index 100%
rename from reference/formats/PostgreSQLWire.mdx
rename to core/reference/formats/PostgreSQLWire.mdx
diff --git a/reference/formats/Pretty/Pretty.mdx b/core/reference/formats/Pretty/Pretty.mdx
similarity index 90%
rename from reference/formats/Pretty/Pretty.mdx
rename to core/reference/formats/Pretty/Pretty.mdx
index e02abd91..5fb51f42 100644
--- a/reference/formats/Pretty/Pretty.mdx
+++ b/core/reference/formats/Pretty/Pretty.mdx
@@ -23,11 +23,11 @@ A full grid of the table is drawn, and each row occupies two lines in the termin
Each result block is output as a separate table.
This is necessary so that blocks can be output without buffering results (buffering would be necessary to pre-calculate the visible width of all the values).
-[NULL](/reference/syntax) is output as `ᴺᵁᴸᴸ`.
+[NULL](/core/reference/syntax) is output as `ᴺᵁᴸᴸ`.
## Example usage {#example-usage}
-Example (shown for the [`PrettyCompact`](/reference/formats/Pretty/PrettyCompact) format):
+Example (shown for the [`PrettyCompact`](/core/reference/formats/Pretty/PrettyCompact) format):
```sql title="Query"
SELECT * FROM t_null
@@ -39,7 +39,7 @@ SELECT * FROM t_null
└───┴──────┘
```
-Rows are not escaped in any of the `Pretty` formats. The following example is shown for the [`PrettyCompact`](/reference/formats/Pretty/PrettyCompact) format:
+Rows are not escaped in any of the `Pretty` formats. The following example is shown for the [`PrettyCompact`](/core/reference/formats/Pretty/PrettyCompact) format:
```sql title="Query"
SELECT 'String with \'quotes\' and \t character' AS Escaping_test
@@ -60,7 +60,7 @@ This format is only appropriate for outputting a query result, but not for parsi
The Pretty format supports outputting total values (when using `WITH TOTALS`) and extremes (when 'extremes' is set to 1).
In these cases, total values and extreme values are output after the main data, in separate tables.
-This is shown in the following example which uses the [`PrettyCompact`](/reference/formats/Pretty/PrettyCompact) format:
+This is shown in the following example which uses the [`PrettyCompact`](/core/reference/formats/Pretty/PrettyCompact) format:
```sql title="Query"
SELECT EventDate, count() AS c
diff --git a/reference/formats/Pretty/PrettyCompact.mdx b/core/reference/formats/Pretty/PrettyCompact.mdx
similarity index 82%
rename from reference/formats/Pretty/PrettyCompact.mdx
rename to core/reference/formats/Pretty/PrettyCompact.mdx
index 06fe6246..2b7777b1 100644
--- a/reference/formats/Pretty/PrettyCompact.mdx
+++ b/core/reference/formats/Pretty/PrettyCompact.mdx
@@ -17,7 +17,7 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`Pretty`](/reference/formats/Pretty/Pretty) format in that the table is displayed with a grid drawn between rows.
+Differs from the [`Pretty`](/core/reference/formats/Pretty/Pretty) format in that the table is displayed with a grid drawn between rows.
Because of this the result is more compact.
diff --git a/reference/formats/Pretty/PrettyCompactMonoBlock.mdx b/core/reference/formats/Pretty/PrettyCompactMonoBlock.mdx
similarity index 77%
rename from reference/formats/Pretty/PrettyCompactMonoBlock.mdx
rename to core/reference/formats/Pretty/PrettyCompactMonoBlock.mdx
index f1e22165..1f3839cc 100644
--- a/reference/formats/Pretty/PrettyCompactMonoBlock.mdx
+++ b/core/reference/formats/Pretty/PrettyCompactMonoBlock.mdx
@@ -17,8 +17,8 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettyCompact`](/reference/formats/Pretty/PrettyCompact) format in that up to `10,000` rows are buffered,
-and then output as a single table, and not by [blocks](/resources/contribute/architecture#block).
+Differs from the [`PrettyCompact`](/core/reference/formats/Pretty/PrettyCompact) format in that up to `10,000` rows are buffered,
+and then output as a single table, and not by [blocks](/resources/develop-contribute/introduction/architecture#block).
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettyCompactNoEscapes.mdx b/core/reference/formats/Pretty/PrettyCompactNoEscapes.mdx
similarity index 78%
rename from reference/formats/Pretty/PrettyCompactNoEscapes.mdx
rename to core/reference/formats/Pretty/PrettyCompactNoEscapes.mdx
index a05f6614..ec8dea2c 100644
--- a/reference/formats/Pretty/PrettyCompactNoEscapes.mdx
+++ b/core/reference/formats/Pretty/PrettyCompactNoEscapes.mdx
@@ -17,7 +17,7 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettyCompact`](/reference/formats/Pretty/PrettyCompact) format in that [ANSI-escape sequences](http://en.wikipedia.org/wiki/ANSI_escape_code) aren't used.
+Differs from the [`PrettyCompact`](/core/reference/formats/Pretty/PrettyCompact) format in that [ANSI-escape sequences](http://en.wikipedia.org/wiki/ANSI_escape_code) aren't used.
This is necessary for displaying the format in a browser, as well as for using the 'watch' command-line utility.
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx b/core/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx
similarity index 76%
rename from reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx
rename to core/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx
index 4f2c2564..2f21a52f 100644
--- a/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx
+++ b/core/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock.mdx
@@ -17,8 +17,8 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettyCompactNoEscapes`](/reference/formats/Pretty/PrettyCompactNoEscapes) format in that up to `10,000` rows are buffered,
-and then output as a single table, and not by [blocks](/resources/contribute/architecture#block).
+Differs from the [`PrettyCompactNoEscapes`](/core/reference/formats/Pretty/PrettyCompactNoEscapes) format in that up to `10,000` rows are buffered,
+and then output as a single table, and not by [blocks](/resources/develop-contribute/introduction/architecture#block).
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettyMonoBlock.mdx b/core/reference/formats/Pretty/PrettyMonoBlock.mdx
similarity index 77%
rename from reference/formats/Pretty/PrettyMonoBlock.mdx
rename to core/reference/formats/Pretty/PrettyMonoBlock.mdx
index ef4ebe2a..87afb716 100644
--- a/reference/formats/Pretty/PrettyMonoBlock.mdx
+++ b/core/reference/formats/Pretty/PrettyMonoBlock.mdx
@@ -17,8 +17,8 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`Pretty`](/reference/formats/Pretty/Pretty) format in that up to `10,000` rows are buffered,
-and then output as a single table, and not by [blocks](/resources/contribute/architecture#block).
+Differs from the [`Pretty`](/core/reference/formats/Pretty/Pretty) format in that up to `10,000` rows are buffered,
+and then output as a single table, and not by [blocks](/resources/develop-contribute/introduction/architecture#block).
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettyNoEscapes.mdx b/core/reference/formats/Pretty/PrettyNoEscapes.mdx
similarity index 72%
rename from reference/formats/Pretty/PrettyNoEscapes.mdx
rename to core/reference/formats/Pretty/PrettyNoEscapes.mdx
index 123e5995..ca453b0e 100644
--- a/reference/formats/Pretty/PrettyNoEscapes.mdx
+++ b/core/reference/formats/Pretty/PrettyNoEscapes.mdx
@@ -17,7 +17,7 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from [Pretty](/reference/formats/Pretty/Pretty) in that [ANSI-escape sequences](http://en.wikipedia.org/wiki/ANSI_escape_code) aren't used.
+Differs from [Pretty](/core/reference/formats/Pretty/Pretty) in that [ANSI-escape sequences](http://en.wikipedia.org/wiki/ANSI_escape_code) aren't used.
This is necessary for displaying the format in a browser, as well as for using the 'watch' command-line utility.
## Example usage {#example-usage}
@@ -29,7 +29,7 @@ $ watch -n1 "clickhouse-client --query='SELECT event, value FROM system.events F
```
-The [HTTP interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http) can be used for displaying this format in the browser.
+The [HTTP interface](/core/concepts/features/interfaces/http) can be used for displaying this format in the browser.
## Format settings {#format-settings}
diff --git a/reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx b/core/reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx
similarity index 82%
rename from reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx
rename to core/reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx
index 872e08c4..51f9b3dd 100644
--- a/reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx
+++ b/core/reference/formats/Pretty/PrettyNoEscapesMonoBlock.mdx
@@ -17,7 +17,7 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettyNoEscapes`](/reference/formats/Pretty/PrettyNoEscapes) format in that up to `10,000` rows are buffered,
+Differs from the [`PrettyNoEscapes`](/core/reference/formats/Pretty/PrettyNoEscapes) format in that up to `10,000` rows are buffered,
and then output as a single table, and not by blocks.
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettySpace.mdx b/core/reference/formats/Pretty/PrettySpace.mdx
similarity index 84%
rename from reference/formats/Pretty/PrettySpace.mdx
rename to core/reference/formats/Pretty/PrettySpace.mdx
index 0f509c86..0b2900cb 100644
--- a/reference/formats/Pretty/PrettySpace.mdx
+++ b/core/reference/formats/Pretty/PrettySpace.mdx
@@ -17,7 +17,7 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettyCompact`](/reference/formats/Pretty/PrettyCompact) format in that whitespace
+Differs from the [`PrettyCompact`](/core/reference/formats/Pretty/PrettyCompact) format in that whitespace
(space characters) is used for displaying the table instead of a grid.
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettySpaceMonoBlock.mdx b/core/reference/formats/Pretty/PrettySpaceMonoBlock.mdx
similarity index 77%
rename from reference/formats/Pretty/PrettySpaceMonoBlock.mdx
rename to core/reference/formats/Pretty/PrettySpaceMonoBlock.mdx
index 66ec5258..2e6a7b16 100644
--- a/reference/formats/Pretty/PrettySpaceMonoBlock.mdx
+++ b/core/reference/formats/Pretty/PrettySpaceMonoBlock.mdx
@@ -17,8 +17,8 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettySpace`](/reference/formats/Pretty/PrettySpace) format in that up to `10,000` rows are buffered,
-and then output as a single table, and not by [blocks](/resources/contribute/architecture#block).
+Differs from the [`PrettySpace`](/core/reference/formats/Pretty/PrettySpace) format in that up to `10,000` rows are buffered,
+and then output as a single table, and not by [blocks](/resources/develop-contribute/introduction/architecture#block).
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettySpaceNoEscapes.mdx b/core/reference/formats/Pretty/PrettySpaceNoEscapes.mdx
similarity index 79%
rename from reference/formats/Pretty/PrettySpaceNoEscapes.mdx
rename to core/reference/formats/Pretty/PrettySpaceNoEscapes.mdx
index 977beb74..2198bc19 100644
--- a/reference/formats/Pretty/PrettySpaceNoEscapes.mdx
+++ b/core/reference/formats/Pretty/PrettySpaceNoEscapes.mdx
@@ -17,7 +17,7 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettySpace`](/reference/formats/Pretty/PrettySpace) format in that [ANSI-escape sequences](http://en.wikipedia.org/wiki/ANSI_escape_code) are not used.
+Differs from the [`PrettySpace`](/core/reference/formats/Pretty/PrettySpace) format in that [ANSI-escape sequences](http://en.wikipedia.org/wiki/ANSI_escape_code) are not used.
This is necessary for displaying this format in a browser, as well as for using the 'watch' command-line utility.
## Example usage {#example-usage}
diff --git a/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx b/core/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx
similarity index 76%
rename from reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx
rename to core/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx
index 6f5fb64c..2e2bb19c 100644
--- a/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx
+++ b/core/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock.mdx
@@ -17,8 +17,8 @@ import PrettyFormatSettings from '/snippets/common-pretty-format-settings.mdx';
## Description {#description}
-Differs from the [`PrettySpaceNoEscapes`](/reference/formats/Pretty/PrettySpaceNoEscapes) format in that up to `10,000` rows are buffered,
-and then output as a single table, and not by [blocks](/resources/contribute/architecture#block).
+Differs from the [`PrettySpaceNoEscapes`](/core/reference/formats/Pretty/PrettySpaceNoEscapes) format in that up to `10,000` rows are buffered,
+and then output as a single table, and not by [blocks](/resources/develop-contribute/introduction/architecture#block).
## Example usage {#example-usage}
diff --git a/core/reference/formats/Pretty/_snippets/common-pretty-format-settings.mdx b/core/reference/formats/Pretty/_snippets/common-pretty-format-settings.mdx
new file mode 100644
index 00000000..39997436
--- /dev/null
+++ b/core/reference/formats/Pretty/_snippets/common-pretty-format-settings.mdx
@@ -0,0 +1,14 @@
+{/* Note: This file is used as a snippet in all files that import it */}
+
+The following settings are common to all `Pretty` formats:
+
+| Setting | Description | Default |
+|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|
+| [`output_format_pretty_max_rows`](/core/reference/settings/formats#output_format_pretty_max_rows) | Row limit for Pretty formats. | `10000` |
+| [`output_format_pretty_max_column_pad_width`](/core/reference/settings/formats#output_format_pretty_max_column_pad_width) | Maximum width to pad all values in a column in Pretty formats. | `250` |
+| [`output_format_pretty_max_value_width`](/core/reference/settings/formats#output_format_pretty_max_value_width) | Maximum width of value to display in Pretty formats. If greater - it will be cut. | `10000` |
+| [`output_format_pretty_color`](/core/reference/settings/formats#output_format_pretty_color) | Use ANSI escape sequences to paint colors in Pretty formats. | `true` |
+| [`output_format_pretty_grid_charset`](/core/reference/settings/formats#output_format_pretty_grid_charset) | Charset for printing grid borders. Available charsets: ASCII, UTF-8. | `UTF-8` |
+| [`output_format_pretty_row_numbers`](/core/reference/settings/formats#output_format_pretty_row_numbers) | Add row numbers before each row for pretty output format. | `true` |
+| [`output_format_pretty_display_footer_column_names`](/core/reference/settings/formats#output_format_pretty_display_footer_column_names) | Display column names in the footer if table contains many rows. | `true` |
+| [`output_format_pretty_display_footer_column_names_min_rows`](/core/reference/settings/formats#output_format_pretty_display_footer_column_names_min_rows) | Sets the minimum number of rows for which a footer will be displayed if [`output_format_pretty_display_footer_column_names`](/core/reference/settings/formats#output_format_pretty_display_footer_column_names) is enabled. | `50` |
diff --git a/reference/formats/Prometheus.mdx b/core/reference/formats/Prometheus.mdx
similarity index 94%
rename from reference/formats/Prometheus.mdx
rename to core/reference/formats/Prometheus.mdx
index fdb2cfb4..0078fb16 100644
--- a/reference/formats/Prometheus.mdx
+++ b/core/reference/formats/Prometheus.mdx
@@ -19,10 +19,10 @@ Exposes metrics in the [Prometheus text-based exposition format](https://prometh
For this format, it is a requirement for the output table to be structured correctly, by the following rules:
-- Columns `name` ([String](/reference/data-types/string)) and `value` (number) are required.
-- Rows may optionally contain `help` ([String](/reference/data-types/string)) and `timestamp` (number).
-- Column `type` ([String](/reference/data-types/string)) should be one of `counter`, `gauge`, `histogram`, `summary`, `untyped` or empty.
-- Each metric value may also have some `labels` ([Map(String, String)](/reference/data-types/map)).
+- Columns `name` ([String](/core/reference/data-types/string)) and `value` (number) are required.
+- Rows may optionally contain `help` ([String](/core/reference/data-types/string)) and `timestamp` (number).
+- Column `type` ([String](/core/reference/data-types/string)) should be one of `counter`, `gauge`, `histogram`, `summary`, `untyped` or empty.
+- Each metric value may also have some `labels` ([Map(String, String)](/core/reference/data-types/map)).
- Several consequent rows may refer to the one metric with different labels. The table should be sorted by metric name (e.g., with `ORDER BY name`).
There are special requirements for the `histogram` and `summary` labels - see [Prometheus doc](https://prometheus.io/docs/instrumenting/exposition_formats/#histograms-and-summaries) for the details.
diff --git a/reference/formats/Protobuf/Protobuf.mdx b/core/reference/formats/Protobuf/Protobuf.mdx
similarity index 92%
rename from reference/formats/Protobuf/Protobuf.mdx
rename to core/reference/formats/Protobuf/Protobuf.mdx
index 3c7e1731..085526f8 100644
--- a/reference/formats/Protobuf/Protobuf.mdx
+++ b/core/reference/formats/Protobuf/Protobuf.mdx
@@ -43,9 +43,9 @@ message MessageType {
ClickHouse tries to find a column named `x.y.z` (or `x_y_z` or `X.y_Z` and so on).
-Nested messages are suitable for input or output of a [nested data structures](/reference/data-types/nested-data-structures).
+Nested messages are suitable for input or output of a [nested data structures](/core/reference/data-types/nested-data-structures).
-Default values defined in a protobuf schema like the one that follows are not applied, rather the [table defaults](/reference/statements/create/table#default_values) are used instead of them:
+Default values defined in a protobuf schema like the one that follows are not applied, rather the [table defaults](/core/reference/statements/create/table#default_values) are used instead of them:
```capnp
syntax = "proto2";
@@ -89,7 +89,7 @@ Nested messages are supported (see [basic-examples](#basic-examples)). Empty me
Allowed types are Int8, UInt8, Int16, UInt16, Int32, UInt32, Int64, UInt64, Enum, Enum8 or Enum16.
Enum (as well as Enum8 or Enum16) must contain all oneof' possible tags plus 0 to indicate absence, string representations does not matter.
-The setting [`input_format_protobuf_oneof_presence`](/reference/settings/formats#input_format_protobuf_oneof_presence) is disabled by default
+The setting [`input_format_protobuf_oneof_presence`](/core/reference/settings/formats#input_format_protobuf_oneof_presence) is disabled by default
ClickHouse inputs and outputs protobuf messages in the `length-delimited` format.
This means that before every message its length should be written as a [variable width integer (varint)](https://developers.google.com/protocol-buffers/docs/encoding#varints).
@@ -356,7 +356,7 @@ SELECT * FROM test.hits format Protobuf SETTINGS format_protobuf_use_autogenerat
```
In this case, ClickHouse will autogenerate the Protobuf schema according to the table structure using function
-[`structureToProtobufSchema`](/reference/functions/regular-functions/other-functions#structureToProtobufSchema). It will then use this schema to serialize data in the Protobuf format.
+[`structureToProtobufSchema`](/core/reference/functions/regular-functions/other-functions#structureToProtobufSchema). It will then use this schema to serialize data in the Protobuf format.
You can also read a Protobuf file with the autogenerated schema. In this case it is necessary for the file to be created using the same schema:
@@ -364,9 +364,9 @@ You can also read a Protobuf file with the autogenerated schema. In this case it
$ cat hits.bin | clickhouse-client --query "INSERT INTO test.hits SETTINGS format_protobuf_use_autogenerated_schema=1 FORMAT Protobuf"
```
-The setting [`format_protobuf_use_autogenerated_schema`](/reference/settings/formats#format_protobuf_use_autogenerated_schema) is enabled by default and applies if [`format_schema`](/reference/settings/formats#format_schema) is not set.
+The setting [`format_protobuf_use_autogenerated_schema`](/core/reference/settings/formats#format_protobuf_use_autogenerated_schema) is enabled by default and applies if [`format_schema`](/core/reference/settings/formats#format_schema) is not set.
-You can also save autogenerated schema in the file during input/output using setting [`output_format_schema`](/reference/settings/formats#output_format_schema). For example:
+You can also save autogenerated schema in the file during input/output using setting [`output_format_schema`](/core/reference/settings/formats#output_format_schema). For example:
```sql
SELECT * FROM test.hits format Protobuf SETTINGS format_protobuf_use_autogenerated_schema=1, output_format_schema='path/to/schema/schema.proto'
@@ -376,7 +376,7 @@ In this case autogenerated Protobuf schema will be saved in file `path/to/schema
### Drop protobuf cache {#drop-protobuf-cache}
-To reload the Protobuf schema loaded from [`format_schema_path`](/reference/settings/server-settings/settings#format_schema_path) use the [`SYSTEM DROP ... FORMAT CACHE`](/reference/statements/system#system-drop-schema-format) statement.
+To reload the Protobuf schema loaded from [`format_schema_path`](/core/reference/settings/server-settings/settings#format_schema_path) use the [`SYSTEM DROP ... FORMAT CACHE`](/core/reference/statements/system#system-drop-schema-format) statement.
```sql
SYSTEM DROP FORMAT SCHEMA CACHE FOR Protobuf
diff --git a/reference/formats/Protobuf/ProtobufList.mdx b/core/reference/formats/Protobuf/ProtobufList.mdx
similarity index 87%
rename from reference/formats/Protobuf/ProtobufList.mdx
rename to core/reference/formats/Protobuf/ProtobufList.mdx
index b6e20bef..64032c2c 100644
--- a/reference/formats/Protobuf/ProtobufList.mdx
+++ b/core/reference/formats/Protobuf/ProtobufList.mdx
@@ -19,7 +19,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
## Description {#description}
-The `ProtobufList` format is similar to the [`Protobuf`](/reference/formats/Protobuf/Protobuf) format but rows are represented as a sequence of sub-messages contained in a message with a fixed name of "Envelope".
+The `ProtobufList` format is similar to the [`Protobuf`](/core/reference/formats/Protobuf/Protobuf) format but rows are represented as a sequence of sub-messages contained in a message with a fixed name of "Envelope".
## Example usage {#example-usage}
diff --git a/reference/formats/Protobuf/ProtobufSingle.mdx b/core/reference/formats/Protobuf/ProtobufSingle.mdx
similarity index 73%
rename from reference/formats/Protobuf/ProtobufSingle.mdx
rename to core/reference/formats/Protobuf/ProtobufSingle.mdx
index 1dd0bd7b..fcd013f8 100644
--- a/reference/formats/Protobuf/ProtobufSingle.mdx
+++ b/core/reference/formats/Protobuf/ProtobufSingle.mdx
@@ -19,7 +19,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
## Description {#description}
-The `ProtobufSingle` format is the same as the [`Protobuf`](/reference/formats/Protobuf/Protobuf) format but it is intended for storing/parsing single Protobuf messages without length delimiters.
+The `ProtobufSingle` format is the same as the [`Protobuf`](/core/reference/formats/Protobuf/Protobuf) format but it is intended for storing/parsing single Protobuf messages without length delimiters.
## Example usage {#example-usage}
diff --git a/reference/formats/RawBLOB.mdx b/core/reference/formats/RawBLOB.mdx
similarity index 91%
rename from reference/formats/RawBLOB.mdx
rename to core/reference/formats/RawBLOB.mdx
index b65f197a..217e7181 100644
--- a/reference/formats/RawBLOB.mdx
+++ b/core/reference/formats/RawBLOB.mdx
@@ -8,12 +8,12 @@ doc_type: 'reference'
## Description {#description}
-The `RawBLOB` formats reads all input data to a single value. It is possible to parse only a table with a single field of type [`String`](/reference/data-types/string) or similar.
+The `RawBLOB` formats reads all input data to a single value. It is possible to parse only a table with a single field of type [`String`](/core/reference/data-types/string) or similar.
The result is output as a binary format without delimiters and escaping. If more than one value is output, the format is ambiguous, and it will be impossible to read the data back.
### Raw formats comparison {#raw-formats-comparison}
-Below is a comparison of the formats `RawBLOB` and [`TabSeparatedRaw`](/reference/formats/TabSeparated/TabSeparatedRaw).
+Below is a comparison of the formats `RawBLOB` and [`TabSeparatedRaw`](/core/reference/formats/TabSeparated/TabSeparatedRaw).
`RawBLOB`:
- data is output in binary format, no escaping;
@@ -25,7 +25,7 @@ Below is a comparison of the formats `RawBLOB` and [`TabSeparatedRaw`](/referenc
- the rows contain values separated by tabs;
- there is a line feed after the last value in every row.
-The following is a comparison of the `RawBLOB` and [RowBinary](/reference/formats/RowBinary/RowBinary) formats.
+The following is a comparison of the `RawBLOB` and [RowBinary](/core/reference/formats/RowBinary/RowBinary) formats.
`RawBLOB`:
- String fields are output without being prefixed by length.
diff --git a/reference/formats/Regexp.mdx b/core/reference/formats/Regexp.mdx
similarity index 62%
rename from reference/formats/Regexp.mdx
rename to core/reference/formats/Regexp.mdx
index 9f355890..678631dd 100644
--- a/reference/formats/Regexp.mdx
+++ b/core/reference/formats/Regexp.mdx
@@ -19,13 +19,13 @@ The `Regex` format parses every line of imported data according to the provided
**Usage**
-The regular expression from [format_regexp](/reference/settings/formats#format_regexp) setting is applied to every line of imported data. The number of subpatterns in the regular expression must be equal to the number of columns in imported dataset.
+The regular expression from [format_regexp](/core/reference/settings/formats#format_regexp) setting is applied to every line of imported data. The number of subpatterns in the regular expression must be equal to the number of columns in imported dataset.
Lines of the imported data must be separated by newline character `'\n'` or DOS-style newline `"\r\n"`.
-The content of every matched subpattern is parsed with the method of corresponding data type, according to [format_regexp_escaping_rule](/reference/settings/formats#format_regexp_escaping_rule) setting.
+The content of every matched subpattern is parsed with the method of corresponding data type, according to [format_regexp_escaping_rule](/core/reference/settings/formats#format_regexp_escaping_rule) setting.
-If the regular expression does not match the line and [format_regexp_skip_unmatched](/reference/settings/formats#format_regexp_escaping_rule) is set to 1, the line is silently skipped. Otherwise, exception is thrown.
+If the regular expression does not match the line and [format_regexp_skip_unmatched](/core/reference/settings/formats#format_regexp_escaping_rule) is set to 1, the line is silently skipped. Otherwise, exception is thrown.
## Example usage {#example-usage}
@@ -66,13 +66,13 @@ SELECT * FROM imp_regex_table;
When working with the `Regexp` format, you can use the following settings:
-- `format_regexp` — [String](/reference/data-types/string). Contains regular expression in the [re2](https://github.com/google/re2/wiki/Syntax) format.
-- `format_regexp_escaping_rule` — [String](/reference/data-types/string). The following escaping rules are supported:
+- `format_regexp` — [String](/core/reference/data-types/string). Contains regular expression in the [re2](https://github.com/google/re2/wiki/Syntax) format.
+- `format_regexp_escaping_rule` — [String](/core/reference/data-types/string). The following escaping rules are supported:
- - CSV (similarly to [CSV](/reference/formats/CSV/CSV)
- - JSON (similarly to [JSONEachRow](/reference/formats/JSON/JSONEachRow)
- - Escaped (similarly to [TSV](/reference/formats/TabSeparated/TabSeparated)
- - Quoted (similarly to [Values](/reference/formats/Values)
- - Raw (extracts subpatterns as a whole, no escaping rules, similarly to [TSVRaw](/reference/formats/TabSeparated/TabSeparated)
+ - CSV (similarly to [CSV](/core/reference/formats/CSV/CSV)
+ - JSON (similarly to [JSONEachRow](/core/reference/formats/JSON/JSONEachRow)
+ - Escaped (similarly to [TSV](/core/reference/formats/TabSeparated/TabSeparated)
+ - Quoted (similarly to [Values](/core/reference/formats/Values)
+ - Raw (extracts subpatterns as a whole, no escaping rules, similarly to [TSVRaw](/core/reference/formats/TabSeparated/TabSeparated)
-- `format_regexp_skip_unmatched` — [UInt8](/reference/data-types/int-uint). Defines the need to throw an exception in case the `format_regexp` expression does not match the imported data. Can be set to `0` or `1`.
+- `format_regexp_skip_unmatched` — [UInt8](/core/reference/data-types/int-uint). Defines the need to throw an exception in case the `format_regexp` expression does not match the imported data. Can be set to `0` or `1`.
diff --git a/reference/formats/RowBinary/RowBinary.mdx b/core/reference/formats/RowBinary/RowBinary.mdx
similarity index 96%
rename from reference/formats/RowBinary/RowBinary.mdx
rename to core/reference/formats/RowBinary/RowBinary.mdx
index 993c4049..901017f9 100644
--- a/reference/formats/RowBinary/RowBinary.mdx
+++ b/core/reference/formats/RowBinary/RowBinary.mdx
@@ -31,7 +31,7 @@ Because data is in the binary format the delimiter after `FORMAT RowBinary` is s
- Immediately followed by binary data.
-This format is less efficient than the [Native](/reference/formats/Native) format since it is row-based.
+This format is less efficient than the [Native](/core/reference/formats/Native) format since it is row-based.
## Data types wire format {#data-types-wire-format}
@@ -68,7 +68,7 @@ Boolean values are encoded as a single byte, and can be deserialized similarly t
### BFloat16 {#bfloat16}
-[BFloat16](/reference/data-types/float#bfloat16) (Brain Floating Point) is a 16-bit floating point format with the range of Float32 and reduced precision, making it useful for machine learning workloads. The wire format is essentially the top 16 bits of a Float32 value. If your language doesn't support it natively, the easiest way to handle it is to read and write as UInt16, converting to and from Float32:
+[BFloat16](/core/reference/data-types/float#bfloat16) (Brain Floating Point) is a 16-bit floating point format with the range of Float32 and reduced precision, making it useful for machine learning workloads. The wire format is essentially the top 16 bits of a Float32 value. If your language doesn't support it natively, the easiest way to handle it is to read and write as UInt16, converting to and from Float32:
To convert BFloat16 to Float32 (pseudocode):
@@ -126,7 +126,7 @@ let scale_multiplier = 10 ** scale
let result = whole_part * scale_multiplier + fractional_part
```
-See more details in the [Decimal types ClickHouse docs](/reference/data-types/decimal).
+See more details in the [Decimal types ClickHouse docs](/core/reference/data-types/decimal).
### String {#string}
@@ -531,7 +531,7 @@ This only applies to RowBinary. In the Native format, `LowCardinality` uses a di
A column can be defined as `LowCardinality(Nullable(T))`, but it is not possible to define it as `Nullable(LowCardinality(T))` - it will always result in an error from the server.
-While testing, [allow_suspicious_low_cardinality_types](/reference/settings/session-settings#allow_suspicious_low_cardinality_types) can be set to `1` to allow most of the data types inside `LowCardinality` for better coverage.
+While testing, [allow_suspicious_low_cardinality_types](/core/reference/settings/session-settings#allow_suspicious_low_cardinality_types) can be set to `1` to allow most of the data types inside `LowCardinality` for better coverage.
### Array {#array}
@@ -727,17 +727,17 @@ SELECT NULL :: Variant(UInt32, String)
0xFF, // discriminant = NULL
```
-The [allow_suspicious_variant_types](/reference/settings/session-settings#allow_suspicious_variant_types) setting can be used to allow more exhaustive testing of the `Variant` type.
+The [allow_suspicious_variant_types](/core/reference/settings/session-settings#allow_suspicious_variant_types) setting can be used to allow more exhaustive testing of the `Variant` type.
### Dynamic {#dynamic}
-The `Dynamic` type can hold values of any type, determined at runtime. In RowBinary format, each value is self-describing: the first part is the type specification in [this format](/reference/data-types/data-types-binary-encoding). The contents then follow, with the value encoding as described in this document. So to parse a value you just need to use the type index to determine the right parser and then re-use the RowBinary parsing you already have elsewhere.
+The `Dynamic` type can hold values of any type, determined at runtime. In RowBinary format, each value is self-describing: the first part is the type specification in [this format](/core/reference/data-types/data-types-binary-encoding). The contents then follow, with the value encoding as described in this document. So to parse a value you just need to use the type index to determine the right parser and then re-use the RowBinary parsing you already have elsewhere.
```text
[BinaryTypeIndex][type-specific parameters...][value]
```
-Where `BinaryTypeIndex` is a single byte identifying the type. See the reference [here](/reference/data-types/data-types-binary-encoding) for the type indices and parameters.
+Where `BinaryTypeIndex` is a single byte identifying the type. See the reference [here](/core/reference/data-types/data-types-binary-encoding) for the type indices and parameters.
A `NULL` Dynamic value is encoded with `BinaryTypeIndex` `0x00` (the `Nothing` type), with no additional bytes:
diff --git a/reference/formats/RowBinary/RowBinaryWithDefaults.mdx b/core/reference/formats/RowBinary/RowBinaryWithDefaults.mdx
similarity index 86%
rename from reference/formats/RowBinary/RowBinaryWithDefaults.mdx
rename to core/reference/formats/RowBinary/RowBinaryWithDefaults.mdx
index d4efd85d..5e74f0f9 100644
--- a/reference/formats/RowBinary/RowBinaryWithDefaults.mdx
+++ b/core/reference/formats/RowBinary/RowBinaryWithDefaults.mdx
@@ -17,7 +17,7 @@ import RowBinaryFormatSettings from '/snippets/common-row-binary-format-settings
## Description {#description}
-Similar to the [`RowBinary`](/reference/formats/RowBinary/RowBinary) format, but with an extra byte before each column that indicates if the default value should be used.
+Similar to the [`RowBinary`](/core/reference/formats/RowBinary/RowBinary) format, but with an extra byte before each column that indicates if the default value should be used.
## Example usage {#example-usage}
diff --git a/reference/formats/RowBinary/RowBinaryWithNames.mdx b/core/reference/formats/RowBinary/RowBinaryWithNames.mdx
similarity index 69%
rename from reference/formats/RowBinary/RowBinaryWithNames.mdx
rename to core/reference/formats/RowBinary/RowBinaryWithNames.mdx
index 58812f21..42cb1e42 100644
--- a/reference/formats/RowBinary/RowBinaryWithNames.mdx
+++ b/core/reference/formats/RowBinary/RowBinaryWithNames.mdx
@@ -16,7 +16,7 @@ import RowBinaryFormatSettings from '/snippets/common-row-binary-format-settings
## Description {#description}
-Similar to the [`RowBinary`](/reference/formats/RowBinary/RowBinary) format, but with added header:
+Similar to the [`RowBinary`](/core/reference/formats/RowBinary/RowBinary) format, but with added header:
- [`LEB128`](https://en.wikipedia.org/wiki/LEB128)-encoded number of columns (N).
- N `String`s specifying column names.
@@ -28,8 +28,8 @@ Similar to the [`RowBinary`](/reference/formats/RowBinary/RowBinary) format, but
-- If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+- If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped.
-- If setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+- If setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
Otherwise, the first row will be skipped.
\ No newline at end of file
diff --git a/reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx b/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx
similarity index 68%
rename from reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx
rename to core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx
index 21aa5644..cfae781b 100644
--- a/reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx
+++ b/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes.mdx
@@ -17,7 +17,7 @@ import RowBinaryFormatSettings from '/snippets/common-row-binary-format-settings
## Description {#description}
-Similar to the [RowBinary](/reference/formats/RowBinary/RowBinary) format, but with added header:
+Similar to the [RowBinary](/core/reference/formats/RowBinary/RowBinary) format, but with added header:
- [`LEB128`](https://en.wikipedia.org/wiki/LEB128)-encoded number of columns (N).
- N `String`s specifying column names.
@@ -30,9 +30,9 @@ Similar to the [RowBinary](/reference/formats/RowBinary/RowBinary) format, but w
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to 1,
-the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to 1,
+the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [input_format_skip_unknown_fields](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
Otherwise, the first row will be skipped.
-If setting [`input_format_with_types_use_header`](/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
+If setting [`input_format_with_types_use_header`](/core/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
the types from input data will be compared with the types of the corresponding columns from the table. Otherwise, the second row will be skipped.
\ No newline at end of file
diff --git a/core/reference/formats/RowBinary/_snippets/common-row-binary-format-settings.mdx b/core/reference/formats/RowBinary/_snippets/common-row-binary-format-settings.mdx
new file mode 100644
index 00000000..1ffb5db7
--- /dev/null
+++ b/core/reference/formats/RowBinary/_snippets/common-row-binary-format-settings.mdx
@@ -0,0 +1,11 @@
+{/* Note: This snippet is reused in any file it is imported by */}
+
+The following settings are common to all `RowBinary` type formats.
+
+| Setting | Description | Default |
+|------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|
+| [`format_binary_max_string_size`](/core/reference/settings/formats#format_binary_max_string_size) | The maximum allowed size for String in RowBinary format. | `1GiB` |
+| [`output_format_binary_encode_types_in_binary_format`](/core/reference/settings/formats#input_format_binary_decode_types_in_binary_format) | Allows to write types in header using [`binary encoding`](/core/reference/data-types/data-types-binary-encoding) instead of strings with type names in [`RowBinaryWithNamesAndTypes`](/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes) output format. | `false` |
+| [`input_format_binary_decode_types_in_binary_format`](/core/reference/settings/formats#input_format_binary_decode_types_in_binary_format) | Allows to read types in header using [`binary encoding`](/core/reference/data-types/data-types-binary-encoding) instead of strings with type names in [`RowBinaryWithNamesAndTypes`](/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes) input format. | `false` |
+| [`output_format_binary_write_json_as_string`](/core/reference/settings/formats#output_format_binary_write_json_as_string) | Allows to write values of the [`JSON`](/core/reference/data-types/newjson) data type as `JSON` [String](/core/reference/data-types/string) values in [`RowBinary`](/core/reference/formats/RowBinary/RowBinary) output format. | `false` |
+| [`input_format_binary_read_json_as_string`](/core/reference/settings/formats#input_format_binary_read_json_as_string) | Allows to read values of the [`JSON`](/core/reference/data-types/newjson) data type as `JSON` [String](/core/reference/data-types/string) values in [`RowBinary`](/core/reference/formats/RowBinary/RowBinary) input format. | `false` |
diff --git a/reference/formats/SQLInsert.mdx b/core/reference/formats/SQLInsert.mdx
similarity index 57%
rename from reference/formats/SQLInsert.mdx
rename to core/reference/formats/SQLInsert.mdx
index 1d71a9a5..e37527ef 100644
--- a/reference/formats/SQLInsert.mdx
+++ b/core/reference/formats/SQLInsert.mdx
@@ -33,14 +33,14 @@ INSERT INTO table (x, y, z) VALUES (6, 7, 'Hello'), (7, 8, 'Hello');
INSERT INTO table (x, y, z) VALUES (8, 9, 'Hello'), (9, 10, 'Hello');
```
-To read data output by this format you can use [MySQLDump](/reference/formats/MySQLDump) input format.
+To read data output by this format you can use [MySQLDump](/core/reference/formats/MySQLDump) input format.
## Format settings {#format-settings}
| Setting | Description | Default |
|----------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------|-----------|
-| [`output_format_sql_insert_max_batch_size`](/reference/settings/formats#output_format_sql_insert_max_batch_size) | The maximum number of rows in one INSERT statement. | `65505` |
-| [`output_format_sql_insert_table_name`](/reference/settings/formats#output_format_sql_insert_table_name) | The name of the table in the output INSERT query. | `'table'` |
-| [`output_format_sql_insert_include_column_names`](/reference/settings/formats#output_format_sql_insert_include_column_names) | Include column names in INSERT query. | `true` |
-| [`output_format_sql_insert_use_replace`](/reference/settings/formats#output_format_sql_insert_use_replace) | Use REPLACE statement instead of INSERT. | `false` |
-| [`output_format_sql_insert_quote_names`](/reference/settings/formats#output_format_sql_insert_quote_names) | Quote column names with "\`" characters. | `true` |
+| [`output_format_sql_insert_max_batch_size`](/core/reference/settings/formats#output_format_sql_insert_max_batch_size) | The maximum number of rows in one INSERT statement. | `65505` |
+| [`output_format_sql_insert_table_name`](/core/reference/settings/formats#output_format_sql_insert_table_name) | The name of the table in the output INSERT query. | `'table'` |
+| [`output_format_sql_insert_include_column_names`](/core/reference/settings/formats#output_format_sql_insert_include_column_names) | Include column names in INSERT query. | `true` |
+| [`output_format_sql_insert_use_replace`](/core/reference/settings/formats#output_format_sql_insert_use_replace) | Use REPLACE statement instead of INSERT. | `false` |
+| [`output_format_sql_insert_quote_names`](/core/reference/settings/formats#output_format_sql_insert_quote_names) | Quote column names with "\`" characters. | `true` |
diff --git a/reference/formats/TabSeparated/TSKV.mdx b/core/reference/formats/TabSeparated/TSKV.mdx
similarity index 91%
rename from reference/formats/TabSeparated/TSKV.mdx
rename to core/reference/formats/TabSeparated/TSKV.mdx
index dfcc4076..81492e44 100644
--- a/reference/formats/TabSeparated/TSKV.mdx
+++ b/core/reference/formats/TabSeparated/TSKV.mdx
@@ -15,8 +15,8 @@ doc_type: 'reference'
## Description {#description}
-Similar to the [`TabSeparated`](/reference/formats/TabSeparated/TabSeparated) format, but outputs a value in `name=value` format.
-Names are escaped the same way as in the [`TabSeparated`](/reference/formats/TabSeparated/TabSeparated) format, and the `=` symbol is also escaped.
+Similar to the [`TabSeparated`](/core/reference/formats/TabSeparated/TabSeparated) format, but outputs a value in `name=value` format.
+Names are escaped the same way as in the [`TabSeparated`](/core/reference/formats/TabSeparated/TabSeparated) format, and the `=` symbol is also escaped.
```text
SearchPhrase= count()=8267016
@@ -41,7 +41,7 @@ x=1 y=\N
When there are a large number of small columns, this format is ineffective, and there is generally no reason to use it.
-Nevertheless, it is no worse than the [`JSONEachRow`](/reference/formats/JSON/JSONEachRow) format in terms of efficiency.
+Nevertheless, it is no worse than the [`JSONEachRow`](/core/reference/formats/JSON/JSONEachRow) format in terms of efficiency.
For parsing, any order is supported for the values of the different columns.
@@ -52,9 +52,9 @@ Complex values that could be specified in the table are not supported as default
Parsing allows an additional field `tskv` to be added without the equal sign or a value. This field is ignored.
During import, columns with unknown names will be skipped,
-if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
-[NULL](/reference/syntax) is formatted as `\N`.
+[NULL](/core/reference/syntax) is formatted as `\N`.
## Example usage {#example-usage}
diff --git a/reference/formats/TabSeparated/TabSeparated.mdx b/core/reference/formats/TabSeparated/TabSeparated.mdx
similarity index 72%
rename from reference/formats/TabSeparated/TabSeparated.mdx
rename to core/reference/formats/TabSeparated/TabSeparated.mdx
index d5bc0935..080121fb 100644
--- a/reference/formats/TabSeparated/TabSeparated.mdx
+++ b/core/reference/formats/TabSeparated/TabSeparated.mdx
@@ -72,12 +72,12 @@ Only a small set of symbols are escaped. You can easily stumble onto a string va
Arrays are written as a list of comma-separated values in `[]`. Number items in the array are formatted as normally. `Date` and `DateTime` types are written in single quotes. Strings are written in single quotes with the same escaping rules as above.
-[NULL](/reference/syntax) is formatted according to setting [format_tsv_null_representation](/reference/settings/formats#format_tsv_null_representation) (default value is `\N`).
+[NULL](/core/reference/syntax) is formatted according to setting [format_tsv_null_representation](/core/reference/settings/formats#format_tsv_null_representation) (default value is `\N`).
In input data, ENUM values can be represented as names or as ids. First, we try to match the input value to the ENUM name. If we fail and the input value is a number, we try to match this number to ENUM id.
-If input data contains only ENUM ids, it's recommended to enable the setting [input_format_tsv_enum_as_number](/reference/settings/formats#input_format_tsv_enum_as_number) to optimize ENUM parsing.
+If input data contains only ENUM ids, it's recommended to enable the setting [input_format_tsv_enum_as_number](/core/reference/settings/formats#input_format_tsv_enum_as_number) to optimize ENUM parsing.
-Each element of [Nested](/reference/data-types/nested-data-structures) structures is represented as an array.
+Each element of [Nested](/core/reference/data-types/nested-data-structures) structures is represented as an array.
For example:
@@ -171,13 +171,13 @@ The output will be in tab separated format:
| Setting | Description | Default |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|
-| [`format_tsv_null_representation`](/reference/settings/formats#format_tsv_null_representation) | Custom NULL representation in TSV format. | `\N` |
-| [`input_format_tsv_empty_as_default`](/reference/settings/formats#input_format_tsv_empty_as_default) | treat empty fields in TSV input as default values. For complex default expressions [input_format_defaults_for_omitted_fields](/reference/settings/formats#input_format_defaults_for_omitted_fields) must be enabled too. | `false` |
-| [`input_format_tsv_enum_as_number`](/reference/settings/formats#input_format_tsv_enum_as_number) | treat inserted enum values in TSV formats as enum indices. | `false` |
-| [`input_format_tsv_use_best_effort_in_schema_inference`](/reference/settings/formats#input_format_tsv_use_best_effort_in_schema_inference) | use some tweaks and heuristics to infer schema in TSV format. If disabled, all fields will be inferred as Strings. | `true` |
-| [`output_format_tsv_crlf_end_of_line`](/reference/settings/formats#output_format_tsv_crlf_end_of_line) | if it is set true, end of line in TSV output format will be `\r\n` instead of `\n`. | `false` |
-| [`input_format_tsv_crlf_end_of_line`](/reference/settings/formats#input_format_tsv_crlf_end_of_line) | if it is set true, end of line in TSV input format will be `\r\n` instead of `\n`. | `false` |
-| [`input_format_tsv_skip_first_lines`](/reference/settings/formats#input_format_tsv_skip_first_lines) | skip specified number of lines at the beginning of data. | `0` |
-| [`input_format_tsv_detect_header`](/reference/settings/formats#input_format_tsv_detect_header) | automatically detect header with names and types in TSV format. | `true` |
-| [`input_format_tsv_skip_trailing_empty_lines`](/reference/settings/formats#input_format_tsv_skip_trailing_empty_lines) | skip trailing empty lines at the end of data. | `false` |
-| [`input_format_tsv_allow_variable_number_of_columns`](/reference/settings/formats#input_format_tsv_allow_variable_number_of_columns) | allow variable number of columns in TSV format, ignore extra columns and use default values on missing columns. | `false` |
+| [`format_tsv_null_representation`](/core/reference/settings/formats#format_tsv_null_representation) | Custom NULL representation in TSV format. | `\N` |
+| [`input_format_tsv_empty_as_default`](/core/reference/settings/formats#input_format_tsv_empty_as_default) | treat empty fields in TSV input as default values. For complex default expressions [input_format_defaults_for_omitted_fields](/core/reference/settings/formats#input_format_defaults_for_omitted_fields) must be enabled too. | `false` |
+| [`input_format_tsv_enum_as_number`](/core/reference/settings/formats#input_format_tsv_enum_as_number) | treat inserted enum values in TSV formats as enum indices. | `false` |
+| [`input_format_tsv_use_best_effort_in_schema_inference`](/core/reference/settings/formats#input_format_tsv_use_best_effort_in_schema_inference) | use some tweaks and heuristics to infer schema in TSV format. If disabled, all fields will be inferred as Strings. | `true` |
+| [`output_format_tsv_crlf_end_of_line`](/core/reference/settings/formats#output_format_tsv_crlf_end_of_line) | if it is set true, end of line in TSV output format will be `\r\n` instead of `\n`. | `false` |
+| [`input_format_tsv_crlf_end_of_line`](/core/reference/settings/formats#input_format_tsv_crlf_end_of_line) | if it is set true, end of line in TSV input format will be `\r\n` instead of `\n`. | `false` |
+| [`input_format_tsv_skip_first_lines`](/core/reference/settings/formats#input_format_tsv_skip_first_lines) | skip specified number of lines at the beginning of data. | `0` |
+| [`input_format_tsv_detect_header`](/core/reference/settings/formats#input_format_tsv_detect_header) | automatically detect header with names and types in TSV format. | `true` |
+| [`input_format_tsv_skip_trailing_empty_lines`](/core/reference/settings/formats#input_format_tsv_skip_trailing_empty_lines) | skip trailing empty lines at the end of data. | `false` |
+| [`input_format_tsv_allow_variable_number_of_columns`](/core/reference/settings/formats#input_format_tsv_allow_variable_number_of_columns) | allow variable number of columns in TSV format, ignore extra columns and use default values on missing columns. | `false` |
diff --git a/reference/formats/TabSeparated/TabSeparatedRaw.mdx b/core/reference/formats/TabSeparated/TabSeparatedRaw.mdx
similarity index 93%
rename from reference/formats/TabSeparated/TabSeparatedRaw.mdx
rename to core/reference/formats/TabSeparated/TabSeparatedRaw.mdx
index 730205d0..a92c5807 100644
--- a/reference/formats/TabSeparated/TabSeparatedRaw.mdx
+++ b/core/reference/formats/TabSeparated/TabSeparatedRaw.mdx
@@ -15,13 +15,13 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`TabSeparated`](/reference/formats/TabSeparated/TabSeparated) format in that rows are written without escaping.
+Differs from the [`TabSeparated`](/core/reference/formats/TabSeparated/TabSeparated) format in that rows are written without escaping.
When parsing with this format, tabs or line-feeds are not allowed in each field.
-For a comparison of the `TabSeparatedRaw` format and the `RawBlob` format see: [Raw Formats Comparison](/reference/formats/RawBLOB#raw-formats-comparison)
+For a comparison of the `TabSeparatedRaw` format and the `RawBlob` format see: [Raw Formats Comparison](/core/reference/formats/RawBLOB#raw-formats-comparison)
## Example usage {#example-usage}
diff --git a/reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx b/core/reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx
similarity index 97%
rename from reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx
rename to core/reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx
index 93862f78..1adf1aa4 100644
--- a/reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx
+++ b/core/reference/formats/TabSeparated/TabSeparatedRawWithNames.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`TabSeparatedWithNames`](/reference/formats/TabSeparated/TabSeparatedWithNames) format,
+Differs from the [`TabSeparatedWithNames`](/core/reference/formats/TabSeparated/TabSeparatedWithNames) format,
in that the rows are written without escaping.
diff --git a/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx b/core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx
similarity index 96%
rename from reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx
rename to core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx
index ca3b27d2..b88f252a 100644
--- a/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx
+++ b/core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes.mdx
@@ -15,7 +15,7 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`TabSeparatedWithNamesAndTypes`](/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes) format,
+Differs from the [`TabSeparatedWithNamesAndTypes`](/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes) format,
in that the rows are written without escaping.
diff --git a/reference/formats/TabSeparated/TabSeparatedWithNames.mdx b/core/reference/formats/TabSeparated/TabSeparatedWithNames.mdx
similarity index 90%
rename from reference/formats/TabSeparated/TabSeparatedWithNames.mdx
rename to core/reference/formats/TabSeparated/TabSeparatedWithNames.mdx
index ed2e4152..80c95a48 100644
--- a/reference/formats/TabSeparated/TabSeparatedWithNames.mdx
+++ b/core/reference/formats/TabSeparated/TabSeparatedWithNames.mdx
@@ -15,13 +15,13 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`TabSeparated`](/reference/formats/TabSeparated/TabSeparated) format in that the column names are written in the first row.
+Differs from the [`TabSeparated`](/core/reference/formats/TabSeparated/TabSeparated) format in that the column names are written in the first row.
During parsing, the first row is expected to contain the column names. You can use column names to determine their position and to check their correctness.
-If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
-the columns from the input data will be mapped to the columns of the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
+If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+the columns from the input data will be mapped to the columns of the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to `1`.
Otherwise, the first row will be skipped.
diff --git a/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx b/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx
similarity index 87%
rename from reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx
rename to core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx
index ad730eb6..52e34c7e 100644
--- a/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx
+++ b/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes.mdx
@@ -12,13 +12,13 @@ doc_type: 'reference'
## Description {#description}
-Differs from the [`TabSeparated`](/reference/formats/TabSeparated/TabSeparated) format in that the column names are written to the first row, while the column types are in the second row.
+Differs from the [`TabSeparated`](/core/reference/formats/TabSeparated/TabSeparated) format in that the column names are written to the first row, while the column types are in the second row.
-- If setting [`input_format_with_names_use_header`](/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
-the columns from the input data will be mapped to the columns in the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
+- If setting [`input_format_with_names_use_header`](/core/reference/settings/formats#input_format_with_names_use_header) is set to `1`,
+the columns from the input data will be mapped to the columns in the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/core/reference/settings/formats#input_format_skip_unknown_fields) is set to 1.
Otherwise, the first row will be skipped.
-- If setting [`input_format_with_types_use_header`](/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
+- If setting [`input_format_with_types_use_header`](/core/reference/settings/formats#input_format_with_types_use_header) is set to `1`,
the types from input data will be compared with the types of the corresponding columns from the table. Otherwise, the second row will be skipped.
diff --git a/reference/formats/Template/Template.mdx b/core/reference/formats/Template/Template.mdx
similarity index 100%
rename from reference/formats/Template/Template.mdx
rename to core/reference/formats/Template/Template.mdx
diff --git a/reference/formats/Template/TemplateIgnoreSpaces.mdx b/core/reference/formats/Template/TemplateIgnoreSpaces.mdx
similarity index 96%
rename from reference/formats/Template/TemplateIgnoreSpaces.mdx
rename to core/reference/formats/Template/TemplateIgnoreSpaces.mdx
index 9daf732b..a934e774 100644
--- a/reference/formats/Template/TemplateIgnoreSpaces.mdx
+++ b/core/reference/formats/Template/TemplateIgnoreSpaces.mdx
@@ -27,7 +27,7 @@ This format is suitable only for input.
## Example usage {#example-usage}
-The following request can be used for inserting data from its output example of format [JSON](/reference/formats/JSON/JSON):
+The following request can be used for inserting data from its output example of format [JSON](/core/reference/formats/JSON/JSON):
```sql
INSERT INTO table_name
diff --git a/reference/formats/Values.mdx b/core/reference/formats/Values.mdx
similarity index 62%
rename from reference/formats/Values.mdx
rename to core/reference/formats/Values.mdx
index 70a9ffe5..8eef19d5 100644
--- a/reference/formats/Values.mdx
+++ b/core/reference/formats/Values.mdx
@@ -22,10 +22,10 @@ The `Values` format prints every row in brackets.
- Numbers are output in a decimal format without quotes.
- Arrays are output in `[]`.
- Strings, dates, and dates with times are output in quotes.
-- Escaping rules and parsing are similar to the [TabSeparated](/reference/formats/TabSeparated/TabSeparated) format.
+- Escaping rules and parsing are similar to the [TabSeparated](/core/reference/formats/TabSeparated/TabSeparated) format.
During formatting, extra spaces aren't inserted, but during parsing, they are allowed and skipped (except for spaces inside array values, which are not allowed).
-[`NULL`](/reference/syntax) is represented as `NULL`.
+[`NULL`](/core/reference/syntax) is represented as `NULL`.
The minimum set of characters that you need to escape when passing data in the `Values` format:
- single quotes
@@ -39,6 +39,6 @@ This is the format that is used in `INSERT INTO t VALUES ...`, but you can also
| Setting | Description | Default |
|-------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|
-| [`input_format_values_interpret_expressions`](/reference/settings/formats#input_format_values_interpret_expressions) | if the field could not be parsed by streaming parser, run SQL parser and try to interpret it as SQL expression. | `true` |
-| [`input_format_values_deduce_templates_of_expressions`](/reference/settings/formats#input_format_values_deduce_templates_of_expressions) | if the field could not be parsed by streaming parser, run SQL parser, deduce template of the SQL expression, try to parse all rows using template and then interpret expression for all rows. | `true` |
-| [`input_format_values_accurate_types_of_literals`](/reference/settings/formats#input_format_values_accurate_types_of_literals) | when parsing and interpreting expressions using template, check actual type of literal to avoid possible overflow and precision issues. | `true` |
+| [`input_format_values_interpret_expressions`](/core/reference/settings/formats#input_format_values_interpret_expressions) | if the field could not be parsed by streaming parser, run SQL parser and try to interpret it as SQL expression. | `true` |
+| [`input_format_values_deduce_templates_of_expressions`](/core/reference/settings/formats#input_format_values_deduce_templates_of_expressions) | if the field could not be parsed by streaming parser, run SQL parser, deduce template of the SQL expression, try to parse all rows using template and then interpret expression for all rows. | `true` |
+| [`input_format_values_accurate_types_of_literals`](/core/reference/settings/formats#input_format_values_accurate_types_of_literals) | when parsing and interpreting expressions using template, check actual type of literal to avoid possible overflow and precision issues. | `true` |
diff --git a/reference/formats/Vertical.mdx b/core/reference/formats/Vertical.mdx
similarity index 78%
rename from reference/formats/Vertical.mdx
rename to core/reference/formats/Vertical.mdx
index e6dfc611..91e6bec2 100644
--- a/reference/formats/Vertical.mdx
+++ b/core/reference/formats/Vertical.mdx
@@ -17,7 +17,7 @@ doc_type: 'reference'
Prints each value on a separate line with the column name specified. This format is convenient for printing just one or a few rows if each row consists of a large number of columns.
-Note that [`NULL`](/reference/syntax) is output as `ᴺᵁᴸᴸ` to make it easier to distinguish between the string value `NULL` and no value. JSON columns will be pretty printed, and `NULL` is output as `null`, because it is a valid JSON value and easily distinguishable from `"null"`.
+Note that [`NULL`](/core/reference/syntax) is output as `ᴺᵁᴸᴸ` to make it easier to distinguish between the string value `NULL` and no value. JSON columns will be pretty printed, and `NULL` is output as `null`, because it is a valid JSON value and easily distinguishable from `"null"`.
## Example usage {#example-usage}
diff --git a/reference/formats/XML.mdx b/core/reference/formats/XML.mdx
similarity index 100%
rename from reference/formats/XML.mdx
rename to core/reference/formats/XML.mdx
diff --git a/core/reference/formats/index.mdx b/core/reference/formats/index.mdx
new file mode 100644
index 00000000..8981af11
--- /dev/null
+++ b/core/reference/formats/index.mdx
@@ -0,0 +1,163 @@
+---
+description: 'Overview of supported data formats for input and output in ClickHouse'
+sidebarTitle: 'View all formats...'
+slug: /interfaces/formats
+title: 'Formats for input and output data'
+doc_type: 'reference'
+---
+
+import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/CloudNotSupportedBadge.jsx";
+
+# Formats for input and output data {#formats-for-input-and-output-data}
+
+ClickHouse supports most of the known text and binary data formats. This allows easy integration into almost any working
+data pipeline to leverage the benefits of ClickHouse.
+
+## Input formats {#input-formats}
+
+Input formats are used for:
+- Parsing data provided to `INSERT` statements
+- Performing `SELECT` queries from file-backed tables such as `File`, `URL`, or `HDFS`
+- Reading dictionaries
+
+Choosing the right input format is crucial for efficient data ingestion in ClickHouse. With over 70 supported formats,
+selecting the most performant option can significantly impact insert speed, CPU and memory usage, and overall system
+efficiency. To help navigate these choices, we benchmarked ingestion performance across formats, revealing key takeaways:
+
+- **The [Native](/core/reference/formats/Native) format is the most efficient input format**, offering the best compression, lowest
+ resource usage, and minimal server-side processing overhead.
+- **Compression is essential** - LZ4 reduces data size with minimal CPU cost, while ZSTD offers higher compression at the
+ expense of additional CPU usage.
+- **Pre-sorting has a moderate impact**, as ClickHouse already sorts efficiently.
+- **Batching significantly improves efficiency** - larger batches reduce insert overhead and improve throughput.
+
+For a deep dive into the results and best practices,
+read the full [benchmark analysis](https://www.clickhouse.com/blog/clickhouse-input-format-matchup-which-is-fastest-most-efficient).
+For the full test results, explore the [FastFormats](https://fastformats.clickhouse.com/) online dashboard.
+
+## Output formats {#output-formats}
+
+Formats supported for output are used for:
+- Arranging the results of a `SELECT` query
+- Performing `INSERT` operations into file-backed tables
+
+## Formats overview {#formats-overview}
+
+The supported formats are:
+
+| Format | Input | Output |
+|------------------------------------------------------------------------------------------------------------|-----|-------|
+| [TabSeparated](/core/reference/formats/TabSeparated/TabSeparated) | ✔ | ✔ |
+| [TabSeparatedRaw](/core/reference/formats/TabSeparated/TabSeparatedRaw) | ✔ | ✔ |
+| [TabSeparatedWithNames](/core/reference/formats/TabSeparated/TabSeparatedWithNames) | ✔ | ✔ |
+| [TabSeparatedWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes) | ✔ | ✔ |
+| [TabSeparatedRawWithNames](/core/reference/formats/TabSeparated/TabSeparatedRawWithNames) | ✔ | ✔ |
+| [TabSeparatedRawWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes) | ✔ | ✔ |
+| [Template](/core/reference/formats/Template/Template) | ✔ | ✔ |
+| [TemplateIgnoreSpaces](/core/reference/formats/Template/TemplateIgnoreSpaces) | ✔ | ✗ |
+| [CSV](/core/reference/formats/CSV/CSV) | ✔ | ✔ |
+| [CSVWithNames](/core/reference/formats/CSV/CSVWithNames) | ✔ | ✔ |
+| [CSVWithNamesAndTypes](/core/reference/formats/CSV/CSVWithNamesAndTypes) | ✔ | ✔ |
+| [CustomSeparated](/core/reference/formats/CustomSeparated/CustomSeparated) | ✔ | ✔ |
+| [CustomSeparatedWithNames](/core/reference/formats/CustomSeparated/CustomSeparatedWithNames) | ✔ | ✔ |
+| [CustomSeparatedWithNamesAndTypes](/core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes) | ✔ | ✔ |
+| [SQLInsert](/core/reference/formats/SQLInsert) | ✗ | ✔ |
+| [Values](/core/reference/formats/Values) | ✔ | ✔ |
+| [Vertical](/core/reference/formats/Vertical) | ✗ | ✔ |
+| [JSON](/core/reference/formats/JSON/JSON) | ✔ | ✔ |
+| [JSONAsString](/core/reference/formats/JSON/JSONAsString) | ✔ | ✗ |
+| [JSONAsObject](/core/reference/formats/JSON/JSONAsObject) | ✔ | ✗ |
+| [JSONStrings](/core/reference/formats/JSON/JSONStrings) | ✔ | ✔ |
+| [JSONColumns](/core/reference/formats/JSON/JSONColumns) | ✔ | ✔ |
+| [JSONColumnsWithMetadata](/core/reference/formats/JSON/JSONColumnsWithMetadata) | ✔ | ✔ |
+| [JSONCompact](/core/reference/formats/JSON/JSONCompact) | ✔ | ✔ |
+| [JSONCompactStrings](/core/reference/formats/JSON/JSONCompactStrings) | ✗ | ✔ |
+| [JSONCompactColumns](/core/reference/formats/JSON/JSONCompactColumns) | ✔ | ✔ |
+| [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) | ✔ | ✔ |
+| [PrettyJSONEachRow](/core/reference/formats/JSON/PrettyJSONEachRow) | ✗ | ✔ |
+| [JSONEachRowWithProgress](/core/reference/formats/JSON/JSONEachRowWithProgress) | ✗ | ✔ |
+| [JSONStringsEachRow](/core/reference/formats/JSON/JSONStringsEachRow) | ✔ | ✔ |
+| [JSONStringsEachRowWithProgress](/core/reference/formats/JSON/JSONStringsEachRowWithProgress) | ✗ | ✔ |
+| [JSONCompactEachRow](/core/reference/formats/JSON/JSONCompactEachRow) | ✔ | ✔ |
+| [JSONCompactEachRowWithNames](/core/reference/formats/JSON/JSONCompactEachRowWithNames) | ✔ | ✔ |
+| [JSONCompactEachRowWithNamesAndTypes](/core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes) | ✔ | ✔ |
+| [JSONCompactEachRowWithProgress](/core/reference/formats/JSON/JSONCompactEachRowWithProgress) | ✗ | ✔ |
+| [JSONCompactStringsEachRow](/core/reference/formats/JSON/JSONCompactStringsEachRow) | ✔ | ✔ |
+| [JSONCompactStringsEachRowWithNames](/core/reference/formats/JSON/JSONCompactStringsEachRowWithNames) | ✔ | ✔ |
+| [JSONCompactStringsEachRowWithNamesAndTypes](/core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes) | ✔ | ✔ |
+| [JSONCompactStringsEachRowWithProgress](/core/reference/formats/JSON/JSONCompactStringsEachRowWithProgress) | ✗ | ✔ |
+| [JSONObjectEachRow](/core/reference/formats/JSON/JSONObjectEachRow) | ✔ | ✔ |
+| [BSONEachRow](/core/reference/formats/BSONEachRow) | ✔ | ✔ |
+| [TSKV](/core/reference/formats/TabSeparated/TSKV) | ✔ | ✔ |
+| [Pretty](/core/reference/formats/Pretty/Pretty) | ✗ | ✔ |
+| [PrettyNoEscapes](/core/reference/formats/Pretty/PrettyNoEscapes) | ✗ | ✔ |
+| [PrettyMonoBlock](/core/reference/formats/Pretty/PrettyMonoBlock) | ✗ | ✔ |
+| [PrettyNoEscapesMonoBlock](/core/reference/formats/Pretty/PrettyNoEscapesMonoBlock) | ✗ | ✔ |
+| [PrettyCompact](/core/reference/formats/Pretty/PrettyCompact) | ✗ | ✔ |
+| [PrettyCompactNoEscapes](/core/reference/formats/Pretty/PrettyCompactNoEscapes) | ✗ | ✔ |
+| [PrettyCompactMonoBlock](/core/reference/formats/Pretty/PrettyCompactMonoBlock) | ✗ | ✔ |
+| [PrettyCompactNoEscapesMonoBlock](/core/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock) | ✗ | ✔ |
+| [PrettySpace](/core/reference/formats/Pretty/PrettySpace) | ✗ | ✔ |
+| [PrettySpaceNoEscapes](/core/reference/formats/Pretty/PrettySpaceNoEscapes) | ✗ | ✔ |
+| [PrettySpaceMonoBlock](/core/reference/formats/Pretty/PrettySpaceMonoBlock) | ✗ | ✔ |
+| [PrettySpaceNoEscapesMonoBlock](/core/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock) | ✗ | ✔ |
+| [Prometheus](/core/reference/formats/Prometheus) | ✗ | ✔ |
+| [Protobuf](/core/reference/formats/Protobuf/Protobuf) | ✔ | ✔ |
+| [ProtobufSingle](/core/reference/formats/Protobuf/ProtobufSingle) | ✔ | ✔ |
+| [ProtobufList](/core/reference/formats/Protobuf/ProtobufList) | ✔ | ✔ |
+| [Avro](/core/reference/formats/Avro/Avro) | ✔ | ✔ |
+| [AvroConfluent](/core/reference/formats/Avro/AvroConfluent) | ✔ | ✔ |
+| [Parquet](/core/reference/formats/Parquet/Parquet) | ✔ | ✔ |
+| [ParquetMetadata](/core/reference/formats/Parquet/ParquetMetadata) | ✔ | ✗ |
+| [Arrow](/core/reference/formats/Arrow/Arrow) | ✔ | ✔ |
+| [ArrowStream](/core/reference/formats/Arrow/ArrowStream) | ✔ | ✔ |
+| [ORC](/core/reference/formats/ORC) | ✔ | ✔ |
+| [One](/core/reference/formats/One) | ✔ | ✗ |
+| [Npy](/core/reference/formats/Npy) | ✔ | ✔ |
+| [RowBinary](/core/reference/formats/RowBinary/RowBinary) | ✔ | ✔ |
+| [RowBinaryWithNames](/core/reference/formats/RowBinary/RowBinaryWithNames) | ✔ | ✔ |
+| [RowBinaryWithNamesAndTypes](/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes) | ✔ | ✔ |
+| [RowBinaryWithDefaults](/core/reference/formats/RowBinary/RowBinaryWithDefaults) | ✔ | ✗ |
+| [Native](/core/reference/formats/Native) | ✔ | ✔ |
+| [Buffers](/core/reference/formats/Buffers) | ✔ | ✔ |
+| [Null](/core/reference/formats/Null) | ✗ | ✔ |
+| [Hash](/core/reference/formats/Hash) | ✗ | ✔ |
+| [XML](/core/reference/formats/XML) | ✗ | ✔ |
+| [CapnProto](/core/reference/formats/CapnProto) | ✔ | ✔ |
+| [LineAsString](/core/reference/formats/LineAsString/LineAsString) | ✔ | ✔ |
+| [LineAsStringWithNames](/core/reference/formats/LineAsString/LineAsStringWithNames) | ✔ | ✔ |
+| [LineAsStringWithNamesAndTypes](/core/reference/formats/LineAsString/LineAsStringWithNamesAndTypes) | ✔ | ✔ |
+| [Regexp](/core/reference/formats/Regexp) | ✔ | ✗ |
+| [RawBLOB](/core/reference/formats/RawBLOB) | ✔ | ✔ |
+| [MsgPack](/core/reference/formats/MsgPack) | ✔ | ✔ |
+| [MySQLDump](/core/reference/formats/MySQLDump) | ✔ | ✗ |
+| [DWARF](/core/reference/formats/DWARF) | ✔ | ✗ |
+| [Markdown](/core/reference/formats/Markdown) | ✗ | ✔ |
+| [Form](/core/reference/formats/Form) | ✔ | ✗ |
+
+You can control some format processing parameters with the ClickHouse settings. For more information read the [Settings](/core/reference/settings/formats) section.
+
+## Format schema {#formatschema}
+
+The file name containing the format schema is set by the setting `format_schema`.
+It's required to set this setting when it is used one of the formats `Cap'n Proto` and `Protobuf`.
+The format schema is a combination of a file name and the name of a message type in this file, delimited by a colon,
+e.g. `schemafile.proto:MessageType`.
+If the file has the standard extension for the format (for example, `.proto` for `Protobuf`),
+it can be omitted and in this case, the format schema looks like `schemafile:MessageType`.
+
+If you input or output data via the [client](/core/concepts/features/interfaces/client) in interactive mode, the file name specified in the format schema
+can contain an absolute path or a path relative to the current directory on the client.
+If you use the client in the [batch mode](/core/concepts/features/interfaces/client#batch-mode), the path to the schema must be relative due to security reasons.
+
+If you input or output data via the [HTTP interface](/core/concepts/features/interfaces/http) the file name specified in the format schema
+should be located in the directory specified in [format_schema_path](/core/reference/settings/server-settings/settings#format_schema_path)
+in the server configuration.
+
+## Skipping errors {#skippingerrors}
+
+Some formats such as `CSV`, `TabSeparated`, `TSKV`, `JSONEachRow`, `Template`, `CustomSeparated` and `Protobuf` can skip broken row if parsing error occurred and continue parsing from the beginning of next row. See [input_format_allow_errors_num](/core/reference/settings/formats#input_format_allow_errors_num) and
+[input_format_allow_errors_ratio](/core/reference/settings/formats#input_format_allow_errors_ratio) settings.
+Limitations:
+- In case of parsing error `JSONEachRow` skips all data until the new line (or EOF), so rows must be delimited by `\n` to count errors correctly.
+- `Template` and `CustomSeparated` use delimiter after the last column and delimiter between rows to find the beginning of next row, so skipping errors works only if at least one of them is not empty.
diff --git a/reference/functions/aggregate-functions/combinators.mdx b/core/reference/functions/aggregate-functions/combinators.mdx
similarity index 89%
rename from reference/functions/aggregate-functions/combinators.mdx
rename to core/reference/functions/aggregate-functions/combinators.mdx
index f90f45ce..d00d15fe 100644
--- a/reference/functions/aggregate-functions/combinators.mdx
+++ b/core/reference/functions/aggregate-functions/combinators.mdx
@@ -62,7 +62,7 @@ GROUP BY timeslot;
## -SimpleState {#-simplestate}
-If you apply this combinator, the aggregate function returns the same value but with a different type. This is a [SimpleAggregateFunction(...)](/reference/data-types/simpleaggregatefunction) that can be stored in a table to work with [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) tables.
+If you apply this combinator, the aggregate function returns the same value but with a different type. This is a [SimpleAggregateFunction(...)](/core/reference/data-types/simpleaggregatefunction) that can be stored in a table to work with [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) tables.
**Syntax**
@@ -92,7 +92,7 @@ WITH anySimpleState(number) AS c SELECT toTypeName(c), c FROM numbers(1);
## -State {#-state}
-If you apply this combinator, the aggregate function does not return the resulting value (such as the number of unique values for the [uniq](/reference/functions/aggregate-functions/reference/uniq) function), but an intermediate state of the aggregation (for `uniq`, this is the hash table for calculating the number of unique values). This is an `AggregateFunction(...)` that can be used for further processing or stored in a table to finish aggregating later.
+If you apply this combinator, the aggregate function does not return the resulting value (such as the number of unique values for the [uniq](/core/reference/functions/aggregate-functions/reference/uniq) function), but an intermediate state of the aggregation (for `uniq`, this is the hash table for calculating the number of unique values). This is an `AggregateFunction(...)` that can be used for further processing or stored in a table to finish aggregating later.
Please notice, that -MapState is not an invariant for the same data due to the fact that order of data in intermediate state can change, though it doesn't impact ingestion of this data.
@@ -100,9 +100,9 @@ Please notice, that -MapState is not an invariant for the same data due to the f
To work with these states, use:
-- [AggregatingMergeTree](/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table engine.
-- [finalizeAggregation](/reference/functions/regular-functions/other-functions#finalizeAggregation) function.
-- [runningAccumulate](/reference/functions/regular-functions/other-functions#runningAccumulate) function.
+- [AggregatingMergeTree](/core/reference/engines/table-engines/mergetree-family/aggregatingmergetree) table engine.
+- [finalizeAggregation](/core/reference/functions/regular-functions/other-functions#finalizeAggregation) function.
+- [runningAccumulate](/core/reference/functions/regular-functions/other-functions#runningAccumulate) function.
- [-Merge](#-merge) combinator.
- [-MergeState](#-mergestate) combinator.
@@ -179,7 +179,7 @@ FROM
Changes behavior of an aggregate function.
-This combinator converts a result of an aggregate function to the [Nullable](/reference/data-types/nullable) data type. If the aggregate function does not have values to calculate it returns [NULL](/reference/settings/formats#input_format_null_as_default).
+This combinator converts a result of an aggregate function to the [Nullable](/core/reference/data-types/nullable) data type. If the aggregate function does not have values to calculate it returns [NULL](/core/reference/settings/formats#input_format_null_as_default).
`-OrNull` can be used with other combinators.
@@ -267,7 +267,7 @@ Consider the `people` table with the following data:
Let's get the names of the people whose age lies in the intervals of `[30,60)` and `[60,75)`. Since we use integer representation for age, we get ages in the `[30, 59]` and `[60,74]` intervals.
-To aggregate names in an array, we use the [groupArray](/reference/functions/aggregate-functions/reference/groupArray) aggregate function. It takes one argument. In our case, it's the `name` column. The `groupArrayResample` function should use the `age` column to aggregate names by age. To define the required intervals, we pass the `30, 75, 30` arguments into the `groupArrayResample` function.
+To aggregate names in an array, we use the [groupArray](/core/reference/functions/aggregate-functions/reference/groupArray) aggregate function. It takes one argument. In our case, it's the `name` column. The `groupArrayResample` function should use the `age` column to aggregate names by age. To define the required intervals, we pass the `30, 75, 30` arguments into the `groupArrayResample` function.
```sql
SELECT groupArrayResample(30, 75, 30)(name, age) FROM people
diff --git a/reference/functions/aggregate-functions/grouping_function.mdx b/core/reference/functions/aggregate-functions/grouping_function.mdx
similarity index 95%
rename from reference/functions/aggregate-functions/grouping_function.mdx
rename to core/reference/functions/aggregate-functions/grouping_function.mdx
index 2a7387ef..f1c90c27 100644
--- a/reference/functions/aggregate-functions/grouping_function.mdx
+++ b/core/reference/functions/aggregate-functions/grouping_function.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
## GROUPING {#grouping}
-[ROLLUP](/reference/statements/select/group-by#rollup-modifier) and [CUBE](/reference/statements/select/group-by#cube-modifier) are modifiers to GROUP BY. Both of these calculate subtotals. ROLLUP takes an ordered list of columns, for example `(day, month, year)`, and calculates subtotals at each level of the aggregation and then a grand total. CUBE calculates subtotals across all possible combinations of the columns specified. GROUPING identifies which rows returned by ROLLUP or CUBE are superaggregates, and which are rows that would be returned by an unmodified GROUP BY.
+[ROLLUP](/core/reference/statements/select/group-by#rollup-modifier) and [CUBE](/core/reference/statements/select/group-by#cube-modifier) are modifiers to GROUP BY. Both of these calculate subtotals. ROLLUP takes an ordered list of columns, for example `(day, month, year)`, and calculates subtotals at each level of the aggregation and then a grand total. CUBE calculates subtotals across all possible combinations of the columns specified. GROUPING identifies which rows returned by ROLLUP or CUBE are superaggregates, and which are rows that would be returned by an unmodified GROUP BY.
The GROUPING function takes multiple columns as an argument, and returns a bitmask.
- `1` indicates that a row returned by a `ROLLUP` or `CUBE` modifier to `GROUP BY` is a subtotal
diff --git a/reference/functions/aggregate-functions/index.mdx b/core/reference/functions/aggregate-functions/index.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/index.mdx
rename to core/reference/functions/aggregate-functions/index.mdx
index d2a4ef84..1becaa12 100644
--- a/reference/functions/aggregate-functions/index.mdx
+++ b/core/reference/functions/aggregate-functions/index.mdx
@@ -10,14 +10,14 @@ Aggregate functions work in the [normal](http://www.sql-tutorial.com/sql-aggrega
ClickHouse also supports:
-- [Parametric aggregate functions](/reference/functions/aggregate-functions/parametric-functions), which accept other parameters in addition to columns.
-- [Combinators](/reference/functions/aggregate-functions/combinators), which change the behavior of aggregate functions.
+- [Parametric aggregate functions](/core/reference/functions/aggregate-functions/parametric-functions), which accept other parameters in addition to columns.
+- [Combinators](/core/reference/functions/aggregate-functions/combinators), which change the behavior of aggregate functions.
## NULL processing {#null-processing}
During aggregation, all `NULL` arguments are skipped. If the aggregation has several arguments it will ignore any row in which one or more of them are NULL.
-There is an exception to this rule, which are the functions [`first_value`](/reference/functions/aggregate-functions/reference/first_value), [`last_value`](/reference/functions/aggregate-functions/reference/last_value) and their aliases (`any` and `anyLast` respectively) when followed by the modifier `RESPECT NULLS`. For example, `FIRST_VALUE(b) RESPECT NULLS`.
+There is an exception to this rule, which are the functions [`first_value`](/core/reference/functions/aggregate-functions/reference/first_value), [`last_value`](/core/reference/functions/aggregate-functions/reference/last_value) and their aliases (`any` and `anyLast` respectively) when followed by the modifier `RESPECT NULLS`. For example, `FIRST_VALUE(b) RESPECT NULLS`.
**Examples:**
@@ -59,7 +59,7 @@ SELECT groupArray(y) FROM t_null_big
`groupArray` does not include `NULL` in the resulting array.
-You can use [COALESCE](/reference/functions/regular-functions/functions-for-nulls#coalesce) to change NULL into a value that makes sense in your use case. For example: `avg(COALESCE(column, 0))` with use the column value in the aggregation or zero if NULL:
+You can use [COALESCE](/core/reference/functions/regular-functions/functions-for-nulls#coalesce) to change NULL into a value that makes sense in your use case. For example: `avg(COALESCE(column, 0))` with use the column value in the aggregation or zero if NULL:
```sql
SELECT
@@ -74,7 +74,7 @@ FROM t_null_big
└────────────────────┴─────────────────────┘
```
-Also you can use [Tuple](/reference/data-types/tuple) to work around NULL skipping behavior. A `Tuple` that contains only a `NULL` value is not `NULL`, so the aggregate functions won't skip that row because of that `NULL` value.
+Also you can use [Tuple](/core/reference/data-types/tuple) to work around NULL skipping behavior. A `Tuple` that contains only a `NULL` value is not `NULL`, so the aggregate functions won't skip that row because of that `NULL` value.
```sql
SELECT
@@ -87,7 +87,7 @@ FROM t_null_big;
└───────────────┴───────────────────────────────────────┘
```
-Note that aggregations are skipped when the columns are used as arguments to an aggregated function. For example [`count`](/reference/functions/aggregate-functions/reference/count) without parameters (`count()`) or with constant ones (`count(1)`) will count all rows in the block (independently of the value of the GROUP BY column as it's not an argument), while `count(column)` will only return the number of rows where column is not NULL.
+Note that aggregations are skipped when the columns are used as arguments to an aggregated function. For example [`count`](/core/reference/functions/aggregate-functions/reference/count) without parameters (`count()`) or with constant ones (`count(1)`) will count all rows in the block (independently of the value of the GROUP BY column as it's not an argument), while `count(column)` will only return the number of rows where column is not NULL.
```sql
SELECT
diff --git a/reference/functions/aggregate-functions/parametric-functions.mdx b/core/reference/functions/aggregate-functions/parametric-functions.mdx
similarity index 93%
rename from reference/functions/aggregate-functions/parametric-functions.mdx
rename to core/reference/functions/aggregate-functions/parametric-functions.mdx
index c36c8b50..e0d1ed1a 100644
--- a/reference/functions/aggregate-functions/parametric-functions.mdx
+++ b/core/reference/functions/aggregate-functions/parametric-functions.mdx
@@ -20,7 +20,7 @@ The functions uses [A Streaming Parallel Decision Tree Algorithm](http://jmlr.or
**Arguments**
-`values` — [Expression](/reference/syntax#expressions) resulting in input values.
+`values` — [Expression](/core/reference/syntax#expressions) resulting in input values.
**Parameters**
@@ -28,7 +28,7 @@ The functions uses [A Streaming Parallel Decision Tree Algorithm](http://jmlr.or
**Returned values**
-- [Array](/reference/data-types/array) of [Tuples](/reference/data-types/tuple) of the following format:
+- [Array](/core/reference/data-types/array) of [Tuples](/core/reference/data-types/tuple) of the following format:
```
[(lower_1, upper_1, height_1), ... (lower_N, upper_N, height_N)]
@@ -55,7 +55,7 @@ FROM (
└─────────────────────────────────────────────────────────────────────────┘
```
-You can visualize a histogram with the [bar](/reference/functions/regular-functions/other-functions#bar) function, for example:
+You can visualize a histogram with the [bar](/core/reference/functions/regular-functions/other-functions#bar) function, for example:
```sql
WITH histogram(5)(rand() % 100) AS hist
@@ -98,7 +98,7 @@ Events that occur at the same second may lay in the sequence in an undefined ord
**Arguments**
-- `timestamp` — Column considered to contain time data. Typical data types are `Date` and `DateTime`. You can also use any of the supported [UInt](/reference/data-types/int-uint) data types.
+- `timestamp` — Column considered to contain time data. Typical data types are `Date` and `DateTime`. You can also use any of the supported [UInt](/core/reference/data-types/int-uint) data types.
- `cond1`, `cond2` — Conditions that describe the chain of events. Data type: `UInt8`. You can pass up to 32 condition arguments. The function takes only the events described in these conditions into account. If the sequence contains data that isn't described in a condition, the function skips them.
@@ -189,7 +189,7 @@ sequenceCount(pattern)(timestamp, cond1, cond2, ...)
**Arguments**
-- `timestamp` — Column considered to contain time data. Typical data types are `Date` and `DateTime`. You can also use any of the supported [UInt](/reference/data-types/int-uint) data types.
+- `timestamp` — Column considered to contain time data. Typical data types are `Date` and `DateTime`. You can also use any of the supported [UInt](/core/reference/data-types/int-uint) data types.
- `cond1`, `cond2` — Conditions that describe the chain of events. Data type: `UInt8`. You can pass up to 32 condition arguments. The function takes only the events described in these conditions into account. If the sequence contains data that isn't described in a condition, the function skips them.
@@ -246,7 +246,7 @@ sequenceMatchEvents(pattern)(timestamp, cond1, cond2, ...)
**Arguments**
-- `timestamp` — Column considered to contain time data. Typical data types are `Date` and `DateTime`. You can also use any of the supported [UInt](/reference/data-types/int-uint) data types.
+- `timestamp` — Column considered to contain time data. Typical data types are `Date` and `DateTime`. You can also use any of the supported [UInt](/core/reference/data-types/int-uint) data types.
- `cond1`, `cond2` — Conditions that describe the chain of events. Data type: `UInt8`. You can pass up to 32 condition arguments. The function takes only the events described in these conditions into account. If the sequence contains data that isn't described in a condition, the function skips them.
@@ -311,8 +311,8 @@ windowFunnel(window, [mode, [mode, ... ]])(timestamp, cond1, cond2, ..., condN)
**Arguments**
-- `timestamp` — Name of the column containing the timestamp. Data types supported: [Date](/reference/data-types/date), [DateTime](/reference/data-types/datetime) and other unsigned integer types (note that even though timestamp supports the `UInt64` type, it's value can't exceed the Int64 maximum, which is 2^63 - 1).
-- `cond` — Conditions or data describing the chain of events. [UInt8](/reference/data-types/int-uint).
+- `timestamp` — Name of the column containing the timestamp. Data types supported: [Date](/core/reference/data-types/date), [DateTime](/core/reference/data-types/datetime) and other unsigned integer types (note that even though timestamp supports the `UInt64` type, it's value can't exceed the Int64 maximum, which is 2^63 - 1).
+- `cond` — Conditions or data describing the chain of events. [UInt8](/core/reference/data-types/int-uint).
**Parameters**
@@ -418,7 +418,7 @@ ORDER BY level ASC;
## retention {#retention}
The function takes as arguments a set of conditions from 1 to 32 arguments of type `UInt8` that indicate whether a certain condition was met for the event.
-Any condition can be specified as an argument (as in [WHERE](/reference/statements/select/where)).
+Any condition can be specified as an argument (as in [WHERE](/core/reference/statements/select/where)).
The conditions, except the first, apply in pairs: the result of the second will be true if the first and second are true, of the third if the first and third are true, etc.
@@ -584,7 +584,7 @@ HAVING uniqUpTo(4)(UserID) >= 5
## sumMapFiltered {#summapfiltered}
-This function behaves the same as [sumMap](/reference/functions/aggregate-functions/reference/sumMap) except that it also accepts an array of keys to filter with as a parameter. This can be especially useful when working with a high cardinality of keys.
+This function behaves the same as [sumMap](/core/reference/functions/aggregate-functions/reference/sumMap) except that it also accepts an array of keys to filter with as a parameter. This can be especially useful when working with a high cardinality of keys.
**Syntax**
@@ -592,9 +592,9 @@ This function behaves the same as [sumMap](/reference/functions/aggregate-functi
**Parameters**
-- `keys_to_keep`: [Array](/reference/data-types/array) of keys to filter with.
-- `keys`: [Array](/reference/data-types/array) of keys.
-- `values`: [Array](/reference/data-types/array) of values.
+- `keys_to_keep`: [Array](/core/reference/data-types/array) of keys to filter with.
+- `keys`: [Array](/core/reference/data-types/array) of keys.
+- `values`: [Array](/core/reference/data-types/array) of values.
**Returned Value**
@@ -630,7 +630,7 @@ SELECT sumMapFiltered([1, 4, 8])(statusMap.status, statusMap.requests) FROM sum_
## sumMapFilteredWithOverflow {#summapfilteredwithoverflow}
-This function behaves the same as [sumMap](/reference/functions/aggregate-functions/reference/sumMap) except that it also accepts an array of keys to filter with as a parameter. This can be especially useful when working with a high cardinality of keys. It differs from the [sumMapFiltered](#summapfiltered) function in that it does summation with overflow - i.e. returns the same data type for the summation as the argument data type.
+This function behaves the same as [sumMap](/core/reference/functions/aggregate-functions/reference/sumMap) except that it also accepts an array of keys to filter with as a parameter. This can be especially useful when working with a high cardinality of keys. It differs from the [sumMapFiltered](#summapfiltered) function in that it does summation with overflow - i.e. returns the same data type for the summation as the argument data type.
**Syntax**
@@ -638,9 +638,9 @@ This function behaves the same as [sumMap](/reference/functions/aggregate-functi
**Parameters**
-- `keys_to_keep`: [Array](/reference/data-types/array) of keys to filter with.
-- `keys`: [Array](/reference/data-types/array) of keys.
-- `values`: [Array](/reference/data-types/array) of values.
+- `keys_to_keep`: [Array](/core/reference/data-types/array) of keys to filter with.
+- `keys`: [Array](/core/reference/data-types/array) of keys.
+- `values`: [Array](/core/reference/data-types/array) of values.
**Returned Value**
@@ -712,17 +712,17 @@ sequenceNextNode(direction, base)(timestamp, event_column, base_condition, event
**Arguments**
-- `timestamp` — Name of the column containing the timestamp. Data types supported: [Date](/reference/data-types/date), [DateTime](/reference/data-types/datetime) and other unsigned integer types.
-- `event_column` — Name of the column containing the value of the next event to be returned. Data types supported: [String](/reference/data-types/string) and [Nullable(String)](/reference/data-types/nullable).
+- `timestamp` — Name of the column containing the timestamp. Data types supported: [Date](/core/reference/data-types/date), [DateTime](/core/reference/data-types/datetime) and other unsigned integer types.
+- `event_column` — Name of the column containing the value of the next event to be returned. Data types supported: [String](/core/reference/data-types/string) and [Nullable(String)](/core/reference/data-types/nullable).
- `base_condition` — Condition that the base point must fulfill.
-- `event1`, `event2`, ... — Conditions describing the chain of events. [UInt8](/reference/data-types/int-uint).
+- `event1`, `event2`, ... — Conditions describing the chain of events. [UInt8](/core/reference/data-types/int-uint).
**Returned values**
- `event_column[next_index]` — If the pattern is matched and next value exists.
- `NULL` - If the pattern isn't matched or next value doesn't exist.
-Type: [Nullable(String)](/reference/data-types/nullable).
+Type: [Nullable(String)](/core/reference/data-types/nullable).
**Example**
diff --git a/reference/functions/aggregate-functions/reference/aggThrow.mdx b/core/reference/functions/aggregate-functions/reference/aggThrow.mdx
similarity index 96%
rename from reference/functions/aggregate-functions/reference/aggThrow.mdx
rename to core/reference/functions/aggregate-functions/reference/aggThrow.mdx
index 4207fd61..05404ab0 100644
--- a/reference/functions/aggregate-functions/reference/aggThrow.mdx
+++ b/core/reference/functions/aggregate-functions/reference/aggThrow.mdx
@@ -22,7 +22,7 @@ aggThrow(throw_prob)
**Arguments**
-- `throw_prob` — Probability to throw on creation. [`Float64`](/reference/data-types/float)
+- `throw_prob` — Probability to throw on creation. [`Float64`](/core/reference/data-types/float)
**Returned value**
diff --git a/reference/functions/aggregate-functions/reference/analysis_of_variance.mdx b/core/reference/functions/aggregate-functions/reference/analysis_of_variance.mdx
similarity index 81%
rename from reference/functions/aggregate-functions/reference/analysis_of_variance.mdx
rename to core/reference/functions/aggregate-functions/reference/analysis_of_variance.mdx
index f151c425..36c237e6 100644
--- a/reference/functions/aggregate-functions/reference/analysis_of_variance.mdx
+++ b/core/reference/functions/aggregate-functions/reference/analysis_of_variance.mdx
@@ -30,12 +30,12 @@ analysisOfVariance(val, group_no)
**Arguments**
-- `val` — Value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `group_no` — Group number that `val` belongs to. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `val` — Value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `group_no` — Group number that `val` belongs to. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple with the F-statistic and p-value. [`Tuple(Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple with the F-statistic and p-value. [`Tuple(Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/any.mdx b/core/reference/functions/aggregate-functions/reference/any.mdx
similarity index 95%
rename from reference/functions/aggregate-functions/reference/any.mdx
rename to core/reference/functions/aggregate-functions/reference/any.mdx
index 46f5d143..06cafffb 100644
--- a/reference/functions/aggregate-functions/reference/any.mdx
+++ b/core/reference/functions/aggregate-functions/reference/any.mdx
@@ -45,12 +45,12 @@ any(column)[ RESPECT NULLS]
**Arguments**
-- `column` — The column name. [`Any`](/reference/data-types)
+- `column` — The column name. [`Any`](/core/reference/data-types)
**Returned value**
Returns the first value encountered.
- [`Any`](/reference/data-types)
+ [`Any`](/core/reference/data-types)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/anyHeavy.mdx b/core/reference/functions/aggregate-functions/reference/anyHeavy.mdx
similarity index 90%
rename from reference/functions/aggregate-functions/reference/anyHeavy.mdx
rename to core/reference/functions/aggregate-functions/reference/anyHeavy.mdx
index f02d1dac..1a40372e 100644
--- a/reference/functions/aggregate-functions/reference/anyHeavy.mdx
+++ b/core/reference/functions/aggregate-functions/reference/anyHeavy.mdx
@@ -25,11 +25,11 @@ anyHeavy(column)
**Arguments**
-- `column` — The column name. [`String`](/reference/data-types/string)
+- `column` — The column name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a frequently occurring value. The result is nondeterministic. [`Any`](/reference/data-types)
+Returns a frequently occurring value. The result is nondeterministic. [`Any`](/core/reference/data-types)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/anyLast.mdx b/core/reference/functions/aggregate-functions/reference/anyLast.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/anyLast.mdx
rename to core/reference/functions/aggregate-functions/reference/anyLast.mdx
index feaec101..94450e2d 100644
--- a/reference/functions/aggregate-functions/reference/anyLast.mdx
+++ b/core/reference/functions/aggregate-functions/reference/anyLast.mdx
@@ -14,7 +14,7 @@ Selects the last encountered value of a column.
As a query can be executed in arbitrary order, the result of this function is non-deterministic.
-If you need an arbitrary but deterministic result, use functions [min](/reference/functions/aggregate-functions/reference/min) or [max](/reference/functions/aggregate-functions/reference/max).
+If you need an arbitrary but deterministic result, use functions [min](/core/reference/functions/aggregate-functions/reference/min) or [max](/core/reference/functions/aggregate-functions/reference/max).
By default, the function never returns NULL, i.e. ignores NULL values in the input column.
@@ -31,11 +31,11 @@ anyLast(column) [RESPECT NULLS]
**Arguments**
-- `column` — The column name. [`Any`](/reference/data-types)
+- `column` — The column name. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the last value encountered. [`Any`](/reference/data-types)
+Returns the last value encountered. [`Any`](/core/reference/data-types)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/approxtopk.mdx b/core/reference/functions/aggregate-functions/reference/approxtopk.mdx
similarity index 75%
rename from reference/functions/aggregate-functions/reference/approxtopk.mdx
rename to core/reference/functions/aggregate-functions/reference/approxtopk.mdx
index d61ddef4..d7d01383 100644
--- a/reference/functions/aggregate-functions/reference/approxtopk.mdx
+++ b/core/reference/functions/aggregate-functions/reference/approxtopk.mdx
@@ -28,16 +28,16 @@ approx_top_k(N[, reserved])(column)
**Parameters**
-- `N` — The number of elements to return. Default value: `10`. Maximum value of `N = 65536`. [`UInt64`](/reference/data-types/int-uint)
-- `reserved` — Optional. Defines how many cells reserved for values. If `uniq(column) > reserved`, the result will be approximate. Default value: `N * 3`. [`UInt64`](/reference/data-types/int-uint)
+- `N` — The number of elements to return. Default value: `10`. Maximum value of `N = 65536`. [`UInt64`](/core/reference/data-types/int-uint)
+- `reserved` — Optional. Defines how many cells reserved for values. If `uniq(column) > reserved`, the result will be approximate. Default value: `N * 3`. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `column` — The name of the column for which to find the most frequent values. [`String`](/reference/data-types/string)
+- `column` — The name of the column for which to find the most frequent values. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of the approximately most frequent values and their counts, sorted in descending order of approximate frequency. [`Array`](/reference/data-types/array)
+Returns an array of the approximately most frequent values and their counts, sorted in descending order of approximate frequency. [`Array`](/core/reference/data-types/array)
**Examples**
@@ -58,6 +58,6 @@ FROM VALUES('k Char, w UInt64', ('y', 1), ('y', 1), ('x', 5), ('y', 1), ('z', 10
**See Also**
-- [topK](/reference/functions/aggregate-functions/reference/topK)
-- [topKWeighted](/reference/functions/aggregate-functions/reference/topKWeighted)
-- [approx_top_sum](/reference/functions/aggregate-functions/reference/approxtopsum)
+- [topK](/core/reference/functions/aggregate-functions/reference/topK)
+- [topKWeighted](/core/reference/functions/aggregate-functions/reference/topKWeighted)
+- [approx_top_sum](/core/reference/functions/aggregate-functions/reference/approxtopsum)
diff --git a/reference/functions/aggregate-functions/reference/approxtopsum.mdx b/core/reference/functions/aggregate-functions/reference/approxtopsum.mdx
similarity index 69%
rename from reference/functions/aggregate-functions/reference/approxtopsum.mdx
rename to core/reference/functions/aggregate-functions/reference/approxtopsum.mdx
index 4eaedcc8..66a79a19 100644
--- a/reference/functions/aggregate-functions/reference/approxtopsum.mdx
+++ b/core/reference/functions/aggregate-functions/reference/approxtopsum.mdx
@@ -20,9 +20,9 @@ In certain situations, errors might occur and it might return frequent values th
**See Also**
-- [topK](/reference/functions/aggregate-functions/reference/topK)
-- [topKWeighted](/reference/functions/aggregate-functions/reference/topKWeighted)
-- [approx_top_k](/reference/functions/aggregate-functions/reference/approxtopk)
+- [topK](/core/reference/functions/aggregate-functions/reference/topK)
+- [topKWeighted](/core/reference/functions/aggregate-functions/reference/topKWeighted)
+- [approx_top_k](/core/reference/functions/aggregate-functions/reference/approxtopk)
**Syntax**
@@ -33,17 +33,17 @@ approx_top_sum(N[, reserved])(column, weight)
**Parameters**
-- `N` — The number of elements to return. Optional. Default value: 10. [`UInt64`](/reference/data-types/int-uint)
-- `reserved` — Optional. Defines, how many cells reserved for values. If `uniq(column) > reserved`, result of topK function will be approximate. Default value: `N * 3`. Maximum value of `N = 65536`. [`UInt64`](/reference/data-types/int-uint)
+- `N` — The number of elements to return. Optional. Default value: 10. [`UInt64`](/core/reference/data-types/int-uint)
+- `reserved` — Optional. Defines, how many cells reserved for values. If `uniq(column) > reserved`, result of topK function will be approximate. Default value: `N * 3`. Maximum value of `N = 65536`. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `column` — The name of the column for which to find the most frequent values. [`String`](/reference/data-types/string)
-- `weight` — The weight. Every value is accounted `weight` times for frequency calculation. [`UInt64`](/reference/data-types/int-uint)
+- `column` — The name of the column for which to find the most frequent values. [`String`](/core/reference/data-types/string)
+- `weight` — The weight. Every value is accounted `weight` times for frequency calculation. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of the approximately most frequent values and their counts, sorted in descending order of approximate frequency. [`Array`](/reference/data-types/array)
+Returns an array of the approximately most frequent values and their counts, sorted in descending order of approximate frequency. [`Array`](/core/reference/data-types/array)
**Examples**
@@ -64,6 +64,6 @@ FROM VALUES('k Char, w UInt64', ('y', 1), ('y', 1), ('x', 5), ('y', 1), ('z', 10
**See Also**
-- [topK](/reference/functions/aggregate-functions/reference/topK)
-- [topKWeighted](/reference/functions/aggregate-functions/reference/topKWeighted)
-- [approx_top_k](/reference/functions/aggregate-functions/reference/approxtopk)
+- [topK](/core/reference/functions/aggregate-functions/reference/topK)
+- [topKWeighted](/core/reference/functions/aggregate-functions/reference/topKWeighted)
+- [approx_top_k](/core/reference/functions/aggregate-functions/reference/approxtopk)
diff --git a/reference/functions/aggregate-functions/reference/argAndMax.mdx b/core/reference/functions/aggregate-functions/reference/argAndMax.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/argAndMax.mdx
rename to core/reference/functions/aggregate-functions/reference/argAndMax.mdx
index 47765d56..fa4a45e2 100644
--- a/reference/functions/aggregate-functions/reference/argAndMax.mdx
+++ b/core/reference/functions/aggregate-functions/reference/argAndMax.mdx
@@ -12,7 +12,7 @@ Introduced in: v1.1.0
Calculates the `arg` and `val` value for a maximum `val` value.
If there are multiple rows with equal `val` being the maximum, which of the associated `arg` and `val` is returned is not deterministic.
-Both parts the `arg` and the `max` behave as [aggregate functions](/reference/functions/aggregate-functions), they both [skip `Null`](/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
+Both parts the `arg` and the `max` behave as [aggregate functions](/core/reference/functions/aggregate-functions), they both [skip `Null`](/core/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
The only difference with `argMax` is that `argAndMax` returns both argument and value.
@@ -20,8 +20,8 @@ The only difference with `argMax` is that `argAndMax` returns both argument and
**See also**
-- [argMax](/reference/functions/aggregate-functions/reference/argMax)
-- [Tuple](/reference/data-types/tuple)
+- [argMax](/core/reference/functions/aggregate-functions/reference/argMax)
+- [Tuple](/core/reference/data-types/tuple)
**Syntax**
@@ -32,12 +32,12 @@ argAndMax(arg, val)
**Arguments**
-- `arg` — Argument for which to find the maximum value. [`const String`](/reference/data-types/string)
-- `val` — The maximum value. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`Tuple`](/reference/data-types/tuple)
+- `arg` — Argument for which to find the maximum value. [`const String`](/core/reference/data-types/string)
+- `val` — The maximum value. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`Tuple`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple containing the `arg` value that corresponds to maximum `val` value and the maximum `val` value. [`Tuple`](/reference/data-types/tuple)
+Returns a tuple containing the `arg` value that corresponds to maximum `val` value and the maximum `val` value. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -90,5 +90,5 @@ SELECT argAndMax(a, (b,a)) FROM test;
**See also**
-- [argMax](/reference/functions/aggregate-functions/reference/argMax)
-- [Tuple](/reference/data-types/tuple)
+- [argMax](/core/reference/functions/aggregate-functions/reference/argMax)
+- [Tuple](/core/reference/data-types/tuple)
diff --git a/reference/functions/aggregate-functions/reference/argAndMin.mdx b/core/reference/functions/aggregate-functions/reference/argAndMin.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/argAndMin.mdx
rename to core/reference/functions/aggregate-functions/reference/argAndMin.mdx
index f8745e1b..794b077e 100644
--- a/reference/functions/aggregate-functions/reference/argAndMin.mdx
+++ b/core/reference/functions/aggregate-functions/reference/argAndMin.mdx
@@ -12,7 +12,7 @@ Introduced in: v1.1.0
Calculates the `arg` and `val` value for a minimum `val` value.
If there are multiple rows with equal `val` being the minimum, which of the associated `arg` and `val` is returned is not deterministic.
-Both parts the `arg` and the `min` behave as [aggregate functions](/reference/functions/aggregate-functions), they both [skip `Null`](/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
+Both parts the `arg` and the `min` behave as [aggregate functions](/core/reference/functions/aggregate-functions), they both [skip `Null`](/core/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
The only difference with `argMin` is that `argAndMin` returns both argument and value.
@@ -20,8 +20,8 @@ The only difference with `argMin` is that `argAndMin` returns both argument and
**See also**
-- [argMin](/reference/functions/aggregate-functions/reference/argMin)
-- [Tuple](/reference/data-types/tuple)
+- [argMin](/core/reference/functions/aggregate-functions/reference/argMin)
+- [Tuple](/core/reference/data-types/tuple)
**Syntax**
@@ -32,12 +32,12 @@ argAndMin(arg, val)
**Arguments**
-- `arg` — Argument for which to find the minimum value. [`const String`](/reference/data-types/string)
-- `val` — The minimum value. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`Tuple`](/reference/data-types/tuple)
+- `arg` — Argument for which to find the minimum value. [`const String`](/core/reference/data-types/string)
+- `val` — The minimum value. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`Tuple`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple containing the `arg` value that corresponds to minimum `val` value and the minimum `val` value. [`Tuple`](/reference/data-types/tuple)
+Returns a tuple containing the `arg` value that corresponds to minimum `val` value and the minimum `val` value. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -90,5 +90,5 @@ SELECT argAndMin(a, (b, a)), min(tuple(b, a)) FROM test;
**See also**
-- [argMin](/reference/functions/aggregate-functions/reference/argMin)
-- [Tuple](/reference/data-types/tuple)
+- [argMin](/core/reference/functions/aggregate-functions/reference/argMin)
+- [Tuple](/core/reference/data-types/tuple)
diff --git a/reference/functions/aggregate-functions/reference/argMax.mdx b/core/reference/functions/aggregate-functions/reference/argMax.mdx
similarity index 74%
rename from reference/functions/aggregate-functions/reference/argMax.mdx
rename to core/reference/functions/aggregate-functions/reference/argMax.mdx
index 0333e863..204ac77a 100644
--- a/reference/functions/aggregate-functions/reference/argMax.mdx
+++ b/core/reference/functions/aggregate-functions/reference/argMax.mdx
@@ -11,11 +11,11 @@ doc_type: 'reference'
Introduced in: v1.1.0
Calculates the `arg` value for a maximum `val` value. If there are multiple rows with equal `val` being the maximum, which of the associated `arg` is returned is not deterministic.
-Both parts the `arg` and the `max` behave as [aggregate functions](/reference/functions/aggregate-functions), they both [skip `Null`](/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
+Both parts the `arg` and the `max` behave as [aggregate functions](/core/reference/functions/aggregate-functions), they both [skip `Null`](/core/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
**See also**
-- [Tuple](/reference/data-types/tuple)
+- [Tuple](/core/reference/data-types/tuple)
**Syntax**
@@ -26,8 +26,8 @@ argMax(arg, val)
**Arguments**
-- `arg` — Argument for which to find the maximum value. [`const String`](/reference/data-types/string)
-- `val` — The maximum value. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`Tuple`](/reference/data-types/tuple)
+- `arg` — Argument for which to find the maximum value. [`const String`](/core/reference/data-types/string)
+- `val` — The maximum value. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`Tuple`](/core/reference/data-types/tuple)
**Returned value**
diff --git a/reference/functions/aggregate-functions/reference/argMin.mdx b/core/reference/functions/aggregate-functions/reference/argMin.mdx
similarity index 77%
rename from reference/functions/aggregate-functions/reference/argMin.mdx
rename to core/reference/functions/aggregate-functions/reference/argMin.mdx
index fa7be3cc..c79eb2de 100644
--- a/reference/functions/aggregate-functions/reference/argMin.mdx
+++ b/core/reference/functions/aggregate-functions/reference/argMin.mdx
@@ -13,11 +13,11 @@ doc_type: 'reference'
Introduced in: v1.1.0
Calculates the `arg` value for a minimum `val` value. If there are multiple rows with equal `val` being the maximum, which of the associated `arg` is returned is not deterministic.
-Both parts the `arg` and the `min` behave as [aggregate functions](/reference/functions/aggregate-functions), they both [skip `Null`](/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
+Both parts the `arg` and the `min` behave as [aggregate functions](/core/reference/functions/aggregate-functions), they both [skip `Null`](/core/reference/functions/aggregate-functions#null-processing) during processing and return not `Null` values if not `Null` values are available.
**See also**
-- [Tuple](/reference/data-types/tuple)
+- [Tuple](/core/reference/data-types/tuple)
**Syntax**
@@ -28,8 +28,8 @@ argMin(arg, val)
**Arguments**
-- `arg` — Argument for which to find the maximum value. [`const String`](/reference/data-types/string)
-- `val` — The minimum value. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`Tuple`](/reference/data-types/tuple)
+- `arg` — Argument for which to find the maximum value. [`const String`](/core/reference/data-types/string)
+- `val` — The minimum value. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`Tuple`](/core/reference/data-types/tuple)
**Returned value**
diff --git a/reference/functions/aggregate-functions/reference/avg.mdx b/core/reference/functions/aggregate-functions/reference/avg.mdx
similarity index 77%
rename from reference/functions/aggregate-functions/reference/avg.mdx
rename to core/reference/functions/aggregate-functions/reference/avg.mdx
index 64ccb9d6..16ac8c6f 100644
--- a/reference/functions/aggregate-functions/reference/avg.mdx
+++ b/core/reference/functions/aggregate-functions/reference/avg.mdx
@@ -21,11 +21,11 @@ avg(x)
**Arguments**
-- `x` — Input values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Input values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the arithmetic mean, otherwise returns `NaN` if the input parameter `x` is empty. [`Float64`](/reference/data-types/float)
+Returns the arithmetic mean, otherwise returns `NaN` if the input parameter `x` is empty. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/avgWeighted.mdx b/core/reference/functions/aggregate-functions/reference/avgWeighted.mdx
similarity index 85%
rename from reference/functions/aggregate-functions/reference/avgWeighted.mdx
rename to core/reference/functions/aggregate-functions/reference/avgWeighted.mdx
index 9131e694..71cbba6f 100644
--- a/reference/functions/aggregate-functions/reference/avgWeighted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/avgWeighted.mdx
@@ -21,12 +21,12 @@ avgWeighted(x, weight)
**Arguments**
-- `x` — Values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `weight` — Weights of the values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — Values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `weight` — Weights of the values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `NaN` if all the weights are equal to 0 or the supplied weights parameter is empty, or the weighted mean otherwise. [`Float64`](/reference/data-types/float)
+Returns `NaN` if all the weights are equal to 0 or the supplied weights parameter is empty, or the weighted mean otherwise. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/boundrat.mdx b/core/reference/functions/aggregate-functions/reference/boundrat.mdx
similarity index 81%
rename from reference/functions/aggregate-functions/reference/boundrat.mdx
rename to core/reference/functions/aggregate-functions/reference/boundrat.mdx
index 0d647415..da2eeab6 100644
--- a/reference/functions/aggregate-functions/reference/boundrat.mdx
+++ b/core/reference/functions/aggregate-functions/reference/boundrat.mdx
@@ -22,12 +22,12 @@ boundingRatio(x, y)
**Arguments**
-- `x` — X-coordinate values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Y-coordinate values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — X-coordinate values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Y-coordinate values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the slope of the line between the leftmost and rightmost points, otherwise returns `NaN` if the data is empty. [`Float64`](/reference/data-types/float)
+Returns the slope of the line between the leftmost and rightmost points, otherwise returns `NaN` if the data is empty. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx b/core/reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx
similarity index 92%
rename from reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx
rename to core/reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx
index 6005bb4e..c0358dae 100644
--- a/reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx
+++ b/core/reference/functions/aggregate-functions/reference/categoricalInformationValue.mdx
@@ -33,12 +33,12 @@ categoricalInformationValue(category1[, category2, ...,]tag)
**Arguments**
-- `category1, category2, ...` — One or more categorical features to analyze. Each category should contain discrete values. [`UInt8`](/reference/data-types/int-uint)
-- `tag` — Binary target variable for prediction. Should contain values 0 and 1. [`UInt8`](/reference/data-types/int-uint)
+- `category1, category2, ...` — One or more categorical features to analyze. Each category should contain discrete values. [`UInt8`](/core/reference/data-types/int-uint)
+- `tag` — Binary target variable for prediction. Should contain values 0 and 1. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of Float64 values representing the information value for each unique combination of categories. Each value indicates the predictive strength of that category combination for the target variable. [`Array(Float64)`](/reference/data-types/array)
+Returns an array of Float64 values representing the information value for each unique combination of categories. Each value indicates the predictive strength of that category combination for the target variable. [`Array(Float64)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/contingency.mdx b/core/reference/functions/aggregate-functions/reference/contingency.mdx
similarity index 76%
rename from reference/functions/aggregate-functions/reference/contingency.mdx
rename to core/reference/functions/aggregate-functions/reference/contingency.mdx
index 1404df7a..0b43e9e2 100644
--- a/reference/functions/aggregate-functions/reference/contingency.mdx
+++ b/core/reference/functions/aggregate-functions/reference/contingency.mdx
@@ -14,7 +14,7 @@ doc_type: 'reference'
Introduced in: v22.1.0
The `contingency` function calculates the [contingency coefficient](https://en.wikipedia.org/wiki/Contingency_table#Cram%C3%A9r's_V_and_the_contingency_coefficient_C), a value that measures the association between two columns in a table.
-The computation is similar to the [`cramersV`](/reference/functions/aggregate-functions/reference/cramersV) function but with a different denominator in the square root.
+The computation is similar to the [`cramersV`](/core/reference/functions/aggregate-functions/reference/cramersV) function but with a different denominator in the square root.
**Syntax**
@@ -25,12 +25,12 @@ contingency(column1, column2)
**Arguments**
-- `column1` — First column to compare. [`Any`](/reference/data-types)
-- `column2` — Second column to compare. [`Any`](/reference/data-types)
+- `column1` — First column to compare. [`Any`](/core/reference/data-types)
+- `column2` — Second column to compare. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a value between 0 and 1. The larger the result, the closer the association of the two columns. [`Float64`](/reference/data-types/float)
+Returns a value between 0 and 1. The larger the result, the closer the association of the two columns. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/corr.mdx b/core/reference/functions/aggregate-functions/reference/corr.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/corr.mdx
rename to core/reference/functions/aggregate-functions/reference/corr.mdx
index e5055fe1..c2efee92 100644
--- a/reference/functions/aggregate-functions/reference/corr.mdx
+++ b/core/reference/functions/aggregate-functions/reference/corr.mdx
@@ -19,7 +19,7 @@ $$
-This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`corrStable`](/reference/functions/aggregate-functions/reference/corrStable) function. It is slower but provides a more accurate result.
+This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`corrStable`](/core/reference/functions/aggregate-functions/reference/corrStable) function. It is slower but provides a more accurate result.
@@ -31,12 +31,12 @@ corr(x, y)
**Arguments**
-- `x` — First variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `y` — Second variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — First variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `y` — Second variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the Pearson correlation coefficient. [`Float64`](/reference/data-types/float)
+Returns the Pearson correlation coefficient. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/corrMatrix.mdx b/core/reference/functions/aggregate-functions/reference/corrMatrix.mdx
similarity index 85%
rename from reference/functions/aggregate-functions/reference/corrMatrix.mdx
rename to core/reference/functions/aggregate-functions/reference/corrMatrix.mdx
index 80c59d95..33d625c0 100644
--- a/reference/functions/aggregate-functions/reference/corrMatrix.mdx
+++ b/core/reference/functions/aggregate-functions/reference/corrMatrix.mdx
@@ -21,11 +21,11 @@ corrMatrix(x1[, x2, ...])
**Arguments**
-- `x1[, x2, ...]` — One or more parameters for which to compute the correlation matrix over. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x1[, x2, ...]` — One or more parameters for which to compute the correlation matrix over. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the correlation matrix. [`Array(Array(Float64))`](/reference/data-types/array)
+Returns the correlation matrix. [`Array(Array(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/corrStable.mdx b/core/reference/functions/aggregate-functions/reference/corrStable.mdx
similarity index 70%
rename from reference/functions/aggregate-functions/reference/corrStable.mdx
rename to core/reference/functions/aggregate-functions/reference/corrStable.mdx
index a44d8c08..51e33e82 100644
--- a/reference/functions/aggregate-functions/reference/corrStable.mdx
+++ b/core/reference/functions/aggregate-functions/reference/corrStable.mdx
@@ -19,7 +19,7 @@ $$
-Similar to the [`corr`](/reference/functions/aggregate-functions/reference/corr) function, but uses a numerically stable algorithm.
+Similar to the [`corr`](/core/reference/functions/aggregate-functions/reference/corr) function, but uses a numerically stable algorithm.
As a result, `corrStable` is slower than `corr` but produces a more accurate result.
@@ -31,12 +31,12 @@ corrStable(x, y)
**Arguments**
-- `x` — First variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Second variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — First variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Second variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the Pearson correlation coefficient. [`Float64`](/reference/data-types/float)
+Returns the Pearson correlation coefficient. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/count.mdx b/core/reference/functions/aggregate-functions/reference/count.mdx
similarity index 68%
rename from reference/functions/aggregate-functions/reference/count.mdx
rename to core/reference/functions/aggregate-functions/reference/count.mdx
index ea11bf67..20d40455 100644
--- a/reference/functions/aggregate-functions/reference/count.mdx
+++ b/core/reference/functions/aggregate-functions/reference/count.mdx
@@ -19,22 +19,22 @@ ClickHouse supports the following syntaxes for `count`:
**Details**
ClickHouse supports the `COUNT(DISTINCT ...)` syntax.
-The behavior of this construction depends on the [`count_distinct_implementation`](/reference/settings/session-settings#count_distinct_implementation) setting.
-It defines which of the [uniq*](/reference/functions/aggregate-functions/reference/uniq) functions is used to perform the operation.
-The default is the [uniqExact](/reference/functions/aggregate-functions/reference/uniqExact) function.
+The behavior of this construction depends on the [`count_distinct_implementation`](/core/reference/settings/session-settings#count_distinct_implementation) setting.
+It defines which of the [uniq*](/core/reference/functions/aggregate-functions/reference/uniq) functions is used to perform the operation.
+The default is the [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact) function.
The `SELECT count() FROM table` query is optimized by default using metadata from MergeTree.
-If you need to use row-level security, disable optimization using the [`optimize_trivial_count_query`](/reference/settings/session-settings#optimize_trivial_count_query) setting.
+If you need to use row-level security, disable optimization using the [`optimize_trivial_count_query`](/core/reference/settings/session-settings#optimize_trivial_count_query) setting.
-However `SELECT count(nullable_column) FROM table` query can be optimized by enabling the [`optimize_functions_to_subcolumns`](/reference/settings/session-settings#optimize_functions_to_subcolumns) setting.
-With `optimize_functions_to_subcolumns = 1` the function reads only [`null`](/reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data.
+However `SELECT count(nullable_column) FROM table` query can be optimized by enabling the [`optimize_functions_to_subcolumns`](/core/reference/settings/session-settings#optimize_functions_to_subcolumns) setting.
+With `optimize_functions_to_subcolumns = 1` the function reads only [`null`](/core/reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data.
The query `SELECT count(n) FROM table` transforms to `SELECT sum(NOT n.null) FROM table`.
**Improving COUNT(DISTINCT expr) performance**
-If your `COUNT(DISTINCT expr)` query is slow, consider adding a [`GROUP BY`](/reference/statements/select/group-by) clause as this improves parallelization.
-You can also use a [projection](/reference/statements/alter/projection) to create an index on the target column used with `COUNT(DISTINCT target_col)`.
+If your `COUNT(DISTINCT expr)` query is slow, consider adding a [`GROUP BY`](/core/reference/statements/select/group-by) clause as this improves parallelization.
+You can also use a [projection](/core/reference/statements/alter/projection) to create an index on the target column used with `COUNT(DISTINCT target_col)`.
@@ -46,11 +46,11 @@ count([expr])
**Arguments**
-- `expr` — Optional. An expression. The function counts how many times this expression returned not null. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Optional. An expression. The function counts how many times this expression returned not null. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns the a row count if the function is called without parameters, otherwise returns a count of how many times the passed expression returned not null. [`UInt64`](/reference/data-types/int-uint)
+Returns the a row count if the function is called without parameters, otherwise returns a count of how many times the passed expression returned not null. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/covarPop.mdx b/core/reference/functions/aggregate-functions/reference/covarPop.mdx
similarity index 69%
rename from reference/functions/aggregate-functions/reference/covarPop.mdx
rename to core/reference/functions/aggregate-functions/reference/covarPop.mdx
index 54f8a186..b73aad71 100644
--- a/reference/functions/aggregate-functions/reference/covarPop.mdx
+++ b/core/reference/functions/aggregate-functions/reference/covarPop.mdx
@@ -19,7 +19,7 @@ $$
-This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`covarPopStable`](/reference/functions/aggregate-functions/reference/covarPopStable) function. It works slower but provides a lower computational error.
+This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`covarPopStable`](/core/reference/functions/aggregate-functions/reference/covarPopStable) function. It works slower but provides a lower computational error.
@@ -33,12 +33,12 @@ covarPop(x, y)
**Arguments**
-- `x` — First variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Second variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — First variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Second variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the population covariance between `x` and `y`. [`Float64`](/reference/data-types/float)
+Returns the population covariance between `x` and `y`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/covarPopMatrix.mdx b/core/reference/functions/aggregate-functions/reference/covarPopMatrix.mdx
similarity index 89%
rename from reference/functions/aggregate-functions/reference/covarPopMatrix.mdx
rename to core/reference/functions/aggregate-functions/reference/covarPopMatrix.mdx
index f4eb13d0..20c99527 100644
--- a/reference/functions/aggregate-functions/reference/covarPopMatrix.mdx
+++ b/core/reference/functions/aggregate-functions/reference/covarPopMatrix.mdx
@@ -21,11 +21,11 @@ covarPopMatrix(x1[, x2, ...])
**Arguments**
-- `x1[, x2, ...]` — A variable number of parameters. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x1[, x2, ...]` — A variable number of parameters. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the population covariance matrix. [`Array(Array(Float64))`](/reference/data-types/array)
+Returns the population covariance matrix. [`Array(Array(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/covarPopStable.mdx b/core/reference/functions/aggregate-functions/reference/covarPopStable.mdx
similarity index 66%
rename from reference/functions/aggregate-functions/reference/covarPopStable.mdx
rename to core/reference/functions/aggregate-functions/reference/covarPopStable.mdx
index 276f881f..1098f7cb 100644
--- a/reference/functions/aggregate-functions/reference/covarPopStable.mdx
+++ b/core/reference/functions/aggregate-functions/reference/covarPopStable.mdx
@@ -18,7 +18,7 @@ $$
-It is similar to the [`covarPop`](/reference/functions/aggregate-functions/reference/covarPop) function, but uses a numerically stable algorithm. As a result, `covarPopStable` is slower than `covarPop` but produces a more accurate result.
+It is similar to the [`covarPop`](/core/reference/functions/aggregate-functions/reference/covarPop) function, but uses a numerically stable algorithm. As a result, `covarPopStable` is slower than `covarPop` but produces a more accurate result.
**Syntax**
@@ -29,12 +29,12 @@ covarPopStable(x, y)
**Arguments**
-- `x` — First variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Second variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — First variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Second variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the population covariance between `x` and `y`. [`Float64`](/reference/data-types/float)
+Returns the population covariance between `x` and `y`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/covarSamp.mdx b/core/reference/functions/aggregate-functions/reference/covarSamp.mdx
similarity index 75%
rename from reference/functions/aggregate-functions/reference/covarSamp.mdx
rename to core/reference/functions/aggregate-functions/reference/covarSamp.mdx
index 5abb6105..b813e709 100644
--- a/reference/functions/aggregate-functions/reference/covarSamp.mdx
+++ b/core/reference/functions/aggregate-functions/reference/covarSamp.mdx
@@ -17,7 +17,7 @@ $$
$$
-This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`covarSampStable`](/reference/functions/aggregate-functions/reference/covarSampStable) function.
+This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`covarSampStable`](/core/reference/functions/aggregate-functions/reference/covarSampStable) function.
It works slower but provides a lower computational error.
@@ -32,12 +32,12 @@ covarSamp(x, y)
**Arguments**
-- `x` — First variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Second variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — First variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Second variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the sample covariance between `x` and `y`. For `n <= 1`, `nan` is returned. [`Float64`](/reference/data-types/float)
+Returns the sample covariance between `x` and `y`. For `n <= 1`, `nan` is returned. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/covarSampMatrix.mdx b/core/reference/functions/aggregate-functions/reference/covarSampMatrix.mdx
similarity index 87%
rename from reference/functions/aggregate-functions/reference/covarSampMatrix.mdx
rename to core/reference/functions/aggregate-functions/reference/covarSampMatrix.mdx
index e622b781..75eba65d 100644
--- a/reference/functions/aggregate-functions/reference/covarSampMatrix.mdx
+++ b/core/reference/functions/aggregate-functions/reference/covarSampMatrix.mdx
@@ -21,11 +21,11 @@ covarSampMatrix(x1[, x2, ...])
**Arguments**
-- `x1[, x2, ...]` — One or more parameters over which to compute the sample covariance matrix. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x1[, x2, ...]` — One or more parameters over which to compute the sample covariance matrix. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the sample covariance matrix. [`Array(Array(Float64))`](/reference/data-types/array)
+Returns the sample covariance matrix. [`Array(Array(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/covarSampStable.mdx b/core/reference/functions/aggregate-functions/reference/covarSampStable.mdx
similarity index 76%
rename from reference/functions/aggregate-functions/reference/covarSampStable.mdx
rename to core/reference/functions/aggregate-functions/reference/covarSampStable.mdx
index 130a0bc6..e535efe8 100644
--- a/reference/functions/aggregate-functions/reference/covarSampStable.mdx
+++ b/core/reference/functions/aggregate-functions/reference/covarSampStable.mdx
@@ -19,7 +19,7 @@ $$
-It is similar to [`covarSamp`](/reference/functions/aggregate-functions/reference/covarSamp) but uses a numerically stable algorithm.
+It is similar to [`covarSamp`](/core/reference/functions/aggregate-functions/reference/covarSamp) but uses a numerically stable algorithm.
As a result, `covarSampStable` is slower than `covarSamp` but provides a lower computational error.
@@ -31,12 +31,12 @@ covarSampStable(x, y)
**Arguments**
-- `x` — First variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Second variable. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — First variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Second variable. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the sample covariance between `x` and `y`. For `n <= 1`, `inf` is returned. [`Float64`](/reference/data-types/float)
+Returns the sample covariance between `x` and `y`. For `n <= 1`, `inf` is returned. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/cramersV.mdx b/core/reference/functions/aggregate-functions/reference/cramersV.mdx
similarity index 82%
rename from reference/functions/aggregate-functions/reference/cramersV.mdx
rename to core/reference/functions/aggregate-functions/reference/cramersV.mdx
index 52279b75..f5f1505e 100644
--- a/reference/functions/aggregate-functions/reference/cramersV.mdx
+++ b/core/reference/functions/aggregate-functions/reference/cramersV.mdx
@@ -18,7 +18,7 @@ The result of the `cramersV` function ranges from 0 (corresponding to no associa
It may be viewed as the association between two variables as a percentage of their maximum possible variation.
-For a bias corrected version of Cramer's V see: [cramersVBiasCorrected](/reference/functions/aggregate-functions/reference/cramersVBiasCorrected)
+For a bias corrected version of Cramer's V see: [cramersVBiasCorrected](/core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected)
@@ -30,12 +30,12 @@ cramersV(column1, column2)
**Arguments**
-- `column1` — First column to be compared. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `column2` — Second column to be compared. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `column1` — First column to be compared. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `column2` — Second column to be compared. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a value between 0 (corresponding to no association between the columns' values) to 1 (complete association). [`Float64`](/reference/data-types/float)
+Returns a value between 0 (corresponding to no association between the columns' values) to 1 (complete association). [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx b/core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx
similarity index 75%
rename from reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx
rename to core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx
index 422116ac..4cc5ded4 100644
--- a/reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx
+++ b/core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
Introduced in: v22.1.0
Cramer's V is a measure of association between two columns in a table.
-The result of the [`cramersV` function](/reference/functions/aggregate-functions/reference/cramersV) ranges from 0 (corresponding to no association between the variables) to 1 and can reach 1 only when each value is completely determined by the other.
+The result of the [`cramersV` function](/core/reference/functions/aggregate-functions/reference/cramersV) ranges from 0 (corresponding to no association between the variables) to 1 and can reach 1 only when each value is completely determined by the other.
The function can be heavily biased, so this version of Cramer's V uses the [bias correction](https://en.wikipedia.org/wiki/Cram%C3%A9r%27s_V#Bias_correction).
@@ -23,12 +23,12 @@ cramersVBiasCorrected(column1, column2)
**Arguments**
-- `column1` — First column to be compared. [`Any`](/reference/data-types)
-- `column2` — Second column to be compared. [`Any`](/reference/data-types)
+- `column1` — First column to be compared. [`Any`](/core/reference/data-types)
+- `column2` — Second column to be compared. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a value between 0 (corresponding to no association between the columns' values) to 1 (complete association). [`Float64`](/reference/data-types/float)
+Returns a value between 0 (corresponding to no association between the columns' values) to 1 (complete association). [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/deltaSum.mdx b/core/reference/functions/aggregate-functions/reference/deltaSum.mdx
similarity index 73%
rename from reference/functions/aggregate-functions/reference/deltaSum.mdx
rename to core/reference/functions/aggregate-functions/reference/deltaSum.mdx
index 543d647d..ad7cc00f 100644
--- a/reference/functions/aggregate-functions/reference/deltaSum.mdx
+++ b/core/reference/functions/aggregate-functions/reference/deltaSum.mdx
@@ -15,11 +15,11 @@ If the difference is negative, it is ignored.
The underlying data must be sorted for this function to work properly.
-If you would like to use this function in a [materialized view](/reference/statements/create/view#materialized-view), you most likely want to use the [`deltaSumTimestamp`](/reference/functions/aggregate-functions/reference/deltaSumTimestamp) function instead.
+If you would like to use this function in a [materialized view](/core/reference/statements/create/view#materialized-view), you most likely want to use the [`deltaSumTimestamp`](/core/reference/functions/aggregate-functions/reference/deltaSumTimestamp) function instead.
See also:
-- [`runningDifference`](/reference/functions/regular-functions/other-functions#runningDifference)
+- [`runningDifference`](/core/reference/functions/regular-functions/other-functions#runningDifference)
**Syntax**
@@ -30,11 +30,11 @@ deltaSum(x1[, x2, ...])
**Arguments**
-- `x1[, x2, ...]` — One or more input values. [`Integer`](/reference/data-types/int-uint) or [`Float`](/reference/data-types/float)
+- `x1[, x2, ...]` — One or more input values. [`Integer`](/core/reference/data-types/int-uint) or [`Float`](/core/reference/data-types/float)
**Returned value**
-Returns a gained arithmetic difference of the input values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+Returns a gained arithmetic difference of the input values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -78,4 +78,4 @@ SELECT deltaSum(arrayJoin([2.25, 3, 4.5]))
**See also**
-- [`runningDifference`](/reference/functions/regular-functions/other-functions#runningDifference)
+- [`runningDifference`](/core/reference/functions/regular-functions/other-functions#runningDifference)
diff --git a/reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx b/core/reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx
similarity index 60%
rename from reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx
rename to core/reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx
index 84d6f44d..2949a21a 100644
--- a/reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx
+++ b/core/reference/functions/aggregate-functions/reference/deltaSumTimestamp.mdx
@@ -14,11 +14,11 @@ Introduced in: v21.6.0
Adds the difference between consecutive rows.
If the difference is negative, it is ignored.
-This function is primarily for [materialized views](/reference/statements/create/view#materialized-view) that store data ordered by some time bucket-aligned timestamp, for example, a `toStartOfMinute` bucket.
+This function is primarily for [materialized views](/core/reference/statements/create/view#materialized-view) that store data ordered by some time bucket-aligned timestamp, for example, a `toStartOfMinute` bucket.
Because the rows in such a materialized view will all have the same timestamp, it is impossible for them to be merged in the correct order, without storing the original, unrounded timestamp value.
The `deltaSumTimestamp` function keeps track of the original `timestamp` of the values it's seen, so the values (states) of the function are correctly computed during merging of parts.
-To calculate the delta sum across an ordered collection you can simply use the [`deltaSum`](/reference/functions/aggregate-functions/reference/deltaSum) function.
+To calculate the delta sum across an ordered collection you can simply use the [`deltaSum`](/core/reference/functions/aggregate-functions/reference/deltaSum) function.
**Syntax**
@@ -29,12 +29,12 @@ deltaSumTimestamp(value, timestamp)
**Arguments**
-- `value` — Input values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `timestamp` — The parameter for order values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `value` — Input values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `timestamp` — The parameter for order values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns accumulated differences between consecutive values, ordered by the `timestamp` parameter. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Returns accumulated differences between consecutive values, ordered by the `timestamp` parameter. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx b/core/reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx
similarity index 85%
rename from reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx
rename to core/reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx
index ebe6ecd6..2612d41a 100644
--- a/reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx
+++ b/core/reference/functions/aggregate-functions/reference/distinctDynamicTypes.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
Introduced in: v24.9.0
-Calculates the list of distinct data types stored in [Dynamic](/reference/data-types/dynamic) column.
+Calculates the list of distinct data types stored in [Dynamic](/core/reference/data-types/dynamic) column.
**Syntax**
@@ -21,11 +21,11 @@ distinctDynamicTypes(dynamic)
**Arguments**
-- `dynamic` — Dynamic column. [`Dynamic`](/reference/data-types/dynamic)
+- `dynamic` — Dynamic column. [`Dynamic`](/core/reference/data-types/dynamic)
**Returned value**
-Returns the sorted list of data type names. [`Array(String)`](/reference/data-types/array)
+Returns the sorted list of data type names. [`Array(String)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx b/core/reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx
similarity index 85%
rename from reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx
rename to core/reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx
index 62f2829f..d3d03c8b 100644
--- a/reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx
+++ b/core/reference/functions/aggregate-functions/reference/distinctJSONPaths.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
Introduced in: v24.9.0
-Calculates a list of distinct paths stored in a [JSON](/reference/data-types/newjson) column.
+Calculates a list of distinct paths stored in a [JSON](/core/reference/data-types/newjson) column.
**Syntax**
@@ -21,11 +21,11 @@ distinctJSONPaths(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns the sorted list of paths. [`Array(String)`](/reference/data-types/array)
+Returns the sorted list of paths. [`Array(String)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx b/core/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx
similarity index 94%
rename from reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx
rename to core/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx
index bca42b0f..3323cbfd 100644
--- a/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx
+++ b/core/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
Introduced in: v24.9.0
-Calculates the list of distinct paths and their types stored in [JSON](/reference/data-types/newjson) column.
+Calculates the list of distinct paths and their types stored in [JSON](/core/reference/data-types/newjson) column.
If JSON declaration contains paths with specified types, these paths will be always included in the result of `distinctJSONPaths/distinctJSONPathsAndTypes` functions even if input data didn't have values for these paths.
@@ -25,11 +25,11 @@ distinctJSONPathsAndTypes(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns the sorted map of paths and types. [`Map(String, Array(String))`](/reference/data-types/map)
+Returns the sorted map of paths and types. [`Map(String, Array(String))`](/core/reference/data-types/map)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/entropy.mdx b/core/reference/functions/aggregate-functions/reference/entropy.mdx
similarity index 87%
rename from reference/functions/aggregate-functions/reference/entropy.mdx
rename to core/reference/functions/aggregate-functions/reference/entropy.mdx
index 10d7b572..f3dc117e 100644
--- a/reference/functions/aggregate-functions/reference/entropy.mdx
+++ b/core/reference/functions/aggregate-functions/reference/entropy.mdx
@@ -21,11 +21,11 @@ entropy(val)
**Arguments**
-- `val` — Column of values of any type. [`Any`](/reference/data-types)
+- `val` — Column of values of any type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns Shannon entropy. [`Float64`](/reference/data-types/float)
+Returns Shannon entropy. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx b/core/reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx
similarity index 75%
rename from reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx
rename to core/reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx
index a2f8d283..a47c851c 100644
--- a/reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx
+++ b/core/reference/functions/aggregate-functions/reference/estimateCompressionRatio.mdx
@@ -15,7 +15,7 @@ Estimates the compression ratio of a given column without compressing it.
For the examples below, the result will differ based on the default compression codec of the server.
-See [Column Compression Codecs](/reference/statements/create/table#column_compression_codec).
+See [Column Compression Codecs](/core/reference/statements/create/table#column_compression_codec).
@@ -27,16 +27,16 @@ estimateCompressionRatio([codec, block_size_bytes])(column)
**Parameters**
-- `codec` — String containing a compression codec or multiple comma-separated codecs in a single string. [`String`](/reference/data-types/string)
-- `block_size_bytes` — Block size of compressed data. This is similar to setting both [`max_compress_block_size`](/reference/settings/merge-tree-settings#max_compress_block_size) and [`min_compress_block_size`](/reference/settings/merge-tree-settings#min_compress_block_size). The default value is 1 MiB (1048576 bytes). Maximum allowed value is 256 MiB (268435456 bytes). [`UInt64`](/reference/data-types/int-uint)
+- `codec` — String containing a compression codec or multiple comma-separated codecs in a single string. [`String`](/core/reference/data-types/string)
+- `block_size_bytes` — Block size of compressed data. This is similar to setting both [`max_compress_block_size`](/core/reference/settings/merge-tree-settings#max_compress_block_size) and [`min_compress_block_size`](/core/reference/settings/merge-tree-settings#min_compress_block_size). The default value is 1 MiB (1048576 bytes). Maximum allowed value is 256 MiB (268435456 bytes). [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `column` — Column of any type. [`Any`](/reference/data-types)
+- `column` — Column of any type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns an estimate compression ratio for the given column. [`Float64`](/reference/data-types/float)
+Returns an estimate compression ratio for the given column. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx b/core/reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx
similarity index 94%
rename from reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx
rename to core/reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx
index d84a4d74..8cac53e6 100644
--- a/reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx
+++ b/core/reference/functions/aggregate-functions/reference/exponentialMovingAverage.mdx
@@ -26,16 +26,16 @@ exponentialMovingAverage(x)(value, timeunit)
**Parameters**
-- `x` — Half-life period. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Half-life period. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Arguments**
-- `value` — Value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `timeunit` — Timeunit. Timeunit is not timestamp (seconds), it's an index of the time interval. Can be calculated using `intDiv`. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `value` — Value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `timeunit` — Timeunit. Timeunit is not timestamp (seconds), it's an index of the time interval. Can be calculated using `intDiv`. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns an exponentially smoothed moving average of the values for the past `x` time at the latest point of time. [`Float64`](/reference/data-types/float)
+Returns an exponentially smoothed moving average of the values for the past `x` time at the latest point of time. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx
rename to core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx
index fdab0cf4..0f44b098 100644
--- a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx
+++ b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg.mdx
@@ -22,16 +22,16 @@ exponentialTimeDecayedAvg(x)(v, t)
**Parameters**
-- `x` — Half-life period. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Half-life period. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Arguments**
-- `v` — Value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `t` — Time. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `v` — Value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `t` — Time. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns an exponentially smoothed weighted moving average at index `t` in time. [`Float64`](/reference/data-types/float)
+Returns an exponentially smoothed weighted moving average at index `t` in time. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx
similarity index 93%
rename from reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx
rename to core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx
index eb066b5e..340e3697 100644
--- a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx
+++ b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount.mdx
@@ -22,15 +22,15 @@ exponentialTimeDecayedCount(x)(t)
**Parameters**
-- `x` — Half-life period. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Half-life period. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Arguments**
-- `t` — Time. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `t` — Time. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the cumulative exponential decay at the given point in time. [`Float64`](/reference/data-types/float)
+Returns the cumulative exponential decay at the given point in time. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx
rename to core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx
index 4a1c853e..7d5b62df 100644
--- a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx
+++ b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax.mdx
@@ -22,16 +22,16 @@ exponentialTimeDecayedMax(x)(value, timeunit)
**Parameters**
-- `x` — Half-life period. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Half-life period. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Arguments**
-- `value` — Value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `timeunit` — Timeunit. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — Value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `timeunit` — Timeunit. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the maximum of the exponentially smoothed weighted moving average at `t` and `t-1`. [`Float64`](/reference/data-types/float)
+Returns the maximum of the exponentially smoothed weighted moving average at `t` and `t-1`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx
similarity index 92%
rename from reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx
rename to core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx
index 2518c525..a3753bcb 100644
--- a/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx
+++ b/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum.mdx
@@ -22,16 +22,16 @@ exponentialTimeDecayedSum(x)(v, t)
**Parameters**
-- `x` — Time difference required for a value's weight to decay to 1/e. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Time difference required for a value's weight to decay to 1/e. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Arguments**
-- `v` — Value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `t` — Time. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `v` — Value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `t` — Time. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the sum of exponentially smoothed moving average values at the given point in time. [`Float64`](/reference/data-types/float)
+Returns the sum of exponentially smoothed moving average values at the given point in time. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/first_value.mdx b/core/reference/functions/aggregate-functions/reference/first_value.mdx
similarity index 82%
rename from reference/functions/aggregate-functions/reference/first_value.mdx
rename to core/reference/functions/aggregate-functions/reference/first_value.mdx
index 16064bdc..373a402b 100644
--- a/reference/functions/aggregate-functions/reference/first_value.mdx
+++ b/core/reference/functions/aggregate-functions/reference/first_value.mdx
@@ -7,9 +7,9 @@ title: 'first_value'
doc_type: 'reference'
---
-It is an alias for [`any`](/reference/functions/aggregate-functions/reference/any) but it was introduced for compatibility with [Window Functions](/reference/functions/window-functions), where sometimes it's necessary to process `NULL` values (by default all ClickHouse aggregate functions ignore NULL values).
+It is an alias for [`any`](/core/reference/functions/aggregate-functions/reference/any) but it was introduced for compatibility with [Window Functions](/core/reference/functions/window-functions), where sometimes it's necessary to process `NULL` values (by default all ClickHouse aggregate functions ignore NULL values).
-It supports declaring a modifier to respect nulls (`RESPECT NULLS`), both under [Window Functions](/reference/functions/window-functions) and in normal aggregations.
+It supports declaring a modifier to respect nulls (`RESPECT NULLS`), both under [Window Functions](/core/reference/functions/window-functions) and in normal aggregations.
As with `any`, without Window Functions the result will be random if the source stream is not ordered and the return type
matches the input type (Null is only returned if the input is Nullable or -OrNull combinator is added).
diff --git a/reference/functions/aggregate-functions/reference/flame_graph.mdx b/core/reference/functions/aggregate-functions/reference/flame_graph.mdx
similarity index 94%
rename from reference/functions/aggregate-functions/reference/flame_graph.mdx
rename to core/reference/functions/aggregate-functions/reference/flame_graph.mdx
index bd3b9074..cd1e94c2 100644
--- a/reference/functions/aggregate-functions/reference/flame_graph.mdx
+++ b/core/reference/functions/aggregate-functions/reference/flame_graph.mdx
@@ -28,13 +28,13 @@ flameGraph(traces[, size[, ptr]])
**Arguments**
-- `traces` — A stacktrace, either as raw addresses or as already-symbolized strings (e.g. `arrayMap(addressToSymbol, trace)`). [`Array(UInt64)`](/reference/data-types/array) or [`Array(String)`](/reference/data-types/array)
-- `size` — Optional. An allocation size for memory profiling (default 1). [`UInt64`](/reference/data-types/int-uint)
-- `ptr` — Optional. An allocation address (default 0). [`UInt64`](/reference/data-types/int-uint)
+- `traces` — A stacktrace, either as raw addresses or as already-symbolized strings (e.g. `arrayMap(addressToSymbol, trace)`). [`Array(UInt64)`](/core/reference/data-types/array) or [`Array(String)`](/core/reference/data-types/array)
+- `size` — Optional. An allocation size for memory profiling (default 1). [`UInt64`](/core/reference/data-types/int-uint)
+- `ptr` — Optional. An allocation address (default 0). [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of strings for use with flamegraph.pl utility. [`Array(String)`](/reference/data-types/array)
+Returns an array of strings for use with flamegraph.pl utility. [`Array(String)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArray.mdx b/core/reference/functions/aggregate-functions/reference/groupArray.mdx
similarity index 85%
rename from reference/functions/aggregate-functions/reference/groupArray.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArray.mdx
index eba9b070..5109d850 100644
--- a/reference/functions/aggregate-functions/reference/groupArray.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArray.mdx
@@ -32,15 +32,15 @@ groupArray(max_size)(x)
**Parameters**
-- `max_size` — Optional. Limits the size of the resulting array to `max_size` elements. [`UInt64`](/reference/data-types/int-uint)
+- `max_size` — Optional. Limits the size of the resulting array to `max_size` elements. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `x` — Argument values to collect into an array. [`Any`](/reference/data-types)
+- `x` — Argument values to collect into an array. [`Any`](/core/reference/data-types)
**Returned value**
-Returns an array of argument values. [`Array`](/reference/data-types/array)
+Returns an array of argument values. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArrayArray.mdx b/core/reference/functions/aggregate-functions/reference/groupArrayArray.mdx
similarity index 90%
rename from reference/functions/aggregate-functions/reference/groupArrayArray.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArrayArray.mdx
index efaf58c7..ac1518d5 100644
--- a/reference/functions/aggregate-functions/reference/groupArrayArray.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArrayArray.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
---
Aggregates arrays into a larger array of those arrays.
-Combines the [`groupArray`](/reference/functions/aggregate-functions/reference/groupArray) function with the [Array](/reference/functions/aggregate-functions/combinators#-array) combinator.
+Combines the [`groupArray`](/core/reference/functions/aggregate-functions/reference/groupArray) function with the [Array](/core/reference/functions/aggregate-functions/combinators#-array) combinator.
Alias: `array_concat_agg`
diff --git a/reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx b/core/reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx
similarity index 91%
rename from reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx
index 0937c963..e0ab7dae 100644
--- a/reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArrayInsertAt.mdx
@@ -25,17 +25,17 @@ groupArrayInsertAt(default_x, size)([x, pos])
**Parameters**
-- `default_x` — Optional. Default value for substituting in empty positions. [`Any`](/reference/data-types)
-- `size` — Optional. Length of the resulting array. When using this parameter, the default value `default_x` must be specified. [`UInt32`](/reference/data-types/int-uint)
+- `default_x` — Optional. Default value for substituting in empty positions. [`Any`](/core/reference/data-types)
+- `size` — Optional. Length of the resulting array. When using this parameter, the default value `default_x` must be specified. [`UInt32`](/core/reference/data-types/int-uint)
**Arguments**
-- `x` — Value to be inserted. [`Any`](/reference/data-types)
-- `pos` — Position at which the specified element `x` is to be inserted. Index numbering in the array starts from zero. [`UInt32`](/reference/data-types/int-uint)
+- `x` — Value to be inserted. [`Any`](/core/reference/data-types)
+- `pos` — Position at which the specified element `x` is to be inserted. Index numbering in the array starts from zero. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array with inserted values. [`Array`](/reference/data-types/array)
+Returns an array with inserted values. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx b/core/reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx
similarity index 89%
rename from reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx
index 1d7ed0b8..33324ead 100644
--- a/reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArrayIntersect.mdx
@@ -22,11 +22,11 @@ groupArrayIntersect(x)
**Arguments**
-- `x` — Argument (column name or expression). [`Any`](/reference/data-types)
+- `x` — Argument (column name or expression). [`Any`](/core/reference/data-types)
**Returned value**
-Returns an array that contains elements that are in all arrays. [`Array`](/reference/data-types/array)
+Returns an array that contains elements that are in all arrays. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArrayLast.mdx b/core/reference/functions/aggregate-functions/reference/groupArrayLast.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/groupArrayLast.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArrayLast.mdx
index 7596a90f..d0947a09 100644
--- a/reference/functions/aggregate-functions/reference/groupArrayLast.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArrayLast.mdx
@@ -24,16 +24,16 @@ groupArrayLast(max_size)(x)
**Parameters**
-- `max_size` — Maximum size of the resulting array. [`UInt64`](/reference/data-types/int-uint)
+- `max_size` — Maximum size of the resulting array. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `max_size` — Maximum size of the resulting array. [`UInt64`](/reference/data-types/int-uint)
-- `x` — Argument (column name or expression). [`Any`](/reference/data-types)
+- `max_size` — Maximum size of the resulting array. [`UInt64`](/core/reference/data-types/int-uint)
+- `x` — Argument (column name or expression). [`Any`](/core/reference/data-types)
**Returned value**
-Returns an array of the last argument values. [`Array(T)`](/reference/data-types/array)
+Returns an array of the last argument values. [`Array(T)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx b/core/reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx
similarity index 92%
rename from reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx
index 74da8e1d..2ed8a1b8 100644
--- a/reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArrayMovingAvg.mdx
@@ -27,15 +27,15 @@ groupArrayMovingAvg(window_size)(numbers_for_summing)
**Parameters**
-- `window_size` — Size of the calculation window. If left unspecified, the function takes the window size equal to the number of rows in the column. [`UInt64`](/reference/data-types/int-uint)
+- `window_size` — Size of the calculation window. If left unspecified, the function takes the window size equal to the number of rows in the column. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `numbers_for_summing` — Expression resulting in a numeric data type value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `numbers_for_summing` — Expression resulting in a numeric data type value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns an array of the same size as the input data. For non-Decimal input, the array contains Float64 values. For Decimal input, the array contains Decimal values with the input scale. [`Array`](/reference/data-types/array)
+Returns an array of the same size as the input data. For non-Decimal input, the array contains Float64 values. For Decimal input, the array contains Decimal values with the input scale. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx b/core/reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx
similarity index 90%
rename from reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx
index 13ec33b9..73ee4a70 100644
--- a/reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArrayMovingSum.mdx
@@ -24,15 +24,15 @@ groupArrayMovingSum(window_size)(numbers_for_summing)
**Parameters**
-- `window_size` — Size of the calculation window. If left unspecified, the function takes the window size equal to the number of rows in the column. [`UInt64`](/reference/data-types/int-uint)
+- `window_size` — Size of the calculation window. If left unspecified, the function takes the window size equal to the number of rows in the column. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `numbers_for_summing` — Expression resulting in a numeric data type value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `numbers_for_summing` — Expression resulting in a numeric data type value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns an array of the same size and type as the input data. [`Array`](/reference/data-types/array)
+Returns an array of the same size and type as the input data. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArraySample.mdx b/core/reference/functions/aggregate-functions/reference/groupArraySample.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/groupArraySample.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArraySample.mdx
index d8674750..1d5eeca9 100644
--- a/reference/functions/aggregate-functions/reference/groupArraySample.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArraySample.mdx
@@ -25,17 +25,17 @@ groupArraySample(max_size[, seed])(x)
**Parameters**
-- `max_size` — Maximum size of the resulting array. [`UInt64`](/reference/data-types/int-uint)
-- `seed` — Optional. Seed for the random number generator. Default value: 123456. [`UInt64`](/reference/data-types/int-uint)
-- `x` — Argument (column name or expression). [`Any`](/reference/data-types)
+- `max_size` — Maximum size of the resulting array. [`UInt64`](/core/reference/data-types/int-uint)
+- `seed` — Optional. Seed for the random number generator. Default value: 123456. [`UInt64`](/core/reference/data-types/int-uint)
+- `x` — Argument (column name or expression). [`Any`](/core/reference/data-types)
**Arguments**
-- `array_column` — Column containing arrays to be aggregated. [`Array`](/reference/data-types/array)
+- `array_column` — Column containing arrays to be aggregated. [`Array`](/core/reference/data-types/array)
**Returned value**
-Array of randomly selected x arguments. [`Array(T)`](/reference/data-types/array)
+Array of randomly selected x arguments. [`Array(T)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupArraySorted.mdx b/core/reference/functions/aggregate-functions/reference/groupArraySorted.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/groupArraySorted.mdx
rename to core/reference/functions/aggregate-functions/reference/groupArraySorted.mdx
index 8502e883..55404bfe 100644
--- a/reference/functions/aggregate-functions/reference/groupArraySorted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupArraySorted.mdx
@@ -21,15 +21,15 @@ groupArraySorted(N)(column)
**Parameters**
-- `N` — The number of elements to return. [`UInt64`](/reference/data-types/int-uint)
+- `N` — The number of elements to return. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `column` — Column for which to group into an array. [`Any`](/reference/data-types)
+- `column` — Column for which to group into an array. [`Any`](/core/reference/data-types)
**Returned value**
-Returns an array with the first N items in ascending order. [`Array`](/reference/data-types/array)
+Returns an array with the first N items in ascending order. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupBitAnd.mdx b/core/reference/functions/aggregate-functions/reference/groupBitAnd.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/groupBitAnd.mdx
rename to core/reference/functions/aggregate-functions/reference/groupBitAnd.mdx
index 997f72ca..252db954 100644
--- a/reference/functions/aggregate-functions/reference/groupBitAnd.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupBitAnd.mdx
@@ -23,11 +23,11 @@ groupBitAnd(expr)
**Arguments**
-- `expr` — Expression of `(U)Int*` type. [`(U)Int*`](/reference/data-types/int-uint)
+- `expr` — Expression of `(U)Int*` type. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of `(U)Int*` type. [`(U)Int*`](/reference/data-types/int-uint)
+Returns a value of `(U)Int*` type. [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupBitOr.mdx b/core/reference/functions/aggregate-functions/reference/groupBitOr.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/groupBitOr.mdx
rename to core/reference/functions/aggregate-functions/reference/groupBitOr.mdx
index 6731cc25..f1f4da6f 100644
--- a/reference/functions/aggregate-functions/reference/groupBitOr.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupBitOr.mdx
@@ -23,11 +23,11 @@ groupBitOr(expr)
**Arguments**
-- `expr` — Expression of `(U)Int*` type. [`(U)Int*`](/reference/data-types/int-uint)
+- `expr` — Expression of `(U)Int*` type. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of `(U)Int*` type. [`(U)Int*`](/reference/data-types/int-uint)
+Returns a value of `(U)Int*` type. [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupBitXor.mdx b/core/reference/functions/aggregate-functions/reference/groupBitXor.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/groupBitXor.mdx
rename to core/reference/functions/aggregate-functions/reference/groupBitXor.mdx
index 47813127..77a749b0 100644
--- a/reference/functions/aggregate-functions/reference/groupBitXor.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupBitXor.mdx
@@ -23,11 +23,11 @@ groupBitXor(expr)
**Arguments**
-- `expr` — Expression of `(U)Int*` type. [`(U)Int*`](/reference/data-types/int-uint)
+- `expr` — Expression of `(U)Int*` type. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of `(U)Int*` type. [`(U)Int*`](/reference/data-types/int-uint)
+Returns a value of `(U)Int*` type. [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupBitmap.mdx b/core/reference/functions/aggregate-functions/reference/groupBitmap.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/groupBitmap.mdx
rename to core/reference/functions/aggregate-functions/reference/groupBitmap.mdx
index 62680211..565e3f68 100644
--- a/reference/functions/aggregate-functions/reference/groupBitmap.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupBitmap.mdx
@@ -12,7 +12,7 @@ doc_type: 'reference'
Introduced in: v20.1.0
Creates a bitmap (bit array) from a column of unsigned integers, then returns the count of unique values (cardinality) in that bitmap.
-By appending the `-State` combinator suffix, instead of returning the count, it returns the actual [bitmap object](/reference/functions/regular-functions/bitmap-functions).
+By appending the `-State` combinator suffix, instead of returning the count, it returns the actual [bitmap object](/core/reference/functions/regular-functions/bitmap-functions).
**Syntax**
@@ -24,11 +24,11 @@ groupBitmapState(expr)
**Arguments**
-- `expr` — Expression that results in a `UInt*` type. [`UInt*`](/reference/data-types/int-uint)
+- `expr` — Expression that results in a `UInt*` type. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the count of type UInt64 type, or a bitmap object when using `-State`. [`UInt64`](/reference/data-types/int-uint)
+Returns the count of type UInt64 type, or a bitmap object when using `-State`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx b/core/reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx
rename to core/reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx
index 74ce88dc..dff50d15 100644
--- a/reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupBitmapAnd.mdx
@@ -12,7 +12,7 @@ doc_type: 'reference'
Introduced in: v20.1.0
Calculates the AND of a bitmap column and returns it's cardinality.
-If suffix combinator [`-State`](/reference/functions/aggregate-functions/combinators#-state) is added, then it returns a bitmap object.
+If suffix combinator [`-State`](/core/reference/functions/aggregate-functions/combinators#-state) is added, then it returns a bitmap object.
**Syntax**
@@ -24,11 +24,11 @@ groupBitmapAndState(expr)
**Arguments**
-- `expr` — Expression that results in an `AggregateFunction(groupBitmap, UInt*)` type. [`AggregateFunction(groupBitmap, UInt*)`](/reference/data-types/aggregatefunction)
+- `expr` — Expression that results in an `AggregateFunction(groupBitmap, UInt*)` type. [`AggregateFunction(groupBitmap, UInt*)`](/core/reference/data-types/aggregatefunction)
**Returned value**
-Returns a count of type `UInt64`, or a bitmap object when using `-State`. [`UInt64`](/reference/data-types/int-uint)
+Returns a count of type `UInt64`, or a bitmap object when using `-State`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupBitmapOr.mdx b/core/reference/functions/aggregate-functions/reference/groupBitmapOr.mdx
similarity index 80%
rename from reference/functions/aggregate-functions/reference/groupBitmapOr.mdx
rename to core/reference/functions/aggregate-functions/reference/groupBitmapOr.mdx
index b190dc92..1743cd50 100644
--- a/reference/functions/aggregate-functions/reference/groupBitmapOr.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupBitmapOr.mdx
@@ -12,8 +12,8 @@ doc_type: 'reference'
Introduced in: v20.1.0
Calculates the OR of a bitmap column and returns it's cardinality.
-If suffix combinator [`-State`](/reference/functions/aggregate-functions/combinators#-state) is added, then it returns a bitmap object.
-This is equivalent to `groupBitmapMerge` ([`groupBitmap`](/reference/functions/aggregate-functions/reference/groupBitmap) with the [`-Merge`](/reference/functions/aggregate-functions/combinators#-merge) combinator suffix).
+If suffix combinator [`-State`](/core/reference/functions/aggregate-functions/combinators#-state) is added, then it returns a bitmap object.
+This is equivalent to `groupBitmapMerge` ([`groupBitmap`](/core/reference/functions/aggregate-functions/reference/groupBitmap) with the [`-Merge`](/core/reference/functions/aggregate-functions/combinators#-merge) combinator suffix).
**Syntax**
@@ -25,11 +25,11 @@ groupBitmapOrState(expr)
**Arguments**
-- `expr` — Expression that results in an `AggregateFunction(groupBitmap, UInt*)` type. [`AggregateFunction(groupBitmap, UInt*)`](/reference/data-types/aggregatefunction)
+- `expr` — Expression that results in an `AggregateFunction(groupBitmap, UInt*)` type. [`AggregateFunction(groupBitmap, UInt*)`](/core/reference/data-types/aggregatefunction)
**Returned value**
-Returns a count of type `UInt64`, or a bitmap object when using `-State`. [`UInt64`](/reference/data-types/int-uint)
+Returns a count of type `UInt64`, or a bitmap object when using `-State`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupBitmapXor.mdx b/core/reference/functions/aggregate-functions/reference/groupBitmapXor.mdx
similarity index 89%
rename from reference/functions/aggregate-functions/reference/groupBitmapXor.mdx
rename to core/reference/functions/aggregate-functions/reference/groupBitmapXor.mdx
index 53ea9d09..967fc054 100644
--- a/reference/functions/aggregate-functions/reference/groupBitmapXor.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupBitmapXor.mdx
@@ -12,7 +12,7 @@ doc_type: 'reference'
Introduced in: v20.1.0
Calculates the XOR of a bitmap column and returns it's cardinality.
-If suffix combinator [`-State`](/reference/functions/aggregate-functions/combinators#-state) is added, then it returns a bitmap object.
+If suffix combinator [`-State`](/core/reference/functions/aggregate-functions/combinators#-state) is added, then it returns a bitmap object.
**Syntax**
@@ -24,11 +24,11 @@ groupBitmapXorState(expr)
**Arguments**
-- `expr` — Expression that results in an `AggregateFunction(groupBitmap, UInt*)` type. [`AggregateFunction(groupBitmap, UInt*)`](/reference/data-types/aggregatefunction)
+- `expr` — Expression that results in an `AggregateFunction(groupBitmap, UInt*)` type. [`AggregateFunction(groupBitmap, UInt*)`](/core/reference/data-types/aggregatefunction)
**Returned value**
-Returns a count of type `UInt64`, or a bitmap object when using `-State`. [`UInt64`](/reference/data-types/int-uint)
+Returns a count of type `UInt64`, or a bitmap object when using `-State`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupConcat.mdx b/core/reference/functions/aggregate-functions/reference/groupConcat.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/groupConcat.mdx
rename to core/reference/functions/aggregate-functions/reference/groupConcat.mdx
index c1b2548d..d3941c9e 100644
--- a/reference/functions/aggregate-functions/reference/groupConcat.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupConcat.mdx
@@ -31,17 +31,17 @@ groupConcat[(delimiter [, limit])](expression)
**Parameters**
-- `delimiter` — A string that will be used to separate concatenated values. This parameter is optional and defaults to an empty string if not specified. [`String`](/reference/data-types/string)
-- `limit` — A positive integer specifying the maximum number of elements to concatenate. If more elements are present, excess elements are ignored. This parameter is optional. [`UInt*`](/reference/data-types/int-uint)
+- `delimiter` — A string that will be used to separate concatenated values. This parameter is optional and defaults to an empty string if not specified. [`String`](/core/reference/data-types/string)
+- `limit` — A positive integer specifying the maximum number of elements to concatenate. If more elements are present, excess elements are ignored. This parameter is optional. [`UInt*`](/core/reference/data-types/int-uint)
**Arguments**
-- `expression` — The expression or column name that outputs strings to be concatenated. [`String`](/reference/data-types/string)
-- `delimiter` — A string that will be used to separate concatenated values. This parameter is optional and defaults to an empty string or delimiter from parameters if not specified. [`String`](/reference/data-types/string)
+- `expression` — The expression or column name that outputs strings to be concatenated. [`String`](/core/reference/data-types/string)
+- `delimiter` — A string that will be used to separate concatenated values. This parameter is optional and defaults to an empty string or delimiter from parameters if not specified. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string consisting of the concatenated values of the column or expression. If the group has no elements or only null elements, and the function does not specify a handling for only null values, the result is a nullable string with a null value. [`String`](/reference/data-types/string)
+Returns a string consisting of the concatenated values of the column or expression. If the group has no elements or only null elements, and the function does not specify a handling for only null values, the result is a nullable string with a null value. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/groupUniqArray.mdx b/core/reference/functions/aggregate-functions/reference/groupUniqArray.mdx
similarity index 81%
rename from reference/functions/aggregate-functions/reference/groupUniqArray.mdx
rename to core/reference/functions/aggregate-functions/reference/groupUniqArray.mdx
index 9b16dc24..a8084728 100644
--- a/reference/functions/aggregate-functions/reference/groupUniqArray.mdx
+++ b/core/reference/functions/aggregate-functions/reference/groupUniqArray.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
Introduced in: v1.1.0
Creates an array from different argument values.
-The memory consumption of this function is the same as for the [`uniqExact`](/reference/functions/aggregate-functions/reference/uniqExact) function.
+The memory consumption of this function is the same as for the [`uniqExact`](/core/reference/functions/aggregate-functions/reference/uniqExact) function.
**Syntax**
@@ -23,15 +23,15 @@ groupUniqArray(max_size)(x)
**Parameters**
-- `max_size` — Limits the size of the resulting array to `max_size` elements. `groupUniqArray(1)(x)` is equivalent to `[any(x)]`. [`UInt64`](/reference/data-types/int-uint)
+- `max_size` — Limits the size of the resulting array to `max_size` elements. `groupUniqArray(1)(x)` is equivalent to `[any(x)]`. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `x` — Expression. [`Any`](/reference/data-types)
+- `x` — Expression. [`Any`](/core/reference/data-types)
**Returned value**
-Returns an array of unique values. [`Array`](/reference/data-types/array)
+Returns an array of unique values. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/core/reference/functions/aggregate-functions/reference/index.mdx b/core/reference/functions/aggregate-functions/reference/index.mdx
new file mode 100644
index 00000000..2e6606b1
--- /dev/null
+++ b/core/reference/functions/aggregate-functions/reference/index.mdx
@@ -0,0 +1,166 @@
+---
+description: 'Landing page for aggregate functions with complete list of aggregate
+ functions'
+slug: /sql-reference/aggregate-functions/reference/
+title: 'Aggregate Functions'
+toc_folder_title: 'Reference'
+toc_hidden: true
+doc_type: 'landing-page'
+---
+
+ClickHouse supports all standard SQL aggregate functions ([sum](/core/reference/functions/aggregate-functions/reference/sum), [avg](/core/reference/functions/aggregate-functions/reference/avg), [min](/core/reference/functions/aggregate-functions/reference/min), [max](/core/reference/functions/aggregate-functions/reference/max), [count](/core/reference/functions/aggregate-functions/reference/count)), as well as a wide range of other aggregate functions.
+
+{/* The table of contents table for this page is automatically generated by
+https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh
+from the YAML front matter fields: slug, description, title.
+
+If you've spotted an error, please edit the YML frontmatter of the pages themselves.
+*/}
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [aggThrow](/core/reference/functions/aggregate-functions/reference/aggThrow) | This function can be used for the purpose of testing exception safety. It will throw an exception on creation with the specified probability. |
+| [analysisOfVariance](/core/reference/functions/aggregate-functions/reference/analysis_of_variance) | Provides a statistical test for one-way analysis of variance (ANOVA test). It is a test over several groups of normally distributed observations to find out whether all groups have the same mean or not. |
+| [any](/core/reference/functions/aggregate-functions/reference/any) | Selects the first encountered value of a column. |
+| [anyHeavy](/core/reference/functions/aggregate-functions/reference/anyHeavy) | Selects a frequently occurring value using the heavy hitters algorithm. If there is a value that occurs more than in half the cases in each of the query execution threads, this value is returned. Normally, the result is nondeterministic. |
+| [anyLast](/core/reference/functions/aggregate-functions/reference/anyLast) | Selects the last encountered value of a column. |
+| [approx_top_k](/core/reference/functions/aggregate-functions/reference/approxtopk) | Returns an array of the approximately most frequent values and their counts in the specified column. |
+| [approx_top_sum](/core/reference/functions/aggregate-functions/reference/approxtopsum) | Returns an array of the approximately most frequent values and their counts in the specified column. |
+| [argAndMax](/core/reference/functions/aggregate-functions/reference/argAndMax) | Calculates the `arg` and `val` value for a maximum `val` value. If there are multiple rows with equal `val` being the maximum, which of the associated `arg` and `val` is returned is not deterministic. |
+| [argAndMin](/core/reference/functions/aggregate-functions/reference/argAndMin) | Calculates the `arg` and `val` value for a minimum `val` value. If there are multiple rows with equal `val` being the minimum, which of the associated `arg` and `val` is returned is not deterministic. |
+| [argMax](/core/reference/functions/aggregate-functions/reference/argMax) | Calculates the `arg` value for a maximum `val` value. |
+| [argMin](/core/reference/functions/aggregate-functions/reference/argMin) | Calculates the `arg` value for a minimum `val` value. If there are multiple rows with equal `val` being the maximum, which of the associated `arg` is returned is not deterministic. |
+| [avg](/core/reference/functions/aggregate-functions/reference/avg) | Calculates the arithmetic mean. |
+| [avgWeighted](/core/reference/functions/aggregate-functions/reference/avgWeighted) | Calculates the weighted arithmetic mean. |
+| [boundingRatio](/core/reference/functions/aggregate-functions/reference/boundrat) | Aggregate function that calculates the slope between the leftmost and rightmost points across a group of values. |
+| [categoricalInformationValue](/core/reference/functions/aggregate-functions/reference/categoricalInformationValue) | Calculates the value of `(P(tag = 1) - P(tag = 0))(log(P(tag = 1)) - log(P(tag = 0)))` for each category. |
+| [contingency](/core/reference/functions/aggregate-functions/reference/contingency) | The `contingency` function calculates the contingency coefficient, a value that measures the association between two columns in a table. The computation is similar to the `cramersV` function but with a different denominator in the square root. |
+| [corr](/core/reference/functions/aggregate-functions/reference/corr) | Calculates the Pearson correlation coefficient. |
+| [corrMatrix](/core/reference/functions/aggregate-functions/reference/corrMatrix) | Computes the correlation matrix over N variables. |
+| [corrStable](/core/reference/functions/aggregate-functions/reference/corrStable) | Calculates the Pearson correlation coefficient, but uses a numerically stable algorithm. |
+| [count](/core/reference/functions/aggregate-functions/reference/count) | Counts the number of rows or not-NULL values. |
+| [covarPop](/core/reference/functions/aggregate-functions/reference/covarPop) | Calculates the population covariance |
+| [covarPopMatrix](/core/reference/functions/aggregate-functions/reference/covarPopMatrix) | Returns the population covariance matrix over N variables. |
+| [covarPopStable](/core/reference/functions/aggregate-functions/reference/covarPopStable) | Calculates the value of the population covariance |
+| [covarSamp](/core/reference/functions/aggregate-functions/reference/covarSamp) | Calculates the value of `Σ((x - x̅)(y - y̅)) / (n - 1)` |
+| [covarSampMatrix](/core/reference/functions/aggregate-functions/reference/covarSampMatrix) | Returns the sample covariance matrix over N variables. |
+| [covarSampStable](/core/reference/functions/aggregate-functions/reference/covarSampStable) | Similar to covarSamp but works slower while providing a lower computational error. |
+| [cramersV](/core/reference/functions/aggregate-functions/reference/cramersV) | The result of the `cramersV` function ranges from 0 (corresponding to no association between the variables) to 1 and can reach 1 only when each value is completely determined by the other. It may be viewed as the association between two variables as a percentage of their maximum possible variation. |
+| [cramersVBiasCorrected](/core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected) | Calculates Cramer's V, but uses a bias correction. |
+| [deltaSum](/core/reference/functions/aggregate-functions/reference/deltaSum) | Sums the arithmetic difference between consecutive rows. |
+| [deltaSumTimestamp](/core/reference/functions/aggregate-functions/reference/deltaSumTimestamp) | Adds the difference between consecutive rows. If the difference is negative, it is ignored. |
+| [distinctDynamicTypes](/core/reference/functions/aggregate-functions/reference/distinctDynamicTypes) | Calculates the list of distinct data types stored in Dynamic column. |
+| [distinctJSONPaths](/core/reference/functions/aggregate-functions/reference/distinctJSONPaths) | Calculates a list of distinct paths stored in a JSON column. |
+| [distinctJSONPathsAndTypes](/core/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes) | Calculates the list of distinct paths and their types stored in JSON |
+| [entropy](/core/reference/functions/aggregate-functions/reference/entropy) | Calculates Shannon entropy of for a column of values. |
+| [estimateCompressionRatio](/core/reference/functions/aggregate-functions/reference/estimateCompressionRatio) | Estimates the compression ratio of a given column without compressing it. |
+| [exponentialMovingAverage](/core/reference/functions/aggregate-functions/reference/exponentialMovingAverage) | Calculates the exponential moving average of values for the determined time. |
+| [exponentialTimeDecayedAvg](/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg) | Returns the exponentially smoothed weighted moving average of values of a time series at point `t` in time. |
+| [exponentialTimeDecayedCount](/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount) | Returns the cumulative exponential decay over a time series at the index `t` in time. |
+| [exponentialTimeDecayedMax](/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax) | Returns the maximum of the computed exponentially smoothed moving average at index `t` in time with that at `t-1`. |
+| [exponentialTimeDecayedSum](/core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum) | Returns the sum of exponentially smoothed moving average values of a time series at the index `t` in time. |
+| [first_value](/core/reference/functions/aggregate-functions/reference/first_value) | It is an alias for any but it was introduced for compatibility with Window Functions, where sometimes it is necessary to process `NULL` values (by default all ClickHouse aggregate functions ignore NULL values). |
+| [flameGraph](/core/reference/functions/aggregate-functions/reference/flame_graph) | Aggregate function which builds a flamegraph using the list of stacktraces. |
+| [groupArray](/core/reference/functions/aggregate-functions/reference/groupArray) | Creates an array of argument values. Values can be added to the array in any (indeterminate) order. |
+| [groupArrayArray](/core/reference/functions/aggregate-functions/reference/groupArrayArray) | Aggregates arrays into a larger array of those arrays. |
+| [groupArrayInsertAt](/core/reference/functions/aggregate-functions/reference/groupArrayInsertAt) | Inserts a value into the array at the specified position. |
+| [groupArrayIntersect](/core/reference/functions/aggregate-functions/reference/groupArrayIntersect) | Return an intersection of given arrays (Return all items of arrays, that are in all given arrays). |
+| [groupArrayLast](/core/reference/functions/aggregate-functions/reference/groupArrayLast) | Creates an array of the last argument values. |
+| [groupArrayMovingAvg](/core/reference/functions/aggregate-functions/reference/groupArrayMovingAvg) | Calculates the moving average of input values. |
+| [groupArrayMovingSum](/core/reference/functions/aggregate-functions/reference/groupArrayMovingSum) | Calculates the moving sum of input values. |
+| [groupArraySample](/core/reference/functions/aggregate-functions/reference/groupArraySample) | Creates an array of sample argument values. The size of the resulting array is limited to `max_size` elements. Argument values are selected and added to the array randomly. |
+| [groupArraySorted](/core/reference/functions/aggregate-functions/reference/groupArraySorted) | Returns an array with the first N items in ascending order. |
+| [groupBitAnd](/core/reference/functions/aggregate-functions/reference/groupBitAnd) | Applies bit-wise `AND` for series of numbers. |
+| [groupBitmap](/core/reference/functions/aggregate-functions/reference/groupBitmap) | Bitmap or Aggregate calculations from a unsigned integer column, return cardinality of type UInt64, if add suffix -State, then return a bitmap object |
+| [groupBitmapAnd](/core/reference/functions/aggregate-functions/reference/groupBitmapAnd) | Calculations the AND of a bitmap column, return cardinality of type UInt64, if add suffix -State, then return a bitmap object. |
+| [groupBitmapOr](/core/reference/functions/aggregate-functions/reference/groupBitmapOr) | Calculations the OR of a bitmap column, return cardinality of type UInt64, if add suffix -State, then return a bitmap object. This is equivalent to `groupBitmapMerge`. |
+| [groupBitmapXor](/core/reference/functions/aggregate-functions/reference/groupBitmapXor) | Calculates the XOR of a bitmap column, and returns the cardinality of type UInt64, if used with suffix -State, then it returns a bitmap object |
+| [groupBitOr](/core/reference/functions/aggregate-functions/reference/groupBitOr) | Applies bit-wise `OR` to a series of numbers. |
+| [groupBitXor](/core/reference/functions/aggregate-functions/reference/groupBitXor) | Applies bit-wise `XOR` for series of numbers. |
+| [groupConcat](/core/reference/functions/aggregate-functions/reference/groupConcat) | Calculates a concatenated string from a group of strings, optionally separated by a delimiter, and optionally limited by a maximum number of elements. |
+| [groupUniqArray](/core/reference/functions/aggregate-functions/reference/groupUniqArray) | Creates an array from different argument values. |
+| [intervalLengthSum](/core/reference/functions/aggregate-functions/reference/intervalLengthSum) | Calculates the total length of union of all ranges (segments on numeric axis). |
+| [kolmogorovSmirnovTest](/core/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest) | Applies Kolmogorov-Smirnov's test to samples from two populations. |
+| [kurtPop](/core/reference/functions/aggregate-functions/reference/kurtPop) | Computes the kurtosis of a sequence. |
+| [kurtSamp](/core/reference/functions/aggregate-functions/reference/kurtSamp) | Computes the sample kurtosis of a sequence. |
+| [largestTriangleThreeBuckets](/core/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets) | Applies the Largest-Triangle-Three-Buckets algorithm to the input data. |
+| [last_value](/core/reference/functions/aggregate-functions/reference/last_value) | Selects the last encountered value, similar to `anyLast`, but could accept NULL. |
+| [mannWhitneyUTest](/core/reference/functions/aggregate-functions/reference/mannWhitneyUTest) | Applies the Mann-Whitney rank test to samples from two populations. |
+| [max](/core/reference/functions/aggregate-functions/reference/max) | Aggregate function that calculates the maximum across a group of values. |
+| [maxIntersections](/core/reference/functions/aggregate-functions/reference/maxIntersections) | Aggregate function that calculates the maximum number of times that a group of intervals intersects each other (if all the intervals intersect at least once). |
+| [maxIntersectionsPosition](/core/reference/functions/aggregate-functions/reference/maxIntersectionsPosition) | Aggregate function that calculates the positions of the occurrences of the maxIntersections function. |
+| [maxMap](/core/reference/functions/aggregate-functions/reference/maxMap) | Calculates the maximum from `value` array according to the keys specified in the `key` array. |
+| [meanZTest](/core/reference/functions/aggregate-functions/reference/meanZTest) | Applies mean z-test to samples from two populations. |
+| [median](/core/reference/functions/aggregate-functions/reference/median) | The `median*` functions are the aliases for the corresponding `quantile*` functions. They calculate median of a numeric data sample. |
+| [min](/core/reference/functions/aggregate-functions/reference/min) | Aggregate function that calculates the minimum across a group of values. |
+| [minMap](/core/reference/functions/aggregate-functions/reference/minMap) | Calculates the minimum from `value` array according to the keys specified in the `key` array. |
+| [quantile](/core/reference/functions/aggregate-functions/reference/quantile) | Computes an approximate quantile of a numeric data sequence. |
+| [quantileBFloat16](/core/reference/functions/aggregate-functions/reference/quantileBFloat16) | Computes an approximate quantile of a sample consisting of bfloat16 numbers. |
+| [quantileDD](/core/reference/functions/aggregate-functions/reference/quantileddsketch) | Computes an approximate quantile of a sample with relative-error guarantees. |
+| [quantileDeterministic](/core/reference/functions/aggregate-functions/reference/quantileDeterministic) | Computes an approximate quantile of a numeric data sequence. |
+| [quantileExact Functions](/core/reference/functions/aggregate-functions/reference/quantileExact) | quantileExact, quantileExactLow, quantileExactHigh, quantileExactExclusive, quantileExactInclusive functions |
+| [quantileExactExclusive](/core/reference/functions/aggregate-functions/reference/quantileExactExclusive) | Exactly computes the quantile of a numeric data sequence. |
+| [quantileExactHigh](/core/reference/functions/aggregate-functions/reference/quantileExactHigh) | Similar to quantileExact, this computes the exact quantile of a numeric data sequence. |
+| [quantileExactInclusive](/core/reference/functions/aggregate-functions/reference/quantileExactInclusive) | Exactly computes the quantile of a numeric data sequence. |
+| [quantileExactLow](/core/reference/functions/aggregate-functions/reference/quantileExactLow) | Similar to quantileExact, this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence. |
+| [quantileExactWeighted](/core/reference/functions/aggregate-functions/reference/quantileExactWeighted) | Exactly computes the quantile of a numeric data sequence, taking into account the weight of each element. |
+| [quantileExactWeightedInterpolated](/core/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated) | Computes quantile of a numeric data sequence using linear interpolation, taking into account the weight of each element. |
+| [quantileGK](/core/reference/functions/aggregate-functions/reference/quantileGK) | Computes the quantile of a numeric data sequence using the Greenwald-Khanna algorithm. |
+| [quantileInterpolatedWeighted](/core/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted) | Computes quantile of a numeric data sequence using linear interpolation, taking into account the weight of each element. |
+| [quantilePrometheusHistogram](/core/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram) | Computes quantile of a histogram using linear interpolation. |
+| [quantiles Functions](/core/reference/functions/aggregate-functions/reference/quantiles) | quantiles, quantilesExactExclusive, quantilesExactInclusive, quantilesGK |
+| [quantilesExactExclusive](/core/reference/functions/aggregate-functions/reference/quantilesExactExclusive) | Exactly computes the quantiles of a numeric data sequence. |
+| [quantilesExactInclusive](/core/reference/functions/aggregate-functions/reference/quantilesExactInclusive) | Exactly computes the quantiles of a numeric data sequence. |
+| [quantilesGK](/core/reference/functions/aggregate-functions/reference/quantilesGK) | quantilesGK works similarly to quantileGK but allows us to calculate quantities at different levels simultaneously and returns an array. |
+| [quantilesTimingWeighted](/core/reference/functions/aggregate-functions/reference/quantilesTimingWeighted) | With the determined precision computes the quantile of a numeric data sequence according to the weight of each sequence member. |
+| [quantileTDigest](/core/reference/functions/aggregate-functions/reference/quantileTDigest) | Computes an approximate quantile of a numeric data sequence using the t-digest algorithm. |
+| [quantileTDigestWeighted](/core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted) | Computes an approximate quantile of a numeric data sequence using the t-digest algorithm. |
+| [quantileTiming](/core/reference/functions/aggregate-functions/reference/quantileTiming) | With the determined precision computes the quantile of a numeric data sequence. |
+| [quantileTimingWeighted](/core/reference/functions/aggregate-functions/reference/quantileTimingWeighted) | With the determined precision computes the quantile of a numeric data sequence according to the weight of each sequence member. |
+| [rankCorr](/core/reference/functions/aggregate-functions/reference/rankCorr) | Computes a rank correlation coefficient. |
+| [simpleLinearRegression](/core/reference/functions/aggregate-functions/reference/simpleLinearRegression) | Performs simple (unidimensional) linear regression. |
+| [singleValueOrNull](/core/reference/functions/aggregate-functions/reference/singleValueOrNull) | The aggregate function `singleValueOrNull` is used to implement subquery operators, such as `x = ALL (SELECT ...)`. It checks if there is only one unique non-NULL value in the data. |
+| [skewPop](/core/reference/functions/aggregate-functions/reference/skewPop) | Computes the skewness of a sequence. |
+| [skewSamp](/core/reference/functions/aggregate-functions/reference/skewSamp) | Computes the sample skewness of a sequence. |
+| [sparkbar](/core/reference/functions/aggregate-functions/reference/sparkbar) | The function plots a frequency histogram for values `x` and the repetition rate `y` of these values over the interval `[min_x, max_x]`. |
+| [stddevPop](/core/reference/functions/aggregate-functions/reference/stddevPop) | The result is equal to the square root of varPop. |
+| [stddevPopStable](/core/reference/functions/aggregate-functions/reference/stddevPopStable) | The result is equal to the square root of varPop. Unlike stddevPop, this function uses a numerically stable algorithm. |
+| [stddevSamp](/core/reference/functions/aggregate-functions/reference/stddevSamp) | The result is equal to the square root of varSamp |
+| [stddevSampStable](/core/reference/functions/aggregate-functions/reference/stddevSampStable) | The result is equal to the square root of varSamp. Unlike this function uses a numerically stable algorithm. |
+| [stochasticLinearRegression](/core/reference/functions/aggregate-functions/reference/stochasticLinearRegression) | This function implements stochastic linear regression. It supports custom parameters for learning rate, L2 regularization coefficient, mini-batch size, and has a few methods for updating weights (Adam, simple SGD, Momentum, Nesterov.) |
+| [stochasticLogisticRegression](/core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression) | This function implements stochastic logistic regression. It can be used for binary classification problem, supports the same custom parameters as stochasticLinearRegression and works the same way. |
+| [studentTTest](/core/reference/functions/aggregate-functions/reference/studentTTest) | Applies the student t-test to samples from two populations. |
+| [studentTTestOneSample](/core/reference/functions/aggregate-functions/reference/studentTTestOneSample) | Applies the one-sample Student t-test to a sample and a known population mean. |
+| [sum](/core/reference/functions/aggregate-functions/reference/sum) | Calculates the sum. Only works for numbers. |
+| [sumCount](/core/reference/functions/aggregate-functions/reference/sumCount) | Calculates the sum of the numbers and counts the number of rows at the same time. The function is used by ClickHouse query optimizer: if there are multiple `sum`, `count` or `avg` functions in a query, they can be replaced to single `sumCount` function to reuse the calculations. The function is rarely needed to use explicitly. |
+| [sumKahan](/core/reference/functions/aggregate-functions/reference/sumKahan) | Calculates the sum of the numbers with Kahan compensated summation algorithm |
+| [sumMap](/core/reference/functions/aggregate-functions/reference/sumMap) | Totals one or more `value` arrays according to the keys specified in the `key` array. Returns a tuple of arrays: keys in sorted order, followed by values summed for the corresponding keys without overflow. |
+| [sumMapWithOverflow](/core/reference/functions/aggregate-functions/reference/sumMapWithOverflow) | Totals a `value` array according to the keys specified in the `key` array. Returns a tuple of two arrays: keys in sorted order, and values summed for the corresponding keys. Differs from the sumMap function in that it does summation with overflow. |
+| [sumWithOverflow](/core/reference/functions/aggregate-functions/reference/sumWithOverflow) | Computes the sum of the numbers, using the same data type for the result as for the input parameters. If the sum exceeds the maximum value for this data type, it is calculated with overflow. |
+| [theilsU](/core/reference/functions/aggregate-functions/reference/theilsU) | The `theilsU` function calculates Theils' U uncertainty coefficient, a value that measures the association between two columns in a table. |
+| [timeSeriesChangesToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid) | Aggregate function that calculates PromQL-like changes over time series data on the specified grid. |
+| [timeSeriesDeltaToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid) | Aggregate function that calculates PromQL-like delta over time series data on the specified grid. |
+| [timeSeriesDerivToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid) | Aggregate function that calculates PromQL-like derivative over time series data on the specified grid. |
+| [timeSeriesGroupArray](/core/reference/functions/aggregate-functions/reference/timeSeriesGroupArray) | Sorts time series by timestamp in ascending order. |
+| [timeSeriesInstantDeltaToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid) | Aggregate function that calculates PromQL-like idelta over time series data on the specified grid. |
+| [timeSeriesInstantRateToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid) | Aggregate function that calculates PromQL-like irate over time series data on the specified grid. |
+| [timeSeriesLastTwoSamples](/core/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples) | Aggregate function for re-sampling time series data for PromQL-like irate and idelta calculation |
+| [timeSeriesPredictLinearToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid) | Aggregate function that calculates PromQL-like linear prediction over time series data on the specified grid. |
+| [timeSeriesRateToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid) | Aggregate function that calculates PromQL-like rate over time series data on the specified grid. |
+| [timeSeriesResampleToGridWithStaleness](/core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness) | Aggregate function that re-samples time series data to the specified grid. |
+| [timeSeriesResetsToGrid](/core/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid) | Aggregate function that calculates PromQL-like resets over time series data on the specified grid. |
+| [topK](/core/reference/functions/aggregate-functions/reference/topK) | Returns an array of the approximately most frequent values in the specified column. The resulting array is sorted in descending order of approximate frequency of values (not by the values themselves). |
+| [topKWeighted](/core/reference/functions/aggregate-functions/reference/topKWeighted) | Returns an array of the approximately most frequent values in the specified column. The resulting array is sorted in descending order of approximate frequency of values (not by the values themselves). Additionally, the weight of the value is taken into account. |
+| [uniq](/core/reference/functions/aggregate-functions/reference/uniq) | Calculates the approximate number of different values of the argument. |
+| [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined) | Calculates the approximate number of different argument values. |
+| [uniqCombined64](/core/reference/functions/aggregate-functions/reference/uniqCombined64) | Calculates the approximate number of different argument values. It is the same as uniqCombined, but uses a 64-bit hash for all data types rather than just for the String data type. |
+| [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact) | Calculates the exact number of different argument values. |
+| [uniqHLL12](/core/reference/functions/aggregate-functions/reference/uniqHLL12) | Calculates the approximate number of different argument values, using the HyperLogLog algorithm. |
+| [uniqTheta](/core/reference/functions/aggregate-functions/reference/uniqthetasketch) | Calculates the approximate number of different argument values, using the Theta Sketch Framework. |
+| [varPop](/core/reference/functions/aggregate-functions/reference/varPop) | Calculates the population variance. |
+| [varPopStable](/core/reference/functions/aggregate-functions/reference/varPopStable) | Returns the population variance. Unlike varPop , this function uses a numerically stable algorithm. It works slower but provides a lower computational error. |
+| [varSamp](/core/reference/functions/aggregate-functions/reference/varSamp) | Calculate the sample variance of a data set. |
+| [varSampStable](/core/reference/functions/aggregate-functions/reference/varSampStable) | Calculate the sample variance of a data set. Unlike `varSamp` , this function uses a numerically stable algorithm. It works slower but provides a lower computational error. |
+| [welchTTest](/core/reference/functions/aggregate-functions/reference/welchTTest) | Applies Welch's t-test to samples from two populations. |
+{/*AUTOGENERATED_END*/}
diff --git a/reference/functions/aggregate-functions/reference/intervalLengthSum.mdx b/core/reference/functions/aggregate-functions/reference/intervalLengthSum.mdx
similarity index 86%
rename from reference/functions/aggregate-functions/reference/intervalLengthSum.mdx
rename to core/reference/functions/aggregate-functions/reference/intervalLengthSum.mdx
index c9b4f0e5..d86f5969 100644
--- a/reference/functions/aggregate-functions/reference/intervalLengthSum.mdx
+++ b/core/reference/functions/aggregate-functions/reference/intervalLengthSum.mdx
@@ -28,12 +28,12 @@ intervalLengthSum(start, end)
**Arguments**
-- `start` — The starting value of the interval. [`(U)Int32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`DateTime`](/reference/data-types/datetime) or [`Date`](/reference/data-types/date)
-- `end` — The ending value of the interval. [`(U)Int32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`DateTime`](/reference/data-types/datetime) or [`Date`](/reference/data-types/date)
+- `start` — The starting value of the interval. [`(U)Int32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`DateTime`](/core/reference/data-types/datetime) or [`Date`](/core/reference/data-types/date)
+- `end` — The ending value of the interval. [`(U)Int32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`DateTime`](/core/reference/data-types/datetime) or [`Date`](/core/reference/data-types/date)
**Returned value**
-Returns the total length of union of all ranges (segments on numeric axis). Depending on the type of the argument, the return value may be UInt64 or Float64 type. [`UInt64`](/reference/data-types/int-uint) or [`Float64`](/reference/data-types/float)
+Returns the total length of union of all ranges (segments on numeric axis). Depending on the type of the argument, the return value may be UInt64 or Float64 type. [`UInt64`](/core/reference/data-types/int-uint) or [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx b/core/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx
rename to core/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx
index 34c01921..0faa2afd 100644
--- a/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx
+++ b/core/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest.mdx
@@ -25,17 +25,17 @@ kolmogorovSmirnovTest([alternative, computation_method])(sample_data, sample_ind
**Parameters**
-- `alternative` — Alternative hypothesis. (Optional, default: 'two-sided'.) Let `F(x) and G(x)` be the CDFs of the first and second distributions respectively. 'two-sided': The null hypothesis is that samples come from the same distribution, e.g. `F(x) = G(x)` for all x. And the alternative is that the distributions are not identical. 'greater': The null hypothesis is that values in the first sample are stochastically smaller than those in the second one, e.g. the CDF of first distribution lies above and hence to the left of that for the second one. Which in fact means that `F(x) >= G(x)` for all x. And the alternative in this case is that `F(x) < G(x)` for at least one x. 'less': The null hypothesis is that values in the first sample are stochastically greater than those in the second one, e.g. the CDF of first distribution lies below and hence to the right of that for the second one. Which in fact means that `F(x) <= G(x)` for all x. And the alternative in this case is that `F(x) > G(x)` for at least one x. [`String`](/reference/data-types/string)
-- `computation_method` — The method used to compute p-value. (Optional, default: 'auto'.) 'exact': calculation is performed using precise probability distribution of the test statistics. Compute intensive and wasteful except for small samples. 'asymp' ('asymptotic'): calculation is performed using an approximation. For large sample sizes, the exact and asymptotic p-values are very similar. 'auto': the 'exact' method is used when a maximum number of samples is less than 10'000. [`String`](/reference/data-types/string)
+- `alternative` — Alternative hypothesis. (Optional, default: 'two-sided'.) Let `F(x) and G(x)` be the CDFs of the first and second distributions respectively. 'two-sided': The null hypothesis is that samples come from the same distribution, e.g. `F(x) = G(x)` for all x. And the alternative is that the distributions are not identical. 'greater': The null hypothesis is that values in the first sample are stochastically smaller than those in the second one, e.g. the CDF of first distribution lies above and hence to the left of that for the second one. Which in fact means that `F(x) >= G(x)` for all x. And the alternative in this case is that `F(x) < G(x)` for at least one x. 'less': The null hypothesis is that values in the first sample are stochastically greater than those in the second one, e.g. the CDF of first distribution lies below and hence to the right of that for the second one. Which in fact means that `F(x) <= G(x)` for all x. And the alternative in this case is that `F(x) > G(x)` for at least one x. [`String`](/core/reference/data-types/string)
+- `computation_method` — The method used to compute p-value. (Optional, default: 'auto'.) 'exact': calculation is performed using precise probability distribution of the test statistics. Compute intensive and wasteful except for small samples. 'asymp' ('asymptotic'): calculation is performed using an approximation. For large sample sizes, the exact and asymptotic p-values are very similar. 'auto': the 'exact' method is used when a maximum number of samples is less than 10'000. [`String`](/core/reference/data-types/string)
**Arguments**
-- `sample_data` — Sample data. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `sample_index` — Sample index. [`(U)Int*`](/reference/data-types/int-uint)
+- `sample_data` — Sample data. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `sample_index` — Sample index. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two elements: a calculated statistic and a calculated p-value. [`Tuple(Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple with two elements: a calculated statistic and a calculated p-value. [`Tuple(Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/kurtPop.mdx b/core/reference/functions/aggregate-functions/reference/kurtPop.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/kurtPop.mdx
rename to core/reference/functions/aggregate-functions/reference/kurtPop.mdx
index 5a45d347..27bddede 100644
--- a/reference/functions/aggregate-functions/reference/kurtPop.mdx
+++ b/core/reference/functions/aggregate-functions/reference/kurtPop.mdx
@@ -21,11 +21,11 @@ kurtPop(expr)
**Arguments**
-- `expr` — [Expression](/reference/syntax#expressions) returning a number. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `expr` — [Expression](/core/reference/syntax#expressions) returning a number. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the kurtosis of the given distribution. [`Float64`](/reference/data-types/float)
+Returns the kurtosis of the given distribution. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/kurtSamp.mdx b/core/reference/functions/aggregate-functions/reference/kurtSamp.mdx
similarity index 79%
rename from reference/functions/aggregate-functions/reference/kurtSamp.mdx
rename to core/reference/functions/aggregate-functions/reference/kurtSamp.mdx
index 58fdff4d..de73d105 100644
--- a/reference/functions/aggregate-functions/reference/kurtSamp.mdx
+++ b/core/reference/functions/aggregate-functions/reference/kurtSamp.mdx
@@ -23,11 +23,11 @@ kurtSamp(expr)
**Arguments**
-- `expr` — [Expression](/reference/syntax#expressions) returning a number. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `expr` — [Expression](/core/reference/syntax#expressions) returning a number. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the kurtosis of the given distribution. If `n <= 1` (`n` is a size of the sample), then the function returns `nan`. [`Float64`](/reference/data-types/float)
+Returns the kurtosis of the given distribution. If `n <= 1` (`n` is a size of the sample), then the function returns `nan`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx b/core/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx
similarity index 72%
rename from reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx
rename to core/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx
index 8c31feb3..bd72f215 100644
--- a/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx
+++ b/core/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets.mdx
@@ -32,16 +32,16 @@ largestTriangleThreeBuckets(n)(x, y)
**Parameters**
-- `n` — Number of points in the resulting series. [`UInt64`](/reference/data-types/int-uint)
+- `n` — Number of points in the resulting series. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `x` — x coordinate. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `y` — y coordinate. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `x` — x coordinate. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `y` — y coordinate. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns an array of tuples with two elements.. [`Array(Tuple(Float64, Float64))`](/reference/data-types/array)
+Returns an array of tuples with two elements.. [`Array(Tuple(Float64, Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/last_value.mdx b/core/reference/functions/aggregate-functions/reference/last_value.mdx
similarity index 95%
rename from reference/functions/aggregate-functions/reference/last_value.mdx
rename to core/reference/functions/aggregate-functions/reference/last_value.mdx
index 1fc105b2..9b3015e8 100644
--- a/reference/functions/aggregate-functions/reference/last_value.mdx
+++ b/core/reference/functions/aggregate-functions/reference/last_value.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
---
Selects the last encountered value, similar to `anyLast`, but could accept NULL.
-Mostly it should be used with [Window Functions](/reference/functions/window-functions).
+Mostly it should be used with [Window Functions](/core/reference/functions/window-functions).
Without Window Functions the result will be random if the source stream is not ordered.
## examples {#examples}
diff --git a/reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx b/core/reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx
rename to core/reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx
index b5bc3121..0fa4fdb2 100644
--- a/reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx
+++ b/core/reference/functions/aggregate-functions/reference/mannWhitneyUTest.mdx
@@ -29,17 +29,17 @@ mannWhitneyUTest[(alternative[, continuity_correction])](sample_data, sample_ind
**Parameters**
-- `alternative` — Optional. Alternative hypothesis. 'two-sided' (default): two populations are not stochastically equal. 'greater': values in the first sample are stochastically greater than those in the second sample. 'less': values in the first sample are stochastically less than those in the second sample. [`String`](/reference/data-types/string)
-- `continuity_correction` — Optional. If not 0 then continuity correction in the normal approximation for the p-value is applied. The default value is 1. [`UInt64`](/reference/data-types/int-uint)
+- `alternative` — Optional. Alternative hypothesis. 'two-sided' (default): two populations are not stochastically equal. 'greater': values in the first sample are stochastically greater than those in the second sample. 'less': values in the first sample are stochastically less than those in the second sample. [`String`](/core/reference/data-types/string)
+- `continuity_correction` — Optional. If not 0 then continuity correction in the normal approximation for the p-value is applied. The default value is 1. [`UInt64`](/core/reference/data-types/int-uint)
**Arguments**
-- `sample_data` — Sample data. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
-- `sample_index` — Sample index. [`(U)Int*`](/reference/data-types/int-uint)
+- `sample_data` — Sample data. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
+- `sample_index` — Sample index. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two elements: calculated U-statistic and calculated p-value. [`Tuple(Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple with two elements: calculated U-statistic and calculated p-value. [`Tuple(Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/max.mdx b/core/reference/functions/aggregate-functions/reference/max.mdx
similarity index 93%
rename from reference/functions/aggregate-functions/reference/max.mdx
rename to core/reference/functions/aggregate-functions/reference/max.mdx
index e6fb484f..9aa7a1fb 100644
--- a/reference/functions/aggregate-functions/reference/max.mdx
+++ b/core/reference/functions/aggregate-functions/reference/max.mdx
@@ -21,11 +21,11 @@ max(column)
**Arguments**
-- `column` — Column name or expression. [`Any`](/reference/data-types)
+- `column` — Column name or expression. [`Any`](/core/reference/data-types)
**Returned value**
-The maximum value across the group with type equal to that of the input. [`Any`](/reference/data-types)
+The maximum value across the group with type equal to that of the input. [`Any`](/core/reference/data-types)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/maxIntersections.mdx b/core/reference/functions/aggregate-functions/reference/maxIntersections.mdx
similarity index 84%
rename from reference/functions/aggregate-functions/reference/maxIntersections.mdx
rename to core/reference/functions/aggregate-functions/reference/maxIntersections.mdx
index 6ffe5e92..b7063615 100644
--- a/reference/functions/aggregate-functions/reference/maxIntersections.mdx
+++ b/core/reference/functions/aggregate-functions/reference/maxIntersections.mdx
@@ -23,12 +23,12 @@ maxIntersections(start_column, end_column)
**Arguments**
-- `start_column` — A numeric column that represents the start of each interval. If `start_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `end_column` — A numeric column that represents the end of each interval. If `end_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `start_column` — A numeric column that represents the start of each interval. If `start_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `end_column` — A numeric column that represents the end of each interval. If `end_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the maximum number of intersected intervals. [`UInt64`](/reference/data-types/int-uint)
+Returns the maximum number of intersected intervals. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx b/core/reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx
similarity index 78%
rename from reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx
rename to core/reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx
index 2e932df0..d18dc70e 100644
--- a/reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx
+++ b/core/reference/functions/aggregate-functions/reference/maxIntersectionsPosition.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
Introduced in: v1.1.0
-Aggregate function that calculates the positions of the occurrences of the [`maxIntersections`](/reference/functions/aggregate-functions/reference/maxIntersections) function.
+Aggregate function that calculates the positions of the occurrences of the [`maxIntersections`](/core/reference/functions/aggregate-functions/reference/maxIntersections) function.
**Syntax**
@@ -22,12 +22,12 @@ maxIntersectionsPosition(start_column, end_column)
**Arguments**
-- `start_column` — A numeric column that represents the start of each interval. If `start_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `end_column` — A numeric column that represents the end of each interval. If `end_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `start_column` — A numeric column that represents the start of each interval. If `start_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `end_column` — A numeric column that represents the end of each interval. If `end_column` is `NULL` or 0 then the interval will be skipped. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the start positions of the maximum number of intersected intervals. [`Any`](/reference/data-types)
+Returns the start positions of the maximum number of intersected intervals. [`Any`](/core/reference/data-types)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/maxMap.mdx b/core/reference/functions/aggregate-functions/reference/maxMap.mdx
similarity index 86%
rename from reference/functions/aggregate-functions/reference/maxMap.mdx
rename to core/reference/functions/aggregate-functions/reference/maxMap.mdx
index 7e66d7e0..128404ab 100644
--- a/reference/functions/aggregate-functions/reference/maxMap.mdx
+++ b/core/reference/functions/aggregate-functions/reference/maxMap.mdx
@@ -28,12 +28,12 @@ maxMappedArrays(Tuple(key, value))
**Arguments**
-- `key` — Array of keys. [`Array(T)`](/reference/data-types/array)
-- `value` — Array of values. [`Array(T)`](/reference/data-types/array)
+- `key` — Array of keys. [`Array(T)`](/core/reference/data-types/array)
+- `value` — Array of values. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns a tuple of two arrays: keys in sorted order, and values calculated for the corresponding keys. [`Tuple(Array(T), Array(T))`](/reference/data-types/tuple)
+Returns a tuple of two arrays: keys in sorted order, and values calculated for the corresponding keys. [`Tuple(Array(T), Array(T))`](/core/reference/data-types/tuple)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/meanZTest.mdx b/core/reference/functions/aggregate-functions/reference/meanZTest.mdx
similarity index 82%
rename from reference/functions/aggregate-functions/reference/meanZTest.mdx
rename to core/reference/functions/aggregate-functions/reference/meanZTest.mdx
index e083a57f..2758c14a 100644
--- a/reference/functions/aggregate-functions/reference/meanZTest.mdx
+++ b/core/reference/functions/aggregate-functions/reference/meanZTest.mdx
@@ -29,18 +29,18 @@ meanZTest(population_variance_x, population_variance_y, confidence_level)(sample
**Parameters**
-- `population_variance_x` — Variance for population x. [`Float*`](/reference/data-types/float)
-- `population_variance_y` — Variance for population y. [`Float*`](/reference/data-types/float)
-- `confidence_level` — Confidence level in order to calculate confidence intervals. [`Float*`](/reference/data-types/float)
+- `population_variance_x` — Variance for population x. [`Float*`](/core/reference/data-types/float)
+- `population_variance_y` — Variance for population y. [`Float*`](/core/reference/data-types/float)
+- `confidence_level` — Confidence level in order to calculate confidence intervals. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `sample_data` — Sample data. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `sample_index` — Sample index. [`(U)Int*`](/reference/data-types/int-uint)
+- `sample_data` — Sample data. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `sample_index` — Sample index. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with four elements: calculated z-statistic, calculated p-value, calculated confidence-interval-low, calculated confidence-interval-high. [`Tuple(Float64, Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple with four elements: calculated z-statistic, calculated p-value, calculated confidence-interval-low, calculated confidence-interval-high. [`Tuple(Float64, Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
diff --git a/core/reference/functions/aggregate-functions/reference/median.mdx b/core/reference/functions/aggregate-functions/reference/median.mdx
new file mode 100644
index 00000000..eee259e2
--- /dev/null
+++ b/core/reference/functions/aggregate-functions/reference/median.mdx
@@ -0,0 +1,45 @@
+---
+description: 'The `median*` functions are the aliases for the corresponding `quantile*`
+ functions. They calculate median of a numeric data sample.'
+slug: /sql-reference/aggregate-functions/reference/median
+title: 'median'
+doc_type: 'reference'
+---
+
+The `median*` functions are the aliases for the corresponding `quantile*` functions. They calculate median of a numeric data sample.
+
+Functions:
+
+- `median` — Alias for [quantile](/core/reference/functions/aggregate-functions/reference/quantile).
+- `medianDeterministic` — Alias for [quantileDeterministic](/core/reference/functions/aggregate-functions/reference/quantileDeterministic).
+- `medianExact` — Alias for [quantileExact](/core/reference/functions/aggregate-functions/reference/quantileExact).
+- `medianExactWeighted` — Alias for [quantileExactWeighted](/core/reference/functions/aggregate-functions/reference/quantileExactWeighted).
+- `medianTiming` — Alias for [quantileTiming](/core/reference/functions/aggregate-functions/reference/quantileTiming).
+- `medianTimingWeighted` — Alias for [quantileTimingWeighted](/core/reference/functions/aggregate-functions/reference/quantileTimingWeighted).
+- `medianTDigest` — Alias for [quantileTDigest](/core/reference/functions/aggregate-functions/reference/quantileTDigest).
+- `medianTDigestWeighted` — Alias for [quantileTDigestWeighted](/core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted).
+- `medianBFloat16` — Alias for [quantileBFloat16](/core/reference/functions/aggregate-functions/reference/quantileBFloat16).
+- `medianDD` — Alias for [quantileDD](/core/reference/functions/aggregate-functions/reference/quantileddsketch).
+
+**Example**
+
+Input table:
+
+```text
+┌─val─┐
+│ 1 │
+│ 1 │
+│ 2 │
+│ 3 │
+└─────┘
+```
+
+```sql title="Query"
+SELECT medianDeterministic(val, 1) FROM t;
+```
+
+```text title="Response"
+┌─medianDeterministic(val, 1)─┐
+│ 1.5 │
+└─────────────────────────────┘
+```
diff --git a/reference/functions/aggregate-functions/reference/min.mdx b/core/reference/functions/aggregate-functions/reference/min.mdx
similarity index 91%
rename from reference/functions/aggregate-functions/reference/min.mdx
rename to core/reference/functions/aggregate-functions/reference/min.mdx
index ba0fefa1..e6cd5da0 100644
--- a/reference/functions/aggregate-functions/reference/min.mdx
+++ b/core/reference/functions/aggregate-functions/reference/min.mdx
@@ -21,11 +21,11 @@ min(column)
**Arguments**
-- `column` — Column name or expression. [`Any`](/reference/data-types)
+- `column` — Column name or expression. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the minimum value across the group with type equal to that of the input. [`Any`](/reference/data-types)
+Returns the minimum value across the group with type equal to that of the input. [`Any`](/core/reference/data-types)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/minMap.mdx b/core/reference/functions/aggregate-functions/reference/minMap.mdx
similarity index 87%
rename from reference/functions/aggregate-functions/reference/minMap.mdx
rename to core/reference/functions/aggregate-functions/reference/minMap.mdx
index 4625331f..fa60d77f 100644
--- a/reference/functions/aggregate-functions/reference/minMap.mdx
+++ b/core/reference/functions/aggregate-functions/reference/minMap.mdx
@@ -28,12 +28,12 @@ minMappedArrays(Tuple(key, value))
**Arguments**
-- `key` — Array of keys. [`Array(T)`](/reference/data-types/array)
-- `value` — Array of values. [`Array(T)`](/reference/data-types/array)
+- `key` — Array of keys. [`Array(T)`](/core/reference/data-types/array)
+- `value` — Array of values. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns a tuple of two arrays: keys in sorted order, and values calculated for the corresponding keys. [`Tuple(Array(T), Array(T))`](/reference/data-types/tuple)
+Returns a tuple of two arrays: keys in sorted order, and values calculated for the corresponding keys. [`Tuple(Array(T), Array(T))`](/core/reference/data-types/tuple)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantile.mdx b/core/reference/functions/aggregate-functions/reference/quantile.mdx
similarity index 63%
rename from reference/functions/aggregate-functions/reference/quantile.mdx
rename to core/reference/functions/aggregate-functions/reference/quantile.mdx
index 47948104..5e1513d2 100644
--- a/reference/functions/aggregate-functions/reference/quantile.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantile.mdx
@@ -14,10 +14,10 @@ Computes an approximate [`quantile`](https://en.wikipedia.org/wiki/Quantile) of
This function applies [reservoir sampling](https://en.wikipedia.org/wiki/Reservoir_sampling) with a reservoir size up to 8192 and a random number generator for sampling.
The result is non-deterministic.
-To get an exact quantile, use the [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact#quantileExact) function.
+To get an exact quantile, use the [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact#quantileExact) function.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
Note that for an empty numeric sequence, `quantile` will return NaN, but its `quantile*` variants will return either NaN or a default value for the sequence type, depending on the variant.
@@ -32,15 +32,15 @@ quantile(level)(expr)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Approximate quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Approximate quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -63,5 +63,5 @@ SELECT quantile(val) FROM t;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileBFloat16.mdx b/core/reference/functions/aggregate-functions/reference/quantileBFloat16.mdx
similarity index 78%
rename from reference/functions/aggregate-functions/reference/quantileBFloat16.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileBFloat16.mdx
index 34a0519b..e1150cc3 100644
--- a/reference/functions/aggregate-functions/reference/quantileBFloat16.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileBFloat16.mdx
@@ -28,15 +28,15 @@ quantileBFloat16[(level)](expr)
**Parameters**
-- `level` — Optional. Level of quantile. Possible values are in the range from 0 to 1. Default value: 0.5. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Possible values are in the range from 0 to 1. Default value: 0.5. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Column with numeric data. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `expr` — Column with numeric data. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Approximate quantile of the specified level. [`Float64`](/reference/data-types/float)
+Approximate quantile of the specified level. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -59,5 +59,5 @@ SELECT quantileBFloat16(0.75)(a), quantileBFloat16(0.75)(b) FROM example_table;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileDeterministic.mdx b/core/reference/functions/aggregate-functions/reference/quantileDeterministic.mdx
similarity index 67%
rename from reference/functions/aggregate-functions/reference/quantileDeterministic.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileDeterministic.mdx
index 1c7b0eac..3593c12b 100644
--- a/reference/functions/aggregate-functions/reference/quantileDeterministic.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileDeterministic.mdx
@@ -14,10 +14,10 @@ Computes an approximate [quantile](https://en.wikipedia.org/wiki/Quantile) of a
This function applies [reservoir sampling](https://en.wikipedia.org/wiki/Reservoir_sampling) with a reservoir size up to 8192 and deterministic algorithm of sampling.
The result is deterministic.
-To get an exact quantile, use the [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact#quantileExact) function.
+To get an exact quantile, use the [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact#quantileExact) function.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
**Syntax**
@@ -30,16 +30,16 @@ quantileDeterministic(level)(expr, determinator)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `determinator` — Number whose hash is used instead of a random number generator in the reservoir sampling algorithm to make the result of sampling deterministic. As a determinator you can use any deterministic positive number, for example, a user id or an event id. If the same determinator value occurs too often, the function works incorrectly. [`(U)Int*`](/reference/data-types/int-uint)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `determinator` — Number whose hash is used instead of a random number generator in the reservoir sampling algorithm to make the result of sampling deterministic. As a determinator you can use any deterministic positive number, for example, a user id or an event id. If the same determinator value occurs too often, the function works incorrectly. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an approximate quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Returns an approximate quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -62,5 +62,5 @@ SELECT quantileDeterministic(val, 1) FROM t;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileExact.mdx b/core/reference/functions/aggregate-functions/reference/quantileExact.mdx
similarity index 64%
rename from reference/functions/aggregate-functions/reference/quantileExact.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileExact.mdx
index e19a6b6b..7011ac60 100644
--- a/reference/functions/aggregate-functions/reference/quantileExact.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileExact.mdx
@@ -18,7 +18,7 @@ Therefore, the function consumes `O(n)` memory, where `n` is a number of values
However, for a small number of values, the function is very effective.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
**Syntax**
@@ -31,15 +31,15 @@ quantileExact(level)(expr)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Quantile of the specified level. For numeric data types the output format will be the same as the input format. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Quantile of the specified level. For numeric data types the output format will be the same as the input format. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -59,5 +59,5 @@ SELECT quantileExact(number) FROM numbers(10);
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx b/core/reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx
similarity index 68%
rename from reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx
index 5dc40159..a70a9779 100644
--- a/reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileExactExclusive.mdx
@@ -10,9 +10,9 @@ doc_type: 'reference'
Introduced in: v20.1.0
-Similar to [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
+Similar to [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
-This function is equivalent to [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact) but uses the exclusive method for calculating quantiles, as described in the [R-6 method](https://en.wikipedia.org/wiki/Quantile#Estimating_quantiles_from_a_sample).
+This function is equivalent to [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact) but uses the exclusive method for calculating quantiles, as described in the [R-6 method](https://en.wikipedia.org/wiki/Quantile#Estimating_quantiles_from_a_sample).
When using this function, the quantile is calculated such that the interpolation formula for a given quantile p takes the form: `x[floor(n*p)] + (n*p - floor(n*p)) * (x[floor(n*p)+1] - x[floor(n*p)])`, where x is the sorted array.
@@ -20,7 +20,7 @@ To get the exact value, all the passed values are combined into an array, which
The sorting algorithm's complexity is `O(N·log(N))`, where `N = std::distance(first, last)` comparisons.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [quantiles](/reference/functions/aggregate-functions/reference/quantiles) function.
+In this case, use the [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles) function.
**Syntax**
@@ -31,15 +31,15 @@ quantileExactExclusive(level)(expr)
**Parameters**
-- `level` — Level of quantile. Constant floating-point number from 0 to 1 (exclusive). We recommend using a `level` value in the range of `(0.01, 0.99)`. [`Float*`](/reference/data-types/float)
+- `level` — Level of quantile. Constant floating-point number from 0 to 1 (exclusive). We recommend using a `level` value in the range of `(0.01, 0.99)`. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the quantile of the specified level. [`Float64`](/reference/data-types/float)
+Returns the quantile of the specified level. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantileExactHigh.mdx b/core/reference/functions/aggregate-functions/reference/quantileExactHigh.mdx
similarity index 73%
rename from reference/functions/aggregate-functions/reference/quantileExactHigh.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileExactHigh.mdx
index f1a4d17a..54c1bd86 100644
--- a/reference/functions/aggregate-functions/reference/quantileExactHigh.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileExactHigh.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
Introduced in: v20.8.0
-Similar to [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
+Similar to [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
To get the exact value, all the passed values are combined into an array, which is then fully sorted.
The sorting algorithm's complexity is `O(N·log(N))`, where `N = std::distance(first, last)` comparisons.
@@ -21,7 +21,7 @@ Median is calculated similarly to the [`median_high`](https://docs.python.org/3/
For all other levels, the element at the index corresponding to the value of `level * size_of_array` is returned.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [quantiles](/reference/functions/aggregate-functions/reference/quantiles) function.
+In this case, use the [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles) function.
**Syntax**
@@ -34,15 +34,15 @@ quantileExactHigh(level)(expr)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Returns the quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx b/core/reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx
similarity index 68%
rename from reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx
index db5dc140..dc0f0be7 100644
--- a/reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileExactInclusive.mdx
@@ -10,9 +10,9 @@ doc_type: 'reference'
Introduced in: v20.1.0
-Similar to [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
+Similar to [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
-This function is equivalent to [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact) but uses the inclusive method for calculating quantiles, as described in the [R-7 method](https://en.wikipedia.org/wiki/Quantile#Estimating_quantiles_from_a_sample).
+This function is equivalent to [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact) but uses the inclusive method for calculating quantiles, as described in the [R-7 method](https://en.wikipedia.org/wiki/Quantile#Estimating_quantiles_from_a_sample).
When using this function, the quantile is calculated such that the interpolation formula for a given quantile p takes the form: `x[floor((n-1)*p)] + ((n-1)*p - floor((n-1)*p)) * (x[floor((n-1)*p)+1] - x[floor((n-1)*p)])`, where x is the sorted array.
@@ -20,7 +20,7 @@ To get the exact value, all the passed values are combined into an array, which
The sorting algorithm's complexity is `O(N·log(N))`, where `N = std::distance(first, last)` comparisons.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [quantiles](/reference/functions/aggregate-functions/reference/quantiles) function.
+In this case, use the [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles) function.
**Syntax**
@@ -31,15 +31,15 @@ quantileExactInclusive(level)(expr)
**Parameters**
-- `level` — Level of quantile. Constant floating-point number from 0 to 1 (inclusive). We recommend using a `level` value in the range of `[0.01, 0.99]`. [`Float*`](/reference/data-types/float)
+- `level` — Level of quantile. Constant floating-point number from 0 to 1 (inclusive). We recommend using a `level` value in the range of `[0.01, 0.99]`. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the quantile of the specified level. [`Float64`](/reference/data-types/float)
+Returns the quantile of the specified level. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantileExactLow.mdx b/core/reference/functions/aggregate-functions/reference/quantileExactLow.mdx
similarity index 73%
rename from reference/functions/aggregate-functions/reference/quantileExactLow.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileExactLow.mdx
index db21b6b2..1be0ab7a 100644
--- a/reference/functions/aggregate-functions/reference/quantileExactLow.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileExactLow.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
Introduced in: v20.8.0
-Similar to [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
+Similar to [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact), this computes the exact [quantile](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence.
To get the exact value, all the passed values are combined into an array, which is then fully sorted.
The sorting algorithm's complexity is `O(N·log(N))`, where `N = std::distance(first, last)` comparisons.
@@ -21,7 +21,7 @@ Median is calculated similarly to the [median_low](https://docs.python.org/3/lib
For all other levels, the element at the index corresponding to the value of `level * size_of_array` is returned.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [quantiles](/reference/functions/aggregate-functions/reference/quantiles) function.
+In this case, use the [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles) function.
**Syntax**
@@ -34,15 +34,15 @@ quantileExactLow(level)(expr)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Returns the quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx b/core/reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx
similarity index 66%
rename from reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx
index 94ab8b85..2d302d61 100644
--- a/reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileExactWeighted.mdx
@@ -16,11 +16,11 @@ Exactly computes the [quantile](https://en.wikipedia.org/wiki/Quantile) of a num
To get the exact value, all the passed values are combined into an array, which is then partially sorted.
Each value is counted with its weight, as if it is present `weight` times.
A hash table is used in the algorithm.
-Because of this, if the passed values are frequently repeated, the function consumes less RAM than [`quantileExact`](/reference/functions/aggregate-functions/reference/quantileExact#quantileExact).
+Because of this, if the passed values are frequently repeated, the function consumes less RAM than [`quantileExact`](/core/reference/functions/aggregate-functions/reference/quantileExact#quantileExact).
You can use this function instead of `quantileExact` and specify the weight 1.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [quantiles](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
**Syntax**
@@ -33,16 +33,16 @@ quantileExactWeighted(level)(expr, weight)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `weight` — Column with weights of sequence members. Weight is a number of value occurrences. [`UInt*`](/reference/data-types/int-uint)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `weight` — Column with weights of sequence members. Weight is a number of value occurrences. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -74,5 +74,5 @@ SELECT quantileExactWeighted(n, val) FROM t;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx b/core/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx
similarity index 79%
rename from reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx
index a4841036..494a5ca1 100644
--- a/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated.mdx
@@ -17,7 +17,7 @@ To get the interpolated value, all the passed values are combined into an array,
Quantile interpolation is then performed using the [weighted percentile method](https://en.wikipedia.org/wiki/Percentile#The_weighted_percentile_method) by building a cumulative distribution based on weights and then a linear interpolation is performed using the weights and the values to compute the quantiles.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [quantiles](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
We strongly recommend using `quantileExactWeightedInterpolated` instead of `quantileInterpolatedWeighted` because `quantileExactWeightedInterpolated` is more accurate than `quantileInterpolatedWeighted`.
See the example below for more details.
@@ -33,16 +33,16 @@ quantileExactWeightedInterpolated(level)(expr, weight)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `weight` — Column with weights of sequence members. Weight is a number of value occurrences. [`UInt*`](/reference/data-types/int-uint)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `weight` — Column with weights of sequence members. Weight is a number of value occurrences. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -78,5 +78,5 @@ FROM numbers(9)
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileGK.mdx b/core/reference/functions/aggregate-functions/reference/quantileGK.mdx
similarity index 80%
rename from reference/functions/aggregate-functions/reference/quantileGK.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileGK.mdx
index c40b1946..f855d112 100644
--- a/reference/functions/aggregate-functions/reference/quantileGK.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileGK.mdx
@@ -32,16 +32,16 @@ quantileGK(accuracy, level)(expr)
**Parameters**
-- `accuracy` — Accuracy of quantile. Constant positive integer. Larger accuracy value means less error. For example, if the accuracy argument is set to 100, the computed quantile will have an error no greater than 1% with high probability. There is a trade-off between the accuracy of the computed quantiles and the computational complexity of the algorithm. A larger accuracy requires more memory and computational resources to compute the quantile accurately, while a smaller accuracy argument allows for a faster and more memory-efficient computation but with a slightly lower accuracy. [`UInt*`](/reference/data-types/int-uint)
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `accuracy` — Accuracy of quantile. Constant positive integer. Larger accuracy value means less error. For example, if the accuracy argument is set to 100, the computed quantile will have an error no greater than 1% with high probability. There is a trade-off between the accuracy of the computed quantiles and the computational complexity of the algorithm. A larger accuracy requires more memory and computational resources to compute the quantile accurately, while a smaller accuracy argument allows for a faster and more memory-efficient computation but with a slightly lower accuracy. [`UInt*`](/core/reference/data-types/int-uint)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the quantile of the specified level and accuracy. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Returns the quantile of the specified level and accuracy. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -73,5 +73,5 @@ SELECT quantileGK(100, 0.25)(number + 1) FROM numbers(1000);
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx b/core/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx
index 391bdba7..affd2e4e 100644
--- a/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted.mdx
@@ -17,7 +17,7 @@ To get the interpolated value, all the passed values are combined into an array,
Quantile interpolation is then performed using the [weighted percentile method](https://en.wikipedia.org/wiki/Percentile#The_weighted_percentile_method) by building a cumulative distribution based on weights and then a linear interpolation is performed using the weights and the values to compute the quantiles.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
**Syntax**
@@ -30,16 +30,16 @@ quantileInterpolatedWeighted(level)(expr, weight)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `weight` — Column with weights of sequence members. Weight is a number of value occurrences. [`UInt*`](/reference/data-types/int-uint)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `weight` — Column with weights of sequence members. Weight is a number of value occurrences. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -66,5 +66,5 @@ SELECT quantileInterpolatedWeighted(n, val) FROM t;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx b/core/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx
similarity index 79%
rename from reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx
rename to core/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx
index 416157b7..0532e0fd 100644
--- a/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram.mdx
@@ -17,8 +17,8 @@ Quantile interpolation is then performed similarly to the PromQL [histogram_quan
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
**Syntax**
@@ -29,16 +29,16 @@ quantilePrometheusHistogram(level)(bucket_upper_bound, cumulative_bucket_value)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: `0.5`. At `level=0.5` the function calculates [median](https://en.wikipedia.org/wiki/Median). [`Float64`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: `0.5`. At `level=0.5` the function calculates [median](https://en.wikipedia.org/wiki/Median). [`Float64`](/core/reference/data-types/float)
**Arguments**
-- `bucket_upper_bound` — Upper bounds of the histogram buckets. The highest bucket must have an upper bound of `+Inf`. [`Float64`](/reference/data-types/float)
-- `cumulative_bucket_value` — Cumulative values of the histogram buckets. Values must be monotonically increasing as the bucket upper bound increases. [`(U)Int*`](/reference/data-types/int-uint) or [`Float64`](/reference/data-types/float)
+- `bucket_upper_bound` — Upper bounds of the histogram buckets. The highest bucket must have an upper bound of `+Inf`. [`Float64`](/core/reference/data-types/float)
+- `cumulative_bucket_value` — Cumulative values of the histogram buckets. Values must be monotonically increasing as the bucket upper bound increases. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns the quantile of the specified level. [`Float64`](/reference/data-types/float)
+Returns the quantile of the specified level. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -59,5 +59,5 @@ FROM VALUES('bucket_upper_bound Float64, cumulative_bucket_value UInt64', (0, 6)
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileTDigest.mdx b/core/reference/functions/aggregate-functions/reference/quantileTDigest.mdx
similarity index 61%
rename from reference/functions/aggregate-functions/reference/quantileTDigest.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileTDigest.mdx
index a61733b9..4acea8b6 100644
--- a/reference/functions/aggregate-functions/reference/quantileTDigest.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileTDigest.mdx
@@ -15,9 +15,9 @@ Computes an approximate [quantile](https://en.wikipedia.org/wiki/Quantile) of a
Memory consumption is `log(n)`, where `n` is a number of values. The result depends on the order of running the query, and is nondeterministic.
-The performance of the function is lower than performance of [`quantile`](/reference/functions/aggregate-functions/reference/quantile) or [`quantileTiming`](/reference/functions/aggregate-functions/reference/quantileTiming). In terms of the ratio of State size to precision, this function is much better than `quantile`.
+The performance of the function is lower than performance of [`quantile`](/core/reference/functions/aggregate-functions/reference/quantile) or [`quantileTiming`](/core/reference/functions/aggregate-functions/reference/quantileTiming). In terms of the ratio of State size to precision, this function is much better than `quantile`.
-When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could). In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could). In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
**Syntax**
@@ -30,15 +30,15 @@ quantileTDigest(level)(expr)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Approximate quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Approximate quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -58,5 +58,5 @@ SELECT quantileTDigest(number) FROM numbers(10);
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx b/core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx
similarity index 66%
rename from reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx
index adcaa784..59508ffa 100644
--- a/reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted.mdx
@@ -17,17 +17,17 @@ The function takes into account the weight of each sequence member.
The maximum error is 1%.
Memory consumption is `log(n)`, where `n` is a number of values.
-The performance of the function is lower than performance of [`quantile`](/reference/functions/aggregate-functions/reference/quantile) or [`quantileTiming`](/reference/functions/aggregate-functions/reference/quantileTiming).
+The performance of the function is lower than performance of [`quantile`](/core/reference/functions/aggregate-functions/reference/quantile) or [`quantileTiming`](/core/reference/functions/aggregate-functions/reference/quantileTiming).
In terms of the ratio of State size to precision, this function is much better than `quantile`.
The result depends on the order of running the query, and is nondeterministic.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
Using `quantileTDigestWeighted` [is not recommended for tiny data sets](https://github.com/tdunning/t-digest/issues/167#issuecomment-828650275) and can lead to significant error.
-In this case, consider possibility of using [`quantileTDigest`](/reference/functions/aggregate-functions/reference/quantileTDigest) instead.
+In this case, consider possibility of using [`quantileTDigest`](/core/reference/functions/aggregate-functions/reference/quantileTDigest) instead.
@@ -41,16 +41,16 @@ quantileTDigestWeighted(level)(expr, weight)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `weight` — Column with weights of sequence elements. Weight is a number of value occurrences. [`UInt*`](/reference/data-types/int-uint)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `weight` — Column with weights of sequence elements. Weight is a number of value occurrences. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Approximate quantile of the specified level. [`Float64`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+Approximate quantile of the specified level. [`Float64`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -70,5 +70,5 @@ SELECT quantileTDigestWeighted(number, 1) FROM numbers(10);
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileTiming.mdx b/core/reference/functions/aggregate-functions/reference/quantileTiming.mdx
similarity index 75%
rename from reference/functions/aggregate-functions/reference/quantileTiming.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileTiming.mdx
index c221b407..085311d3 100644
--- a/reference/functions/aggregate-functions/reference/quantileTiming.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileTiming.mdx
@@ -17,7 +17,7 @@ The result is deterministic (it does not depend on the query processing order).
The function is optimized for working with sequences which describe distributions like loading web pages times or backend response times.
When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could).
-In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
**Accuracy**
@@ -29,11 +29,11 @@ The calculation is accurate if:
Otherwise, the result of the calculation is rounded to the nearest multiple of 16 ms.
-For calculating page loading time quantiles, this function is more effective and accurate than [`quantile`](/reference/functions/aggregate-functions/reference/quantile).
+For calculating page loading time quantiles, this function is more effective and accurate than [`quantile`](/core/reference/functions/aggregate-functions/reference/quantile).
-If no values are passed to the function (when using `quantileTimingIf`), [NaN](/reference/data-types/float#nan-and-inf) is returned. The purpose of this is to differentiate these cases from cases that result in zero. See [ORDER BY clause](/reference/statements/select/order-by) for notes on sorting `NaN` values.
+If no values are passed to the function (when using `quantileTimingIf`), [NaN](/core/reference/data-types/float#nan-and-inf) is returned. The purpose of this is to differentiate these cases from cases that result in zero. See [ORDER BY clause](/core/reference/statements/select/order-by) for notes on sorting `NaN` values.
@@ -47,15 +47,15 @@ quantileTiming(level)(expr)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over a column values returning a Float*-type number. If negative values are passed to the function, the behavior is undefined. If the value is greater than 30,000 (a page loading time of more than 30 seconds), it is assumed to be 30,000. [`Float*`](/reference/data-types/float)
+- `expr` — Expression over a column values returning a Float*-type number. If negative values are passed to the function, the behavior is undefined. If the value is greater than 30,000 (a page loading time of more than 30 seconds), it is assumed to be 30,000. [`Float*`](/core/reference/data-types/float)
**Returned value**
-Quantile of the specified level. If no values are passed to the function (when using `quantileTimingIf`), NaN is returned. The purpose of this is to differentiate these cases from cases that result in zero. [`Float32`](/reference/data-types/float)
+Quantile of the specified level. If no values are passed to the function (when using `quantileTimingIf`), NaN is returned. The purpose of this is to differentiate these cases from cases that result in zero. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -78,5 +78,5 @@ SELECT quantileTiming(response_time) FROM t;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx b/core/reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx
similarity index 78%
rename from reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx
index 2815f71e..2b3dd615 100644
--- a/reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileTimingWeighted.mdx
@@ -15,7 +15,7 @@ With the determined precision computes the [quantile](https://en.wikipedia.org/w
The result is deterministic (it does not depend on the query processing order). The function is optimized for working with sequences which describe distributions like loading web pages times or backend response times.
-When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could). In this case, use the [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
+When using multiple `quantile*` functions with different levels in a query, the internal states are not combined (that is, the query works less efficiently than it could). In this case, use the [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles#quantiles) function.
**Accuracy**
@@ -27,11 +27,11 @@ The calculation is accurate if:
Otherwise, the result of the calculation is rounded to the nearest multiple of 16 ms.
-For calculating page loading time quantiles, this function is more effective and accurate than [`quantile`](/reference/functions/aggregate-functions/reference/quantile).
+For calculating page loading time quantiles, this function is more effective and accurate than [`quantile`](/core/reference/functions/aggregate-functions/reference/quantile).
-If no values are passed to the function (when using `quantileTimingIf`), [NaN](/reference/data-types/float#nan-and-inf) is returned. The purpose of this is to differentiate these cases from cases that result in zero. See [ORDER BY clause](/reference/statements/select/order-by) for notes on sorting `NaN` values.
+If no values are passed to the function (when using `quantileTimingIf`), [NaN](/core/reference/data-types/float#nan-and-inf) is returned. The purpose of this is to differentiate these cases from cases that result in zero. See [ORDER BY clause](/core/reference/statements/select/order-by) for notes on sorting `NaN` values.
@@ -45,16 +45,16 @@ quantileTimingWeighted(level)(expr, weight)
**Parameters**
-- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/reference/data-types/float)
+- `level` — Optional. Level of quantile. Constant floating-point number from 0 to 1. We recommend using a `level` value in the range of `[0.01, 0.99]`. Default value: 0.5. At `level=0.5` the function calculates median. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over a column values returning a Float*-type number. If negative values are passed to the function, the behavior is undefined. If the value is greater than 30,000 (a page loading time of more than 30 seconds), it is assumed to be 30,000. [`Float*`](/reference/data-types/float)
-- `weight` — Column with weights of sequence elements. Weight is a number of value occurrences. [`UInt*`](/reference/data-types/int-uint)
+- `expr` — Expression over a column values returning a Float*-type number. If negative values are passed to the function, the behavior is undefined. If the value is greater than 30,000 (a page loading time of more than 30 seconds), it is assumed to be 30,000. [`Float*`](/core/reference/data-types/float)
+- `weight` — Column with weights of sequence elements. Weight is a number of value occurrences. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Quantile of the specified level. [`Float32`](/reference/data-types/float)
+Quantile of the specified level. [`Float32`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantileddsketch.mdx b/core/reference/functions/aggregate-functions/reference/quantileddsketch.mdx
similarity index 76%
rename from reference/functions/aggregate-functions/reference/quantileddsketch.mdx
rename to core/reference/functions/aggregate-functions/reference/quantileddsketch.mdx
index 02d3c956..374cd65b 100644
--- a/reference/functions/aggregate-functions/reference/quantileddsketch.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantileddsketch.mdx
@@ -24,16 +24,16 @@ quantileDD(relative_accuracy, [level])(expr)
**Parameters**
-- `relative_accuracy` — Relative accuracy of the quantile. Possible values are in the range from 0 to 1. The size of the sketch depends on the range of the data and the relative accuracy. The larger the range and the smaller the relative accuracy, the larger the sketch. The rough memory size of the sketch is `log(max_value/min_value)/relative_accuracy`. The recommended value is 0.001 or higher. [`Float*`](/reference/data-types/float)
-- `level` — Optional. Level of quantile. Possible values are in the range from 0 to 1. Default value: 0.5. [`Float*`](/reference/data-types/float)
+- `relative_accuracy` — Relative accuracy of the quantile. Possible values are in the range from 0 to 1. The size of the sketch depends on the range of the data and the relative accuracy. The larger the range and the smaller the relative accuracy, the larger the sketch. The rough memory size of the sketch is `log(max_value/min_value)/relative_accuracy`. The recommended value is 0.001 or higher. [`Float*`](/core/reference/data-types/float)
+- `level` — Optional. Level of quantile. Possible values are in the range from 0 to 1. Default value: 0.5. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Column with numeric data. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `expr` — Column with numeric data. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Approximate quantile of the specified level. [`Float64`](/reference/data-types/float)
+Approximate quantile of the specified level. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -56,5 +56,5 @@ SELECT quantileDD(0.01, 0.75)(a), quantileDD(0.01, 0.75)(b) FROM example_table;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/quantiles.mdx b/core/reference/functions/aggregate-functions/reference/quantiles.mdx
similarity index 75%
rename from reference/functions/aggregate-functions/reference/quantiles.mdx
rename to core/reference/functions/aggregate-functions/reference/quantiles.mdx
index f51006b4..d59c6369 100644
--- a/reference/functions/aggregate-functions/reference/quantiles.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantiles.mdx
@@ -26,15 +26,15 @@ quantiles(level1, level2, ...)(expr)
**Parameters**
-- `level` — Levels of quantiles. One or more constant floating-point numbers from 0 to 1. We recommend using `level` values in the range of `[0.01, 0.99]`. [`Float*`](/reference/data-types/float)
+- `level` — Levels of quantiles. One or more constant floating-point numbers from 0 to 1. We recommend using `level` values in the range of `[0.01, 0.99]`. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Array of approximate quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/reference/data-types/array) or [`Array(Date)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
+Array of approximate quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/core/reference/data-types/array) or [`Array(Date)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx b/core/reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx
similarity index 74%
rename from reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx
rename to core/reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx
index 3ba62ba9..ffbf7c83 100644
--- a/reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantilesExactExclusive.mdx
@@ -12,7 +12,7 @@ Introduced in: v20.1.0
Exactly computes multiple [quantiles](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence at different levels simultaneously using the exclusive method.
-This function is equivalent to [`quantileExactExclusive`](/reference/functions/aggregate-functions/reference/quantileExactExclusive) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
+This function is equivalent to [`quantileExactExclusive`](/core/reference/functions/aggregate-functions/reference/quantileExactExclusive) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
This function uses the exclusive method for calculating quantiles, as described in the [R-6 method](https://en.wikipedia.org/wiki/Quantile#Estimating_quantiles_from_a_sample).
This is equivalent to [PERCENTILE.EXC](https://support.microsoft.com/en-us/office/percentile-exc-function-bbaa7204-e9e1-4010-85bf-c31dc5dce4ba) Excel function.
@@ -29,15 +29,15 @@ quantilesExactExclusive(level1, level2, ...)(expr)
**Parameters**
-- `level` — Levels of quantiles. Constant floating-point numbers from 0 to 1 (exclusive). We recommend using `level` values in the range of `(0.01, 0.99)`. [`Float*`](/reference/data-types/float)
+- `level` — Levels of quantiles. Constant floating-point numbers from 0 to 1 (exclusive). We recommend using `level` values in the range of `(0.01, 0.99)`. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/reference/data-types/array)
+Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx b/core/reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx
similarity index 74%
rename from reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx
rename to core/reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx
index 0cc111e6..2e2113c1 100644
--- a/reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantilesExactInclusive.mdx
@@ -12,7 +12,7 @@ Introduced in: v20.1.0
Exactly computes multiple [quantiles](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence at different levels simultaneously using the inclusive method.
-This function is equivalent to [`quantileExactInclusive`](/reference/functions/aggregate-functions/reference/quantileExactInclusive) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
+This function is equivalent to [`quantileExactInclusive`](/core/reference/functions/aggregate-functions/reference/quantileExactInclusive) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
This function uses the inclusive method for calculating quantiles, as described in the [R-7 method](https://en.wikipedia.org/wiki/Quantile#Estimating_quantiles_from_a_sample).
This is equivalent to [PERCENTILE.INC](https://support.microsoft.com/en-us/office/percentile-inc-function-680f9539-45eb-410b-9a5e-c1355e5fe2ed) Excel function.
@@ -29,15 +29,15 @@ quantilesExactInclusive(level1, level2, ...)(expr)
**Parameters**
-- `level` — Levels of quantiles. Constant floating-point numbers from 0 to 1 (inclusive). We recommend using `level` values in the range of `[0.01, 0.99]`. [`Float*`](/reference/data-types/float)
+- `level` — Levels of quantiles. Constant floating-point numbers from 0 to 1 (inclusive). We recommend using `level` values in the range of `[0.01, 0.99]`. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/reference/data-types/array)
+Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantilesGK.mdx b/core/reference/functions/aggregate-functions/reference/quantilesGK.mdx
similarity index 74%
rename from reference/functions/aggregate-functions/reference/quantilesGK.mdx
rename to core/reference/functions/aggregate-functions/reference/quantilesGK.mdx
index 1b3cdadd..cf897762 100644
--- a/reference/functions/aggregate-functions/reference/quantilesGK.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantilesGK.mdx
@@ -12,7 +12,7 @@ Introduced in: v23.4.0
Computes multiple [quantiles](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence at different levels simultaneously using the [Greenwald-Khanna](http://infolab.stanford.edu/~datar/courses/cs361a/papers/quantiles.pdf) algorithm.
-This function works similarly with [`quantileGK`](/reference/functions/aggregate-functions/reference/quantileGK) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
+This function works similarly with [`quantileGK`](/core/reference/functions/aggregate-functions/reference/quantileGK) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
The Greenwald-Khanna algorithm is an algorithm used to compute quantiles on a stream of data in a highly efficient manner.
It was introduced by Michael Greenwald and Sanjeev Khanna in 2001.
@@ -28,16 +28,16 @@ quantilesGK(accuracy, level1, level2, ...)(expr)
**Parameters**
-- `accuracy` — Accuracy of quantiles. Constant positive integer. Larger accuracy value means less error. For example, if the accuracy argument is set to 100, the computed quantiles will have an error no greater than 1% with high probability. There is a trade-off between the accuracy of the computed quantiles and the computational complexity of the algorithm. [`UInt*`](/reference/data-types/int-uint)
-- `level` — Levels of quantiles. One or more constant floating-point numbers from 0 to 1. [`Float*`](/reference/data-types/float)
+- `accuracy` — Accuracy of quantiles. Constant positive integer. Larger accuracy value means less error. For example, if the accuracy argument is set to 100, the computed quantiles will have an error no greater than 1% with high probability. There is a trade-off between the accuracy of the computed quantiles and the computational complexity of the algorithm. [`UInt*`](/core/reference/data-types/int-uint)
+- `level` — Levels of quantiles. One or more constant floating-point numbers from 0 to 1. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression over the column values resulting in numeric data types, Date or DateTime. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/reference/data-types/array) or [`Array(Date)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
+Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float64)`](/core/reference/data-types/array) or [`Array(Date)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx b/core/reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx
similarity index 74%
rename from reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx
rename to core/reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx
index cef406db..c49028b7 100644
--- a/reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/quantilesTimingWeighted.mdx
@@ -13,7 +13,7 @@ Introduced in: v1.1.0
Computes multiple [quantiles](https://en.wikipedia.org/wiki/Quantile) of a numeric data sequence at different levels simultaneously with determined precision, taking into account the weight of each sequence member.
-This function is equivalent to [`quantileTimingWeighted`](/reference/functions/aggregate-functions/reference/quantileTimingWeighted) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
+This function is equivalent to [`quantileTimingWeighted`](/core/reference/functions/aggregate-functions/reference/quantileTimingWeighted) but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
The result is deterministic (it does not depend on the query processing order). The function is optimized for working with sequences which describe distributions like loading web pages times or backend response times.
@@ -27,7 +27,7 @@ The calculation is accurate if:
Otherwise, the result of the calculation is rounded to the nearest multiple of 16 ms.
-For calculating page loading time quantiles, this function is more effective and accurate than [`quantiles`](/reference/functions/aggregate-functions/reference/quantiles).
+For calculating page loading time quantiles, this function is more effective and accurate than [`quantiles`](/core/reference/functions/aggregate-functions/reference/quantiles).
@@ -39,16 +39,16 @@ quantilesTimingWeighted(level1, level2, ...)(expr, weight)
**Parameters**
-- `level` — Levels of quantiles. One or more constant floating-point numbers from 0 to 1. We recommend using `level` values in the range of `[0.01, 0.99]`. [`Float*`](/reference/data-types/float)
+- `level` — Levels of quantiles. One or more constant floating-point numbers from 0 to 1. We recommend using `level` values in the range of `[0.01, 0.99]`. [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `expr` — Expression over a column values returning a Float*-type number. If negative values are passed to the function, the behavior is undefined. If the value is greater than 30,000 (a page loading time of more than 30 seconds), it is assumed to be 30,000. [`Float*`](/reference/data-types/float)
-- `weight` — Column with weights of sequence elements. Weight is a number of value occurrences. [`UInt*`](/reference/data-types/int-uint)
+- `expr` — Expression over a column values returning a Float*-type number. If negative values are passed to the function, the behavior is undefined. If the value is greater than 30,000 (a page loading time of more than 30 seconds), it is assumed to be 30,000. [`Float*`](/core/reference/data-types/float)
+- `weight` — Column with weights of sequence elements. Weight is a number of value occurrences. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float32)`](/reference/data-types/array)
+Array of quantiles of the specified levels in the same order as the levels were specified. [`Array(Float32)`](/core/reference/data-types/array)
**Examples**
@@ -68,5 +68,5 @@ SELECT quantilesTimingWeighted(0.5, 0.99)(response_time, weight) FROM t;
**See Also**
-- [median](/reference/functions/aggregate-functions/reference/median)
-- [quantiles](/reference/functions/aggregate-functions/reference/quantiles)
+- [median](/core/reference/functions/aggregate-functions/reference/median)
+- [quantiles](/core/reference/functions/aggregate-functions/reference/quantiles)
diff --git a/reference/functions/aggregate-functions/reference/rankCorr.mdx b/core/reference/functions/aggregate-functions/reference/rankCorr.mdx
similarity index 90%
rename from reference/functions/aggregate-functions/reference/rankCorr.mdx
rename to core/reference/functions/aggregate-functions/reference/rankCorr.mdx
index bb07767b..499b0035 100644
--- a/reference/functions/aggregate-functions/reference/rankCorr.mdx
+++ b/core/reference/functions/aggregate-functions/reference/rankCorr.mdx
@@ -27,12 +27,12 @@ rankCorr(x, y)
**Arguments**
-- `x` — Arbitrary value. [`Float*`](/reference/data-types/float)
-- `y` — Arbitrary value. [`Float*`](/reference/data-types/float)
+- `x` — Arbitrary value. [`Float*`](/core/reference/data-types/float)
+- `y` — Arbitrary value. [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns a rank correlation coefficient of the ranks of x and y. The value ranges from -1 to +1. [`Float64`](/reference/data-types/float)
+Returns a rank correlation coefficient of the ranks of x and y. The value ranges from -1 to +1. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx b/core/reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx
similarity index 89%
rename from reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx
rename to core/reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx
index 175a96b6..cf674c08 100644
--- a/reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx
+++ b/core/reference/functions/aggregate-functions/reference/simpleLinearRegression.mdx
@@ -21,12 +21,12 @@ simpleLinearRegression(x, y)
**Arguments**
-- `x` — Column with explanatory variable values. [`Float64`](/reference/data-types/float)
-- `y` — Column with dependent variable values. [`Float64`](/reference/data-types/float)
+- `x` — Column with explanatory variable values. [`Float64`](/core/reference/data-types/float)
+- `y` — Column with dependent variable values. [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns constants `(k, b)` of the resulting line `y = k*x + b`. [`Tuple(Float64, Float64)`](/reference/data-types/tuple)
+Returns constants `(k, b)` of the resulting line `y = k*x + b`. [`Tuple(Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/singleValueOrNull.mdx b/core/reference/functions/aggregate-functions/reference/singleValueOrNull.mdx
similarity index 91%
rename from reference/functions/aggregate-functions/reference/singleValueOrNull.mdx
rename to core/reference/functions/aggregate-functions/reference/singleValueOrNull.mdx
index 0fc0a106..3ce73235 100644
--- a/reference/functions/aggregate-functions/reference/singleValueOrNull.mdx
+++ b/core/reference/functions/aggregate-functions/reference/singleValueOrNull.mdx
@@ -24,11 +24,11 @@ singleValueOrNull(x)
**Arguments**
-- `x` — A column of any data type except Map, Array or Tuple which cannot be of type Nullable. [`Any`](/reference/data-types)
+- `x` — A column of any data type except Map, Array or Tuple which cannot be of type Nullable. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the unique value if there is only one unique non-NULL value in `x`. Returns `NULL` if there are zero or at least two distinct values. [`Any`](/reference/data-types) or [`NULL`](/reference/syntax#null)
+Returns the unique value if there is only one unique non-NULL value in `x`. Returns `NULL` if there are zero or at least two distinct values. [`Any`](/core/reference/data-types) or [`NULL`](/core/reference/syntax#null)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/skewPop.mdx b/core/reference/functions/aggregate-functions/reference/skewPop.mdx
similarity index 81%
rename from reference/functions/aggregate-functions/reference/skewPop.mdx
rename to core/reference/functions/aggregate-functions/reference/skewPop.mdx
index 4c8f08fe..004235ca 100644
--- a/reference/functions/aggregate-functions/reference/skewPop.mdx
+++ b/core/reference/functions/aggregate-functions/reference/skewPop.mdx
@@ -21,11 +21,11 @@ skewPop(expr)
**Arguments**
-- `expr` — An expression returning a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — An expression returning a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns the skewness of the given distribution. [`Float64`](/reference/data-types/float)
+Returns the skewness of the given distribution. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/skewSamp.mdx b/core/reference/functions/aggregate-functions/reference/skewSamp.mdx
similarity index 88%
rename from reference/functions/aggregate-functions/reference/skewSamp.mdx
rename to core/reference/functions/aggregate-functions/reference/skewSamp.mdx
index 4f3baa45..7f30200e 100644
--- a/reference/functions/aggregate-functions/reference/skewSamp.mdx
+++ b/core/reference/functions/aggregate-functions/reference/skewSamp.mdx
@@ -23,11 +23,11 @@ skewSamp(expr)
**Arguments**
-- `expr` — An expression returning a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — An expression returning a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns the skewness of the given distribution. If `n <= 1` (`n` is the size of the sample), then the function returns `nan`. [`Float64`](/reference/data-types/float)
+Returns the skewness of the given distribution. If `n <= 1` (`n` is the size of the sample), then the function returns `nan`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/sparkbar.mdx b/core/reference/functions/aggregate-functions/reference/sparkbar.mdx
similarity index 78%
rename from reference/functions/aggregate-functions/reference/sparkbar.mdx
rename to core/reference/functions/aggregate-functions/reference/sparkbar.mdx
index 12e5beca..c1d12000 100644
--- a/reference/functions/aggregate-functions/reference/sparkbar.mdx
+++ b/core/reference/functions/aggregate-functions/reference/sparkbar.mdx
@@ -30,18 +30,18 @@ sparkbar(buckets[, min_x, max_x])(x, y)
**Parameters**
-- `buckets` — The number of segments. [`(U)Int*`](/reference/data-types/int-uint)
-- `min_x` — Optional. The interval start. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `max_x` — Optional. The interval end. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `buckets` — The number of segments. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `min_x` — Optional. The interval start. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `max_x` — Optional. The interval end. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Arguments**
-- `x` — The field with values. [`const String`](/reference/data-types/string)
-- `y` — The field with the frequency of values. [`const String`](/reference/data-types/string)
+- `x` — The field with values. [`const String`](/core/reference/data-types/string)
+- `y` — The field with the frequency of values. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the frequency histogram. [`String`](/reference/data-types/string)
+Returns the frequency histogram. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/stddevPop.mdx b/core/reference/functions/aggregate-functions/reference/stddevPop.mdx
similarity index 70%
rename from reference/functions/aggregate-functions/reference/stddevPop.mdx
rename to core/reference/functions/aggregate-functions/reference/stddevPop.mdx
index 15647755..7df500d5 100644
--- a/reference/functions/aggregate-functions/reference/stddevPop.mdx
+++ b/core/reference/functions/aggregate-functions/reference/stddevPop.mdx
@@ -11,10 +11,10 @@ doc_type: 'reference'
Introduced in: v1.1.0
Returns the population standard deviation of a numeric data sequence.
-The result is equal to the square root of [`varPop`](/reference/functions/aggregate-functions/reference/varPop).
+The result is equal to the square root of [`varPop`](/core/reference/functions/aggregate-functions/reference/varPop).
-This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`stddevPopStable`](/reference/functions/aggregate-functions/reference/stddevPopStable) function. It works slower but provides a lower computational error.
+This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`stddevPopStable`](/core/reference/functions/aggregate-functions/reference/stddevPopStable) function. It works slower but provides a lower computational error.
@@ -28,11 +28,11 @@ stddevPop(x)
**Arguments**
-- `x` — Population of values to find the standard deviation of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Population of values to find the standard deviation of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the square root of population variance of `x`. [`Float64`](/reference/data-types/float)
+Returns the square root of population variance of `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/stddevPopStable.mdx b/core/reference/functions/aggregate-functions/reference/stddevPopStable.mdx
similarity index 64%
rename from reference/functions/aggregate-functions/reference/stddevPopStable.mdx
rename to core/reference/functions/aggregate-functions/reference/stddevPopStable.mdx
index 5d0f0305..5873cc98 100644
--- a/reference/functions/aggregate-functions/reference/stddevPopStable.mdx
+++ b/core/reference/functions/aggregate-functions/reference/stddevPopStable.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
Introduced in: v1.1.0
-The result is equal to the square root of [varPop](/reference/functions/aggregate-functions/reference/varPop). Unlike [stddevPop](/reference/functions/aggregate-functions/reference/stddevPop), this function uses a numerically stable algorithm. It works slower but provides a lower computational error.
+The result is equal to the square root of [varPop](/core/reference/functions/aggregate-functions/reference/varPop). Unlike [stddevPop](/core/reference/functions/aggregate-functions/reference/stddevPop), this function uses a numerically stable algorithm. It works slower but provides a lower computational error.
**Syntax**
@@ -22,11 +22,11 @@ stddevPopStable(x)
**Arguments**
-- `x` — Population of values to find the standard deviation of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Population of values to find the standard deviation of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the square root of the variance of `x`. [`Float64`](/reference/data-types/float)
+Returns the square root of the variance of `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/stddevSamp.mdx b/core/reference/functions/aggregate-functions/reference/stddevSamp.mdx
similarity index 73%
rename from reference/functions/aggregate-functions/reference/stddevSamp.mdx
rename to core/reference/functions/aggregate-functions/reference/stddevSamp.mdx
index e8673a2a..fbfb6895 100644
--- a/reference/functions/aggregate-functions/reference/stddevSamp.mdx
+++ b/core/reference/functions/aggregate-functions/reference/stddevSamp.mdx
@@ -11,11 +11,11 @@ doc_type: 'reference'
Introduced in: v1.1.0
Returns the sample standard deviation of a numeric data sequence.
-The result is equal to the square root of [`varSamp`](/reference/functions/aggregate-functions/reference/varSamp).
+The result is equal to the square root of [`varSamp`](/core/reference/functions/aggregate-functions/reference/varSamp).
This function uses a numerically unstable algorithm.
-If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`stddevSampStable`](/reference/functions/aggregate-functions/reference/stddevSampStable) function. It works slower but provides a lower computational error.
+If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`stddevSampStable`](/core/reference/functions/aggregate-functions/reference/stddevSampStable) function. It works slower but provides a lower computational error.
@@ -29,11 +29,11 @@ stddevSamp(x)
**Arguments**
-- `x` — Values for which to find the square root of sample variance. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Values for which to find the square root of sample variance. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the square root of sample variance of `x`. [`Float64`](/reference/data-types/float)
+Returns the square root of sample variance of `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/stddevSampStable.mdx b/core/reference/functions/aggregate-functions/reference/stddevSampStable.mdx
similarity index 67%
rename from reference/functions/aggregate-functions/reference/stddevSampStable.mdx
rename to core/reference/functions/aggregate-functions/reference/stddevSampStable.mdx
index dd46660f..dd70e92a 100644
--- a/reference/functions/aggregate-functions/reference/stddevSampStable.mdx
+++ b/core/reference/functions/aggregate-functions/reference/stddevSampStable.mdx
@@ -11,7 +11,7 @@ doc_type: 'reference'
Introduced in: v1.1.0
-The result is equal to the square root of [varSamp](/reference/functions/aggregate-functions/reference/varSamp). Unlike [stddevSamp](/reference/functions/aggregate-functions/reference/stddevSamp) this function uses a numerically stable algorithm. It works slower but provides a lower computational error.
+The result is equal to the square root of [varSamp](/core/reference/functions/aggregate-functions/reference/varSamp). Unlike [stddevSamp](/core/reference/functions/aggregate-functions/reference/stddevSamp) this function uses a numerically stable algorithm. It works slower but provides a lower computational error.
**Syntax**
@@ -22,11 +22,11 @@ stddevSampStable(x)
**Arguments**
-- `x` — Values for which to find the square root of sample variance. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Values for which to find the square root of sample variance. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the square root of sample variance of `x`. [`Float64`](/reference/data-types/float)
+Returns the square root of sample variance of `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx b/core/reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx
similarity index 89%
rename from reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx
rename to core/reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx
index eab5b62c..1d021487 100644
--- a/reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx
+++ b/core/reference/functions/aggregate-functions/reference/stochasticLinearRegression.mdx
@@ -93,16 +93,16 @@ stochasticLinearRegression([learning_rate, l2_regularization_coef, mini_batch_si
**Arguments**
-- `learning_rate` — The coefficient on step length when gradient descent step is performed. A learning rate that is too big may cause infinite weights of the model. Default is `0.00001`. [`Float64`](/reference/data-types/float)
-- `l2_regularization_coef` — L2 regularization coefficient which may help to prevent overfitting. Default is `0.1`. [`Float64`](/reference/data-types/float)
-- `mini_batch_size` — Sets the number of elements which gradients will be computed and summed to perform one step of gradient descent. Pure stochastic descent uses one element, however having small batches (about 10 elements) makes gradient steps more stable. Default is `15`. [`UInt64`](/reference/data-types/int-uint)
-- `method` — Method for updating weights: `Adam` (by default), `SGD`, `Momentum`, `Nesterov`. `Momentum` and `Nesterov` require slightly more computations and memory, however they happen to be useful in terms of speed of convergence and stability of stochastic gradient methods. [`const String`](/reference/data-types/string)
-- `target` — Target value (dependent variable) to learn to predict. Must be numeric. [`Float*`](/reference/data-types/float)
-- `x1, x2, ...` — Feature values (independent variables). All must be numeric. [`Float*`](/reference/data-types/float)
+- `learning_rate` — The coefficient on step length when gradient descent step is performed. A learning rate that is too big may cause infinite weights of the model. Default is `0.00001`. [`Float64`](/core/reference/data-types/float)
+- `l2_regularization_coef` — L2 regularization coefficient which may help to prevent overfitting. Default is `0.1`. [`Float64`](/core/reference/data-types/float)
+- `mini_batch_size` — Sets the number of elements which gradients will be computed and summed to perform one step of gradient descent. Pure stochastic descent uses one element, however having small batches (about 10 elements) makes gradient steps more stable. Default is `15`. [`UInt64`](/core/reference/data-types/int-uint)
+- `method` — Method for updating weights: `Adam` (by default), `SGD`, `Momentum`, `Nesterov`. `Momentum` and `Nesterov` require slightly more computations and memory, however they happen to be useful in terms of speed of convergence and stability of stochastic gradient methods. [`const String`](/core/reference/data-types/string)
+- `target` — Target value (dependent variable) to learn to predict. Must be numeric. [`Float*`](/core/reference/data-types/float)
+- `x1, x2, ...` — Feature values (independent variables). All must be numeric. [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the trained linear regression model weights. First values correspond to the parameters of the model, the last one is bias. Use `evalMLMethod` for predictions. [`Array(Float64)`](/reference/data-types/array)
+Returns the trained linear regression model weights. First values correspond to the parameters of the model, the last one is bias. Use `evalMLMethod` for predictions. [`Array(Float64)`](/core/reference/data-types/array)
**Examples**
@@ -145,5 +145,5 @@ Returns model weights without saving state
**See Also**
-- [stochasticLogisticRegression](/reference/functions/aggregate-functions/reference/stochasticLogisticRegression)
+- [stochasticLogisticRegression](/core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression)
- [Difference between linear and logistic regressions](https://stackoverflow.com/questions/12146914/what-is-the-difference-between-linear-regression-and-logistic-regression)
diff --git a/reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx b/core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx
similarity index 86%
rename from reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx
rename to core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx
index 5d7fadf8..b1f0aee1 100644
--- a/reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx
+++ b/core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression.mdx
@@ -13,7 +13,7 @@ doc_type: 'reference'
Introduced in: v20.1.0
This function implements stochastic logistic regression.
-It can be used for binary classification problem, supports the same custom parameters as [`stochasticLinearRegression`](/reference/functions/aggregate-functions/reference/stochasticLinearRegression) and works the same way.
+It can be used for binary classification problem, supports the same custom parameters as [`stochasticLinearRegression`](/core/reference/functions/aggregate-functions/reference/stochasticLinearRegression) and works the same way.
**Usage**
@@ -75,16 +75,16 @@ stochasticLogisticRegression([learning_rate, l2_regularization_coef, mini_batch_
**Arguments**
-- `learning_rate` — The coefficient on step length when gradient descent step is performed. A learning rate that is too big may cause infinite weights of the model. Default is `0.00001`. [`Float64`](/reference/data-types/float)
-- `l2_regularization_coef` — L2 regularization coefficient which may help to prevent overfitting. Default is `0.1`. [`Float64`](/reference/data-types/float)
-- `mini_batch_size` — Sets the number of elements which gradients will be computed and summed to perform one step of gradient descent. Pure stochastic descent uses one element, however having small batches (about 10 elements) makes gradient steps more stable. Default is `15`. [`UInt64`](/reference/data-types/int-uint)
-- `method` — Method for updating weights: `Adam` (by default), `SGD`, `Momentum`, `Nesterov`. `Momentum` and `Nesterov` require a little bit more computations and memory, however they happen to be useful in terms of speed of convergence and stability of stochastic gradient methods. [`String`](/reference/data-types/string)
-- `target` — Target binary classification labels. Must be in range [-1, 1]. [`Float`](/reference/data-types/float)
-- `x1, x2, ...` — Feature values (independent variables). All must be numeric. [`Float`](/reference/data-types/float)
+- `learning_rate` — The coefficient on step length when gradient descent step is performed. A learning rate that is too big may cause infinite weights of the model. Default is `0.00001`. [`Float64`](/core/reference/data-types/float)
+- `l2_regularization_coef` — L2 regularization coefficient which may help to prevent overfitting. Default is `0.1`. [`Float64`](/core/reference/data-types/float)
+- `mini_batch_size` — Sets the number of elements which gradients will be computed and summed to perform one step of gradient descent. Pure stochastic descent uses one element, however having small batches (about 10 elements) makes gradient steps more stable. Default is `15`. [`UInt64`](/core/reference/data-types/int-uint)
+- `method` — Method for updating weights: `Adam` (by default), `SGD`, `Momentum`, `Nesterov`. `Momentum` and `Nesterov` require a little bit more computations and memory, however they happen to be useful in terms of speed of convergence and stability of stochastic gradient methods. [`String`](/core/reference/data-types/string)
+- `target` — Target binary classification labels. Must be in range [-1, 1]. [`Float`](/core/reference/data-types/float)
+- `x1, x2, ...` — Feature values (independent variables). All must be numeric. [`Float`](/core/reference/data-types/float)
**Returned value**
-Returns the trained logistic regression model weights. Use `evalMLMethod` for predictions which returns probabilities of object having label `1`. [`Array(Float64)`](/reference/data-types/array)
+Returns the trained logistic regression model weights. Use `evalMLMethod` for predictions which returns probabilities of object having label `1`. [`Array(Float64)`](/core/reference/data-types/array)
**Examples**
@@ -133,5 +133,5 @@ Returns binary classification labels using probability threshold
**See Also**
-- [stochasticLinearRegression](/reference/functions/aggregate-functions/reference/stochasticLogisticRegression)
+- [stochasticLinearRegression](/core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression)
- [Difference between linear and logistic regressions.](https://stackoverflow.com/questions/12146914/what-is-the-difference-between-linear-regression-and-logistic-regression)
diff --git a/reference/functions/aggregate-functions/reference/studentTTest.mdx b/core/reference/functions/aggregate-functions/reference/studentTTest.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/studentTTest.mdx
rename to core/reference/functions/aggregate-functions/reference/studentTTest.mdx
index e547bb0b..5ffab8e7 100644
--- a/reference/functions/aggregate-functions/reference/studentTTest.mdx
+++ b/core/reference/functions/aggregate-functions/reference/studentTTest.mdx
@@ -19,7 +19,7 @@ The null hypothesis is that means of populations are equal. Normal distribution
**See Also**
- [Student's t-test](https://en.wikipedia.org/wiki/Student%27s_t-test)
-- [welchTTest function](/reference/functions/aggregate-functions/reference/welchTTest)
+- [welchTTest function](/core/reference/functions/aggregate-functions/reference/welchTTest)
**Syntax**
@@ -30,16 +30,16 @@ studentTTest([confidence_level])(sample_data, sample_index)
**Parameters**
-- `confidence_level` — Optional. Confidence level in order to calculate confidence intervals. [`Float`](/reference/data-types/float)
+- `confidence_level` — Optional. Confidence level in order to calculate confidence intervals. [`Float`](/core/reference/data-types/float)
**Arguments**
-- `sample_data` — Sample data. [`Integer`](/reference/data-types/int-uint) or [`Float`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `sample_index` — Sample index. [`Integer`](/reference/data-types/int-uint)
+- `sample_data` — Sample data. [`Integer`](/core/reference/data-types/int-uint) or [`Float`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `sample_index` — Sample index. [`Integer`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two or four elements (if the optional `confidence_level` is specified): calculated t-statistic, calculated p-value, [calculated confidence-interval-low], [calculated confidence-interval-high]. [`Tuple(Float64, Float64)`](/reference/data-types/tuple) or [`Tuple(Float64, Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple with two or four elements (if the optional `confidence_level` is specified): calculated t-statistic, calculated p-value, [calculated confidence-interval-low], [calculated confidence-interval-high]. [`Tuple(Float64, Float64)`](/core/reference/data-types/tuple) or [`Tuple(Float64, Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -60,4 +60,4 @@ SELECT studentTTest(sample_data, sample_index) FROM student_ttest;
**See Also**
- [Student's t-test](https://en.wikipedia.org/wiki/Student%27s_t-test)
-- [welchTTest function](/reference/functions/aggregate-functions/reference/welchTTest)
+- [welchTTest function](/core/reference/functions/aggregate-functions/reference/welchTTest)
diff --git a/reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx b/core/reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx
similarity index 70%
rename from reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx
rename to core/reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx
index de639fa2..64bc5faa 100644
--- a/reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx
+++ b/core/reference/functions/aggregate-functions/reference/studentTTestOneSample.mdx
@@ -24,7 +24,7 @@ The optional `confidence_level` enables confidence interval calculation.
**See Also**
- [Student's t-test](https://en.wikipedia.org/wiki/Student%27s_t-test)
-- [studentTTest function](/reference/functions/aggregate-functions/reference/studentTTest)
+- [studentTTest function](/core/reference/functions/aggregate-functions/reference/studentTTest)
**Syntax**
@@ -35,16 +35,16 @@ studentTTestOneSample([confidence_level])(sample_data, population_mean)
**Parameters**
-- `confidence_level` — Optional. Confidence level for confidence intervals. Float in (0, 1). [`Float*`](/reference/data-types/float)
+- `confidence_level` — Optional. Confidence level for confidence intervals. Float in (0, 1). [`Float*`](/core/reference/data-types/float)
**Arguments**
-- `sample_data` — Sample data. [`Integer`](/reference/data-types/int-uint) or [`Float`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `population_mean` — Known population mean to test against (usually a constant). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `sample_data` — Sample data. [`Integer`](/core/reference/data-types/int-uint) or [`Float`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `population_mean` — Known population mean to test against (usually a constant). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple with two or four elements (if `confidence_level` is specified): calculated t-statistic, calculated p-value (two-tailed), [calculated confidence-interval-low], [calculated confidence-interval-high]. Confidence intervals are for the sample mean at the given confidence level. [`Tuple(Float64, Float64)`](/reference/data-types/tuple) or [`Tuple(Float64, Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple with two or four elements (if `confidence_level` is specified): calculated t-statistic, calculated p-value (two-tailed), [calculated confidence-interval-low], [calculated confidence-interval-high]. Confidence intervals are for the sample mean at the given confidence level. [`Tuple(Float64, Float64)`](/core/reference/data-types/tuple) or [`Tuple(Float64, Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -73,4 +73,4 @@ SELECT studentTTestOneSample(0.95)(value, 20.0) FROM t;
**See Also**
- [Student's t-test](https://en.wikipedia.org/wiki/Student%27s_t-test)
-- [studentTTest function](/reference/functions/aggregate-functions/reference/studentTTest)
+- [studentTTest function](/core/reference/functions/aggregate-functions/reference/studentTTest)
diff --git a/reference/functions/aggregate-functions/reference/sum.mdx b/core/reference/functions/aggregate-functions/reference/sum.mdx
similarity index 70%
rename from reference/functions/aggregate-functions/reference/sum.mdx
rename to core/reference/functions/aggregate-functions/reference/sum.mdx
index 67b09adc..28d6c331 100644
--- a/reference/functions/aggregate-functions/reference/sum.mdx
+++ b/core/reference/functions/aggregate-functions/reference/sum.mdx
@@ -21,11 +21,11 @@ sum(num)
**Arguments**
-- `num` — Column of numeric values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `num` — Column of numeric values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the sum of the values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+Returns the sum of the values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/sumCount.mdx b/core/reference/functions/aggregate-functions/reference/sumCount.mdx
similarity index 76%
rename from reference/functions/aggregate-functions/reference/sumCount.mdx
rename to core/reference/functions/aggregate-functions/reference/sumCount.mdx
index d7d292c6..9c66e62b 100644
--- a/reference/functions/aggregate-functions/reference/sumCount.mdx
+++ b/core/reference/functions/aggregate-functions/reference/sumCount.mdx
@@ -17,7 +17,7 @@ Calculates the sum of the numbers and counts the number of rows at the same time
**See also**
-- [`optimize_syntax_fuse_functions`](/reference/settings/session-settings#optimize_syntax_fuse_functions) setting.
+- [`optimize_syntax_fuse_functions`](/core/reference/settings/session-settings#optimize_syntax_fuse_functions) setting.
**Syntax**
@@ -28,11 +28,11 @@ sumCount(x)
**Arguments**
-- `x` — Input value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Input value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple `(sum, count)`, where `sum` is the sum of numbers and `count` is the number of rows with not-NULL values. [`Tuple`](/reference/data-types/tuple)
+Returns a tuple `(sum, count)`, where `sum` is the sum of numbers and `count` is the number of rows with not-NULL values. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -55,4 +55,4 @@ SELECT sumCount(x) FROM s_table;
**See also**
-- [optimize_syntax_fuse_functions](/reference/settings/session-settings#optimize_syntax_fuse_functions) setting.
+- [optimize_syntax_fuse_functions](/core/reference/settings/session-settings#optimize_syntax_fuse_functions) setting.
diff --git a/reference/functions/aggregate-functions/reference/sumKahan.mdx b/core/reference/functions/aggregate-functions/reference/sumKahan.mdx
similarity index 64%
rename from reference/functions/aggregate-functions/reference/sumKahan.mdx
rename to core/reference/functions/aggregate-functions/reference/sumKahan.mdx
index ef46444d..6f36a124 100644
--- a/reference/functions/aggregate-functions/reference/sumKahan.mdx
+++ b/core/reference/functions/aggregate-functions/reference/sumKahan.mdx
@@ -11,8 +11,8 @@ doc_type: 'reference'
Introduced in: v1.1.0
Calculates the sum of the numbers with [Kahan compensated summation algorithm](https://en.wikipedia.org/wiki/Kahan_summation_algorithm).
-Slower than [`sum`](/reference/functions/aggregate-functions/reference/sum) function.
-The compensation works only for [Float](/reference/data-types/float) types.
+Slower than [`sum`](/core/reference/functions/aggregate-functions/reference/sum) function.
+The compensation works only for [Float](/core/reference/data-types/float) types.
**Syntax**
@@ -23,11 +23,11 @@ sumKahan(x)
**Arguments**
-- `x` — Input value. [`Integer`](/reference/data-types/int-uint) or [`Float`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Input value. [`Integer`](/core/reference/data-types/int-uint) or [`Float`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the sum of numbers. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+Returns the sum of numbers. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/sumMap.mdx b/core/reference/functions/aggregate-functions/reference/sumMap.mdx
similarity index 91%
rename from reference/functions/aggregate-functions/reference/sumMap.mdx
rename to core/reference/functions/aggregate-functions/reference/sumMap.mdx
index d2ee3e0c..ece0cd6f 100644
--- a/reference/functions/aggregate-functions/reference/sumMap.mdx
+++ b/core/reference/functions/aggregate-functions/reference/sumMap.mdx
@@ -29,12 +29,12 @@ sumMappedArrays(Tuple(key, value1 [, value2, ...]))
**Arguments**
-- `key` — Array of keys. [`Array`](/reference/data-types/array)
-- `value1, value2, ...` — Arrays of values to sum for each key. [`Array`](/reference/data-types/array)
+- `key` — Array of keys. [`Array`](/core/reference/data-types/array)
+- `value1, value2, ...` — Arrays of values to sum for each key. [`Array`](/core/reference/data-types/array)
**Returned value**
-Returns a tuple of arrays: the first array contains keys in sorted order, followed by arrays containing values summed for the corresponding keys. [`Tuple`](/reference/data-types/tuple)
+Returns a tuple of arrays: the first array contains keys in sorted order, followed by arrays containing values summed for the corresponding keys. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -110,5 +110,5 @@ FROM multi_metrics;
**See Also**
-- [Map combinator for Map datatype](/reference/functions/aggregate-functions/combinators#-map)
-- [sumMapWithOverflow](/reference/functions/aggregate-functions/reference/sumMapWithOverflow)
+- [Map combinator for Map datatype](/core/reference/functions/aggregate-functions/combinators#-map)
+- [sumMapWithOverflow](/core/reference/functions/aggregate-functions/reference/sumMapWithOverflow)
diff --git a/reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx b/core/reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx
similarity index 86%
rename from reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx
rename to core/reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx
index fb088303..b35ad28a 100644
--- a/reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx
+++ b/core/reference/functions/aggregate-functions/reference/sumMapWithOverflow.mdx
@@ -14,7 +14,7 @@ doc_type: 'reference'
Introduced in: v20.1.0
Totals a `value` array according to the keys specified in the `key` array. Returns a tuple of two arrays: keys in sorted order, and values summed for the corresponding keys.
-It differs from the [`sumMap`](/reference/functions/aggregate-functions/reference/sumMap) function in that it does summation with overflow - i.e. returns the same data type for the summation as the argument data type.
+It differs from the [`sumMap`](/core/reference/functions/aggregate-functions/reference/sumMap) function in that it does summation with overflow - i.e. returns the same data type for the summation as the argument data type.
- Passing a tuple of key and value arrays is identical to passing an array of keys and an array of values.
@@ -31,12 +31,12 @@ sumMapWithOverflow(Tuple(key, value))
**Arguments**
-- `key` — Array of keys. [`Array`](/reference/data-types/array)
-- `value` — Array of values. [`Array`](/reference/data-types/array)
+- `key` — Array of keys. [`Array`](/core/reference/data-types/array)
+- `value` — Array of values. [`Array`](/core/reference/data-types/array)
**Returned value**
-Returns a tuple of two arrays: keys in sorted order, and values summed for the corresponding keys. [`Tuple(Array, Array)`](/reference/data-types/tuple)
+Returns a tuple of two arrays: keys in sorted order, and values summed for the corresponding keys. [`Tuple(Array, Array)`](/core/reference/data-types/tuple)
**Examples**
@@ -96,4 +96,4 @@ GROUP BY timeslot;
**See Also**
-- [sumMap](/reference/functions/aggregate-functions/reference/sumMap)
+- [sumMap](/core/reference/functions/aggregate-functions/reference/sumMap)
diff --git a/reference/functions/aggregate-functions/reference/sumWithOverflow.mdx b/core/reference/functions/aggregate-functions/reference/sumWithOverflow.mdx
similarity index 85%
rename from reference/functions/aggregate-functions/reference/sumWithOverflow.mdx
rename to core/reference/functions/aggregate-functions/reference/sumWithOverflow.mdx
index a33114a3..ffa2612f 100644
--- a/reference/functions/aggregate-functions/reference/sumWithOverflow.mdx
+++ b/core/reference/functions/aggregate-functions/reference/sumWithOverflow.mdx
@@ -24,11 +24,11 @@ sumWithOverflow(num)
**Arguments**
-- `num` — Column of numeric values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `num` — Column of numeric values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-The sum of the values. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+The sum of the values. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/theilsU.mdx b/core/reference/functions/aggregate-functions/reference/theilsU.mdx
similarity index 82%
rename from reference/functions/aggregate-functions/reference/theilsU.mdx
rename to core/reference/functions/aggregate-functions/reference/theilsU.mdx
index de81b82a..9ac5a8ce 100644
--- a/reference/functions/aggregate-functions/reference/theilsU.mdx
+++ b/core/reference/functions/aggregate-functions/reference/theilsU.mdx
@@ -23,12 +23,12 @@ theilsU(column1, column2)
**Arguments**
-- `column1` — First column to be compared. [`Any`](/reference/data-types)
-- `column2` — Second column to be compared. [`Any`](/reference/data-types)
+- `column1` — First column to be compared. [`Any`](/core/reference/data-types)
+- `column2` — Second column to be compared. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a value between 0 and 1. [`Float64`](/reference/data-types/float)
+Returns a value between 0 and 1. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid.mdx
similarity index 100%
rename from reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid.mdx
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx
similarity index 84%
rename from reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx
index f153e2ab..3b36a0ac 100644
--- a/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx
+++ b/core/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid.mdx
@@ -26,19 +26,19 @@ timeSeriesDeltaToGrid(start_timestamp, end_timestamp, grid_step, staleness)(time
**Parameters**
-- `start_timestamp` — Specifies start of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `end_timestamp` — Specifies end of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/reference/data-types/int-uint)
-- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/reference/data-types/int-uint)
+- `start_timestamp` — Specifies start of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `end_timestamp` — Specifies end of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/core/reference/data-types/int-uint)
+- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/core/reference/data-types/int-uint)
**Arguments**
-- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime) or [`Array(UInt32)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
-- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/reference/data-types/float) or [`Array(Float*)`](/reference/data-types/array)
+- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime) or [`Array(UInt32)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
+- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/core/reference/data-types/float) or [`Array(Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns delta values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the delta value for a particular grid point. [`Array(Nullable(Float64))`](/reference/data-types/array)
+Returns delta values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the delta value for a particular grid point. [`Array(Nullable(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid.mdx
similarity index 100%
rename from reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid.mdx
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx
similarity index 84%
rename from reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx
index 44887bd7..a4fd3ee0 100644
--- a/reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx
+++ b/core/reference/functions/aggregate-functions/reference/timeSeriesGroupArray.mdx
@@ -25,12 +25,12 @@ timeSeriesGroupArray(timestamp, value)
**Arguments**
-- `timestamp` — Timestamp of the sample. [`DateTime`](/reference/data-types/datetime) or [`UInt32`](/reference/data-types/int-uint) or [`UInt64`](/reference/data-types/int-uint)
-- `value` — Value of the time series corresponding to the timestamp. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `timestamp` — Timestamp of the sample. [`DateTime`](/core/reference/data-types/datetime) or [`UInt32`](/core/reference/data-types/int-uint) or [`UInt64`](/core/reference/data-types/int-uint)
+- `value` — Value of the time series corresponding to the timestamp. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns an array of tuples `(timestamp, value)` sorted by timestamp in ascending order. If there are multiple values for the same timestamp then the function chooses the greatest of these values. [`Array(Tuple(T1, T2))`](/reference/data-types/array)
+Returns an array of tuples `(timestamp, value)` sorted by timestamp in ascending order. If there are multiple values for the same timestamp then the function chooses the greatest of these values. [`Array(Tuple(T1, T2))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx
similarity index 84%
rename from reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx
index b2ccf69f..2230e056 100644
--- a/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx
+++ b/core/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid.mdx
@@ -26,19 +26,19 @@ timeSeriesInstantDeltaToGrid(start_timestamp, end_timestamp, grid_step, stalenes
**Parameters**
-- `start_timestamp` — Specifies start of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `end_timestamp` — Specifies end of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/reference/data-types/int-uint)
-- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/reference/data-types/int-uint)
+- `start_timestamp` — Specifies start of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `end_timestamp` — Specifies end of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/core/reference/data-types/int-uint)
+- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/core/reference/data-types/int-uint)
**Arguments**
-- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime) or [`Array(UInt32)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
-- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/reference/data-types/float) or [`Array(Float*)`](/reference/data-types/array)
+- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime) or [`Array(UInt32)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
+- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/core/reference/data-types/float) or [`Array(Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns idelta values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the instant delta value for a particular grid point. [`Array(Nullable(Float64))`](/reference/data-types/array)
+Returns idelta values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the instant delta value for a particular grid point. [`Array(Nullable(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx
similarity index 84%
rename from reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx
index 42a7b218..14e5070f 100644
--- a/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx
+++ b/core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid.mdx
@@ -25,19 +25,19 @@ timeSeriesInstantRateToGrid(start_timestamp, end_timestamp, grid_step, staleness
**Parameters**
-- `start_timestamp` — Specifies start of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `end_timestamp` — Specifies end of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/reference/data-types/int-uint)
-- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/reference/data-types/int-uint)
+- `start_timestamp` — Specifies start of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `end_timestamp` — Specifies end of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/core/reference/data-types/int-uint)
+- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/core/reference/data-types/int-uint)
**Arguments**
-- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime) or [`Array(UInt32)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
-- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/reference/data-types/float) or [`Array(Float*)`](/reference/data-types/array)
+- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime) or [`Array(UInt32)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
+- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/core/reference/data-types/float) or [`Array(Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns irate values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the instant rate value for a particular grid point. [`Array(Nullable(Float64))`](/reference/data-types/array)
+Returns irate values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the instant rate value for a particular grid point. [`Array(Nullable(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx
similarity index 94%
rename from reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx
index 57e0c3a7..7c57e85f 100644
--- a/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx
+++ b/core/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples.mdx
@@ -29,12 +29,12 @@ timeSeriesLastTwoSamples(timestamp, value)
**Arguments**
-- `timestamp` — Timestamp of the sample. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`(U)Int*`](/reference/data-types/int-uint) or [`Int*`](/reference/data-types/int-uint)
-- `value` — Value of the time series corresponding to the timestamp. [`Float32`](/reference/data-types/float) or [`Float64`](/reference/data-types/float)
+- `timestamp` — Timestamp of the sample. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Int*`](/core/reference/data-types/int-uint)
+- `value` — Value of the time series corresponding to the timestamp. [`Float32`](/core/reference/data-types/float) or [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns a pair of arrays of equal length from 0 to 2. The first array contains the timestamps of sampled time series, the second array contains the corresponding values of the time series. [`Tuple(Array(DateTime), Array(Float64))`](/reference/data-types/tuple)
+Returns a pair of arrays of equal length from 0 to 2. The first array contains the timestamps of sampled time series, the second array contains the corresponding values of the time series. [`Tuple(Array(DateTime), Array(Float64))`](/core/reference/data-types/tuple)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid.mdx
similarity index 100%
rename from reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid.mdx
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx
similarity index 84%
rename from reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx
index 074fa9ac..57d3e27a 100644
--- a/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx
+++ b/core/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid.mdx
@@ -25,19 +25,19 @@ timeSeriesRateToGrid(start_timestamp, end_timestamp, grid_step, staleness)(times
**Parameters**
-- `start_timestamp` — Specifies start of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `end_timestamp` — Specifies end of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/reference/data-types/int-uint)
-- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/reference/data-types/int-uint)
+- `start_timestamp` — Specifies start of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `end_timestamp` — Specifies end of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/core/reference/data-types/int-uint)
+- `staleness` — Specifies the maximum staleness in seconds of the considered samples. The staleness window is a left-open and right-closed interval. [`UInt32`](/core/reference/data-types/int-uint)
**Arguments**
-- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime) or [`Array(UInt32)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
-- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/reference/data-types/float) or [`Array(Float*)`](/reference/data-types/array)
+- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime) or [`Array(UInt32)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
+- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/core/reference/data-types/float) or [`Array(Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns rate values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the rate value for a particular grid point. [`Array(Nullable(Float64))`](/reference/data-types/array)
+Returns rate values on the specified grid. The returned array contains one value for each time grid point. The value is NULL if there are not enough samples within the window to calculate the rate value for a particular grid point. [`Array(Nullable(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx
similarity index 83%
rename from reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx
index 9c270d2f..9931e0dc 100644
--- a/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx
+++ b/core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness.mdx
@@ -29,19 +29,19 @@ timeSeriesResampleToGridWithStaleness(start_timestamp, end_timestamp, grid_step,
**Parameters**
-- `start_timestamp` — Specifies start of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `end_timestamp` — Specifies end of the grid. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime)
-- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/reference/data-types/int-uint)
-- `staleness_window` — Specifies the maximum staleness of the most recent sample in seconds. [`UInt32`](/reference/data-types/int-uint)
+- `start_timestamp` — Specifies start of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `end_timestamp` — Specifies end of the grid. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime)
+- `grid_step` — Specifies step of the grid in seconds. [`UInt32`](/core/reference/data-types/int-uint)
+- `staleness_window` — Specifies the maximum staleness of the most recent sample in seconds. [`UInt32`](/core/reference/data-types/int-uint)
**Arguments**
-- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/reference/data-types/int-uint) or [`DateTime`](/reference/data-types/datetime) or [`Array(UInt32)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
-- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/reference/data-types/float) or [`Array(Float*)`](/reference/data-types/array)
+- `timestamp` — Timestamp of the sample. Can be individual values or arrays. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime`](/core/reference/data-types/datetime) or [`Array(UInt32)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
+- `value` — Value of the time series corresponding to the timestamp. Can be individual values or arrays. [`Float*`](/core/reference/data-types/float) or [`Array(Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns time series values re-sampled to the specified grid. The returned array contains one value for each time grid point. The value is NULL if there is no sample for a particular grid point. [`Array(Nullable(Float64))`](/reference/data-types/array)
+Returns time series values re-sampled to the specified grid. The returned array contains one value for each time grid point. The value is NULL if there is no sample for a particular grid point. [`Array(Nullable(Float64))`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid.mdx b/core/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid.mdx
similarity index 100%
rename from reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid.mdx
rename to core/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid.mdx
diff --git a/reference/functions/aggregate-functions/reference/topK.mdx b/core/reference/functions/aggregate-functions/reference/topK.mdx
similarity index 66%
rename from reference/functions/aggregate-functions/reference/topK.mdx
rename to core/reference/functions/aggregate-functions/reference/topK.mdx
index 8e742da0..f68644b5 100644
--- a/reference/functions/aggregate-functions/reference/topK.mdx
+++ b/core/reference/functions/aggregate-functions/reference/topK.mdx
@@ -20,9 +20,9 @@ This function does not provide a guaranteed result. In certain situations, error
**See Also**
-- [topKWeighted](/reference/functions/aggregate-functions/reference/topKWeighted)
-- [approx_top_k](/reference/functions/aggregate-functions/reference/approxtopk)
-- [approx_top_sum](/reference/functions/aggregate-functions/reference/approxtopsum)
+- [topKWeighted](/core/reference/functions/aggregate-functions/reference/topKWeighted)
+- [approx_top_k](/core/reference/functions/aggregate-functions/reference/approxtopk)
+- [approx_top_sum](/core/reference/functions/aggregate-functions/reference/approxtopsum)
**Syntax**
@@ -35,17 +35,17 @@ topK(N, load_factor, 'counts')(column)
**Parameters**
-- `N` — The number of elements to return. Default value: 10. Maximum value of `N = 65536`. [`UInt64`](/reference/data-types/int-uint)
-- `load_factor` — Optional. Defines, how many cells reserved for values. If `uniq(column) > N * load_factor`, result of topK function will be approximate. Default value: 3. [`UInt64`](/reference/data-types/int-uint)
-- `counts` — Optional. Defines whether the result should contain an approximate count and error value. [`Bool`](/reference/data-types/boolean)
+- `N` — The number of elements to return. Default value: 10. Maximum value of `N = 65536`. [`UInt64`](/core/reference/data-types/int-uint)
+- `load_factor` — Optional. Defines, how many cells reserved for values. If `uniq(column) > N * load_factor`, result of topK function will be approximate. Default value: 3. [`UInt64`](/core/reference/data-types/int-uint)
+- `counts` — Optional. Defines whether the result should contain an approximate count and error value. [`Bool`](/core/reference/data-types/boolean)
**Arguments**
-- `column` — The name of the column for which to find the most frequent values. [`String`](/reference/data-types/string)
+- `column` — The name of the column for which to find the most frequent values. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of the approximately most frequent values, sorted in descending order of approximate frequency. [`Array`](/reference/data-types/array)
+Returns an array of the approximately most frequent values, sorted in descending order of approximate frequency. [`Array`](/core/reference/data-types/array)
**Examples**
@@ -66,6 +66,6 @@ FROM ontime;
**See Also**
-- [topKWeighted](/reference/functions/aggregate-functions/reference/topKWeighted)
-- [approx_top_k](/reference/functions/aggregate-functions/reference/approxtopk)
-- [approx_top_sum](/reference/functions/aggregate-functions/reference/approxtopsum)
+- [topKWeighted](/core/reference/functions/aggregate-functions/reference/topKWeighted)
+- [approx_top_k](/core/reference/functions/aggregate-functions/reference/approxtopk)
+- [approx_top_sum](/core/reference/functions/aggregate-functions/reference/approxtopsum)
diff --git a/reference/functions/aggregate-functions/reference/topKWeighted.mdx b/core/reference/functions/aggregate-functions/reference/topKWeighted.mdx
similarity index 72%
rename from reference/functions/aggregate-functions/reference/topKWeighted.mdx
rename to core/reference/functions/aggregate-functions/reference/topKWeighted.mdx
index da401d31..211238ba 100644
--- a/reference/functions/aggregate-functions/reference/topKWeighted.mdx
+++ b/core/reference/functions/aggregate-functions/reference/topKWeighted.mdx
@@ -19,9 +19,9 @@ Additionally, the weight of the value is taken into account.
**See Also**
-- [topK](/reference/functions/aggregate-functions/reference/topK)
-- [approx_top_k](/reference/functions/aggregate-functions/reference/approxtopk)
-- [approx_top_sum](/reference/functions/aggregate-functions/reference/approxtopsum)
+- [topK](/core/reference/functions/aggregate-functions/reference/topK)
+- [approx_top_k](/core/reference/functions/aggregate-functions/reference/approxtopk)
+- [approx_top_sum](/core/reference/functions/aggregate-functions/reference/approxtopsum)
**Syntax**
@@ -34,17 +34,17 @@ topKWeighted(N, load_factor, 'counts')(column, weight)
**Parameters**
-- `N` — The number of elements to return. Default value: 10. [`UInt64`](/reference/data-types/int-uint)
-- `load_factor` — Optional. Defines, how many cells reserved for values. If `uniq(column) > N * load_factor`, result of topK function will be approximate. Default value: 3. [`UInt64`](/reference/data-types/int-uint)
-- `counts` — Optional. Defines whether the result should contain an approximate count and error value. [`Bool`](/reference/data-types/boolean)
+- `N` — The number of elements to return. Default value: 10. [`UInt64`](/core/reference/data-types/int-uint)
+- `load_factor` — Optional. Defines, how many cells reserved for values. If `uniq(column) > N * load_factor`, result of topK function will be approximate. Default value: 3. [`UInt64`](/core/reference/data-types/int-uint)
+- `counts` — Optional. Defines whether the result should contain an approximate count and error value. [`Bool`](/core/reference/data-types/boolean)
**Arguments**
-- `column` — The name of the column for which to find the most frequent values. - `weight` — The weight. Every value is accounted `weight` times for frequency calculation. [`UInt64`](/reference/data-types/int-uint)
+- `column` — The name of the column for which to find the most frequent values. - `weight` — The weight. Every value is accounted `weight` times for frequency calculation. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of the values with maximum approximate sum of weights. [`Array`](/reference/data-types/array)
+Returns an array of the values with maximum approximate sum of weights. [`Array`](/core/reference/data-types/array)
**Examples**
@@ -78,6 +78,6 @@ FROM VALUES('k Char, w UInt64', ('y', 1), ('y', 1), ('x', 5), ('y', 1), ('z', 10
**See Also**
-- [topK](/reference/functions/aggregate-functions/reference/topK)
-- [approx_top_k](/reference/functions/aggregate-functions/reference/approxtopk)
-- [approx_top_sum](/reference/functions/aggregate-functions/reference/approxtopsum)
+- [topK](/core/reference/functions/aggregate-functions/reference/topK)
+- [approx_top_k](/core/reference/functions/aggregate-functions/reference/approxtopk)
+- [approx_top_sum](/core/reference/functions/aggregate-functions/reference/approxtopsum)
diff --git a/reference/functions/aggregate-functions/reference/uniq.mdx b/core/reference/functions/aggregate-functions/reference/uniq.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/uniq.mdx
rename to core/reference/functions/aggregate-functions/reference/uniq.mdx
index cef7a8ec..a2d7ed5b 100644
--- a/reference/functions/aggregate-functions/reference/uniq.mdx
+++ b/core/reference/functions/aggregate-functions/reference/uniq.mdx
@@ -35,11 +35,11 @@ uniq(x[, ...])
**Arguments**
-- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a UInt64-type number representing the approximate number of different values. [`UInt64`](/reference/data-types/int-uint)
+Returns a UInt64-type number representing the approximate number of different values. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -87,8 +87,8 @@ FROM example_table;
**See Also**
-- [uniqCombined](/reference/functions/aggregate-functions/reference/uniqCombined)
-- [uniqCombined64](/reference/functions/aggregate-functions/reference/uniqCombined64)
-- [uniqHLL12](/reference/functions/aggregate-functions/reference/uniqHLL12)
-- [uniqExact](/reference/functions/aggregate-functions/reference/uniqExact)
-- [uniqTheta](/reference/functions/aggregate-functions/reference/uniqthetasketch)
+- [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined)
+- [uniqCombined64](/core/reference/functions/aggregate-functions/reference/uniqCombined64)
+- [uniqHLL12](/core/reference/functions/aggregate-functions/reference/uniqHLL12)
+- [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact)
+- [uniqTheta](/core/reference/functions/aggregate-functions/reference/uniqthetasketch)
diff --git a/reference/functions/aggregate-functions/reference/uniqCombined.mdx b/core/reference/functions/aggregate-functions/reference/uniqCombined.mdx
similarity index 70%
rename from reference/functions/aggregate-functions/reference/uniqCombined.mdx
rename to core/reference/functions/aggregate-functions/reference/uniqCombined.mdx
index d0cf4bca..892df5a2 100644
--- a/reference/functions/aggregate-functions/reference/uniqCombined.mdx
+++ b/core/reference/functions/aggregate-functions/reference/uniqCombined.mdx
@@ -15,7 +15,7 @@ It provides the result deterministically (it does not depend on the query proces
Since it uses a 32-bit hash for non-String types, the result will have very high error for cardinalities significantly larger than `UINT_MAX` (the error will raise quickly after a few tens of billions of distinct values).
-In the case cardinalities are larger than `UINT_MAX`, you should use [`uniqCombined64`](/reference/functions/aggregate-functions/reference/uniqCombined64) instead.
+In the case cardinalities are larger than `UINT_MAX`, you should use [`uniqCombined64`](/core/reference/functions/aggregate-functions/reference/uniqCombined64) instead.
Compared to the uniq function, the uniqCombined function:
@@ -41,15 +41,15 @@ uniqCombined(x[, ...])
**Parameters**
-- `HLL_precision` — Optional. The base-2 logarithm of the number of cells in HyperLogLog. The default value is 17, which is effectively 96 KiB of space (2^17 cells, 6 bits each). Range: [12, 20]. [`UInt8`](/reference/data-types/int-uint)
+- `HLL_precision` — Optional. The base-2 logarithm of the number of cells in HyperLogLog. The default value is 17, which is effectively 96 KiB of space (2^17 cells, 6 bits each). Range: [12, 20]. [`UInt8`](/core/reference/data-types/int-uint)
**Arguments**
-- `x` — A variable number of parameters. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — A variable number of parameters. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/reference/data-types/int-uint)
+Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -81,8 +81,8 @@ SELECT uniqCombined(15)(number) FROM numbers(1e5);
**See Also**
-- [uniq](/reference/functions/aggregate-functions/reference/uniq)
-- [uniqCombined64](/reference/functions/aggregate-functions/reference/uniqCombined64)
-- [uniqHLL12](/reference/functions/aggregate-functions/reference/uniqHLL12)
-- [uniqExact](/reference/functions/aggregate-functions/reference/uniqExact)
-- [uniqTheta](/reference/functions/aggregate-functions/reference/uniqthetasketch)
+- [uniq](/core/reference/functions/aggregate-functions/reference/uniq)
+- [uniqCombined64](/core/reference/functions/aggregate-functions/reference/uniqCombined64)
+- [uniqHLL12](/core/reference/functions/aggregate-functions/reference/uniqHLL12)
+- [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact)
+- [uniqTheta](/core/reference/functions/aggregate-functions/reference/uniqthetasketch)
diff --git a/reference/functions/aggregate-functions/reference/uniqCombined64.mdx b/core/reference/functions/aggregate-functions/reference/uniqCombined64.mdx
similarity index 64%
rename from reference/functions/aggregate-functions/reference/uniqCombined64.mdx
rename to core/reference/functions/aggregate-functions/reference/uniqCombined64.mdx
index 5f6eac79..b94fd9a1 100644
--- a/reference/functions/aggregate-functions/reference/uniqCombined64.mdx
+++ b/core/reference/functions/aggregate-functions/reference/uniqCombined64.mdx
@@ -13,15 +13,15 @@ doc_type: 'reference'
Introduced in: v20.1.0
Calculates the approximate number of different argument values.
-It is the same as [`uniqCombined`](/reference/functions/aggregate-functions/reference/uniqCombined), but uses a 64-bit hash for all data types rather than just for the String data type.
+It is the same as [`uniqCombined`](/core/reference/functions/aggregate-functions/reference/uniqCombined), but uses a 64-bit hash for all data types rather than just for the String data type.
This function provides the result deterministically (it does not depend on the query processing order).
-Since it uses 64-bit hash for all types, the result does not suffer from very high error for cardinalities significantly larger than `UINT_MAX` like [`uniqCombined`](/reference/functions/aggregate-functions/reference/uniqCombined) does, which uses a 32-bit hash for non-String types.
+Since it uses 64-bit hash for all types, the result does not suffer from very high error for cardinalities significantly larger than `UINT_MAX` like [`uniqCombined`](/core/reference/functions/aggregate-functions/reference/uniqCombined) does, which uses a 32-bit hash for non-String types.
-Compared to the [uniq](/reference/functions/aggregate-functions/reference/uniq) function, the uniqCombined64 function:
+Compared to the [uniq](/core/reference/functions/aggregate-functions/reference/uniq) function, the uniqCombined64 function:
- Consumes several times less memory
- Calculates with several times higher accuracy
@@ -43,15 +43,15 @@ uniqCombined64(x[, ...])
**Parameters**
-- `HLL_precision` — Optional. The base-2 logarithm of the number of cells in HyperLogLog. The default value is 17, which is effectively 96 KiB of space (2^17 cells, 6 bits each). Range: [12, 20]. [`UInt8`](/reference/data-types/int-uint)
+- `HLL_precision` — Optional. The base-2 logarithm of the number of cells in HyperLogLog. The default value is 17, which is effectively 96 KiB of space (2^17 cells, 6 bits each). Range: [12, 20]. [`UInt8`](/core/reference/data-types/int-uint)
**Arguments**
-- `x` — A variable number of parameters. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — A variable number of parameters. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/reference/data-types/int-uint)
+Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -90,8 +90,8 @@ SELECT uniqCombined(number) FROM numbers(1e10);
**See Also**
-- [uniq](/reference/functions/aggregate-functions/reference/uniq)
-- [uniqCombined](/reference/functions/aggregate-functions/reference/uniqCombined)
-- [uniqHLL12](/reference/functions/aggregate-functions/reference/uniqHLL12)
-- [uniqExact](/reference/functions/aggregate-functions/reference/uniqExact)
-- [uniqTheta](/reference/functions/aggregate-functions/reference/uniqthetasketch)
+- [uniq](/core/reference/functions/aggregate-functions/reference/uniq)
+- [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined)
+- [uniqHLL12](/core/reference/functions/aggregate-functions/reference/uniqHLL12)
+- [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact)
+- [uniqTheta](/core/reference/functions/aggregate-functions/reference/uniqthetasketch)
diff --git a/reference/functions/aggregate-functions/reference/uniqExact.mdx b/core/reference/functions/aggregate-functions/reference/uniqExact.mdx
similarity index 65%
rename from reference/functions/aggregate-functions/reference/uniqExact.mdx
rename to core/reference/functions/aggregate-functions/reference/uniqExact.mdx
index d92f3fcc..15a28046 100644
--- a/reference/functions/aggregate-functions/reference/uniqExact.mdx
+++ b/core/reference/functions/aggregate-functions/reference/uniqExact.mdx
@@ -15,7 +15,7 @@ Calculates the exact number of different argument values.
The `uniqExact` function uses more memory than `uniq`, because the size of the state has unbounded growth as the number of different values increases.
Use the `uniqExact` function if you absolutely need an exact result.
-Otherwise use the [`uniq`](/reference/functions/aggregate-functions/reference/uniq) function.
+Otherwise use the [`uniq`](/core/reference/functions/aggregate-functions/reference/uniq) function.
@@ -27,11 +27,11 @@ uniqExact(x[, ...])
**Arguments**
-- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the exact number of different argument values as a UInt64. [`UInt64`](/reference/data-types/int-uint)
+Returns the exact number of different argument values as a UInt64. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -75,7 +75,7 @@ FROM example_data;
**See Also**
-- [uniq](/reference/functions/aggregate-functions/reference/uniq)
-- [uniqCombined](/reference/functions/aggregate-functions/reference/uniqCombined)
-- [uniqHLL12](/reference/functions/aggregate-functions/reference/uniqHLL12)
-- [uniqTheta](/reference/functions/aggregate-functions/reference/uniqthetasketch)
+- [uniq](/core/reference/functions/aggregate-functions/reference/uniq)
+- [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined)
+- [uniqHLL12](/core/reference/functions/aggregate-functions/reference/uniqHLL12)
+- [uniqTheta](/core/reference/functions/aggregate-functions/reference/uniqthetasketch)
diff --git a/reference/functions/aggregate-functions/reference/uniqHLL12.mdx b/core/reference/functions/aggregate-functions/reference/uniqHLL12.mdx
similarity index 67%
rename from reference/functions/aggregate-functions/reference/uniqHLL12.mdx
rename to core/reference/functions/aggregate-functions/reference/uniqHLL12.mdx
index 372147eb..64e20dba 100644
--- a/reference/functions/aggregate-functions/reference/uniqHLL12.mdx
+++ b/core/reference/functions/aggregate-functions/reference/uniqHLL12.mdx
@@ -14,7 +14,7 @@ Introduced in: v1.1.0
Calculates the approximate number of different argument values, using the [HyperLogLog](https://en.wikipedia.org/wiki/HyperLogLog) algorithm.
-We do not recommend using this function. In most cases, use the [uniq](/reference/functions/aggregate-functions/reference/uniq) or [uniqCombined](/reference/functions/aggregate-functions/reference/uniqCombined) function.
+We do not recommend using this function. In most cases, use the [uniq](/core/reference/functions/aggregate-functions/reference/uniq) or [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined) function.
@@ -39,11 +39,11 @@ uniqHLL12(x[, ...])
**Arguments**
-- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/reference/data-types/int-uint)
+Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -74,7 +74,7 @@ FROM example_hll;
**See Also**
-- [uniq](/reference/functions/aggregate-functions/reference/uniq)
-- [uniqCombined](/reference/functions/aggregate-functions/reference/uniqCombined)
-- [uniqExact](/reference/functions/aggregate-functions/reference/uniqExact)
-- [uniqTheta](/reference/functions/aggregate-functions/reference/uniqthetasketch)
+- [uniq](/core/reference/functions/aggregate-functions/reference/uniq)
+- [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined)
+- [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact)
+- [uniqTheta](/core/reference/functions/aggregate-functions/reference/uniqthetasketch)
diff --git a/reference/functions/aggregate-functions/reference/uniqthetasketch.mdx b/core/reference/functions/aggregate-functions/reference/uniqthetasketch.mdx
similarity index 66%
rename from reference/functions/aggregate-functions/reference/uniqthetasketch.mdx
rename to core/reference/functions/aggregate-functions/reference/uniqthetasketch.mdx
index 67e52409..852a1bea 100644
--- a/reference/functions/aggregate-functions/reference/uniqthetasketch.mdx
+++ b/core/reference/functions/aggregate-functions/reference/uniqthetasketch.mdx
@@ -32,11 +32,11 @@ uniqTheta(x[, ...])
**Arguments**
-- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — The function takes a variable number of parameters. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/reference/data-types/int-uint)
+Returns a UInt64-type number representing the approximate number of different argument values. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -67,8 +67,8 @@ FROM example_theta;
**See Also**
-- [uniq](/reference/functions/aggregate-functions/reference/uniq)
-- [uniqCombined](/reference/functions/aggregate-functions/reference/uniqCombined)
-- [uniqCombined64](/reference/functions/aggregate-functions/reference/uniqCombined64)
-- [uniqHLL12](/reference/functions/aggregate-functions/reference/uniqHLL12)
-- [uniqExact](/reference/functions/aggregate-functions/reference/uniqExact)
+- [uniq](/core/reference/functions/aggregate-functions/reference/uniq)
+- [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined)
+- [uniqCombined64](/core/reference/functions/aggregate-functions/reference/uniqCombined64)
+- [uniqHLL12](/core/reference/functions/aggregate-functions/reference/uniqHLL12)
+- [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact)
diff --git a/reference/functions/aggregate-functions/reference/varPop.mdx b/core/reference/functions/aggregate-functions/reference/varPop.mdx
similarity index 73%
rename from reference/functions/aggregate-functions/reference/varPop.mdx
rename to core/reference/functions/aggregate-functions/reference/varPop.mdx
index 22def0ef..cdc1a8f9 100644
--- a/reference/functions/aggregate-functions/reference/varPop.mdx
+++ b/core/reference/functions/aggregate-functions/reference/varPop.mdx
@@ -26,7 +26,7 @@ Where:
- $n$ is the population size
-This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`varPopStable`](/reference/functions/aggregate-functions/reference/varPopStable) function. It works slower but provides a lower computational error.
+This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`varPopStable`](/core/reference/functions/aggregate-functions/reference/varPopStable) function. It works slower but provides a lower computational error.
@@ -40,11 +40,11 @@ varPop(x)
**Arguments**
-- `x` — Population of values to find the population variance of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Population of values to find the population variance of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the population variance of `x`. [`Float64`](/reference/data-types/float)
+Returns the population variance of `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/varPopStable.mdx b/core/reference/functions/aggregate-functions/reference/varPopStable.mdx
similarity index 71%
rename from reference/functions/aggregate-functions/reference/varPopStable.mdx
rename to core/reference/functions/aggregate-functions/reference/varPopStable.mdx
index 4b4d2b10..181a01f6 100644
--- a/reference/functions/aggregate-functions/reference/varPopStable.mdx
+++ b/core/reference/functions/aggregate-functions/reference/varPopStable.mdx
@@ -13,7 +13,7 @@ doc_type: 'reference'
Introduced in: v1.1.0
Returns the population variance.
-Unlike [`varPop`](/reference/functions/aggregate-functions/reference/varPop), this function uses a [numerically stable](https://en.wikipedia.org/wiki/Numerical_stability) algorithm.
+Unlike [`varPop`](/core/reference/functions/aggregate-functions/reference/varPop), this function uses a [numerically stable](https://en.wikipedia.org/wiki/Numerical_stability) algorithm.
It works slower but provides a lower computational error.
@@ -25,11 +25,11 @@ varPopStable(x)
**Arguments**
-- `x` — Population of values to find the population variance of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Population of values to find the population variance of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the population variance of `x`. [`Float64`](/reference/data-types/float)
+Returns the population variance of `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/varSamp.mdx b/core/reference/functions/aggregate-functions/reference/varSamp.mdx
similarity index 75%
rename from reference/functions/aggregate-functions/reference/varSamp.mdx
rename to core/reference/functions/aggregate-functions/reference/varSamp.mdx
index f09ed1f8..a1781198 100644
--- a/reference/functions/aggregate-functions/reference/varSamp.mdx
+++ b/core/reference/functions/aggregate-functions/reference/varSamp.mdx
@@ -25,10 +25,10 @@ Where:
- $\bar{x}$ is the arithmetic mean of the data set
- $n$ is the number of data points in the data set
-The function assumes that the input data set represents a sample from a larger population. If you want to calculate the variance of the entire population (when you have the complete data set), you should use [`varPop`](/reference/functions/aggregate-functions/reference/varPop) instead.
+The function assumes that the input data set represents a sample from a larger population. If you want to calculate the variance of the entire population (when you have the complete data set), you should use [`varPop`](/core/reference/functions/aggregate-functions/reference/varPop) instead.
-This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`varSampStable`](/reference/functions/aggregate-functions/reference/varSampStable) function. It works slower but provides a lower computational error.
+This function uses a numerically unstable algorithm. If you need [numerical stability](https://en.wikipedia.org/wiki/Numerical_stability) in calculations, use the [`varSampStable`](/core/reference/functions/aggregate-functions/reference/varSampStable) function. It works slower but provides a lower computational error.
@@ -42,11 +42,11 @@ varSamp(x)
**Arguments**
-- `x` — The population for which you want to calculate the sample variance. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The population for which you want to calculate the sample variance. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the sample variance of the input data set `x`. [`Float64`](/reference/data-types/float)
+Returns the sample variance of the input data set `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/varSampStable.mdx b/core/reference/functions/aggregate-functions/reference/varSampStable.mdx
similarity index 74%
rename from reference/functions/aggregate-functions/reference/varSampStable.mdx
rename to core/reference/functions/aggregate-functions/reference/varSampStable.mdx
index a0e77be6..b56ac2d0 100644
--- a/reference/functions/aggregate-functions/reference/varSampStable.mdx
+++ b/core/reference/functions/aggregate-functions/reference/varSampStable.mdx
@@ -12,9 +12,9 @@ doc_type: 'reference'
Introduced in: v1.1.0
-Calculate the sample variance of a data set. Unlike [`varSamp`](/reference/functions/aggregate-functions/reference/varSamp), this function uses a [numerically stable](https://en.wikipedia.org/wiki/Numerical_stability) algorithm. It works slower but provides a lower computational error.
+Calculate the sample variance of a data set. Unlike [`varSamp`](/core/reference/functions/aggregate-functions/reference/varSamp), this function uses a [numerically stable](https://en.wikipedia.org/wiki/Numerical_stability) algorithm. It works slower but provides a lower computational error.
-The sample variance is calculated using the same formula as [`varSamp`](/reference/functions/aggregate-functions/reference/varSamp):
+The sample variance is calculated using the same formula as [`varSamp`](/core/reference/functions/aggregate-functions/reference/varSamp):
$$
\frac{\Sigma{(x - \bar{x})^2}}{n-1}
@@ -36,11 +36,11 @@ varSampStable(x)
**Arguments**
-- `x` — The population for which you want to calculate the sample variance. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The population for which you want to calculate the sample variance. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the sample variance of the input data set. [`Float64`](/reference/data-types/float)
+Returns the sample variance of the input data set. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/aggregate-functions/reference/welchTTest.mdx b/core/reference/functions/aggregate-functions/reference/welchTTest.mdx
similarity index 78%
rename from reference/functions/aggregate-functions/reference/welchTTest.mdx
rename to core/reference/functions/aggregate-functions/reference/welchTTest.mdx
index 995b02c4..8a7da1b7 100644
--- a/reference/functions/aggregate-functions/reference/welchTTest.mdx
+++ b/core/reference/functions/aggregate-functions/reference/welchTTest.mdx
@@ -29,16 +29,16 @@ welchTTest([confidence_level])(sample_data, sample_index)
**Parameters**
-- `confidence_level` — Optional. Confidence level in order to calculate confidence intervals. [`Float`](/reference/data-types/float)
+- `confidence_level` — Optional. Confidence level in order to calculate confidence intervals. [`Float`](/core/reference/data-types/float)
**Arguments**
-- `sample_data` — Sample data. [`Int*`](/reference/data-types/int-uint) or [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
-- `sample_index` — Sample index. [`Int*`](/reference/data-types/int-uint) or [`UInt*`](/reference/data-types/int-uint)
+- `sample_data` — Sample data. [`Int*`](/core/reference/data-types/int-uint) or [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
+- `sample_index` — Sample index. [`Int*`](/core/reference/data-types/int-uint) or [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Tuple with two or four elements (if the optional `confidence_level` is specified): calculated t-statistic, calculated p-value, and optionally calculated confidence-interval-low and confidence-interval-high. [`Tuple(Float64, Float64)`](/reference/data-types/tuple) or [`Tuple(Float64, Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a Tuple with two or four elements (if the optional `confidence_level` is specified): calculated t-statistic, calculated p-value, and optionally calculated confidence-interval-low and confidence-interval-high. [`Tuple(Float64, Float64)`](/core/reference/data-types/tuple) or [`Tuple(Float64, Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -74,4 +74,4 @@ SELECT welchTTest(0.95)(sample_data, sample_index) FROM welch_ttest;
**See Also**
- [Welch's t-test](https://en.wikipedia.org/wiki/Welch%27s_t-test)
-- [studentTTest function](/reference/functions/aggregate-functions/reference/studentTTest)
+- [studentTTest function](/core/reference/functions/aggregate-functions/reference/studentTTest)
diff --git a/core/reference/functions/index.mdx b/core/reference/functions/index.mdx
new file mode 100644
index 00000000..a9785423
--- /dev/null
+++ b/core/reference/functions/index.mdx
@@ -0,0 +1,14 @@
+---
+description: 'Documentation for Index'
+sidebar: 'sqlreference'
+slug: /sql-reference/functions
+title: 'Functions Overview'
+doc_type: 'landing-page'
+---
+
+| Page | Description |
+|---------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------|
+| [Regular Functions](/core/reference/functions/regular-functions/regular-functions-index) | Functions whose result for each row is independent of all other rows. |
+| [Aggregate Functions](/core/reference/functions/aggregate-functions) | Functions that accumulate a set of values across rows. |
+| [Table Functions](/core/reference/functions/table-functions) | Methods for constructing tables. |
+| [Window Functions](/core/reference/functions/window-functions) | Functions which let you perform calculations across a set of rows that are related to the current row. |
diff --git a/reference/functions/regular-functions/ai-functions.mdx b/core/reference/functions/regular-functions/ai-functions.mdx
similarity index 80%
rename from reference/functions/regular-functions/ai-functions.mdx
rename to core/reference/functions/regular-functions/ai-functions.mdx
index c7d70a3d..e88f2228 100644
--- a/reference/functions/regular-functions/ai-functions.mdx
+++ b/core/reference/functions/regular-functions/ai-functions.mdx
@@ -14,8 +14,8 @@ AI functions can return unpredictable outputs. The result will highly depend on
All functions are sharing a common infrastructure that provides:
-- **Quota enforcement**: Per-query limits on tokens ([`ai_function_max_input_tokens_per_query`](/reference/settings/session-settings#ai_function_max_input_tokens_per_query), [`ai_function_max_output_tokens_per_query`](/reference/settings/session-settings#ai_function_max_output_tokens_per_query)) and API calls ([`ai_function_max_api_calls_per_query`](/reference/settings/session-settings#ai_function_max_api_calls_per_query)).
-- **Retry with backoff**: Transient failures are retried ([`ai_function_max_retries`](/reference/settings/session-settings#ai_function_max_retries)) with exponential backoff ([`ai_function_retry_initial_delay_ms`](/reference/settings/session-settings#ai_function_retry_initial_delay_ms)).
+- **Quota enforcement**: Per-query limits on tokens ([`ai_function_max_input_tokens_per_query`](/core/reference/settings/session-settings#ai_function_max_input_tokens_per_query), [`ai_function_max_output_tokens_per_query`](/core/reference/settings/session-settings#ai_function_max_output_tokens_per_query)) and API calls ([`ai_function_max_api_calls_per_query`](/core/reference/settings/session-settings#ai_function_max_api_calls_per_query)).
+- **Retry with backoff**: Transient failures are retried ([`ai_function_max_retries`](/core/reference/settings/session-settings#ai_function_max_retries)) with exponential backoff ([`ai_function_retry_initial_delay_ms`](/core/reference/settings/session-settings#ai_function_retry_initial_delay_ms)).
## Configuration {#configuration}
@@ -47,11 +47,11 @@ Any OpenAI-compatible API (e.g. vLLM, Ollama, LiteLLM) can be used by setting `p
### Query-level settings {#query-level-settings}
-All AI-related settings are listed in [Settings](/reference/settings/session-settings) under the `ai_function_` prefix.
+All AI-related settings are listed in [Settings](/core/reference/settings/session-settings) under the `ai_function_` prefix.
### Restricting endpoint hosts {#restricting-endpoint-hosts}
-The `endpoint` URL in an AI named collection is an outbound destination the server connects to under its own identity, carrying the named collection's `api_key` in the request headers. By default, ClickHouse permits any host. To restrict functions to a specific set of providers, configure [`remote_url_allow_hosts`](/reference/settings/server-settings/settings#remote_url_allow_hosts) in the server config, e.g.:
+The `endpoint` URL in an AI named collection is an outbound destination the server connects to under its own identity, carrying the named collection's `api_key` in the request headers. By default, ClickHouse permits any host. To restrict functions to a specific set of providers, configure [`remote_url_allow_hosts`](/core/reference/settings/server-settings/settings#remote_url_allow_hosts) in the server config, e.g.:
```xml
@@ -71,7 +71,7 @@ Note that this setting is server-wide and applies to all HTTP-using features.
## Observability {#observability}
-AI function activity is tracked through ClickHouse [ProfileEvents](/reference/system-tables/query_log):
+AI function activity is tracked through ClickHouse [ProfileEvents](/core/reference/system-tables/query_log):
| ProfileEvent | Description |
|-------|-------------|
@@ -123,14 +123,14 @@ aiClassify(collection, text, categories[, temperature])
**Arguments**
-- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/reference/data-types/string)
-- `text` — Text to classify. [`String`](/reference/data-types/string)
-- `categories` — Constant list of candidate category labels. [`Array(String)`](/reference/data-types/array)
-- `temperature` — Sampling temperature controlling randomness. Default: `0.0`. [`Float64`](/reference/data-types/float)
+- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/core/reference/data-types/string)
+- `text` — Text to classify. [`String`](/core/reference/data-types/string)
+- `categories` — Constant list of candidate category labels. [`Array(String)`](/core/reference/data-types/array)
+- `temperature` — Sampling temperature controlling randomness. Default: `0.0`. [`Float64`](/core/reference/data-types/float)
**Returned value**
-One of the provided category labels, or the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/reference/data-types/string)
+One of the provided category labels, or the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/core/reference/data-types/string)
**Examples**
@@ -178,14 +178,14 @@ aiExtract(collection, text, instruction_or_schema[, temperature])
**Arguments**
-- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/reference/data-types/string)
-- `text` — Text to extract information from. [`String`](/reference/data-types/string)
-- `instruction_or_schema` — Free-form extraction instruction, or a constant JSON object describing the fields to extract. [`const String`](/reference/data-types/string)
-- `temperature` — Sampling temperature controlling randomness. Default: `0.0`. [`const Float64`](/reference/data-types/float)
+- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/core/reference/data-types/string)
+- `text` — Text to extract information from. [`String`](/core/reference/data-types/string)
+- `instruction_or_schema` — Free-form extraction instruction, or a constant JSON object describing the fields to extract. [`const String`](/core/reference/data-types/string)
+- `temperature` — Sampling temperature controlling randomness. Default: `0.0`. [`const Float64`](/core/reference/data-types/float)
**Returned value**
-A single extracted value (instruction mode) or a JSON object string (schema mode). Returns the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/reference/data-types/string)
+A single extracted value (instruction mode) or a JSON object string (schema mode). Returns the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/core/reference/data-types/string)
**Examples**
@@ -231,14 +231,14 @@ aiGenerate(collection, prompt[, system_prompt[, temperature]])
**Arguments**
-- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/reference/data-types/string)
-- `prompt` — The user prompt or question to send to the model. [`String`](/reference/data-types/string)
-- `system_prompt` — Optional constant system-level instruction that guides the model's behavior (e.g. persona, output format), sent along with each prompt. [`String`](/reference/data-types/string)
-- `temperature` — Sampling temperature controlling randomness. Default: `0.7`. [`Float64`](/reference/data-types/float)
+- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/core/reference/data-types/string)
+- `prompt` — The user prompt or question to send to the model. [`String`](/core/reference/data-types/string)
+- `system_prompt` — Optional constant system-level instruction that guides the model's behavior (e.g. persona, output format), sent along with each prompt. [`String`](/core/reference/data-types/string)
+- `temperature` — Sampling temperature controlling randomness. Default: `0.7`. [`Float64`](/core/reference/data-types/float)
**Returned value**
-The generated text response, or the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/reference/data-types/string)
+The generated text response, or the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/core/reference/data-types/string)
**Examples**
@@ -292,15 +292,15 @@ aiTranslate(collection, text, target_language[, instructions[, temperature]])
**Arguments**
-- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/reference/data-types/string)
-- `text` — Text to translate. [`String`](/reference/data-types/string)
-- `target_language` — Target language name or BCP-47 code (e.g. `'French'`, `'es-MX'`). [`String`](/reference/data-types/string)
-- `instructions` — Optional constant additional instructions for the translator. [`String`](/reference/data-types/string)
-- `temperature` — Sampling temperature controlling randomness. Default: `0.3`. [`Float64`](/reference/data-types/float)
+- `collection` — Name of a named collection containing provider credentials and configuration. [`String`](/core/reference/data-types/string)
+- `text` — Text to translate. [`String`](/core/reference/data-types/string)
+- `target_language` — Target language name or BCP-47 code (e.g. `'French'`, `'es-MX'`). [`String`](/core/reference/data-types/string)
+- `instructions` — Optional constant additional instructions for the translator. [`String`](/core/reference/data-types/string)
+- `temperature` — Sampling temperature controlling randomness. Default: `0.3`. [`Float64`](/core/reference/data-types/float)
**Returned value**
-The translated text, or the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/reference/data-types/string)
+The translated text, or the default value for the column type (empty string) if the request failed and `ai_function_throw_on_error` is disabled. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/regular-functions/arithmetic-functions.mdx b/core/reference/functions/regular-functions/arithmetic-functions.mdx
similarity index 85%
rename from reference/functions/regular-functions/arithmetic-functions.mdx
rename to core/reference/functions/regular-functions/arithmetic-functions.mdx
index c1f6c04f..70ea57c6 100644
--- a/reference/functions/regular-functions/arithmetic-functions.mdx
+++ b/core/reference/functions/regular-functions/arithmetic-functions.mdx
@@ -189,11 +189,11 @@ byteSwap(x)
**Arguments**
-- `x` — An integer value. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — An integer value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `x` with bytes reversed. [`(U)Int*`](/reference/data-types/int-uint)
+Returns `x` with bytes reversed. [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
@@ -251,7 +251,7 @@ SELECT byteSwap(123294967295)
Introduced in: v1.1.0
-Calculates the quotient of two values `a` and `b`. The result type is always [Float64](/reference/data-types/float).
+Calculates the quotient of two values `a` and `b`. The result type is always [Float64](/core/reference/data-types/float).
Integer division is provided by the `intDiv` function.
@@ -299,7 +299,7 @@ inf
Introduced in: v22.12.0
-Performs division on two decimals. Result value will be of type [Decimal256](/reference/data-types/decimal).
+Performs division on two decimals. Result value will be of type [Decimal256](/core/reference/data-types/decimal).
Result scale can be explicitly specified by `result_scale` argument (const Integer in range `[0, 76]`). If not specified, the result scale is the max scale of given arguments.
@@ -316,11 +316,11 @@ divideDecimal(x, y[, result_scale])
**Arguments**
-- `x` — First value: [Decimal](/reference/data-types/decimal). - `y` — Second value: [Decimal](/reference/data-types/decimal). - `result_scale` — Scale of result. Type [Int/UInt](/reference/data-types/int-uint).
+- `x` — First value: [Decimal](/core/reference/data-types/decimal). - `y` — Second value: [Decimal](/core/reference/data-types/decimal). - `result_scale` — Scale of result. Type [Int/UInt](/core/reference/data-types/int-uint).
**Returned value**
-The result of division with given scale. [`Decimal256`](/reference/data-types/decimal)
+The result of division with given scale. [`Decimal256`](/core/reference/data-types/decimal)
**Examples**
@@ -427,7 +427,7 @@ Introduced in: v20.3.0
Checks whether a floating point value is finite.
-You can get a similar result by using the [ternary operator](/reference/functions/regular-functions/conditional-functions#if): `isFinite(x) ? x : y`.
+You can get a similar result by using the [ternary operator](/core/reference/functions/regular-functions/conditional-functions#if): `isFinite(x) ? x : y`.
**Syntax**
@@ -438,8 +438,8 @@ ifNotFinite(x,y)
**Arguments**
-- `x` — Value to check if infinite. [`Float*`](/reference/data-types/float)
-- `y` — Fallback value. [`Float*`](/reference/data-types/float)
+- `x` — Value to check if infinite. [`Float*`](/core/reference/data-types/float)
+- `y` — Fallback value. [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -531,8 +531,8 @@ intDivOrNull(x, y)
**Arguments**
-- `x` — Left hand operand. [`(U)Int*`](/reference/data-types/int-uint)
-- `y` — Right hand operand. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — Left hand operand. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `y` — Right hand operand. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -576,8 +576,8 @@ intDivOrZero(a, b)
**Arguments**
-- `a` — Left hand operand. [`(U)Int*`](/reference/data-types/int-uint)
-- `b` — Right hand operand. [`(U)Int*`](/reference/data-types/int-uint)
+- `a` — Left hand operand. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `b` — Right hand operand. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -621,7 +621,7 @@ isFinite(x)
**Arguments**
-- `x` — Number to check for finiteness. [`Float*`](/reference/data-types/float)
+- `x` — Number to check for finiteness. [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -655,7 +655,7 @@ isInfinite(x)
**Arguments**
-- `x` — Number to check for infiniteness. [`Float*`](/reference/data-types/float)
+- `x` — Number to check for infiniteness. [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -687,7 +687,7 @@ isNaN(x)
**Arguments**
-- `x` — Argument to evaluate for if it is `NaN`. [`Float*`](/reference/data-types/float)
+- `x` — Argument to evaluate for if it is `NaN`. [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -722,12 +722,12 @@ lcm(x, y)
**Arguments**
-- `x` — First integer. [`(U)Int*`](/reference/data-types/int-uint)
-- `y` — Second integer. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — First integer. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `y` — Second integer. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the least common multiple of `x` and `y`. [`(U)Int*`](/reference/data-types/int-uint)
+Returns the least common multiple of `x` and `y`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
@@ -756,12 +756,12 @@ max2(x, y)
**Arguments**
-- `x` — First value [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Second value [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — First value [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Second value [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the bigger value of `x` and `y`. [`Float64`](/reference/data-types/float)
+Returns the bigger value of `x` and `y`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -875,12 +875,12 @@ min2(x, y)
**Arguments**
-- `x` — First value [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — Second value [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — First value [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — Second value [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the smaller value of `x` and `y`. [`Float64`](/reference/data-types/float)
+Returns the smaller value of `x` and `y`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -998,12 +998,12 @@ moduloLegacy(a, b)
**Arguments**
-- `a` — The dividend. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `b` — The divisor. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `a` — The dividend. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `b` — The divisor. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the remainder of the division. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+Returns the remainder of the division. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -1035,8 +1035,8 @@ moduloOrNull(x, y)
**Arguments**
-- `x` — The dividend. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `y` — The divisor (modulus). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — The dividend. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `y` — The divisor (modulus). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -1070,8 +1070,8 @@ moduloOrZero(a, b)
**Arguments**
-- `a` — The dividend. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `b` — The divisor (modulus). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `a` — The dividend. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `b` — The divisor (modulus). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -1103,8 +1103,8 @@ multiply(x, y)
**Arguments**
-- `x` — factor. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — factor. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — factor. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — factor. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
@@ -1126,7 +1126,7 @@ SELECT multiply(5,5)
Introduced in: v22.12.0
-Performs multiplication on two decimals. Result value will be of type [Decimal256](/reference/data-types/decimal).
+Performs multiplication on two decimals. Result value will be of type [Decimal256](/core/reference/data-types/decimal).
Result scale can be explicitly specified by `result_scale` argument (const Integer in range `[0, 76]`). If not specified, the result scale is the max scale of given arguments.
@@ -1143,13 +1143,13 @@ multiplyDecimal(a, b[, result_scale])
**Arguments**
-- `a` — First value. [`Decimal`](/reference/data-types/decimal)
-- `b` — Second value. [`Decimal`](/reference/data-types/decimal)
-- `result_scale` — Scale of result. [`(U)Int*`](/reference/data-types/int-uint)
+- `a` — First value. [`Decimal`](/core/reference/data-types/decimal)
+- `b` — Second value. [`Decimal`](/core/reference/data-types/decimal)
+- `result_scale` — Scale of result. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-The result of multiplication with the given scale. Type: [`Decimal256`](/reference/data-types/decimal)
+The result of multiplication with the given scale. Type: [`Decimal256`](/core/reference/data-types/decimal)
**Examples**
@@ -1309,8 +1309,8 @@ positiveModulo(x, y)
**Arguments**
-- `x` — The dividend. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `y` — The divisor (modulus). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — The dividend. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `y` — The divisor (modulus). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
@@ -1347,7 +1347,7 @@ positiveModuloOrNull(x, y)
**Arguments**
-- `x` — The dividend. [`(U)Int*`](/reference/data-types/int-uint)/[`Float32/64`](/reference/data-types/float). - `x` — The divisor (modulus). [`(U)Int*`](/reference/data-types/int-uint)/[`Float32/64`](/reference/data-types/float).
+- `x` — The dividend. [`(U)Int*`](/core/reference/data-types/int-uint)/[`Float32/64`](/core/reference/data-types/float). - `x` — The divisor (modulus). [`(U)Int*`](/core/reference/data-types/int-uint)/[`Float32/64`](/core/reference/data-types/float).
**Returned value**
diff --git a/reference/functions/regular-functions/array-functions.mdx b/core/reference/functions/regular-functions/array-functions.mdx
similarity index 82%
rename from reference/functions/regular-functions/array-functions.mdx
rename to core/reference/functions/regular-functions/array-functions.mdx
index 41fd8c23..ec27b448 100644
--- a/reference/functions/regular-functions/array-functions.mdx
+++ b/core/reference/functions/regular-functions/array-functions.mdx
@@ -38,7 +38,7 @@ array(x1 [, x2, ..., xN])
**Returned value**
-Returns an array, where 'T' is the smallest common type out of the passed arguments. [`Array(T)`](/reference/data-types/array)
+Returns an array, where 'T' is the smallest common type out of the passed arguments. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -86,10 +86,10 @@ arrayAUCPR(scores, labels[, partial_offsets])
**Arguments**
-- `cores` — Scores prediction model gives. [`Array((U)Int*)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `labels` — Labels of samples, usually 1 for positive sample and 0 for negative sample. [`Array((U)Int*)`](/reference/data-types/array) or [`Array(Enum)`](/reference/data-types/array)
+- `cores` — Scores prediction model gives. [`Array((U)Int*)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `labels` — Labels of samples, usually 1 for positive sample and 0 for negative sample. [`Array((U)Int*)`](/core/reference/data-types/array) or [`Array(Enum)`](/core/reference/data-types/array)
- `partial_offsets` —
-- Optional. An [`Array(T)`](/reference/data-types/array) of three non-negative integers for calculating a partial area under the PR curve (equivalent to a vertical band of the PR space) instead of the whole AUC. This option is useful for distributed computation of the PR AUC. The array must contain the following elements [`higher_partitions_tp`, `higher_partitions_fp`, `total_positives`].
+- Optional. An [`Array(T)`](/core/reference/data-types/array) of three non-negative integers for calculating a partial area under the PR curve (equivalent to a vertical band of the PR space) instead of the whole AUC. This option is useful for distributed computation of the PR AUC. The array must contain the following elements [`higher_partitions_tp`, `higher_partitions_fp`, `total_positives`].
- `higher_partitions_tp`: The number of positive labels in the higher-scored partitions.
- `higher_partitions_fp`: The number of negative labels in the higher-scored partitions.
- `total_positives`: The total number of positive samples in the entire dataset.
@@ -105,7 +105,7 @@ For example:
**Returned value**
-Returns area under the precision-recall (PR) curve. [`Float64`](/reference/data-types/float)
+Returns area under the precision-recall (PR) curve. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -135,13 +135,13 @@ arrayAll(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `cond1_arr, ...` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `cond1_arr, ...` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns `1` if the lambda function returns true for all elements, `0` otherwise [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the lambda function returns true for all elements, `0` otherwise [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -182,12 +182,12 @@ arrayAutocorrelation(arr, [max_lag])
**Arguments**
-- `arr` — Array of numbers. [`Array(T)`](/reference/data-types/array)
-- `max_lag` — Optional. Maximum number of lags to compute. Must be a non-negative integer. [`Integer`](/reference/data-types/int-uint)
+- `arr` — Array of numbers. [`Array(T)`](/core/reference/data-types/array)
+- `max_lag` — Optional. Maximum number of lags to compute. Must be a non-negative integer. [`Integer`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of Float64. Returns NaN if variance is 0. [`Array(Float64)`](/reference/data-types/array)
+Returns an array of Float64. Returns NaN if variance is 0. [`Array(Float64)`](/core/reference/data-types/array)
**Examples**
@@ -248,13 +248,13 @@ arrayAvg([func(x[, y1, ..., yN])], source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the average of elements in the source array, or the average of elements of the lambda results if provided. [`Float64`](/reference/data-types/float)
+Returns the average of elements in the source array, or the average of elements of the lambda results if provided. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -292,11 +292,11 @@ arrayCompact(arr)
**Arguments**
-- `arr` — An array to remove duplicates from. [`Array(T)`](/reference/data-types/array)
+- `arr` — An array to remove duplicates from. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array without duplicate values [`Array(T)`](/reference/data-types/array)
+Returns an array without duplicate values [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -324,11 +324,11 @@ arrayConcat(arr1 [, arr2, ... , arrN])
**Arguments**
-- `arr1 [, arr2, ... , arrN]` — N number of arrays to concatenate. [`Array(T)`](/reference/data-types/array)
+- `arr1 [, arr2, ... , arrN]` — N number of arrays to concatenate. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns a single combined array from the provided array arguments. [`Array(T)`](/reference/data-types/array)
+Returns a single combined array from the provided array arguments. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -349,7 +349,7 @@ Introduced in: v1.1.0
Returns the number of elements for which `func(arr1[i], ..., arrN[i])` returns true.
If `func` is not specified, it returns the number of non-zero elements in the array.
-`arrayCount` is a [higher-order function](/reference/functions/regular-functions/overview#higher-order-functions).
+`arrayCount` is a [higher-order function](/core/reference/functions/regular-functions/overview#higher-order-functions).
**Syntax**
@@ -360,12 +360,12 @@ arrayCount([func, ] arr1, ...)
**Arguments**
-- `func` — Optional. Function to apply to each element of the array(s). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `arr1, ..., arrN` — N arrays. [`Array(T)`](/reference/data-types/array)
+- `func` — Optional. Function to apply to each element of the array(s). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `arr1, ..., arrN` — N arrays. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the number of elements for which `func` returns true. Otherwise, returns the number of non-zero elements in the array. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of elements for which `func` returns true. Otherwise, returns the number of non-zero elements in the array. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -393,13 +393,13 @@ arrayCumSum([func,] arr1[, arr2, ... , arrN])
**Arguments**
-- `func` — Optional. A lambda function to apply to the array elements at each position. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `arr1` — The source array of numeric values. [`Array(T)`](/reference/data-types/array)
-- `[arr2, ..., arrN]` — Optional. Additional arrays of the same size, passed as arguments to the lambda function if specified. [`Array(T)`](/reference/data-types/array)
+- `func` — Optional. A lambda function to apply to the array elements at each position. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `arr1` — The source array of numeric values. [`Array(T)`](/core/reference/data-types/array)
+- `[arr2, ..., arrN]` — Optional. Additional arrays of the same size, passed as arguments to the lambda function if specified. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of the partial sums of the elements in the source array. The result type matches the input array's numeric type. [`Array(T)`](/reference/data-types/array)
+Returns an array of the partial sums of the elements in the source array. The result type matches the input array's numeric type. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -437,13 +437,13 @@ arrayCumSumNonNegative([func,] arr1[, arr2, ... , arrN])
**Arguments**
-- `func` — Optional. A lambda function to apply to the array elements at each position. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `arr1` — The source array of numeric values. [`Array(T)`](/reference/data-types/array)
-- `[arr2, ..., arrN]` — Optional. Additional arrays of the same size, passed as arguments to the lambda function if specified. [`Array(T)`](/reference/data-types/array)
+- `func` — Optional. A lambda function to apply to the array elements at each position. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `arr1` — The source array of numeric values. [`Array(T)`](/core/reference/data-types/array)
+- `[arr2, ..., arrN]` — Optional. Additional arrays of the same size, passed as arguments to the lambda function if specified. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of the partial sums of the elements in the source array, with any negative running sum replaced by zero. The result type matches the input array's numeric type. [`Array(T)`](/reference/data-types/array)
+Returns an array of the partial sums of the elements in the source array, with any negative running sum replaced by zero. The result type matches the input array's numeric type. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -484,11 +484,11 @@ arrayDifference(arr)
**Arguments**
-- `arr` — Array for which to calculate differences between adjacent elements. [`Array(T)`](/reference/data-types/array)
+- `arr` — Array for which to calculate differences between adjacent elements. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of differences between adjacent array elements [`UInt*`](/reference/data-types/int-uint)
+Returns an array of differences between adjacent array elements [`UInt*`](/core/reference/data-types/int-uint)
**Examples**
@@ -528,11 +528,11 @@ arrayDistinct(arr)
**Arguments**
-- `arr` — Array for which to extract distinct elements. [`Array(T)`](/reference/data-types/array)
+- `arr` — Array for which to extract distinct elements. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array containing the distinct elements [`Array(T)`](/reference/data-types/array)
+Returns an array containing the distinct elements [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -564,8 +564,8 @@ arrayDotProduct(v1, v2)
**Arguments**
-- `v1` — First vector. [`Array((U)Int* | Float* | Decimal)`](/reference/data-types/array) or [`Tuple((U)Int* | Float* | Decimal)`](/reference/data-types/tuple)
-- `v2` — Second vector. [`Array((U)Int* | Float* | Decimal)`](/reference/data-types/array) or [`Tuple((U)Int* | Float* | Decimal)`](/reference/data-types/tuple)
+- `v1` — First vector. [`Array((U)Int* | Float* | Decimal)`](/core/reference/data-types/array) or [`Tuple((U)Int* | Float* | Decimal)`](/core/reference/data-types/tuple)
+- `v2` — Second vector. [`Array((U)Int* | Float* | Decimal)`](/core/reference/data-types/array) or [`Tuple((U)Int* | Float* | Decimal)`](/core/reference/data-types/tuple)
**Returned value**
@@ -575,7 +575,7 @@ The dot product of the two vectors.
The return type is determined by the type of the arguments. If Arrays or Tuples contain mixed element types then the result type is the supertype.
- [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+ [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Examples**
@@ -624,11 +624,11 @@ arrayElement(arr, n)
**Arguments**
-- `arr` — The array to search. [`Array(T)`](/reference/data-types/array). - `n` — Position of the element to get. [`(U)Int*`](/reference/data-types/int-uint).
+- `arr` — The array to search. [`Array(T)`](/core/reference/data-types/array). - `n` — Position of the element to get. [`(U)Int*`](/core/reference/data-types/int-uint).
**Returned value**
-Returns a single combined array from the provided array arguments [`Array(T)`](/reference/data-types/array)
+Returns a single combined array from the provided array arguments [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -693,11 +693,11 @@ arrayElementOrNull(arrays)
**Arguments**
-- `arrays` — Arbitrary number of array arguments. [`Array`](/reference/data-types/array)
+- `arrays` — Arbitrary number of array arguments. [`Array`](/core/reference/data-types/array)
**Returned value**
-Returns a single combined array from the provided array arguments. [`Array(T)`](/reference/data-types/array)
+Returns a single combined array from the provided array arguments. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -737,7 +737,7 @@ Introduced in: v1.1.0
Returns the array `[1, 2, 3, ..., length (arr)]`
-This function is normally used with the [`ARRAY JOIN`](/reference/statements/select/array-join) clause. It allows counting something just
+This function is normally used with the [`ARRAY JOIN`](/core/reference/statements/select/array-join) clause. It allows counting something just
once for each array after applying `ARRAY JOIN`.
This function can also be used in higher-order functions. For example, you can use it to get array indexes for elements that match a condition.
@@ -749,11 +749,11 @@ arrayEnumerate(arr)
**Arguments**
-- `arr` — The array to enumerate. [`Array`](/reference/data-types/array)
+- `arr` — The array to enumerate. [`Array`](/core/reference/data-types/array)
**Returned value**
-Returns the array `[1, 2, 3, ..., length (arr)]`. [`Array(UInt32)`](/reference/data-types/array)
+Returns the array `[1, 2, 3, ..., length (arr)]`. [`Array(UInt32)`](/core/reference/data-types/array)
**Examples**
@@ -805,11 +805,11 @@ arrayEnumerateDense(arr)
**Arguments**
-- `arr` — The array to enumerate. [`Array(T)`](/reference/data-types/array)
+- `arr` — The array to enumerate. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of the same size as `arr`, indicating where each element first appears in the source array [`Array(T)`](/reference/data-types/array)
+Returns an array of the same size as `arr`, indicating where each element first appears in the source array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -837,13 +837,13 @@ arrayEnumerateDenseRanked(clear_depth, arr, max_array_depth)
**Arguments**
-- `clear_depth` — Enumerate elements at the specified level separately. Must be less than or equal to `max_arr_depth`. [`UInt*`](/reference/data-types/int-uint)
-- `arr` — N-dimensional array to enumerate. [`Array(T)`](/reference/data-types/array)
-- `max_array_depth` — The maximum effective depth. Must be less than or equal to the depth of `arr`. [`UInt*`](/reference/data-types/int-uint)
+- `clear_depth` — Enumerate elements at the specified level separately. Must be less than or equal to `max_arr_depth`. [`UInt*`](/core/reference/data-types/int-uint)
+- `arr` — N-dimensional array to enumerate. [`Array(T)`](/core/reference/data-types/array)
+- `max_array_depth` — The maximum effective depth. Must be less than or equal to the depth of `arr`. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array denoting where each element first appears in the source array [`Array`](/reference/data-types/array)
+Returns an array denoting where each element first appears in the source array [`Array`](/core/reference/data-types/array)
**Examples**
@@ -908,12 +908,12 @@ arrayEnumerateUniq(arr1[, arr2, ... , arrN])
**Arguments**
-- `arr1` — First array to process. [`Array(T)`](/reference/data-types/array)
-- `arr2, ...` — Optional. Additional arrays of the same size for tuple uniqueness. [`Array(UInt32)`](/reference/data-types/array)
+- `arr1` — First array to process. [`Array(T)`](/core/reference/data-types/array)
+- `arr2, ...` — Optional. Additional arrays of the same size for tuple uniqueness. [`Array(UInt32)`](/core/reference/data-types/array)
**Returned value**
-Returns an array where each element is the position among elements with the same value or tuple. [`Array(T)`](/reference/data-types/array)
+Returns an array where each element is the position among elements with the same value or tuple. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -990,13 +990,13 @@ arrayEnumerateUniqRanked(clear_depth, arr, max_array_depth)
**Arguments**
-- `clear_depth` — Enumerate elements at the specified level separately. Positive integer less than or equal to `max_arr_depth`. [`UInt*`](/reference/data-types/int-uint)
-- `arr` — N-dimensional array to enumerate. [`Array(T)`](/reference/data-types/array)
-- `max_array_depth` — The maximum effective depth. Positive integer less than or equal to the depth of `arr`. [`UInt*`](/reference/data-types/int-uint)
+- `clear_depth` — Enumerate elements at the specified level separately. Positive integer less than or equal to `max_arr_depth`. [`UInt*`](/core/reference/data-types/int-uint)
+- `arr` — N-dimensional array to enumerate. [`Array(T)`](/core/reference/data-types/array)
+- `max_array_depth` — The maximum effective depth. Positive integer less than or equal to the depth of `arr`. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an N-dimensional array the same size as `arr` with each element showing the position of that element in relation to other elements of the same value. [`Array(T)`](/reference/data-types/array)
+Returns an N-dimensional array the same size as `arr` with each element showing the position of that element in relation to other elements of the same value. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -1078,12 +1078,12 @@ arrayExcept(source, except)
**Arguments**
-- `source` — The source array containing elements to filter. [`Array(T)`](/reference/data-types/array)
-- `except` — The array containing elements to exclude from the result. [`Array(T)`](/reference/data-types/array)
+- `source` — The source array containing elements to filter. [`Array(T)`](/core/reference/data-types/array)
+- `except` — The array containing elements to exclude from the result. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of the same type as the input array containing elements from `source` that weren't found in `except`. [`Array(T)`](/reference/data-types/array)
+Returns an array of the same type as the input array containing elements from `source` that weren't found in `except`. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -1141,13 +1141,13 @@ arrayExists(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns `1` if the lambda function returns true for at least one element, `0` otherwise [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the lambda function returns true for at least one element, `0` otherwise [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1180,13 +1180,13 @@ arrayFill(func(x [, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x [, y1, ..., yN])` — A lambda function `func(x [, y1, y2, ... yN]) → F(x [, y1, y2, ... yN])` which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x [, y1, ..., yN])` — A lambda function `func(x [, y1, y2, ... yN]) → F(x [, y1, y2, ... yN])` which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array [`Array(T)`](/reference/data-types/array)
+Returns an array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -1224,13 +1224,13 @@ arrayFilter(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])]
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns a subset of the source array [`Array(T)`](/reference/data-types/array)
+Returns a subset of the source array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -1274,7 +1274,7 @@ arrayFirst(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array).
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
@@ -1316,11 +1316,11 @@ arrayFirstIndex(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr]
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array).
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
-Returns the index of the first element of the source array for which `func` is true, otherwise returns `0` [`UInt32`](/reference/data-types/int-uint)
+Returns the index of the first element of the source array for which `func` is true, otherwise returns `0` [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -1359,9 +1359,9 @@ arrayFirstOrNull(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -1412,11 +1412,11 @@ arrayFlatten(arr)
**Arguments**
-- `arr` — A multidimensional array. [`Array(Array(T))`](/reference/data-types/array)
+- `arr` — A multidimensional array. [`Array(Array(T))`](/core/reference/data-types/array)
**Returned value**
-Returns a flattened array from the multidimensional array [`Array(T)`](/reference/data-types/array)
+Returns a flattened array from the multidimensional array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -1444,8 +1444,8 @@ arrayFold(λ(acc, x1 [, x2, x3, ... xN]), arr1 [, arr2, arr3, ... arrN], acc)
**Arguments**
-- `λ(x, x1 [, x2, x3, ... xN])` — A lambda function `λ(acc, x1 [, x2, x3, ... xN]) → F(acc, x1 [, x2, x3, ... xN])` where `F` is an operation applied to `acc` and array values from `x` with the result of `acc` re-used. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `arr1 [, arr2, arr3, ... arrN]` — N arrays over which to operate. [`Array(T)`](/reference/data-types/array)
+- `λ(x, x1 [, x2, x3, ... xN])` — A lambda function `λ(acc, x1 [, x2, x3, ... xN]) → F(acc, x1 [, x2, x3, ... xN])` where `F` is an operation applied to `acc` and array values from `x` with the result of `acc` re-used. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `arr1 [, arr2, arr3, ... arrN]` — N arrays over which to operate. [`Array(T)`](/core/reference/data-types/array)
- `acc` — Accumulator value with the same type as the return type of the Lambda function.
**Returned value**
@@ -1514,11 +1514,11 @@ arrayIntersect(arr, arr1, ..., arrN)
**Arguments**
-- `arrN` — N arrays from which to make the new array. [`Array(T)`](/reference/data-types/array).
+- `arrN` — N arrays from which to make the new array. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
-Returns an array with distinct elements that are present in all N arrays [`Array(T)`](/reference/data-types/array)
+Returns an array with distinct elements that are present in all N arrays [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -1550,12 +1550,12 @@ arrayJaccardIndex(arr_x, arr_y)
**Arguments**
-- `arr_x` — First array. [`Array(T)`](/reference/data-types/array)
-- `arr_y` — Second array. [`Array(T)`](/reference/data-types/array)
+- `arr_x` — First array. [`Array(T)`](/core/reference/data-types/array)
+- `arr_y` — Second array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the Jaccard index of `arr_x` and `arr_y` [`Float64`](/reference/data-types/float)
+Returns the Jaccard index of `arr_x` and `arr_y` [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1591,7 +1591,7 @@ arrayJoin(arr)
**Arguments**
-- `arr` — An array to unfold. [`Array(T)`](/reference/data-types/array)
+- `arr` — An array to unfold. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -1795,7 +1795,7 @@ arrayLast(func(x[, y1, ..., yN]), source[, cond1, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source` — The source array to process. [`Array(T)`](/reference/data-types/array). - `[, cond1, ... , condN]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array).
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source` — The source array to process. [`Array(T)`](/core/reference/data-types/array). - `[, cond1, ... , condN]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
@@ -1837,13 +1837,13 @@ arrayLastIndex(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the index of the last element of the source array for which `func` is true, otherwise returns `0` [`UInt32`](/reference/data-types/int-uint)
+Returns the index of the last element of the source array for which `func` is true, otherwise returns `0` [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -1882,7 +1882,7 @@ arrayLastOrNull(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr]
**Arguments**
-- `func(x [, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array).
+- `func(x [, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [Lambda function](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
@@ -1924,11 +1924,11 @@ arrayLevenshteinDistance(from, to)
**Arguments**
-- `from` — The first array. [`Array(T)`](/reference/data-types/array). - `to` — The second array. [`Array(T)`](/reference/data-types/array).
+- `from` — The first array. [`Array(T)`](/core/reference/data-types/array). - `to` — The second array. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
-Levenshtein distance between the first and the second arrays. [`Float64`](/reference/data-types/float)
+Levenshtein distance between the first and the second arrays. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1958,12 +1958,12 @@ arrayLevenshteinDistanceWeighted(from, to, from_weights, to_weights)
**Arguments**
-- `from` — first array. [`Array(T)`](/reference/data-types/array). - `to` — second array. [`Array(T)`](/reference/data-types/array). - `from_weights` — weights for the first array. [`Array((U)Int*|Float*)`](/reference/data-types/array)
-- `to_weights` — weights for the second array. [`Array((U)Int*|Float*)`](/reference/data-types/array)
+- `from` — first array. [`Array(T)`](/core/reference/data-types/array). - `to` — second array. [`Array(T)`](/core/reference/data-types/array). - `from_weights` — weights for the first array. [`Array((U)Int*|Float*)`](/core/reference/data-types/array)
+- `to_weights` — weights for the second array. [`Array((U)Int*|Float*)`](/core/reference/data-types/array)
**Returned value**
-Levenshtein distance between the first and the second arrays with custom weights for each element [`Float64`](/reference/data-types/float)
+Levenshtein distance between the first and the second arrays with custom weights for each element [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1991,12 +1991,12 @@ arrayMap(func, arr)
**Arguments**
-- `func` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `arr` — N arrays to process. [`Array(T)`](/reference/data-types/array)
+- `func` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `arr` — N arrays to process. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array from the lambda results [`Array(T)`](/reference/data-types/array)
+Returns an array from the lambda results [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2037,9 +2037,9 @@ arrayMax([func(x[, y1, ..., yN])], source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -2084,9 +2084,9 @@ arrayMin([func(x[, y1, ..., yN])], source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `cond1_arr, ...` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `cond1_arr, ...` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -2128,12 +2128,12 @@ arrayNormalizedGini(predicted, label)
**Arguments**
-- `predicted` — The predicted value. [`Array(T)`](/reference/data-types/array)
-- `label` — The actual value. [`Array(T)`](/reference/data-types/array)
+- `predicted` — The predicted value. [`Array(T)`](/core/reference/data-types/array)
+- `label` — The actual value. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-A tuple containing the Gini coefficients of the predicted values, the Gini coefficient of the normalized values, and the normalized Gini coefficient (= the ratio of the former two Gini coefficients) [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
+A tuple containing the Gini coefficients of the predicted values, the Gini coefficient of the normalized values, and the normalized Gini coefficient (= the ratio of the former two Gini coefficients) [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -2166,10 +2166,10 @@ arrayPartialReverseSort([f,] arr [, arr1, ... ,arrN], limit)
**Arguments**
-- `f(arr[, arr1, ... ,arrN])` — The lambda function to apply to elements of array `x`. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `arr` — Array to be sorted. [`Array(T)`](/reference/data-types/array)
-- `arr1, ... ,arrN` — N additional arrays, in the case when `f` accepts multiple arguments. [`Array(T)`](/reference/data-types/array)
-- `limit` — Index value up until which sorting will occur. [`(U)Int*`](/reference/data-types/int-uint)
+- `f(arr[, arr1, ... ,arrN])` — The lambda function to apply to elements of array `x`. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `arr` — Array to be sorted. [`Array(T)`](/core/reference/data-types/array)
+- `arr1, ... ,arrN` — N additional arrays, in the case when `f` accepts multiple arguments. [`Array(T)`](/core/reference/data-types/array)
+- `limit` — Index value up until which sorting will occur. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -2251,13 +2251,13 @@ arrayPartialShuffle(arr [, limit[, seed]])
**Arguments**
-- `arr` — The array to shuffle. [`Array(T)`](/reference/data-types/array)
-- `seed` — Optional. The seed to be used with random number generation. If not provided, a random one is used. [`(U)Int*`](/reference/data-types/int-uint)
-- `limit` — Optional. The number to limit element swaps to, in the range `[1..N]`. [`(U)Int*`](/reference/data-types/int-uint)
+- `arr` — The array to shuffle. [`Array(T)`](/core/reference/data-types/array)
+- `seed` — Optional. The seed to be used with random number generation. If not provided, a random one is used. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `limit` — Optional. The number to limit element swaps to, in the range `[1..N]`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Array with elements partially shuffled. [`Array(T)`](/reference/data-types/array)
+Array with elements partially shuffled. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2341,10 +2341,10 @@ arrayPartialSort([f,] arr [, arr1, ... ,arrN], limit)
**Arguments**
-- `f(arr[, arr1, ... ,arrN])` — The lambda function to apply to elements of array `x`. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `arr` — Array to be sorted. [`Array(T)`](/reference/data-types/array)
-- `arr1, ... ,arrN` — N additional arrays, in the case when `f` accepts multiple arguments. [`Array(T)`](/reference/data-types/array)
-- `limit` — Index value up until which sorting will occur. [`(U)Int*`](/reference/data-types/int-uint)
+- `f(arr[, arr1, ... ,arrN])` — The lambda function to apply to elements of array `x`. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `arr` — Array to be sorted. [`Array(T)`](/core/reference/data-types/array)
+- `arr1, ... ,arrN` — N additional arrays, in the case when `f` accepts multiple arguments. [`Array(T)`](/core/reference/data-types/array)
+- `limit` — Index value up until which sorting will occur. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -2417,11 +2417,11 @@ arrayPopBack(arr)
**Arguments**
-- `arr` — The array for which to remove the last element from. [`Array(T)`](/reference/data-types/array)
+- `arr` — The array for which to remove the last element from. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array identical to `arr` but without the last element of `arr` [`Array(T)`](/reference/data-types/array)
+Returns an array identical to `arr` but without the last element of `arr` [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2449,11 +2449,11 @@ arrayPopFront(arr)
**Arguments**
-- `arr` — The array for which to remove the first element from. [`Array(T)`](/reference/data-types/array)
+- `arr` — The array for which to remove the first element from. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array identical to `arr` but without the first element of `arr` [`Array(T)`](/reference/data-types/array)
+Returns an array identical to `arr` but without the first element of `arr` [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2484,13 +2484,13 @@ arrayProduct([func(x[, y1, ..., yN])], source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the product of elements in the source array, or the product of elements of the lambda results if provided. [`Float64`](/reference/data-types/float)
+Returns the product of elements in the source array, or the product of elements of the lambda results if provided. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -2528,22 +2528,22 @@ arrayPushBack(arr, x)
**Arguments**
-- `arr` — The array for which to add value `x` to the end of. [`Array(T)`](/reference/data-types/array)
+- `arr` — The array for which to add value `x` to the end of. [`Array(T)`](/core/reference/data-types/array)
- `x` —
-- Single value to add to the end of the array. [`Array(T)`](/reference/data-types/array).
+- Single value to add to the end of the array. [`Array(T)`](/core/reference/data-types/array).
- Only numbers can be added to an array with numbers, and only strings can be added to an array of strings.
- When adding numbers, ClickHouse automatically sets the type of `x` for the data type of the array.
- Can be `NULL`. The function adds a `NULL` element to an array, and the type of array elements converts to `Nullable`.
-For more information about the types of data in ClickHouse, see [Data types](/reference/data-types).
+For more information about the types of data in ClickHouse, see [Data types](/core/reference/data-types).
**Returned value**
-Returns an array identical to `arr` but with an additional value `x` at the end of the array [`Array(T)`](/reference/data-types/array)
+Returns an array identical to `arr` but with an additional value `x` at the end of the array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2571,21 +2571,21 @@ arrayPushFront(arr, x)
**Arguments**
-- `arr` — The array for which to add value `x` to the end of. [`Array(T)`](/reference/data-types/array). - `x` —
-- Single value to add to the start of the array. [`Array(T)`](/reference/data-types/array).
+- `arr` — The array for which to add value `x` to the end of. [`Array(T)`](/core/reference/data-types/array). - `x` —
+- Single value to add to the start of the array. [`Array(T)`](/core/reference/data-types/array).
- Only numbers can be added to an array with numbers, and only strings can be added to an array of strings.
- When adding numbers, ClickHouse automatically sets the type of `x` for the data type of the array.
- Can be `NULL`. The function adds a `NULL` element to an array, and the type of array elements converts to `Nullable`.
-For more information about the types of data in ClickHouse, see [Data types](/reference/data-types).
+For more information about the types of data in ClickHouse, see [Data types](/core/reference/data-types).
**Returned value**
-Returns an array identical to `arr` but with an additional value `x` at the beginning of the array [`Array(T)`](/reference/data-types/array)
+Returns an array identical to `arr` but with an additional value `x` at the beginning of the array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2620,11 +2620,11 @@ arrayROCAUC(scores, labels[, scale[, partial_offsets]])
**Arguments**
-- `scores` — Scores prediction model gives. [`Array((U)Int*)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `labels` — Labels of samples, usually 1 for positive sample and 0 for negative sample. [`Array((U)Int*)`](/reference/data-types/array) or [`Enum`](/reference/data-types/enum)
-- `scale` — Optional. Decides whether to return the normalized area. If false, returns the area under the TP (true positives) x FP (false positives) curve instead. Default value: true. [`Bool`](/reference/data-types/boolean)
+- `scores` — Scores prediction model gives. [`Array((U)Int*)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `labels` — Labels of samples, usually 1 for positive sample and 0 for negative sample. [`Array((U)Int*)`](/core/reference/data-types/array) or [`Enum`](/core/reference/data-types/enum)
+- `scale` — Optional. Decides whether to return the normalized area. If false, returns the area under the TP (true positives) x FP (false positives) curve instead. Default value: true. [`Bool`](/core/reference/data-types/boolean)
- `partial_offsets` —
-- An array of four non-negative integers for calculating a partial area under the ROC curve (equivalent to a vertical band of the ROC space) instead of the whole AUC. This option is useful for distributed computation of the ROC AUC. The array must contain the following elements [`higher_partitions_tp`, `higher_partitions_fp`, `total_positives`, `total_negatives`]. [Array](/reference/data-types/array) of non-negative [Integers](/reference/data-types/int-uint). Optional.
+- An array of four non-negative integers for calculating a partial area under the ROC curve (equivalent to a vertical band of the ROC space) instead of the whole AUC. This option is useful for distributed computation of the ROC AUC. The array must contain the following elements [`higher_partitions_tp`, `higher_partitions_fp`, `total_positives`, `total_negatives`]. [Array](/core/reference/data-types/array) of non-negative [Integers](/core/reference/data-types/int-uint). Optional.
- `higher_partitions_tp`: The number of positive labels in the higher-scored partitions.
- `higher_partitions_fp`: The number of negative labels in the higher-scored partitions.
- `total_positives`: The total number of positive samples in the entire dataset.
@@ -2641,7 +2641,7 @@ For example:
**Returned value**
-Returns area under the receiver operating characteristic (ROC) curve. [`Float64`](/reference/data-types/float)
+Returns area under the receiver operating characteristic (ROC) curve. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -2669,12 +2669,12 @@ arrayRandomSample(arr, samples)
**Arguments**
-- `arr` — The input array or multidimensional array from which to sample elements. [`Array(T)`](/reference/data-types/array)
-- `samples` — The number of elements to include in the random sample. [`(U)Int*`](/reference/data-types/int-uint)
+- `arr` — The input array or multidimensional array from which to sample elements. [`Array(T)`](/core/reference/data-types/array)
+- `samples` — The number of elements to include in the random sample. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-An array containing a random sample of elements from the input array [`Array(T)`](/reference/data-types/array)
+An array containing a random sample of elements from the input array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2714,8 +2714,8 @@ arrayReduce(agg_f, arr1[, arr2, ... , arrN])
**Arguments**
-- `agg_f` — The name of an aggregate function which should be a constant. [`String`](/reference/data-types/string)
-- `arr1[, arr2, ... , arrN]` — N arrays corresponding to the arguments of `agg_f`. [`Array(T)`](/reference/data-types/array)
+- `agg_f` — The name of an aggregate function which should be a constant. [`String`](/core/reference/data-types/string)
+- `arr1[, arr2, ... , arrN]` — N arrays corresponding to the arguments of `agg_f`. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -2776,13 +2776,13 @@ arrayReduceInRanges(agg_f, ranges, arr1[, arr2, ... ,arrN])
**Arguments**
-- `agg_f` — The name of the aggregate function to use. [`String`](/reference/data-types/string)
-- `ranges` — The range over which to aggregate. An array of tuples, `(i, r)` containing the index `i` from which to begin from and the range `r` over which to aggregate. [`Array(T)`](/reference/data-types/array) or [`Tuple(T)`](/reference/data-types/tuple)
-- `arr1[, arr2, ... ,arrN]` — N arrays as arguments to the aggregate function. [`Array(T)`](/reference/data-types/array)
+- `agg_f` — The name of the aggregate function to use. [`String`](/core/reference/data-types/string)
+- `ranges` — The range over which to aggregate. An array of tuples, `(i, r)` containing the index `i` from which to begin from and the range `r` over which to aggregate. [`Array(T)`](/core/reference/data-types/array) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `arr1[, arr2, ... ,arrN]` — N arrays as arguments to the aggregate function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array containing results of the aggregate function over the specified ranges [`Array(T)`](/reference/data-types/array)
+Returns an array containing results of the aggregate function over the specified ranges [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2823,7 +2823,7 @@ arrayRemove(arr, elem)
**Returned value**
-Returns a subset of the source array [`Array(T)`](/reference/data-types/array)
+Returns a subset of the source array [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2861,7 +2861,7 @@ arrayResize(arr, size[, extender])
**Arguments**
-- `arr` — Array to resize. [`Array(T)`](/reference/data-types/array)
+- `arr` — Array to resize. [`Array(T)`](/core/reference/data-types/array)
- `size` —
-The new length of the array.
If `size` is less than the original size of the array, the array is truncated from the right.
@@ -2870,7 +2870,7 @@ If `size` is larger than the initial size of the array, the array is extended to
**Returned value**
-An array of length `size`. [`Array(T)`](/reference/data-types/array)
+An array of length `size`. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2913,11 +2913,11 @@ arrayReverse(arr)
**Arguments**
-- `arr` — The array to reverse. [`Array(T)`](/reference/data-types/array)
+- `arr` — The array to reverse. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of the same size as the original array containing the elements in reverse order [`Array(T)`](/reference/data-types/array)
+Returns an array of the same size as the original array containing the elements in reverse order [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2951,13 +2951,13 @@ arrayReverseFill(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array with elements of the source array replaced by the results of the lambda. [`Array(T)`](/reference/data-types/array)
+Returns an array with elements of the source array replaced by the results of the lambda. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -2998,7 +2998,7 @@ If the array to sort contains `-Inf`, `NULL`, `NaN`, or `Inf` they will be sorte
3. `NaN`
4. `NULL`
-`arrayReverseSort` is a [higher-order function](/reference/functions/regular-functions/overview#higher-order-functions).
+`arrayReverseSort` is a [higher-order function](/core/reference/functions/regular-functions/overview#higher-order-functions).
**Syntax**
@@ -3009,12 +3009,12 @@ arrayReverseSort([f,] arr [, arr1, ... ,arrN)
**Arguments**
-- `f(y1[, y2 ... yN])` — The lambda function to apply to elements of array `x`. - `arr` — An array to be sorted. [`Array(T)`](/reference/data-types/array) - `arr1, ..., yN` — Optional. N additional arrays, in the case when `f` accepts multiple arguments.
+- `f(y1[, y2 ... yN])` — The lambda function to apply to elements of array `x`. - `arr` — An array to be sorted. [`Array(T)`](/core/reference/data-types/array) - `arr1, ..., yN` — Optional. N additional arrays, in the case when `f` accepts multiple arguments.
**Returned value**
Returns the array `x` sorted in descending order if no lambda function is provided, otherwise
-it returns an array sorted according to the logic of the provided lambda function, and then reversed. [`Array(T)`](/reference/data-types/array).
+it returns an array sorted according to the logic of the provided lambda function, and then reversed. [`Array(T)`](/core/reference/data-types/array).
**Examples**
@@ -3052,13 +3052,13 @@ arrayReverseSplit(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_ar
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of arrays. [`Array(Array(T))`](/reference/data-types/array)
+Returns an array of arrays. [`Array(Array(T))`](/core/reference/data-types/array)
**Examples**
@@ -3086,11 +3086,11 @@ arrayRotateLeft(arr, n)
**Arguments**
-- `arr` — The array for which to rotate the elements.[`Array(T)`](/reference/data-types/array). - `n` — Number of elements to rotate. [`(U)Int8/16/32/64`](/reference/data-types/int-uint).
+- `arr` — The array for which to rotate the elements.[`Array(T)`](/core/reference/data-types/array). - `n` — Number of elements to rotate. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint).
**Returned value**
-An array rotated to the left by the specified number of elements [`Array(T)`](/reference/data-types/array)
+An array rotated to the left by the specified number of elements [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3128,11 +3128,11 @@ arrayRotateRight(arr, n)
**Arguments**
-- `arr` — The array for which to rotate the elements.[`Array(T)`](/reference/data-types/array). - `n` — Number of elements to rotate. [`(U)Int8/16/32/64`](/reference/data-types/int-uint).
+- `arr` — The array for which to rotate the elements.[`Array(T)`](/core/reference/data-types/array). - `n` — Number of elements to rotate. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint).
**Returned value**
-An array rotated to the right by the specified number of elements [`Array(T)`](/reference/data-types/array)
+An array rotated to the right by the specified number of elements [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3173,11 +3173,11 @@ arrayShiftLeft(arr, n[, default])
**Arguments**
-- `arr` — The array for which to shift the elements.[`Array(T)`](/reference/data-types/array). - `n` — Number of elements to shift.[`(U)Int8/16/32/64`](/reference/data-types/int-uint). - `default` — Optional. Default value for new elements.
+- `arr` — The array for which to shift the elements.[`Array(T)`](/core/reference/data-types/array). - `n` — Number of elements to shift.[`(U)Int8/16/32/64`](/core/reference/data-types/int-uint). - `default` — Optional. Default value for new elements.
**Returned value**
-An array shifted to the left by the specified number of elements [`Array(T)`](/reference/data-types/array)
+An array shifted to the left by the specified number of elements [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3228,13 +3228,13 @@ arrayShiftRight(arr, n[, default])
**Arguments**
-- `arr` — The array for which to shift the elements. [`Array(T)`](/reference/data-types/array)
-- `n` — Number of elements to shift. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+- `arr` — The array for which to shift the elements. [`Array(T)`](/core/reference/data-types/array)
+- `n` — Number of elements to shift. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
- `default` — Optional. Default value for new elements.
**Returned value**
-An array shifted to the right by the specified number of elements [`Array(T)`](/reference/data-types/array)
+An array shifted to the right by the specified number of elements [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3282,12 +3282,12 @@ arrayShingles(arr, l)
**Arguments**
-- `arr` — Array for which to generate an array of shingles. [`Array(T)`](/reference/data-types/array)
-- `l` — The length of each shingle. [`(U)Int*`](/reference/data-types/int-uint)
+- `arr` — Array for which to generate an array of shingles. [`Array(T)`](/core/reference/data-types/array)
+- `l` — The length of each shingle. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-An array of generated shingles [`Array(T)`](/reference/data-types/array)
+An array of generated shingles [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3321,12 +3321,12 @@ arrayShuffle(arr [, seed])
**Arguments**
-- `arr` — The array to shuffle. [`Array(T)`](/reference/data-types/array)
-- `seed (optional)` — Optional. The seed to be used with random number generation. If not provided a random one is used. [`(U)Int*`](/reference/data-types/int-uint)
+- `arr` — The array to shuffle. [`Array(T)`](/core/reference/data-types/array)
+- `seed (optional)` — Optional. The seed to be used with random number generation. If not provided a random one is used. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Array with elements shuffled [`Array(T)`](/reference/data-types/array)
+Array with elements shuffled [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3364,14 +3364,14 @@ arraySimilarity(from, to, from_weights, to_weights)
**Arguments**
-- `from` — first array [`Array(T)`](/reference/data-types/array)
-- `to` — second array [`Array(T)`](/reference/data-types/array)
-- `from_weights` — weights for the first array. [`Array((U)Int*|Float*)`](/reference/data-types/array)
-- `to_weights` — weights for the second array. [`Array((U)Int*|Float*)`](/reference/data-types/array)
+- `from` — first array [`Array(T)`](/core/reference/data-types/array)
+- `to` — second array [`Array(T)`](/core/reference/data-types/array)
+- `from_weights` — weights for the first array. [`Array((U)Int*|Float*)`](/core/reference/data-types/array)
+- `to_weights` — weights for the second array. [`Array((U)Int*|Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns the similarity between `0` and `1` of the two arrays based on the weighted Levenshtein distance [`Float64`](/reference/data-types/float)
+Returns the similarity between `0` and `1` of the two arrays based on the weighted Levenshtein distance [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -3399,13 +3399,13 @@ arraySlice(arr, offset [, length])
**Arguments**
-- `arr` — Array to slice. [`Array(T)`](/reference/data-types/array)
-- `offset` — Indent from the edge of the array. A positive value indicates an offset on the left, and a negative value is an indent on the right. Numbering of the array items begins with `1`. [`(U)Int*`](/reference/data-types/int-uint)
-- `length` — The length of the required slice. If you specify a negative value, the function returns an open slice `[offset, array_length - length]`. If you omit the value, the function returns the slice `[offset, the_end_of_array]`. [`(U)Int*`](/reference/data-types/int-uint)
+- `arr` — Array to slice. [`Array(T)`](/core/reference/data-types/array)
+- `offset` — Indent from the edge of the array. A positive value indicates an offset on the left, and a negative value is an indent on the right. Numbering of the array items begins with `1`. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `length` — The length of the required slice. If you specify a negative value, the function returns an open slice `[offset, array_length - length]`. If you omit the value, the function returns the slice `[offset, the_end_of_array]`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a slice of the array with `length` elements from the specified `offset` [`Array(T)`](/reference/data-types/array)
+Returns a slice of the array with `length` elements from the specified `offset` [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3436,7 +3436,7 @@ If the array to sort contains `-Inf`, `NULL`, `NaN`, or `Inf` they will be sorte
3. `NaN`
4. `NULL`
-`arraySort` is a [higher-order function](/reference/functions/regular-functions/overview#higher-order-functions).
+`arraySort` is a [higher-order function](/core/reference/functions/regular-functions/overview#higher-order-functions).
**Syntax**
@@ -3446,12 +3446,12 @@ arraySort([f,] arr [, arr1, ... ,arrN])
**Arguments**
-- `f(y1[, y2 ... yN])` — The lambda function to apply to elements of array `x`. - `arr` — An array to be sorted. [`Array(T)`](/reference/data-types/array) - `arr1, ..., yN` — Optional. N additional arrays, in the case when `f` accepts multiple arguments.
+- `f(y1[, y2 ... yN])` — The lambda function to apply to elements of array `x`. - `arr` — An array to be sorted. [`Array(T)`](/core/reference/data-types/array) - `arr1, ..., yN` — Optional. N additional arrays, in the case when `f` accepts multiple arguments.
**Returned value**
Returns the array `arr` sorted in ascending order if no lambda function is provided, otherwise
-it returns an array sorted according to the logic of the provided lambda function. [`Array(T)`](/reference/data-types/array).
+it returns an array sorted according to the logic of the provided lambda function. [`Array(T)`](/core/reference/data-types/array).
**Examples**
@@ -3499,11 +3499,11 @@ arraySplit(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`).[Lambda function](/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to split [`Array(T)`](/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array).
+- `func(x[, y1, ..., yN])` — A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`).[Lambda function](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda). - `source_arr` — The source array to split [`Array(T)`](/core/reference/data-types/array). - `[, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
-Returns an array of arrays [`Array(Array(T))`](/reference/data-types/array)
+Returns an array of arrays [`Array(Array(T))`](/core/reference/data-types/array)
**Examples**
@@ -3534,9 +3534,9 @@ arraySum([func(x[, y1, ..., yN])], source_arr[, cond1_arr, ... , condN_arr])
**Arguments**
-- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `source_arr` — The source array to process. [`Array(T)`](/reference/data-types/array)
-- `, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/reference/data-types/array)
+- `func(x[, y1, ..., yN])` — Optional. A lambda function which operates on elements of the source array (`x`) and condition arrays (`y`). [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `source_arr` — The source array to process. [`Array(T)`](/core/reference/data-types/array)
+- `, cond1_arr, ... , condN_arr]` — Optional. N condition arrays providing additional arguments to the lambda function. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -3584,11 +3584,11 @@ arraySymmetricDifference(arr1, arr2, ... , arrN)
**Arguments**
-- `arrN` — N arrays from which to make the new array. [`Array(T)`](/reference/data-types/array).
+- `arrN` — N arrays from which to make the new array. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
-Returns an array of distinct elements not present in all source arrays [`Array(T)`](/reference/data-types/array)
+Returns an array of distinct elements not present in all source arrays [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3622,11 +3622,11 @@ arrayTranspose(arr)
**Arguments**
-- `arr` — A two-dimensional array to transpose. All inner arrays must have the same length. [`Array(Array(T))`](/reference/data-types/array)
+- `arr` — A two-dimensional array to transpose. All inner arrays must have the same length. [`Array(Array(T))`](/core/reference/data-types/array)
**Returned value**
-A transposed two-dimensional array where element `[i][j]` of the result equals element `[j][i]` of the input. [`Array(Array(T))`](/reference/data-types/array)
+A transposed two-dimensional array where element `[i][j]` of the result equals element `[j][i]` of the input. [`Array(Array(T))`](/core/reference/data-types/array)
**Examples**
@@ -3674,11 +3674,11 @@ arrayUnion(arr1, arr2, ..., arrN)
**Arguments**
-- `arrN` — N arrays from which to make the new array. [`Array(T)`](/reference/data-types/array)
+- `arrN` — N arrays from which to make the new array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array with distinct elements from the source arrays [`Array(T)`](/reference/data-types/array)
+Returns an array with distinct elements from the source arrays [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3724,15 +3724,15 @@ arrayUniq(arr1[, arr2, ..., arrN])
**Arguments**
-- `arr1` — Array for which to count the number of unique elements. [`Array(T)`](/reference/data-types/array)
-- `[, arr2, ..., arrN]` — Optional. Additional arrays used to count the number of unique tuples of elements at corresponding positions in multiple arrays. [`Array(T)`](/reference/data-types/array)
+- `arr1` — Array for which to count the number of unique elements. [`Array(T)`](/core/reference/data-types/array)
+- `[, arr2, ..., arrN]` — Optional. Additional arrays used to count the number of unique tuples of elements at corresponding positions in multiple arrays. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
For a single argument returns the number of unique
elements. For multiple arguments returns the number of unique tuples made from
elements at corresponding positions across the arrays.
- [`UInt32`](/reference/data-types/int-uint)
+ [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -3771,12 +3771,12 @@ arrayWithConstant(N, x)
**Arguments**
-- `length` — Number of elements in the array. [`(U)Int*`](/reference/data-types/int-uint)
+- `length` — Number of elements in the array. [`(U)Int*`](/core/reference/data-types/int-uint)
- `x` — The value of the `N` elements in the array, of any type.
**Returned value**
-Returns an Array with `N` elements of value `x`. [`Array(T)`](/reference/data-types/array)
+Returns an Array with `N` elements of value `x`. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3804,11 +3804,11 @@ arrayZip(arr1, arr2, ... , arrN)
**Arguments**
-- `arr1, arr2, ... , arrN` — N arrays to combine into a single array. [`Array(T)`](/reference/data-types/array)
+- `arr1, arr2, ... , arrN` — N arrays to combine into a single array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array with elements from the source arrays grouped in tuples. Data types in the tuple are the same as types of the input arrays and in the same order as arrays are passed [`Array(T)`](/reference/data-types/array)
+Returns an array with elements from the source arrays grouped in tuples. Data types in the tuple are the same as types of the input arrays and in the same order as arrays are passed [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3836,11 +3836,11 @@ arrayZipUnaligned(arr1, arr2, ..., arrN)
**Arguments**
-- `arr1, arr2, ..., arrN` — N arrays to combine into a single array. [`Array(T)`](/reference/data-types/array)
+- `arr1, arr2, ..., arrN` — N arrays to combine into a single array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array with elements from the source arrays grouped in tuples. Data types in the tuple are the same as types of the input arrays and in the same order as arrays are passed. [`Array(T)`](/reference/data-types/array) or [`Tuple(T1, T2, ...)`](/reference/data-types/tuple)
+Returns an array with elements from the source arrays grouped in tuples. Data types in the tuple are the same as types of the input arrays and in the same order as arrays are passed. [`Array(T)`](/core/reference/data-types/array) or [`Tuple(T1, T2, ...)`](/core/reference/data-types/tuple)
**Examples**
@@ -3870,12 +3870,12 @@ countEqual(arr, x)
**Arguments**
-- `arr` — Array to search. [`Array(T)`](/reference/data-types/array)
+- `arr` — Array to search. [`Array(T)`](/core/reference/data-types/array)
- `x` — Value in the array to count. Any type.
**Returned value**
-Returns the number of elements in the array equal to `x` [`UInt64`](/reference/data-types/int-uint)
+Returns the number of elements in the array equal to `x` [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -3898,7 +3898,7 @@ Checks whether the input array is empty.
An array is considered empty if it does not contain any elements.
-Can be optimized by enabling the [`optimize_functions_to_subcolumns` setting](/reference/settings/session-settings#optimize_functions_to_subcolumns). With `optimize_functions_to_subcolumns = 1` the function reads only [size0](/reference/data-types/array#array-size) subcolumn instead of reading and processing the whole array column. The query `SELECT empty(arr) FROM TABLE;` transforms to `SELECT arr.size0 = 0 FROM TABLE;`.
+Can be optimized by enabling the [`optimize_functions_to_subcolumns` setting](/core/reference/settings/session-settings#optimize_functions_to_subcolumns). With `optimize_functions_to_subcolumns = 1` the function reads only [size0](/core/reference/data-types/array#array-size) subcolumn instead of reading and processing the whole array column. The query `SELECT empty(arr) FROM TABLE;` transforms to `SELECT arr.size0 = 0 FROM TABLE;`.
The function also works for Strings or UUIDs.
@@ -3912,11 +3912,11 @@ empty(arr)
**Arguments**
-- `arr` — Input array. [`Array(T)`](/reference/data-types/array)
+- `arr` — Input array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns `1` for an empty array or `0` for a non-empty array [`UInt8`](/reference/data-types/int-uint)
+Returns `1` for an empty array or `0` for a non-empty array [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3948,7 +3948,7 @@ emptyArrayDate()
**Returned value**
-An empty Date array. [`Array(T)`](/reference/data-types/array)
+An empty Date array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -3980,7 +3980,7 @@ emptyArrayDateTime()
**Returned value**
-An empty DateTime array. [`Array(T)`](/reference/data-types/array)
+An empty DateTime array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4012,7 +4012,7 @@ emptyArrayFloat32()
**Returned value**
-An empty Float32 array. [`Array(T)`](/reference/data-types/array)
+An empty Float32 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4044,7 +4044,7 @@ emptyArrayFloat64()
**Returned value**
-An empty Float64 array. [`Array(T)`](/reference/data-types/array)
+An empty Float64 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4076,7 +4076,7 @@ emptyArrayInt16()
**Returned value**
-An empty Int16 array. [`Array(T)`](/reference/data-types/array)
+An empty Int16 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4108,7 +4108,7 @@ emptyArrayInt32()
**Returned value**
-An empty Int32 array. [`Array(T)`](/reference/data-types/array)
+An empty Int32 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4140,7 +4140,7 @@ emptyArrayInt64()
**Returned value**
-An empty Int64 array. [`Array(T)`](/reference/data-types/array)
+An empty Int64 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4172,7 +4172,7 @@ emptyArrayInt8()
**Returned value**
-An empty Int8 array. [`Array(T)`](/reference/data-types/array)
+An empty Int8 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4204,7 +4204,7 @@ emptyArrayString()
**Returned value**
-An empty String array. [`Array(T)`](/reference/data-types/array)
+An empty String array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4233,11 +4233,11 @@ emptyArrayToSingle(arr)
**Arguments**
-- `arr` — An empty array. [`Array(T)`](/reference/data-types/array)
+- `arr` — An empty array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-An array with a single value of the Array's default type. [`Array(T)`](/reference/data-types/array)
+An array with a single value of the Array's default type. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4281,7 +4281,7 @@ emptyArrayUInt16()
**Returned value**
-An empty UInt16 array. [`Array(T)`](/reference/data-types/array)
+An empty UInt16 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4313,7 +4313,7 @@ emptyArrayUInt32()
**Returned value**
-An empty UInt32 array. [`Array(T)`](/reference/data-types/array)
+An empty UInt32 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4345,7 +4345,7 @@ emptyArrayUInt64()
**Returned value**
-An empty UInt64 array. [`Array(T)`](/reference/data-types/array)
+An empty UInt64 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4377,7 +4377,7 @@ emptyArrayUInt8()
**Returned value**
-An empty UInt8 array. [`Array(T)`](/reference/data-types/array)
+An empty UInt8 array. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -4411,12 +4411,12 @@ has(haystack, needle)
**Arguments**
-- `haystack` — The source array, map, or JSON. [`Array`](/reference/data-types/array) or [`Map`](/reference/data-types/map) or [`JSON`](/reference/data-types/newjson)
+- `haystack` — The source array, map, or JSON. [`Array`](/core/reference/data-types/array) or [`Map`](/core/reference/data-types/map) or [`JSON`](/core/reference/data-types/newjson)
- `needle` — The value to search for (element in array, key in map, or path string in JSON).
**Returned value**
-Returns `1` if the haystack contains the specified needle, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the haystack contains the specified needle, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -4478,8 +4478,8 @@ hasAll(set, subset)
**Arguments**
-- `set` — Array of any type with a set of elements. [`Array(T)`](/reference/data-types/array)
-- `subset` — Array of any type that shares a common supertype with `set` containing elements that should be tested to be a subset of `set`. [`Array(T)`](/reference/data-types/array)
+- `set` — Array of any type with a set of elements. [`Array(T)`](/core/reference/data-types/array)
+- `subset` — Array of any type that shares a common supertype with `set` containing elements that should be tested to be a subset of `set`. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -4567,8 +4567,8 @@ hasAny(arr_x, arr_y)
**Arguments**
-- `arr_x` — Array of any type with a set of elements. [`Array(T)`](/reference/data-types/array)
-- `arr_y` — Array of any type that shares a common supertype with array `arr_x`. [`Array(T)`](/reference/data-types/array)
+- `arr_x` — Array of any type with a set of elements. [`Array(T)`](/core/reference/data-types/array)
+- `arr_y` — Array of any type that shares a common supertype with array `arr_x`. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
@@ -4653,12 +4653,12 @@ hasSubstr(arr1, arr2)
**Arguments**
-- `arr1` — Array of any type with a set of elements. [`Array(T)`](/reference/data-types/array)
-- `arr2` — Array of any type with a set of elements. [`Array(T)`](/reference/data-types/array)
+- `arr1` — Array of any type with a set of elements. [`Array(T)`](/core/reference/data-types/array)
+- `arr2` — Array of any type with a set of elements. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns `1` if array `arr1` contains array `arr2`. Otherwise, returns `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if array `arr1` contains array `arr2`. Otherwise, returns `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -4760,12 +4760,12 @@ indexOf(arr, x)
**Arguments**
-- `arr` — An array to search in for `x`. [`Array(T)`](/reference/data-types/array)
-- `x` — Value of the first matching element in `arr` for which to return an index. [`UInt64`](/reference/data-types/int-uint)
+- `arr` — An array to search in for `x`. [`Array(T)`](/core/reference/data-types/array)
+- `x` — Value of the first matching element in `arr` for which to return an index. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the index (numbered from one) of the first `x` in `arr` if it exists. Otherwise, returns `0`. [`UInt64`](/reference/data-types/int-uint)
+Returns the index (numbered from one) of the first `x` in `arr` if it exists. Otherwise, returns `0`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -4810,12 +4810,12 @@ indexOfAssumeSorted(arr, x)
**Arguments**
-- `arr` — A sorted array to search. [`Array(T)`](/reference/data-types/array)
-- `x` — Value of the first matching element in sorted `arr` for which to return an index. [`UInt64`](/reference/data-types/int-uint)
+- `arr` — A sorted array to search. [`Array(T)`](/core/reference/data-types/array)
+- `x` — Value of the first matching element in sorted `arr` for which to return an index. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the index (numbered from one) of the first `x` in `arr` if it exists. Otherwise, returns `0`. [`UInt64`](/reference/data-types/int-uint)
+Returns the index (numbered from one) of the first `x` in `arr` if it exists. Otherwise, returns `0`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -4844,13 +4844,13 @@ kql_array_sort_asc(array1[, array2, ..., nulls_last])
**Arguments**
-- `array1` — The array to sort. [`Array(T)`](/reference/data-types/array)
-- `array2` — Optional. Additional arrays to reorder according to array1's sort order. [`Array(T)`](/reference/data-types/array)
-- `nulls_last` — Optional. A boolean indicating whether nulls should appear last. Default is true. [`UInt8`](/reference/data-types/int-uint)
+- `array1` — The array to sort. [`Array(T)`](/core/reference/data-types/array)
+- `array2` — Optional. Additional arrays to reorder according to array1's sort order. [`Array(T)`](/core/reference/data-types/array)
+- `nulls_last` — Optional. A boolean indicating whether nulls should appear last. Default is true. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple of arrays sorted in ascending order. [`Tuple(Array, ...)`](/reference/data-types/tuple)
+Returns a tuple of arrays sorted in ascending order. [`Tuple(Array, ...)`](/core/reference/data-types/tuple)
**Examples**
@@ -4879,13 +4879,13 @@ kql_array_sort_desc(array1[, array2, ..., nulls_last])
**Arguments**
-- `array1` — The array to sort. [`Array(T)`](/reference/data-types/array)
-- `array2` — Optional additional arrays to reorder according to array1's sort order. [`Array(T)`](/reference/data-types/array)
-- `nulls_last` — Optional boolean indicating whether nulls should appear last. Default is true. [`UInt8`](/reference/data-types/int-uint)
+- `array1` — The array to sort. [`Array(T)`](/core/reference/data-types/array)
+- `array2` — Optional additional arrays to reorder according to array1's sort order. [`Array(T)`](/core/reference/data-types/array)
+- `nulls_last` — Optional boolean indicating whether nulls should appear last. Default is true. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple of arrays sorted in descending order. [`Tuple(Array, ...)`](/reference/data-types/tuple)
+Returns a tuple of arrays sorted in descending order. [`Tuple(Array, ...)`](/core/reference/data-types/tuple)
**Examples**
@@ -4926,11 +4926,11 @@ length(x)
**Arguments**
-- `x` — Value for which to calculate the number of bytes (for String/FixedString) or elements (for Array). [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Array(T)`](/reference/data-types/array)
+- `x` — Value for which to calculate the number of bytes (for String/FixedString) or elements (for Array). [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the number of number of bytes in the String/FixedString `x` / the number of elements in array `x` [`UInt64`](/reference/data-types/int-uint)
+Returns the number of number of bytes in the String/FixedString `x` / the number of elements in array `x` [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5005,7 +5005,7 @@ Checks whether the input array is non-empty.
An array is considered non-empty if it contains at least one element.
-Can be optimized by enabling the [`optimize_functions_to_subcolumns`](/reference/settings/session-settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [size0](/reference/data-types/array#array-size) subcolumn instead of reading and processing the whole array column. The query `SELECT notEmpty(arr) FROM table` transforms to `SELECT arr.size0 != 0 FROM TABLE`.
+Can be optimized by enabling the [`optimize_functions_to_subcolumns`](/core/reference/settings/session-settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [size0](/core/reference/data-types/array#array-size) subcolumn instead of reading and processing the whole array column. The query `SELECT notEmpty(arr) FROM table` transforms to `SELECT arr.size0 != 0 FROM TABLE`.
The function also works for Strings or UUIDs.
@@ -5019,11 +5019,11 @@ notEmpty(arr)
**Arguments**
-- `arr` — Input array. [`Array(T)`](/reference/data-types/array)
+- `arr` — Input array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns `1` for a non-empty array or `0` for an empty array [`UInt8`](/reference/data-types/int-uint)
+Returns `1` for a non-empty array or `0` for an empty array [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -5048,7 +5048,7 @@ The supported types are:
- `Int8/16/32/64]`
- All arguments `start`, `end`, `step` must be one of the above supported types. Elements of the returned array will be a super type of the arguments.
-- An exception is thrown if the function returns an array with a total length more than the number of elements specified by setting [`function_range_max_elements_in_block`](/reference/settings/session-settings#function_range_max_elements_in_block).
+- An exception is thrown if the function returns an array with a total length more than the number of elements specified by setting [`function_range_max_elements_in_block`](/core/reference/settings/session-settings#function_range_max_elements_in_block).
- Returns `NULL` if any argument has Nullable(nothing) type. An exception is thrown if any argument has `NULL` value (Nullable(T) type).
@@ -5064,7 +5064,7 @@ range([start, ] end [, step])
**Returned value**
-Array of numbers from `start` to `end - 1` by `step`. [`Array(T)`](/reference/data-types/array)
+Array of numbers from `start` to `end - 1` by `step`. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -5094,12 +5094,12 @@ replicate(x, arr)
**Arguments**
-- `x` — The value to fill the result array with. [`Any`](/reference/data-types)
-- `arr` — An array. [`Array(T)`](/reference/data-types/array)
+- `x` — The value to fill the result array with. [`Any`](/core/reference/data-types)
+- `arr` — An array. [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of the same length as `arr` filled with value `x`. [`Array(T)`](/reference/data-types/array)
+Returns an array of the same length as `arr` filled with value `x`. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -5129,7 +5129,7 @@ reverse(arr | str)
**Arguments**
-- `arr | str` — The source array or string. [`Array(T)`](/reference/data-types/array) or [`String`](/reference/data-types/string)
+- `arr | str` — The source array or string. [`Array(T)`](/core/reference/data-types/array) or [`String`](/core/reference/data-types/string)
**Returned value**
@@ -5161,4 +5161,4 @@ SELECT reverse('abcd');
## Distance functions {#distance-functions}
-All supported functions are described in [distance functions documentation](/reference/functions/regular-functions/distance-functions).
+All supported functions are described in [distance functions documentation](/core/reference/functions/regular-functions/distance-functions).
diff --git a/reference/functions/regular-functions/array-join.mdx b/core/reference/functions/regular-functions/array-join.mdx
similarity index 85%
rename from reference/functions/regular-functions/array-join.mdx
rename to core/reference/functions/regular-functions/array-join.mdx
index 4144caff..c88cda0d 100644
--- a/reference/functions/regular-functions/array-join.mdx
+++ b/core/reference/functions/regular-functions/array-join.mdx
@@ -17,7 +17,7 @@ All the values in columns are simply copied, except the values in the column whe
If the array is empty, `arrayJoin` produces no rows.
-To return a single row containing the default value of the array type, you can wrap it with [emptyArrayToSingle](/reference/functions/regular-functions/array-functions#emptyArrayToSingle), for example: `arrayJoin(emptyArrayToSingle(...))`.
+To return a single row containing the default value of the array type, you can wrap it with [emptyArrayToSingle](/core/reference/functions/regular-functions/array-functions#emptyArrayToSingle), for example: `arrayJoin(emptyArrayToSingle(...))`.
For example:
@@ -98,7 +98,7 @@ FROM (
);
```
-Note the [`ARRAY JOIN`](/reference/statements/select/array-join) syntax in the SELECT query, which provides broader possibilities.
+Note the [`ARRAY JOIN`](/core/reference/statements/select/array-join) syntax in the SELECT query, which provides broader possibilities.
`ARRAY JOIN` allows you to convert multiple arrays with the same number of elements at a time.
Example:
@@ -130,7 +130,7 @@ GROUP BY
└─────────────┴──────────┴─────────┘
```
-Or you can use [`Tuple`](/reference/data-types/tuple)
+Or you can use [`Tuple`](/core/reference/data-types/tuple)
Example:
@@ -158,4 +158,4 @@ GROUP BY
└─────────────┴──────────┴─────────┘
```
-The name `arrayJoin` in ClickHouse comes from its conceptual similarity to the JOIN operation, but applied to arrays within a single row. While traditional JOINs combine rows from different tables, `arrayJoin` "joins" each element of an array in a row, producing multiple rows - one for each array element - while duplicating the other column values. ClickHouse also provides the [`ARRAY JOIN`](/reference/statements/select/array-join) clause syntax, which makes this relationship to traditional JOIN operations even more explicit by using familiar SQL JOIN terminology. This process is also referred to as "unfolding" the array, but the term "join" is used in both the function name and clause because it resembles joining the table with the array elements, effectively expanding the dataset in a way similar to a JOIN operation.
+The name `arrayJoin` in ClickHouse comes from its conceptual similarity to the JOIN operation, but applied to arrays within a single row. While traditional JOINs combine rows from different tables, `arrayJoin` "joins" each element of an array in a row, producing multiple rows - one for each array element - while duplicating the other column values. ClickHouse also provides the [`ARRAY JOIN`](/core/reference/statements/select/array-join) clause syntax, which makes this relationship to traditional JOIN operations even more explicit by using familiar SQL JOIN terminology. This process is also referred to as "unfolding" the array, but the term "join" is used in both the function name and clause because it resembles joining the table with the array elements, effectively expanding the dataset in a way similar to a JOIN operation.
diff --git a/reference/functions/regular-functions/bit-functions.mdx b/core/reference/functions/regular-functions/bit-functions.mdx
similarity index 83%
rename from reference/functions/regular-functions/bit-functions.mdx
rename to core/reference/functions/regular-functions/bit-functions.mdx
index f9195dea..633250c7 100644
--- a/reference/functions/regular-functions/bit-functions.mdx
+++ b/core/reference/functions/regular-functions/bit-functions.mdx
@@ -31,8 +31,8 @@ bitAnd(a, b)
**Arguments**
-- `a` — First value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `b` — Second value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `a` — First value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `b` — Second value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -82,11 +82,11 @@ bitCount(x)
**Arguments**
-- `x` — An integer or float value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — An integer or float value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the number of bits set to one in `x`. [`UInt8`](/reference/data-types/int-uint).
+Returns the number of bits set to one in `x`. [`UInt8`](/core/reference/data-types/int-uint).
The function does not convert the input value to a larger type ([sign extension](https://en.wikipedia.org/wiki/Sign_extension)).
@@ -112,7 +112,7 @@ SELECT bin(333), bitCount(333);
Introduced in: v21.1.0
Returns the [Hamming Distance](https://en.wikipedia.org/wiki/Hamming_distance) between the bit representations of two numbers.
-Can be used with [`SimHash`](/reference/functions/regular-functions/hash-functions#ngramSimHash) functions for detection of semi-duplicate strings.
+Can be used with [`SimHash`](/core/reference/functions/regular-functions/hash-functions#ngramSimHash) functions for detection of semi-duplicate strings.
The smaller the distance, the more similar the strings are.
**Syntax**
@@ -123,12 +123,12 @@ bitHammingDistance(x, y)
**Arguments**
-- `x` — First number for Hamming distance calculation. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `y` — Second number for Hamming distance calculation. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — First number for Hamming distance calculation. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `y` — Second number for Hamming distance calculation. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the hamming distance between `x` and `y` [`UInt8`](/reference/data-types/int-uint)
+Returns the hamming distance between `x` and `y` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -158,7 +158,7 @@ bitNot(a)
**Arguments**
-- `a` — Value for which to apply bitwise NOT operation. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `a` — Value for which to apply bitwise NOT operation. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
@@ -196,8 +196,8 @@ bitOr(a, b)
**Arguments**
-- `a` — First value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `b` — Second value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `a` — First value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `b` — Second value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -247,12 +247,12 @@ bitRotateLeft(a, N)
**Arguments**
-- `a` — A value to rotate. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
-- `N` — The number of positions to rotate left. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `a` — A value to rotate. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
+- `N` — The number of positions to rotate left. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the rotated value with type equal to that of `a`. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+Returns the rotated value with type equal to that of `a`. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
**Examples**
@@ -282,12 +282,12 @@ bitRotateRight(a, N)
**Arguments**
-- `a` — A value to rotate. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
-- `N` — The number of positions to rotate right. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `a` — A value to rotate. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
+- `N` — The number of positions to rotate right. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the rotated value with type equal to that of `a`. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+Returns the rotated value with type equal to that of `a`. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
**Examples**
@@ -322,8 +322,8 @@ bitShiftLeft(a, N)
**Arguments**
-- `a` — A value to shift. [`(U)Int*`](/reference/data-types/int-uint) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `N` — The number of positions to shift. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `a` — A value to shift. [`(U)Int*`](/core/reference/data-types/int-uint) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `N` — The number of positions to shift. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
@@ -386,8 +386,8 @@ bitShiftRight(a, N)
**Arguments**
-- `a` — A value to shift. [`(U)Int*`](/reference/data-types/int-uint) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `N` — The number of positions to shift. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `a` — A value to shift. [`(U)Int*`](/core/reference/data-types/int-uint) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `N` — The number of positions to shift. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
@@ -445,24 +445,24 @@ bitSlice(s, offset[, length])
**Arguments**
-- `s` — The String or Fixed String to slice. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `s` — The String or Fixed String to slice. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
- `offset` —
Returns the starting bit position (1-based indexing).
- Positive values: count from the beginning of the string.
- Negative values: count from the end of the string.
- [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+ [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
- `length` —
Optional. The number of bits to extract.
- Positive values: extract `length` bits.
- Negative values: extract from the offset to `(string_length - |length|)`.
- Omitted: extract from offset to end of string.
- If length is not a multiple of 8, the result is padded with zeros on the right.
- [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+ [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns a string containing the extracted bits, represented as a binary sequence. The result is always padded to byte boundaries (multiples of 8 bits) [`String`](/reference/data-types/string)
+Returns a string containing the extracted bits, represented as a binary sequence. The result is always padded to byte boundaries (multiples of 8 bits) [`String`](/core/reference/data-types/string)
**Examples**
@@ -504,12 +504,12 @@ bitTest(a, i)
**Arguments**
-- `a` — Number to convert. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `i` — Position of the bit to return. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `a` — Number to convert. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `i` — Position of the bit to return. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the value of the bit at position `i` in the binary representation of `a` [`UInt8`](/reference/data-types/int-uint)
+Returns the value of the bit at position `i` in the binary representation of `a` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -543,12 +543,12 @@ bitTestAll(a, index1[, index2, ... , indexN])
**Arguments**
-- `a` — An integer value. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
-- `index1, ...` — One or multiple positions of bits. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+- `a` — An integer value. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
+- `index1, ...` — One or multiple positions of bits. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the result of the logical conjunction [`UInt8`](/reference/data-types/int-uint)
+Returns the result of the logical conjunction [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -594,12 +594,12 @@ bitTestAny(a, index1[, index2, ... , indexN])
**Arguments**
-- `a` — An integer value. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
-- `index1, ...` — One or multiple positions of bits. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+- `a` — An integer value. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
+- `index1, ...` — One or multiple positions of bits. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the result of the logical disjunction [`UInt8`](/reference/data-types/int-uint)
+Returns the result of the logical disjunction [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -641,8 +641,8 @@ bitXor(a, b)
**Arguments**
-- `a` — First value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `b` — Second value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `a` — First value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `b` — Second value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
diff --git a/reference/functions/regular-functions/bitmap-functions.mdx b/core/reference/functions/regular-functions/bitmap-functions.mdx
similarity index 72%
rename from reference/functions/regular-functions/bitmap-functions.mdx
rename to core/reference/functions/regular-functions/bitmap-functions.mdx
index 50ebcde3..3cc6df4c 100644
--- a/reference/functions/regular-functions/bitmap-functions.mdx
+++ b/core/reference/functions/regular-functions/bitmap-functions.mdx
@@ -29,11 +29,11 @@ bitmapAnd(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns a bitmap containing bits present in both input bitmaps [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap containing bits present in both input bitmaps [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -63,11 +63,11 @@ bitmapAndCardinality(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns the number of set bits in the intersection of the two bitmaps [`UInt64`](/reference/data-types/int-uint)
+Returns the number of set bits in the intersection of the two bitmaps [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -97,11 +97,11 @@ bitmapAndnot(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns a bitmap containing set bits present in the first bitmap but not in the second [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap containing set bits present in the first bitmap but not in the second [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -131,11 +131,11 @@ bitmapAndnotCardinality(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns the number of set bits in the result of `bitmap1 AND-NOT bitmap2` [`UInt64`](/reference/data-types/int-uint)
+Returns the number of set bits in the result of `bitmap1 AND-NOT bitmap2` [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -155,7 +155,7 @@ SELECT bitmapAndnotCardinality(bitmapBuild([1,2,3]), bitmapBuild([3,4,5])) AS re
Introduced in: v20.1.0
-Builds a bitmap from an unsigned integer array. It is the opposite of function [`bitmapToArray`](/reference/functions/regular-functions/bitmap-functions#bitmapToArray).
+Builds a bitmap from an unsigned integer array. It is the opposite of function [`bitmapToArray`](/core/reference/functions/regular-functions/bitmap-functions#bitmapToArray).
**Syntax**
@@ -165,11 +165,11 @@ bitmapBuild(array)
**Arguments**
-- `array` — Unsigned integer array. [`Array(UInt*)`](/reference/data-types/array)
+- `array` — Unsigned integer array. [`Array(UInt*)`](/core/reference/data-types/array)
**Returned value**
-Returns a bitmap from the provided array [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap from the provided array [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -199,11 +199,11 @@ bitmapCardinality(bitmap)
**Arguments**
-- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns the number of bits set in the bitmap [`UInt64`](/reference/data-types/int-uint)
+Returns the number of bits set in the bitmap [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -233,11 +233,11 @@ bitmapContains(bitmap, value)
**Arguments**
-- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `value` — Element to check for. [(U)Int8/16/32/64](/reference/data-types/int-uint)
+- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `value` — Element to check for. [(U)Int8/16/32/64](/core/reference/data-types/int-uint)
**Returned value**
-Returns `1` if the bitmap contains the specified value, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the bitmap contains the specified value, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -267,11 +267,11 @@ bitmapHasAll(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns `1` if all set bits of the second bitmap are present in the first bitmap, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if all set bits of the second bitmap are present in the first bitmap, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -301,11 +301,11 @@ bitmapHasAny(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns `1` if any bits of the second bitmap are present in the first bitmap, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if any bits of the second bitmap are present in the first bitmap, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -335,11 +335,11 @@ bitmapMax(bitmap)
**Arguments**
-- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns the position of the greatest bit set in the bitmap, otherwise `0` [`UInt64`](/reference/data-types/int-uint)
+Returns the position of the greatest bit set in the bitmap, otherwise `0` [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -369,11 +369,11 @@ bitmapMin(bitmap)
**Arguments**
-- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns the position of the smallest bit set in the bitmap, or `UINT32_MAX`/`UINT64_MAX` [`UInt64`](/reference/data-types/int-uint)
+Returns the position of the smallest bit set in the bitmap, or `UINT32_MAX`/`UINT64_MAX` [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -403,11 +403,11 @@ bitmapOr(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns a bitmap containing set bits present in either input bitmap [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap containing set bits present in either input bitmap [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -437,11 +437,11 @@ bitmapOrCardinality(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns the number of set bits in the union of the two bitmaps [`UInt64`](/reference/data-types/int-uint)
+Returns the number of set bits in the union of the two bitmaps [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -471,11 +471,11 @@ bitmapSubsetInRange(bitmap, start, end)
**Arguments**
-- `bitmap` — Bitmap to extract the subset from. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `start` — Start of the range (inclusive). [`UInt*`](/reference/data-types/int-uint) - `end` — End of the range (exclusive). [`UInt*`](/reference/data-types/int-uint)
+- `bitmap` — Bitmap to extract the subset from. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `start` — Start of the range (inclusive). [`UInt*`](/core/reference/data-types/int-uint) - `end` — End of the range (exclusive). [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a bitmap containing only the set bits in the specified range [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap containing only the set bits in the specified range [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -505,11 +505,11 @@ bitmapSubsetLimit(bitmap, range_start, cardinality_limit)
**Arguments**
-- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `range_start` — Start of the range (inclusive). [`UInt32`](/reference/data-types/int-uint) - `cardinality_limit` — Maximum cardinality of the subset. [`UInt32`](/reference/data-types/int-uint)
+- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `range_start` — Start of the range (inclusive). [`UInt32`](/core/reference/data-types/int-uint) - `cardinality_limit` — Maximum cardinality of the subset. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a bitmap containing at most `cardinality_limit` set bits, starting from `range_start` [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap containing at most `cardinality_limit` set bits, starting from `range_start` [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -529,7 +529,7 @@ SELECT bitmapToArray(bitmapSubsetLimit(bitmapBuild([1, 5, 3, 2, 8]), 3, 2)) AS r
Introduced in: v20.1.0
-Converts a bitmap to an array of unsigned integers. It is the opposite of function [`bitmapBuild`](/reference/functions/regular-functions/bitmap-functions#bitmapBuild).
+Converts a bitmap to an array of unsigned integers. It is the opposite of function [`bitmapBuild`](/core/reference/functions/regular-functions/bitmap-functions#bitmapBuild).
**Syntax**
@@ -539,11 +539,11 @@ bitmapToArray(bitmap)
**Arguments**
-- `bitmap` — Bitmap to convert. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap` — Bitmap to convert. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns an array of unsigned integers contained in the bitmap [`Array(UInt*)`](/reference/data-types/array)
+Returns an array of unsigned integers contained in the bitmap [`Array(UInt*)`](/core/reference/data-types/array)
**Examples**
@@ -574,11 +574,11 @@ bitmapTransform(bitmap, from_array, to_array)
**Arguments**
-- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `from_array` — Array of original set bits to be replaced. [`Array(T)`](/reference/data-types/array). - `to_array` — Array of new set bits to replace with. [`Array(T)`](/reference/data-types/array).
+- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `from_array` — Array of original set bits to be replaced. [`Array(T)`](/core/reference/data-types/array). - `to_array` — Array of new set bits to replace with. [`Array(T)`](/core/reference/data-types/array).
**Returned value**
-Returns a bitmap with elements transformed according to the given mapping [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap with elements transformed according to the given mapping [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -608,11 +608,11 @@ bitmapXor(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns a bitmap containing set bits present in either input bitmap, but not in both [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap containing set bits present in either input bitmap, but not in both [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -642,11 +642,11 @@ bitmapXorCardinality(bitmap1, bitmap2)
**Arguments**
-- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction).
+- `bitmap1` — First bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `bitmap2` — Second bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction).
**Returned value**
-Returns the number of set bits in the symmetric difference of the two bitmaps [`UInt64`](/reference/data-types/int-uint)
+Returns the number of set bits in the symmetric difference of the two bitmaps [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -676,11 +676,11 @@ subBitmap(bitmap, offset, cardinality_limit)
**Arguments**
-- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction). - `offset` — Number of set bits to skip from the beginning (zero-based). [`UInt32`](/reference/data-types/int-uint) - `cardinality_limit` — Maximum number of set bits to include in the subset. [`UInt32`](/reference/data-types/int-uint)
+- `bitmap` — Bitmap object. [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction). - `offset` — Number of set bits to skip from the beginning (zero-based). [`UInt32`](/core/reference/data-types/int-uint) - `cardinality_limit` — Maximum number of set bits to include in the subset. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a bitmap containing at most `limit` set bits, starting after skipping `offset` set bits in ascending order [`AggregateFunction(groupBitmap, T)`](/reference/data-types/aggregatefunction)
+Returns a bitmap containing at most `limit` set bits, starting after skipping `offset` set bits in ascending order [`AggregateFunction(groupBitmap, T)`](/core/reference/data-types/aggregatefunction)
**Examples**
diff --git a/reference/functions/regular-functions/comparison-functions.mdx b/core/reference/functions/regular-functions/comparison-functions.mdx
similarity index 88%
rename from reference/functions/regular-functions/comparison-functions.mdx
rename to core/reference/functions/regular-functions/comparison-functions.mdx
index a0318efa..6fd4d0be 100644
--- a/reference/functions/regular-functions/comparison-functions.mdx
+++ b/core/reference/functions/regular-functions/comparison-functions.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
## Comparison rules {#comparison-rules}
-The comparison functions below return `0` or `1` with type [UInt8](/reference/data-types/int-uint). Only values within the same group can be
+The comparison functions below return `0` or `1` with type [UInt8](/core/reference/data-types/int-uint). Only values within the same group can be
compared (e.g. `UInt16` and `UInt64`) but not across groups (e.g. `UInt16` and `DateTime`).
Comparison of numbers and strings are possible, as is comparison of strings with dates and dates with times.
For tuples and arrays, the comparison is lexicographic meaning that the comparison is made for each corresponding
@@ -54,7 +54,7 @@ equals(a, b)
**Returned value**
-Returns `1` if `a` is equal to `b`, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `a` is equal to `b`, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -89,7 +89,7 @@ globalIn(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -122,7 +122,7 @@ globalIn(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -155,7 +155,7 @@ globalNotIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -188,7 +188,7 @@ globalNotIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -221,7 +221,7 @@ globalNotNullIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -254,7 +254,7 @@ globalNotNullIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -287,7 +287,7 @@ globalNullIn(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -320,7 +320,7 @@ globalNullIn(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -353,7 +353,7 @@ greater(a, b)
**Returned value**
-Returns `1` if `a` is greater than `b`, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `a` is greater than `b`, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -388,7 +388,7 @@ greaterOrEquals(a, b)
**Returned value**
-Returns `1` if `a` is greater than or equal to `b`, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `a` is greater than or equal to `b`, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -423,7 +423,7 @@ in(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -456,7 +456,7 @@ in(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -487,15 +487,15 @@ isDistinctFrom(x, y)
**Arguments**
-- `x` — First value to compare. Can be any ClickHouse data type. [`Any`](/reference/data-types)
-- `y` — Second value to compare. Can be any ClickHouse data type. [`Any`](/reference/data-types)
+- `x` — First value to compare. Can be any ClickHouse data type. [`Any`](/core/reference/data-types)
+- `y` — Second value to compare. Can be any ClickHouse data type. [`Any`](/core/reference/data-types)
**Returned value**
Returns `true` if the two values are different, treating NULLs as comparable:
- Returns `true` if x != y.
- Returns `true` if exactly one of x or y is NULL.
- - Returns `false` if x = y, or both x and y are NULL. [`Bool`](/reference/data-types/boolean)
+ - Returns `false` if x = y, or both x and y are NULL. [`Bool`](/core/reference/data-types/boolean)
**Examples**
@@ -532,15 +532,15 @@ isNotDistinctFrom(x, y)
**Arguments**
-- `x` — First value to compare. Can be any ClickHouse data type. [`Any`](/reference/data-types)
-- `y` — Second value to compare. Can be any ClickHouse data type. [`Any`](/reference/data-types)
+- `x` — First value to compare. Can be any ClickHouse data type. [`Any`](/core/reference/data-types)
+- `y` — Second value to compare. Can be any ClickHouse data type. [`Any`](/core/reference/data-types)
**Returned value**
Returns `true` if the two values are equal, treating NULLs as comparable:
- Returns `true` if x = y.
- Returns `true` if both x and y are NULL.
- - Returns `false` if x != y, or exactly one of x or y is NULL. [`Bool`](/reference/data-types/boolean)
+ - Returns `false` if x != y, or exactly one of x or y is NULL. [`Bool`](/core/reference/data-types/boolean)
**Examples**
@@ -579,7 +579,7 @@ less(a, b)
**Returned value**
-Returns `1` if `a` is less than `b`, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `a` is less than `b`, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -614,7 +614,7 @@ lessOrEquals(a, b)
**Returned value**
-Returns `1` if `a` is less than or equal to `b`, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `a` is less than or equal to `b`, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -650,7 +650,7 @@ notEquals(a, b)
**Returned value**
-Returns `1` if `a` is not equal to `b`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `a` is not equal to `b`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -685,7 +685,7 @@ notIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -718,7 +718,7 @@ notIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -751,7 +751,7 @@ notNullIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -784,7 +784,7 @@ notNullIn(x, set)
**Returned value**
-Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is not in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -817,7 +817,7 @@ nullIn(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -850,7 +850,7 @@ nullIn(x, set)
**Returned value**
-Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if x is in the set, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/conditional-functions.mdx b/core/reference/functions/regular-functions/conditional-functions.mdx
similarity index 92%
rename from reference/functions/regular-functions/conditional-functions.mdx
rename to core/reference/functions/regular-functions/conditional-functions.mdx
index db4d0d2d..2fd5b94e 100644
--- a/reference/functions/regular-functions/conditional-functions.mdx
+++ b/core/reference/functions/regular-functions/conditional-functions.mdx
@@ -69,7 +69,7 @@ ClickHouse supports two forms of CASE:
1. `CASE WHEN ... THEN ... ELSE ... END`
- This form allows full flexibility and is internally implemented using the [multiIf](/reference/functions/regular-functions/conditional-functions#multiIf) function. Each condition is evaluated independently, and expressions can include non-constant values.
+ This form allows full flexibility and is internally implemented using the [multiIf](/core/reference/functions/regular-functions/conditional-functions#multiIf) function. Each condition is evaluated independently, and expressions can include non-constant values.
```sql
SELECT
@@ -330,11 +330,11 @@ greatest(x1[, x2, ...])
**Arguments**
-- `x1[, x2, ...]` — One or multiple values to compare. All arguments must be of comparable types. [`Any`](/reference/data-types)
+- `x1[, x2, ...]` — One or multiple values to compare. All arguments must be of comparable types. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the greatest value among the arguments, promoted to the largest compatible type. [`Any`](/reference/data-types)
+Returns the greatest value among the arguments, promoted to the largest compatible type. [`Any`](/core/reference/data-types)
**Examples**
@@ -385,7 +385,7 @@ Performs conditional branching.
- If the condition `cond` evaluates to a non-zero value, the function returns the result of the expression `then`.
- If `cond` evaluates to zero or NULL, the result of the `else` expression is returned.
-The setting [`short_circuit_function_evaluation`](/reference/settings/session-settings#short_circuit_function_evaluation) controls whether short-circuit evaluation is used.
+The setting [`short_circuit_function_evaluation`](/core/reference/settings/session-settings#short_circuit_function_evaluation) controls whether short-circuit evaluation is used.
If enabled, the `then` expression is evaluated only on rows where `cond` is true and the `else` expression where `cond` is false.
@@ -405,7 +405,7 @@ if(cond, then, else)
**Arguments**
-- `cond` — The evaluated condition. [`UInt8`](/reference/data-types/int-uint) or [`Nullable(UInt8)`](/reference/data-types/nullable) or [`NULL`](/reference/syntax#null)
+- `cond` — The evaluated condition. [`UInt8`](/core/reference/data-types/int-uint) or [`Nullable(UInt8)`](/core/reference/data-types/nullable) or [`NULL`](/core/reference/syntax#null)
- `then` — The expression returned if `cond` is true. - `else` — The expression returned if `cond` is false or `NULL`.
**Returned value**
@@ -452,11 +452,11 @@ least(x1[, x2, ...])
**Arguments**
-- `x1[, x2, ...]` — A single value or multiple values to compare. All arguments must be of comparable types. [`Any`](/reference/data-types)
+- `x1[, x2, ...]` — A single value or multiple values to compare. All arguments must be of comparable types. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the least value among the arguments, promoted to the largest compatible type. [`Any`](/reference/data-types)
+Returns the least value among the arguments, promoted to the largest compatible type. [`Any`](/core/reference/data-types)
**Examples**
@@ -502,11 +502,11 @@ SELECT least(toDateTime32(now() + toIntervalDay(1)), toDateTime64(now(), 3));
Introduced in: v1.1.0
-Allows writing the [`CASE`](/reference/operators#conditional-expression) operator more compactly in the query.
+Allows writing the [`CASE`](/core/reference/operators#conditional-expression) operator more compactly in the query.
Evaluates each condition in order. For the first condition that is true (non-zero and not `NULL`), returns the corresponding branch value.
If none of the conditions are true, returns the `else` value.
-Setting [`short_circuit_function_evaluation`](/reference/settings/session-settings#short_circuit_function_evaluation) controls
+Setting [`short_circuit_function_evaluation`](/core/reference/settings/session-settings#short_circuit_function_evaluation) controls
whether short-circuit evaluation is used. If enabled, the `then_i` expression is evaluated only on rows where
`((NOT cond_1) AND ... AND (NOT cond_{i-1}) AND cond_i)` is true.
@@ -529,7 +529,7 @@ multiIf(cond_1, then_1, cond_2, then_2, ..., else)
**Arguments**
-- `cond_N` — The N-th evaluated condition which controls if `then_N` is returned. [`UInt8`](/reference/data-types/int-uint) or [`Nullable(UInt8)`](/reference/data-types/nullable) or [`NULL`](/reference/syntax#null)
+- `cond_N` — The N-th evaluated condition which controls if `then_N` is returned. [`UInt8`](/core/reference/data-types/int-uint) or [`Nullable(UInt8)`](/core/reference/data-types/nullable) or [`NULL`](/core/reference/syntax#null)
- `then_N` — The result of the function when `cond_N` is true. - `else` — The result of the function if none of the conditions is true.
**Returned value**
diff --git a/reference/functions/regular-functions/date-time-functions.mdx b/core/reference/functions/regular-functions/date-time-functions.mdx
similarity index 75%
rename from reference/functions/regular-functions/date-time-functions.mdx
rename to core/reference/functions/regular-functions/date-time-functions.mdx
index 53a8ce01..52541197 100644
--- a/reference/functions/regular-functions/date-time-functions.mdx
+++ b/core/reference/functions/regular-functions/date-time-functions.mdx
@@ -58,7 +58,7 @@ UTCTimestamp()
**Returned value**
-Returns the current date and time at the moment of query analysis. [`DateTime`](/reference/data-types/datetime)
+Returns the current date and time at the moment of query analysis. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -79,7 +79,7 @@ SELECT UTCTimestamp()
Introduced in: v23.9.0
Converts a number containing the year, month and day number to a `Date`.
-This function is the opposite of function [`toYYYYMMDD()`](/reference/functions/regular-functions/date-time-functions#toYYYYMMDD).
+This function is the opposite of function [`toYYYYMMDD()`](/core/reference/functions/regular-functions/date-time-functions#toYYYYMMDD).
The output is undefined if the input does not encode a valid Date value.
@@ -91,11 +91,11 @@ YYYYMMDDToDate(YYYYMMDD)
**Arguments**
-- `YYYYMMDD` — Number containing the year, month and day. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `YYYYMMDD` — Number containing the year, month and day. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a `Date` value from the provided arguments [`Date`](/reference/data-types/date)
+Returns a `Date` value from the provided arguments [`Date`](/core/reference/data-types/date)
**Examples**
@@ -116,7 +116,7 @@ SELECT YYYYMMDDToDate(20230911);
Introduced in: v23.9.0
Converts a number containing the year, month and day number to a `Date32`.
-This function is the opposite of function [`toYYYYMMDD()`](/reference/functions/regular-functions/date-time-functions#toYYYYMMDD).
+This function is the opposite of function [`toYYYYMMDD()`](/core/reference/functions/regular-functions/date-time-functions#toYYYYMMDD).
The output is undefined if the input does not encode a valid `Date32` value.
@@ -128,11 +128,11 @@ YYYYMMDDToDate32(YYYYMMDD)
**Arguments**
-- `YYYYMMDD` — Number containing the year, month and day. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `YYYYMMDD` — Number containing the year, month and day. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a `Date32` value from the provided arguments [`Date32`](/reference/data-types/date32)
+Returns a `Date32` value from the provided arguments [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -153,7 +153,7 @@ SELECT YYYYMMDDToDate32(20000507);
Introduced in: v23.9.0
Converts a number containing the year, month, day, hour, minute, and second to a `DateTime`.
-This function is the opposite of function [`toYYYYMMDDhhmmss()`](/reference/functions/regular-functions/date-time-functions#toYYYYMMDDhhmmss).
+This function is the opposite of function [`toYYYYMMDDhhmmss()`](/core/reference/functions/regular-functions/date-time-functions#toYYYYMMDDhhmmss).
The output is undefined if the input does not encode a valid `DateTime` value.
@@ -165,12 +165,12 @@ YYYYMMDDhhmmssToDateTime(YYYYMMDDhhmmss[, timezone])
**Arguments**
-- `YYYYMMDDhhmmss` — Number containing the year, month, day, hour, minute, and second. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `timezone` — Timezone name. [`String`](/reference/data-types/string)
+- `YYYYMMDDhhmmss` — Number containing the year, month, day, hour, minute, and second. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `timezone` — Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime` value from the provided arguments [`DateTime`](/reference/data-types/datetime)
+Returns a `DateTime` value from the provided arguments [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -191,7 +191,7 @@ SELECT YYYYMMDDToDateTime(20230911131415);
Introduced in: v23.9.0
Converts a number containing the year, month, day, hour, minute, and second to a `DateTime64`.
-This function is the opposite of function [`toYYYYMMDDhhmmss()`](/reference/functions/regular-functions/date-time-functions#toYYYYMMDDhhmmss).
+This function is the opposite of function [`toYYYYMMDDhhmmss()`](/core/reference/functions/regular-functions/date-time-functions#toYYYYMMDDhhmmss).
The output is undefined if the input does not encode a valid `DateTime64` value.
@@ -203,13 +203,13 @@ YYYYMMDDhhmmssToDateTime64(YYYYMMDDhhmmss[, precision[, timezone]])
**Arguments**
-- `YYYYMMDDhhmmss` — Number containing the year, month, day, hour, minute, and second. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `precision` — Precision for the fractional part (0-9). [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Timezone name. [`String`](/reference/data-types/string)
+- `YYYYMMDDhhmmss` — Number containing the year, month, day, hour, minute, and second. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `precision` — Precision for the fractional part (0-9). [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime64` value from the provided arguments [`DateTime64`](/reference/data-types/datetime64)
+Returns a `DateTime64` value from the provided arguments [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -241,12 +241,12 @@ addDate(datetime, interval)
**Arguments**
-- `datetime` — The date or date with time to which `interval` is added. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `interval` — Interval to add. [`Interval`](/reference/data-types/int-uint)
+- `datetime` — The date or date with time to which `interval` is added. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `interval` — Interval to add. [`Interval`](/core/reference/data-types/int-uint)
**Returned value**
-Returns date or date with time obtained by adding `interval` to `datetime`. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns date or date with time obtained by adding `interval` to `datetime`. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -277,12 +277,12 @@ addDays(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of days to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of days to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of days to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of days to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` days. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` days. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -332,12 +332,12 @@ addHours(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of hours to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of hours to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of hours to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of hours to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` hours [`DateTime`](/reference/data-types/datetime) or [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` hours [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -391,12 +391,12 @@ addInterval(interval_1, interval_2)
**Arguments**
-- `interval_1` — First interval or tuple of intervals. [`Interval`](/reference/data-types/int-uint) or [`Tuple(Interval)`](/reference/data-types/tuple)
-- `interval_2` — Second interval to be added. [`Interval`](/reference/data-types/int-uint)
+- `interval_1` — First interval or tuple of intervals. [`Interval`](/core/reference/data-types/int-uint) or [`Tuple(Interval)`](/core/reference/data-types/tuple)
+- `interval_2` — Second interval to be added. [`Interval`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple of intervals [`Tuple(Interval)`](/reference/data-types/tuple)
+Returns a tuple of intervals [`Tuple(Interval)`](/core/reference/data-types/tuple)
**Examples**
@@ -435,12 +435,12 @@ addMicroseconds(datetime, num)
**Arguments**
-- `datetime` — Date with time to add specified number of microseconds to. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of microseconds to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date with time to add specified number of microseconds to. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of microseconds to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `date_time` plus `num` microseconds [`DateTime64`](/reference/data-types/datetime64)
+Returns `date_time` plus `num` microseconds [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -488,12 +488,12 @@ addMilliseconds(datetime, num)
**Arguments**
-- `datetime` — Date with time to add specified number of milliseconds to. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of milliseconds to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date with time to add specified number of milliseconds to. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of milliseconds to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` milliseconds [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` milliseconds [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -541,12 +541,12 @@ addMinutes(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of minutes to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of minutes to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of minutes to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of minutes to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` minutes [`DateTime`](/reference/data-types/datetime) or [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` minutes [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -596,12 +596,12 @@ addMonths(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of months to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of months to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of months to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of months to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` months [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` months [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -651,12 +651,12 @@ addNanoseconds(datetime, num)
**Arguments**
-- `datetime` — Date with time to add specified number of nanoseconds to. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of nanoseconds to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date with time to add specified number of nanoseconds to. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of nanoseconds to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` nanoseconds [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` nanoseconds [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -704,12 +704,12 @@ addQuarters(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of quarters to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of quarters to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of quarters to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of quarters to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` quarters [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` quarters [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -759,12 +759,12 @@ addSeconds(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of seconds to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of seconds to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of seconds to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of seconds to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` seconds [`DateTime`](/reference/data-types/datetime) or [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` seconds [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -814,12 +814,12 @@ addTupleOfIntervals(datetime, intervals)
**Arguments**
-- `datetime` — Date or date with time to add intervals to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `intervals` — Tuple of intervals to add to `datetime`. [`Tuple(Interval)`](/reference/data-types/tuple)
+- `datetime` — Date or date with time to add intervals to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `intervals` — Tuple of intervals to add to `datetime`. [`Tuple(Interval)`](/core/reference/data-types/tuple)
**Returned value**
-Returns `date` with added `intervals` [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `date` with added `intervals` [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -851,12 +851,12 @@ addWeeks(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of weeks to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of weeks to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of weeks to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of weeks to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` weeks [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` weeks [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -906,12 +906,12 @@ addYears(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to add specified number of years to. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of years to add. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to add specified number of years to. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of years to add. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` plus `num` years [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` plus `num` years [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -982,13 +982,13 @@ age('unit', startdate, enddate[, timezone])
| month | `month`, `months`, `mm`, `m` |
| quarter | `quarter`, `quarters`, `qq`, `q` |
| year | `year`, `years`, `yyyy`, `yy` |
- - `startdate` — The first time value to subtract (the subtrahend). [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `enddate` — The second time value to subtract from (the minuend). [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone name. If specified, it is applied to both startdate and enddate. If not specified, timezones of startdate and enddate are used. If they are not the same, the result is unspecified. [`String`](/reference/data-types/string)
+ - `startdate` — The first time value to subtract (the subtrahend). [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `enddate` — The second time value to subtract from (the minuend). [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone name. If specified, it is applied to both startdate and enddate. If not specified, timezones of startdate and enddate are used. If they are not the same, the result is unspecified. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the difference between enddate and startdate expressed in unit. [`Int32`](/reference/data-types/int-uint)
+Returns the difference between enddate and startdate expressed in unit. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -1035,12 +1035,12 @@ changeDay(date_or_datetime, value)
**Arguments**
-- `date_or_datetime` — The value to change. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `value` — The new value. [`(U)Int*`](/reference/data-types/int-uint)
+- `date_or_datetime` — The value to change. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `value` — The new value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of the same type as `date_or_datetime` with modified day component. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns a value of the same type as `date_or_datetime` with modified day component. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1068,12 +1068,12 @@ changeHour(date_or_datetime, value)
**Arguments**
-- `date_or_datetime` — The value to change. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `value` — The new value. [`(U)Int*`](/reference/data-types/int-uint)
+- `date_or_datetime` — The value to change. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `value` — The new value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of the same type as `date_or_datetime` with modified hour component. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns a value of the same type as `date_or_datetime` with modified hour component. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1101,12 +1101,12 @@ changeMinute(date_or_datetime, value)
**Arguments**
-- `date_or_datetime` — The value to change. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `value` — The new value. [`(U)Int*`](/reference/data-types/int-uint)
+- `date_or_datetime` — The value to change. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `value` — The new value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of the same type as `date_or_datetime` with modified minute component. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns a value of the same type as `date_or_datetime` with modified minute component. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1134,12 +1134,12 @@ changeMonth(date_or_datetime, value)
**Arguments**
-- `date_or_datetime` — The value to change. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `value` — The new value. [`(U)Int*`](/reference/data-types/int-uint)
+- `date_or_datetime` — The value to change. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `value` — The new value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of the same type as `date_or_datetime` with modified month component. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns a value of the same type as `date_or_datetime` with modified month component. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1167,12 +1167,12 @@ changeSecond(date_or_datetime, value)
**Arguments**
-- `date_or_datetime` — The value to change. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `value` — The new value. [`(U)Int*`](/reference/data-types/int-uint)
+- `date_or_datetime` — The value to change. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `value` — The new value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of the same type as `date_or_datetime` with modified seconds component. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns a value of the same type as `date_or_datetime` with modified seconds component. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1200,12 +1200,12 @@ changeYear(date_or_datetime, value)
**Arguments**
-- `date_or_datetime` — The value to change. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `value` — The new value. [`(U)Int*`](/reference/data-types/int-uint)
+- `date_or_datetime` — The value to change. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `value` — The new value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of the same type as `date_or_datetime` with modified year component. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns a value of the same type as `date_or_datetime` with modified year component. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1259,13 +1259,13 @@ dateDiff(unit, startdate, enddate[, timezone])
| month | `month`, `months`, `mm`, `m` |
| quarter | `quarter`, `quarters`, `qq`, `q` |
| year | `year`, `years`, `yyyy`, `yy` |
- - `startdate` — The first time value to subtract (the subtrahend). [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `enddate` — The second time value to subtract from (the minuend). [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone name. If specified, it is applied to both `startdate` and `enddate`. If not specified, timezones of `startdate` and `enddate` are used. If they are not the same, the result is unspecified. [`String`](/reference/data-types/string)
+ - `startdate` — The first time value to subtract (the subtrahend). [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `enddate` — The second time value to subtract from (the minuend). [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone name. If specified, it is applied to both `startdate` and `enddate`. If not specified, timezones of `startdate` and `enddate` are used. If they are not the same, the result is unspecified. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the difference between `enddate` and `startdate` expressed in `unit`. [`Int64`](/reference/data-types/int-uint)
+Returns the difference between `enddate` and `startdate` expressed in `unit`. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1325,13 +1325,13 @@ dateName(date_part, date[, timezone])
**Arguments**
-- `date_part` — The part of the date that you want to extract. [`String`](/reference/data-types/string)
-- `datetime` — A date or date with time value. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `date_part` — The part of the date that you want to extract. [`String`](/core/reference/data-types/string)
+- `datetime` — A date or date with time value. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the specified part of date. [`String`](/reference/data-types/string)
+Returns the specified part of date. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1370,9 +1370,9 @@ dateTrunc(unit, datetime[, timezone])
- `unit` —
The type of interval to truncate the result. Possible values: `nanosecond` (only DateTime64), `microsecond` (only DateTime64), `millisecond` (only DateTime64), `second`, `minute`, `hour`, `day`, `week`, `month`, `quarter`, `year`.
- [`String`](/reference/data-types/string)
-- `datetime` — Date and time. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone name for the returned datetime. If not specified, the function uses the timezone of the `datetime` parameter. [`String`](/reference/data-types/string)
+ [`String`](/core/reference/data-types/string)
+- `datetime` — Date and time. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone name for the returned datetime. If not specified, the function uses the timezone of the `datetime` parameter. [`String`](/core/reference/data-types/string)
**Returned value**
@@ -1380,9 +1380,9 @@ Returns the truncated date and time value.
| Unit Argument | `datetime` Argument | Return Type |
|-----------------------------|---------------------------------------|----------------------------------------------------------------------------------------|
-| Year, Quarter, Month, Week | `Date32` or `DateTime64` or `Date` or `DateTime` | [`Date32`](/reference/data-types/date32) or [`Date`](/reference/data-types/date) |
-| Day, Hour, Minute, Second | `Date32`, `DateTime64`, `Date`, or `DateTime` | [`DateTime64`](/reference/data-types/datetime64) or [`DateTime`](/reference/data-types/datetime) |
-| Millisecond, Microsecond, | Any | [`DateTime64`](/reference/data-types/datetime64) |
+| Year, Quarter, Month, Week | `Date32` or `DateTime64` or `Date` or `DateTime` | [`Date32`](/core/reference/data-types/date32) or [`Date`](/core/reference/data-types/date) |
+| Day, Hour, Minute, Second | `Date32`, `DateTime64`, `Date`, or `DateTime` | [`DateTime64`](/core/reference/data-types/datetime64) or [`DateTime`](/core/reference/data-types/datetime) |
+| Millisecond, Microsecond, | Any | [`DateTime64`](/core/reference/data-types/datetime64) |
| Nanosecond | | with scale 3, 6, or 9 |
**Examples**
@@ -1419,7 +1419,7 @@ Formats a date or date with time according to the given format string. `format`
`formatDateTime` uses MySQL datetime format style, refer to the [mysql docs](https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_date-format).
-The opposite operation of this function is [`parseDateTime`](/reference/functions/regular-functions/type-conversion-functions#parseDateTime).
+The opposite operation of this function is [`parseDateTime`](/core/reference/functions/regular-functions/type-conversion-functions#parseDateTime).
Using replacement fields, you can define a pattern for the resulting string.
The example column in the table below shows formatting result for `2018-01-02 22:33:44`.
@@ -1481,13 +1481,13 @@ formatDateTime(datetime, format[, timezone])
**Arguments**
-- `datetime` — A date or date time to format. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `format` — Format string with replacement fields. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone name for the formatted time. [`String`](/reference/data-types/string)
+- `datetime` — A date or date time to format. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `format` — Format string with replacement fields. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone name for the formatted time. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns time and date values according to the determined format. [`String`](/reference/data-types/string)
+Returns time and date values according to the determined format. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1548,7 +1548,7 @@ Introduced in: v20.1.0
Similar to `formatDateTime`, except that it formats datetime in Joda style instead of MySQL style. Refer to [Joda Time documentation](https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html).
-The opposite operation of this function is [`parseDateTimeInJodaSyntax`](/reference/functions/regular-functions/type-conversion-functions#parseDateTimeInJodaSyntax).
+The opposite operation of this function is [`parseDateTimeInJodaSyntax`](/core/reference/functions/regular-functions/type-conversion-functions#parseDateTimeInJodaSyntax).
Using replacement fields, you can define a pattern for the resulting string.
@@ -1589,13 +1589,13 @@ formatDateTimeInJodaSyntax(datetime, format[, timezone])
**Arguments**
-- `datetime` — A date or date time to format. [`DateTime`](/reference/data-types/datetime) or [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime64`](/reference/data-types/datetime64)
-- `format` — Format string with Joda-style replacement fields. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone name for the formatted time. [`String`](/reference/data-types/string)
+- `datetime` — A date or date time to format. [`DateTime`](/core/reference/data-types/datetime) or [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `format` — Format string with Joda-style replacement fields. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone name for the formatted time. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns time and date values according to the determined format. [`String`](/reference/data-types/string)
+Returns time and date values according to the determined format. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1617,7 +1617,7 @@ Introduced in: v23.11.0
For a given number of days elapsed since [1 January 0000](https://en.wikipedia.org/wiki/Year_zero), returns the corresponding date in the [proleptic Gregorian calendar defined by ISO 8601](https://en.wikipedia.org/wiki/Gregorian_calendar#Proleptic_Gregorian_calendar).
-The calculation is the same as in MySQL's `FROM_DAYS()` function. The result is undefined if it cannot be represented within the bounds of the [Date](/reference/data-types/date) type.
+The calculation is the same as in MySQL's `FROM_DAYS()` function. The result is undefined if it cannot be represented within the bounds of the [Date](/core/reference/data-types/date) type.
**Syntax**
@@ -1630,11 +1630,11 @@ fromDaysSinceYearZero(days)
**Arguments**
-- `days` — The number of days passed since year zero. [`UInt32`](/reference/data-types/int-uint)
+- `days` — The number of days passed since year zero. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the date corresponding to the number of days passed since year zero. [`Date`](/reference/data-types/date)
+Returns the date corresponding to the number of days passed since year zero. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -1657,7 +1657,7 @@ fromDaysSinceYearZero(toDaysSinceYearZero(toDate('2023-09-08'))) AS date2
Introduced in: v23.11.0
For a given number of days elapsed since [1 January 0000](https://en.wikipedia.org/wiki/Year_zero), returns the corresponding date in the [proleptic Gregorian calendar defined by ISO 8601](https://en.wikipedia.org/wiki/Gregorian_calendar#Proleptic_Gregorian_calendar).
-The calculation is the same as in MySQL's `FROM_DAYS()` function. The result is undefined if it cannot be represented within the bounds of the [`Date32`](/reference/data-types/date32) type.
+The calculation is the same as in MySQL's `FROM_DAYS()` function. The result is undefined if it cannot be represented within the bounds of the [`Date32`](/core/reference/data-types/date32) type.
**Syntax**
@@ -1668,11 +1668,11 @@ fromDaysSinceYearZero32(days)
**Arguments**
-- `days` — The number of days passed since year zero. [`UInt32`](/reference/data-types/int-uint)
+- `days` — The number of days passed since year zero. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the date corresponding to the number of days passed since year zero. [`Date32`](/reference/data-types/date32)
+Returns the date corresponding to the number of days passed since year zero. [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -1705,11 +1705,11 @@ fromModifiedJulianDay(day)
**Arguments**
-- `day` — Modified Julian Day number. [`(U)Int*`](/reference/data-types/int-uint)
+- `day` — Modified Julian Day number. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns date in text form. [`String`](/reference/data-types/string)
+Returns date in text form. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1740,11 +1740,11 @@ fromModifiedJulianDayOrNull(day)
**Arguments**
-- `day` — Modified Julian Day number. [`(U)Int*`](/reference/data-types/int-uint)
+- `day` — Modified Julian Day number. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns date in text form for valid `day` argument, otherwise `null`. [`Nullable(String)`](/reference/data-types/nullable)
+Returns date in text form for valid `day` argument, otherwise `null`. [`Nullable(String)`](/core/reference/data-types/nullable)
**Examples**
@@ -1781,12 +1781,12 @@ fromUTCTimestamp(datetime, time_zone)
**Arguments**
-- `datetime` — A date or date with time const value or an expression. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `time_zone` — A String type const value or an expression representing the time zone. [`String`](/reference/data-types/string)
+- `datetime` — A date or date with time const value or an expression. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `time_zone` — A String type const value or an expression representing the time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime/DateTime64 in the specified timezone. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns DateTime/DateTime64 in the specified timezone. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1810,8 +1810,8 @@ This function converts a Unix timestamp to a calendar date and a time of a day.
It can be called in two ways:
-- When given a single argument of type [`Integer`](/reference/data-types/int-uint), it returns a value of type [`DateTime`](/reference/data-types/datetime), i.e. behaves like [`toDateTime`](/reference/functions/regular-functions/type-conversion-functions#toDateTime).
-- When given two or three arguments where the first argument is a value of type [`Integer`](/reference/data-types/int-uint), [`Date`](/reference/data-types/date), [`Date32`](/reference/data-types/date32), [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64), the second argument is a constant format string and the third argument is an optional constant time zone string, the function returns a value of type [`String`](/reference/data-types/string), i.e. it behaves like [`formatDateTime`](#formatDateTime).
+- When given a single argument of type [`Integer`](/core/reference/data-types/int-uint), it returns a value of type [`DateTime`](/core/reference/data-types/datetime), i.e. behaves like [`toDateTime`](/core/reference/functions/regular-functions/type-conversion-functions#toDateTime).
+- When given two or three arguments where the first argument is a value of type [`Integer`](/core/reference/data-types/int-uint), [`Date`](/core/reference/data-types/date), [`Date32`](/core/reference/data-types/date32), [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64), the second argument is a constant format string and the third argument is an optional constant time zone string, the function returns a value of type [`String`](/core/reference/data-types/string), i.e. it behaves like [`formatDateTime`](#formatDateTime).
In this case, [MySQL's datetime format style](https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_date-format) is used.
@@ -1826,13 +1826,13 @@ fromUnixTimestamp(timestamp[, format[, timezone]])
**Arguments**
-- `timestamp` — Unix timestamp or date/date with time value. [`(U)Int*`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `format` — Optional. Constant format string for output formatting. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Constant time zone string. [`String`](/reference/data-types/string)
+- `timestamp` — Unix timestamp or date/date with time value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `format` — Optional. Constant format string for output formatting. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Constant time zone string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `DateTime` of the timestamp when called with one argument, or a String when called with two or three arguments. [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string)
+Returns `DateTime` of the timestamp when called with one argument, or a String when called with two or three arguments. [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string)
**Examples**
@@ -1868,9 +1868,9 @@ This function converts a Unix timestamp to a calendar date and a time of a day.
It can be called in two ways:
-When given a single argument of type [`Integer`](/reference/data-types/int-uint), it returns a value of type [`DateTime`](/reference/data-types/datetime), i.e. behaves like [`toDateTime`](/reference/functions/regular-functions/type-conversion-functions#toDateTime).
+When given a single argument of type [`Integer`](/core/reference/data-types/int-uint), it returns a value of type [`DateTime`](/core/reference/data-types/datetime), i.e. behaves like [`toDateTime`](/core/reference/functions/regular-functions/type-conversion-functions#toDateTime).
-When given two or three arguments where the first argument is a value of type [`Integer`](/reference/data-types/int-uint), [`Date`](/reference/data-types/date), [`Date32`](/reference/data-types/date32), [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64), the second argument is a constant format string and the third argument is an optional constant time zone string, the function returns a value of type [`String`](/reference/data-types/string), i.e. it behaves like [`formatDateTimeInJodaSyntax`](#formatDateTimeInJodaSyntax). In this case, [Joda datetime format style](https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) is used.
+When given two or three arguments where the first argument is a value of type [`Integer`](/core/reference/data-types/int-uint), [`Date`](/core/reference/data-types/date), [`Date32`](/core/reference/data-types/date32), [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64), the second argument is a constant format string and the third argument is an optional constant time zone string, the function returns a value of type [`String`](/core/reference/data-types/string), i.e. it behaves like [`formatDateTimeInJodaSyntax`](#formatDateTimeInJodaSyntax). In this case, [Joda datetime format style](https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) is used.
**Syntax**
@@ -1882,13 +1882,13 @@ fromUnixTimestampInJodaSyntax(timestamp, format[, timezone])
**Arguments**
-- `timestamp` — Unix timestamp or date/time value. [`(U)Int*`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `format` — Optional. Constant format string using Joda syntax for output formatting. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Constant time zone string. [`String`](/reference/data-types/string)
+- `timestamp` — Unix timestamp or date/time value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `format` — Optional. Constant format string using Joda syntax for output formatting. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Constant time zone string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a date with time when called with one argument, or a String when called with two or three arguments.} [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string)
+Returns a date with time when called with one argument, or a String when called with two or three arguments.} [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string)
**Examples**
@@ -1922,14 +1922,14 @@ makeDate(year, day_of_year)
**Arguments**
-- `year` — Year number. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `month` — Month number (1-12). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `day` — Day of the month (1-31). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `day_of_year` — Day of the year (1-365). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `year` — Year number. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `month` — Month number (1-12). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `day` — Day of the month (1-31). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `day_of_year` — Day of the year (1-365). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a `Date` value constructed from the provided arguments [`Date`](/reference/data-types/date)
+Returns a `Date` value constructed from the provided arguments [`Date`](/core/reference/data-types/date)
**Examples**
@@ -1975,14 +1975,14 @@ makeDate32(year, day_of_year)
**Arguments**
-- `year` — Year number. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `month` — Month number (1-12). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `day` — Day of the month (1-31). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `day_of_year` — Day of the year (1-365). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `year` — Year number. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `month` — Month number (1-12). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `day` — Day of the month (1-31). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `day_of_year` — Day of the year (1-365). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a `Date32` value constructed from the provided arguments [`Date32`](/reference/data-types/date32)
+Returns a `Date32` value constructed from the provided arguments [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -2025,17 +2025,17 @@ makeDateTime(year, month, day, hour, minute, second[, timezone])
**Arguments**
-- `year` — Year number. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `month` — Month number (1-12). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `day` — Day of the month (1-31). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `hour` — Hour (0-23). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `minute` — Minute (0-59). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `second` — Second (0-59). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `timezone` — Timezone name. [`String`](/reference/data-types/string)
+- `year` — Year number. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `month` — Month number (1-12). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `day` — Day of the month (1-31). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `hour` — Hour (0-23). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `minute` — Minute (0-59). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `second` — Second (0-59). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `timezone` — Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime` value constructed from the provided arguments [`DateTime`](/reference/data-types/datetime)
+Returns a `DateTime` value constructed from the provided arguments [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -2066,19 +2066,19 @@ makeDateTime64(year, month, day, hour, minute, second[, fraction[, precision[, t
**Arguments**
-- `year` — Year number. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `month` — Month number (1-12). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `day` — Day of the month (1-31). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `hour` — Hour (0-23). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `minute` — Minute (0-59). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `second` — Second (0-59). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `fraction` — Fractional part of the second. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `precision` — Precision for the fractional part (0-9). [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Timezone name. [`String`](/reference/data-types/string)
+- `year` — Year number. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `month` — Month number (1-12). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `day` — Day of the month (1-31). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `hour` — Hour (0-23). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `minute` — Minute (0-59). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `second` — Second (0-59). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `fraction` — Fractional part of the second. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `precision` — Precision for the fractional part (0-9). [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime64` value constructed from the provided arguments [`DateTime64`](/reference/data-types/datetime64)
+Returns a `DateTime64` value constructed from the provided arguments [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2109,11 +2109,11 @@ monthName(datetime)
**Arguments**
-- `datetime` — Date or date with time. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the name of the month. [`String`](/reference/data-types/string)
+Returns the name of the month. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2147,11 +2147,11 @@ now([timezone])
**Arguments**
-- `timezone` — Optional. Timezone name for the returned value. [`String`](/reference/data-types/string)
+- `timezone` — Optional. Timezone name for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the current date and time. [`DateTime`](/reference/data-types/datetime)
+Returns the current date and time. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -2206,12 +2206,12 @@ now64([scale[, timezone]])
**Arguments**
-- `scale` — Optional. Tick size (precision): 10^-precision seconds. Valid range: [0 : 9]. Typically, are used - 3 (default) (milliseconds), 6 (microseconds), 9 (nanoseconds). [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name for the returned value. [`String`](/reference/data-types/string)
+- `scale` — Optional. Tick size (precision): 10^-precision seconds. Valid range: [0 : 9]. Typically, are used - 3 (default) (milliseconds), 6 (microseconds), 9 (nanoseconds). [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns current date and time with sub-second precision. [`DateTime64`](/reference/data-types/datetime64)
+Returns current date and time with sub-second precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2244,11 +2244,11 @@ nowInBlock([timezone])
**Arguments**
-- `timezone` — Optional. Timezone name for the returned value. [`String`](/reference/data-types/string)
+- `timezone` — Optional. Timezone name for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the current date and time at the moment of processing of each block of data. [`DateTime`](/reference/data-types/datetime)
+Returns the current date and time at the moment of processing of each block of data. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -2289,12 +2289,12 @@ nowInBlock64([scale[, timezone]])
**Arguments**
-- `scale` — Optional. Tick size (precision): 10^-precision seconds. Valid range: [0 : 9]. Typically, are used - 3 (default) (milliseconds), 6 (microseconds), 9 (nanoseconds). [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name for the returned value. [`String`](/reference/data-types/string)
+- `scale` — Optional. Tick size (precision): 10^-precision seconds. Valid range: [0 : 9]. Typically, are used - 3 (default) (milliseconds), 6 (microseconds), 9 (nanoseconds). [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the current date and time at the moment of processing of each block of data with sub-second precision. [`DateTime64`](/reference/data-types/datetime64)
+Returns the current date and time at the moment of processing of each block of data with sub-second precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2322,7 +2322,7 @@ FORMAT PrettyCompactMonoBlock
Introduced in: v23.6.0
-Returns the timezone of the server, i.e. the value of the [`timezone`](/reference/settings/server-settings/settings#timezone) setting.
+Returns the timezone of the server, i.e. the value of the [`timezone`](/core/reference/settings/server-settings/settings#timezone) setting.
If the function is executed in the context of a distributed table, then it generates a normal column with values relevant to each shard. Otherwise, it produces a constant value.
@@ -2340,7 +2340,7 @@ serverTimezone()
**Returned value**
-Returns the server timezone as a [`String`](/reference/data-types/string)
+Returns the server timezone as a [`String`](/core/reference/data-types/string)
**Examples**
@@ -2372,12 +2372,12 @@ subDate(datetime, interval)
**Arguments**
-- `datetime` — The date or date with time from which `interval` is subtracted. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `interval` — Interval to subtract. [`Interval`](/reference/data-types/int-uint)
+- `datetime` — The date or date with time from which `interval` is subtracted. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `interval` — Interval to subtract. [`Interval`](/core/reference/data-types/int-uint)
**Returned value**
-Returns date or date with time obtained by subtracting `interval` from `datetime`. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns date or date with time obtained by subtracting `interval` from `datetime`. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2408,12 +2408,12 @@ subtractDays(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of days from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of days to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of days from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of days to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` days [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` days [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2463,12 +2463,12 @@ subtractHours(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of hours from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of hours to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of hours from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of hours to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` hours [`DateTime`](/reference/data-types/datetime) or [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` hours [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -2521,12 +2521,12 @@ subtractInterval(interval_1, interval_2)
**Arguments**
-- `interval_1` — First interval or interval of tuples. [`Interval`](/reference/data-types/int-uint) or [`Tuple(Interval)`](/reference/data-types/tuple)
-- `interval_2` — Second interval to be negated. [`Interval`](/reference/data-types/int-uint)
+- `interval_1` — First interval or interval of tuples. [`Interval`](/core/reference/data-types/int-uint) or [`Tuple(Interval)`](/core/reference/data-types/tuple)
+- `interval_2` — Second interval to be negated. [`Interval`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple of intervals [`Tuple(T)`](/reference/data-types/tuple)
+Returns a tuple of intervals [`Tuple(T)`](/core/reference/data-types/tuple)
**Examples**
@@ -2565,12 +2565,12 @@ subtractMicroseconds(datetime, num)
**Arguments**
-- `datetime` — Date with time to subtract specified number of microseconds from. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of microseconds to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date with time to subtract specified number of microseconds from. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of microseconds to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` microseconds [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` microseconds [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2618,12 +2618,12 @@ subtractMilliseconds(datetime, num)
**Arguments**
-- `datetime` — Date with time to subtract specified number of milliseconds from. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of milliseconds to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date with time to subtract specified number of milliseconds from. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of milliseconds to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` milliseconds [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` milliseconds [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2671,12 +2671,12 @@ subtractMinutes(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of minutes from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of minutes to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of minutes from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of minutes to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` minutes [`DateTime`](/reference/data-types/datetime) or [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` minutes [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -2726,12 +2726,12 @@ subtractMonths(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of months from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of months to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of months from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of months to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` months [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` months [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2781,12 +2781,12 @@ subtractNanoseconds(datetime, num)
**Arguments**
-- `datetime` — Date with time to subtract specified number of nanoseconds from. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of nanoseconds to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date with time to subtract specified number of nanoseconds from. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of nanoseconds to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` nanoseconds [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` nanoseconds [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2834,12 +2834,12 @@ subtractQuarters(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of quarters from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of quarters to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of quarters from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of quarters to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` quarters [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` quarters [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2889,12 +2889,12 @@ subtractSeconds(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of seconds from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of seconds to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of seconds from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of seconds to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` seconds [`DateTime`](/reference/data-types/datetime) or [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` seconds [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -2944,12 +2944,12 @@ subtractTupleOfIntervals(datetime, intervals)
**Arguments**
-- `datetime` — Date or date with time to subtract intervals from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `intervals` — Tuple of intervals to subtract from `datetime`. [`Tuple(Interval)`](/reference/data-types/tuple)
+- `datetime` — Date or date with time to subtract intervals from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `intervals` — Tuple of intervals to subtract from `datetime`. [`Tuple(Interval)`](/core/reference/data-types/tuple)
**Returned value**
-Returns `date` with subtracted `intervals` [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `date` with subtracted `intervals` [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -2980,12 +2980,12 @@ subtractWeeks(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of weeks from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of weeks to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of weeks from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of weeks to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` weeks [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` weeks [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -3035,12 +3035,12 @@ subtractYears(datetime, num)
**Arguments**
-- `datetime` — Date or date with time to subtract specified number of years from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `num` — Number of years to subtract. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `datetime` — Date or date with time to subtract specified number of years from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `num` — Number of years to subtract. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `datetime` minus `num` years [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns `datetime` minus `num` years [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -3095,12 +3095,12 @@ timeDiff(startdate, enddate)
**Arguments**
-- `startdate` — The first time value to subtract (the subtrahend). [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `enddate` — The second time value to subtract from (the minuend). [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `startdate` — The first time value to subtract (the subtrahend). [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `enddate` — The second time value to subtract from (the minuend). [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the difference between `enddate` and `startdate` expressed in seconds. [`Int64`](/reference/data-types/int-uint)
+Returns the difference between `enddate` and `startdate` expressed in seconds. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -3162,12 +3162,12 @@ timeSlot(time[, time_zone])
**Arguments**
-- `time` — Time to round to the start of a half-an-hour length interval. [`DateTime`](/reference/data-types/datetime) or [`Date32`](/reference/data-types/date32) or [`DateTime64`](/reference/data-types/datetime64)
-- `time_zone` — Optional. A String type const value or an expression representing the time zone. [`String`](/reference/data-types/string)
+- `time` — Time to round to the start of a half-an-hour length interval. [`DateTime`](/core/reference/data-types/datetime) or [`Date32`](/core/reference/data-types/date32) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `time_zone` — Optional. A String type const value or an expression representing the time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the time rounded to the start of a half-an-hour length interval. [`DateTime`](/reference/data-types/datetime)
+Returns the time rounded to the start of a half-an-hour length interval. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -3202,13 +3202,13 @@ timeSlots(StartTime, Duration[, Size])
**Arguments**
-- `StartTime` — Starting time for the interval. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `Duration` — Duration of the interval in seconds. [`UInt32`](/reference/data-types/int-uint) or [`DateTime64`](/reference/data-types/datetime64)
-- `Size` — Optional. Size of time slots in seconds. Default is 1800 (30 minutes). [`UInt32`](/reference/data-types/int-uint) or [`DateTime64`](/reference/data-types/datetime64)
+- `StartTime` — Starting time for the interval. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `Duration` — Duration of the interval in seconds. [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `Size` — Optional. Size of time slots in seconds. Default is 1800 (30 minutes). [`UInt32`](/core/reference/data-types/int-uint) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns an array of DateTime/DateTime64 (return type matches the type of `StartTime`). For DateTime64, the return value's scale can differ from the scale of `StartTime` - the highest scale among all given arguments is taken. [`Array(DateTime)`](/reference/data-types/array) or [`Array(DateTime64)`](/reference/data-types/array)
+Returns an array of DateTime/DateTime64 (return type matches the type of `StartTime`). For DateTime64, the return value's scale can differ from the scale of `StartTime` - the highest scale among all given arguments is taken. [`Array(DateTime)`](/core/reference/data-types/array) or [`Array(DateTime64)`](/core/reference/data-types/array)
**Examples**
@@ -3236,7 +3236,7 @@ SELECT timeSlots(toDateTime64('1980-12-12 21:01:02.1234', 4, 'UTC'), toDecimal64
Introduced in: v23.9.0
-Converts the first argument `expr` to type [`DateTime64(6)`](/reference/data-types/datetime64).
+Converts the first argument `expr` to type [`DateTime64(6)`](/core/reference/data-types/datetime64).
If a second argument `expr_time` is provided, it adds the specified time to the converted value.
@@ -3248,12 +3248,12 @@ timestamp(expr[, expr_time])
**Arguments**
-- `expr` — Date or date with time. [`String`](/reference/data-types/string)
-- `expr_time` — Optional. Time to add to the converted value. [`String`](/reference/data-types/string)
+- `expr` — Date or date with time. [`String`](/core/reference/data-types/string)
+- `expr_time` — Optional. Time to add to the converted value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the converted value of `expr`, or `expr` with added time [`DateTime64(6)`](/reference/data-types/datetime64)
+Returns the converted value of `expr`, or `expr` with added time [`DateTime64(6)`](/core/reference/data-types/datetime64)
**Examples**
@@ -3303,7 +3303,7 @@ timezone()
**Returned value**
-Returns the canonical time zone name as a [`String`](/reference/data-types/string)
+Returns the canonical time zone name as a [`String`](/core/reference/data-types/string)
**Examples**
@@ -3323,7 +3323,7 @@ SELECT timezone()
Introduced in: v21.4.0
-Returns the timezone name of a [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) value.
+Returns the timezone name of a [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) value.
**Syntax**
@@ -3336,12 +3336,12 @@ timezoneOf(datetime)
**Arguments**
-- `datetime` — A value of type. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone name to convert the `datetime` value's timezone to. [`String`](/reference/data-types/string)
+- `datetime` — A value of type. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone name to convert the `datetime` value's timezone to. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the timezone name for `datetime` [`String`](/reference/data-types/string)
+Returns the timezone name for `datetime` [`String`](/core/reference/data-types/string)
**Examples**
@@ -3375,11 +3375,11 @@ timezoneOffset(datetime)
**Arguments**
-- `datetime` — `DateTime` value to get the timezone offset for. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — `DateTime` value to get the timezone offset for. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the offset from UTC in seconds [`Int32`](/reference/data-types/int-uint)
+Returns the offset from UTC in seconds [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -3415,11 +3415,11 @@ toDayOfMonth(datetime)
**Arguments**
-- `datetime` — Date or date with time to get the day of month from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date or date with time to get the day of month from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the day of the month of the given date/time [`UInt8`](/reference/data-types/int-uint)
+Returns the day of the month of the given date/time [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3462,13 +3462,13 @@ toDayOfWeek(datetime[, mode[, timezone]])
**Arguments**
-- `datetime` — Date or date with time to get the day of week from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `mode` — Optional. Integer specifying the week mode (0-3). Defaults to 0 if omitted. [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone to use for the conversion. [`String`](/reference/data-types/string)
+- `datetime` — Date or date with time to get the day of week from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `mode` — Optional. Integer specifying the week mode (0-3). Defaults to 0 if omitted. [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone to use for the conversion. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the day of the week for the given `Date` or `DateTime` [`UInt8`](/reference/data-types/int-uint)
+Returns the day of the week for the given `Date` or `DateTime` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3504,11 +3504,11 @@ toDayOfYear(datetime)
**Arguments**
-- `datetime` — Date or date with time to get the day of year from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date or date with time to get the day of year from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the day of the year of the given Date or DateTime [`UInt16`](/reference/data-types/int-uint)
+Returns the day of the year of the given Date or DateTime [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -3541,11 +3541,11 @@ toDaysInMonth(datetime)
**Arguments**
-- `datetime` — Date or date with time to get the number of days in the month from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date or date with time to get the number of days in the month from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of days in the month of the given date/time. [`UInt8`](/reference/data-types/int-uint)
+Returns the number of days in the month of the given date/time. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3581,12 +3581,12 @@ toDaysSinceYearZero(date[, time_zone])
**Arguments**
-- `date` — The date or date with time for which to calculate the number of days since year zero from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `time_zone` — Time zone. [`String`](/reference/data-types/string)
+- `date` — The date or date with time for which to calculate the number of days since year zero from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `time_zone` — Time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of days passed since date `0000-01-01`. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of days passed since date `0000-01-01`. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -3619,11 +3619,11 @@ toHour(datetime)
**Arguments**
-- `datetime` — Date with time to get the hour from. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date with time to get the hour from. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the hour (0-23) of `datetime`. [`UInt8`](/reference/data-types/int-uint)
+Returns the hour (0-23) of `datetime`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3661,12 +3661,12 @@ toISOWeek(datetime[, timezone])
**Arguments**
-- `datetime` — Date or date with time to get the ISO week number from. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`Date32`](/reference/data-types/date32) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Time zone. [`String`](/reference/data-types/string)
+- `datetime` — Date or date with time to get the ISO week number from. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`Date32`](/core/reference/data-types/date32) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the ISO week number according to ISO 8601 standard. Returns a number between 1 and 53. [`UInt8`](/reference/data-types/int-uint)
+Returns the ISO week number according to ISO 8601 standard. Returns a number between 1 and 53. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3709,11 +3709,11 @@ toISOYear(datetime)
**Arguments**
-- `datetime` — The value with date or date with time. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — The value with date or date with time. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the input value converted to an ISO year number. [`UInt16`](/reference/data-types/int-uint)
+Returns the input value converted to an ISO year number. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -3738,7 +3738,7 @@ Introduced in: v1.1.0
Rounds up a date or date with time to the last day of the month.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -3752,11 +3752,11 @@ toLastDayOfMonth(value)
**Arguments**
-- `value` — The date or date with time to round up to the last day of the month. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — The date or date with time to round up to the last day of the month. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the date of the last day of the month for the given date or date with time. [`Date`](/reference/data-types/date)
+Returns the date of the last day of the month for the given date or date with time. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -3779,7 +3779,7 @@ Introduced in: v23.5.0
Rounds a date or date with time up to the nearest Saturday or Sunday.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -3791,13 +3791,13 @@ toLastDayOfWeek(datetime[, mode[, timezone]])
**Arguments**
-- `datetime` — A date or date with time to convert. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`Date32`](/reference/data-types/date32) or [`DateTime64`](/reference/data-types/datetime64)
-- `mode` — Determines the first day of the week as described in the `toWeek()` function. Default `0`. [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Optional. The timezone to use for the conversion. If not specified, the server's timezone is used. [`String`](/reference/data-types/string)
+- `datetime` — A date or date with time to convert. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`Date32`](/core/reference/data-types/date32) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `mode` — Determines the first day of the week as described in the `toWeek()` function. Default `0`. [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. The timezone to use for the conversion. If not specified, the server's timezone is used. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the date of the nearest Saturday or Sunday, on or after the given date, depending on the mode. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32)
+Returns the date of the nearest Saturday or Sunday, on or after the given date, depending on the mode. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -3838,11 +3838,11 @@ toMillisecond(datetime)
**Arguments**
-- `datetime` — Date with time to get the millisecond from. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date with time to get the millisecond from. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the millisecond in the minute (0 - 59) of `datetime`. [`UInt16`](/reference/data-types/int-uint)
+Returns the millisecond in the minute (0 - 59) of `datetime`. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -3875,11 +3875,11 @@ toMinute(datetime)
**Arguments**
-- `datetime` — Date with time to get the minute from. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date with time to get the minute from. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the minute of the hour (0 - 59) of `datetime`. [`UInt8`](/reference/data-types/int-uint)
+Returns the minute of the hour (0 - 59) of `datetime`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3910,11 +3910,11 @@ toModifiedJulianDay(date)
**Arguments**
-- `date` — The date in String form. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `date` — The date in String form. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns Modified Julian Day number. [`Int32`](/reference/data-types/int-uint)
+Returns Modified Julian Day number. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -3945,11 +3945,11 @@ toModifiedJulianDayOrNull(date)
**Arguments**
-- `date` — Date in text form. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `date` — Date in text form. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the modified Julian day number for valid `date`, otherwise `null`. [`Nullable(Int32)`](/reference/data-types/nullable)
+Returns the modified Julian day number for valid `date`, otherwise `null`. [`Nullable(Int32)`](/core/reference/data-types/nullable)
**Examples**
@@ -3976,7 +3976,7 @@ Introduced in: v1.1.0
Rounds down a date or date with time to the Monday of the same week. Returns the date.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -3988,11 +3988,11 @@ toMonday(value)
**Arguments**
-- `value` — Date or date with time to round down to the Monday of the week. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — Date or date with time to round down to the Monday of the week. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the date of the Monday of the same week for the given date or date with time. [`Date`](/reference/data-types/date)
+Returns the date of the Monday of the same week for the given date or date with time. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -4027,11 +4027,11 @@ toMonth(datetime)
**Arguments**
-- `datetime` — Date or date with time to get the month from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date or date with time to get the month from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the month of the given date/time [`UInt8`](/reference/data-types/int-uint)
+Returns the month of the given date/time [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -4061,7 +4061,7 @@ toMonthNumSinceEpoch(date)
**Arguments**
-- `date` — A date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — A date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
@@ -4096,11 +4096,11 @@ toQuarter(datetime)
**Arguments**
-- `datetime` — Date or date with time to get the quarter of the year from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date or date with time to get the quarter of the year from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the quarter of the year for the given date/time [`UInt8`](/reference/data-types/int-uint)
+Returns the quarter of the year for the given date/time [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -4133,11 +4133,11 @@ toRelativeDayNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of days from a fixed reference point in the past. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of days from a fixed reference point in the past. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4170,11 +4170,11 @@ toRelativeHourNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of hours from a fixed reference point in the past. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of hours from a fixed reference point in the past. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4207,11 +4207,11 @@ toRelativeMinuteNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of minutes from a fixed reference point in the past. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of minutes from a fixed reference point in the past. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4244,11 +4244,11 @@ toRelativeMonthNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of months from a fixed reference point in the past. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of months from a fixed reference point in the past. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4281,11 +4281,11 @@ toRelativeQuarterNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of quarters from a fixed reference point in the past. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of quarters from a fixed reference point in the past. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4318,11 +4318,11 @@ toRelativeSecondNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of seconds from a fixed reference point in the past. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of seconds from a fixed reference point in the past. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4355,11 +4355,11 @@ toRelativeWeekNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of weeks from a fixed reference point in the past. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of weeks from a fixed reference point in the past. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4392,11 +4392,11 @@ toRelativeYearNum(date)
**Arguments**
-- `date` — Date or date with time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — Date or date with time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of years from a fixed reference point in the past. [`UInt16`](/reference/data-types/int-uint)
+Returns the number of years from a fixed reference point in the past. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -4429,11 +4429,11 @@ toSecond(datetime)
**Arguments**
-- `datetime` — Date with time to get the second from. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date with time to get the second from. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the second in the minute (0 - 59) of `datetime`. [`UInt8`](/reference/data-types/int-uint)
+Returns the second in the minute (0 - 59) of `datetime`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -4456,7 +4456,7 @@ Introduced in: v1.1.0
Rounds down a date with time to the start of the day.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4468,11 +4468,11 @@ toStartOfDay(datetime)
**Arguments**
-- `datetime` — A date or date with time to round. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `datetime` — A date or date with time to round. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the date with time rounded down to the start of the day. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns the date with time rounded down to the start of the day. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4495,7 +4495,7 @@ Introduced in: v1.1.0
Rounds down the date with time to the start of the fifteen-minute interval.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4507,11 +4507,11 @@ toStartOfFifteenMinutes(datetime)
**Arguments**
-- `datetime` — A date or date with time to round. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — A date or date with time to round. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the date with time rounded to the start of the nearest fifteen-minute interval. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns the date with time rounded to the start of the nearest fifteen-minute interval. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4540,7 +4540,7 @@ Introduced in: v22.6.0
Rounds down a date with time to the start of the nearest five-minute interval.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4554,11 +4554,11 @@ toStartOfFiveMinutes(datetime)
**Arguments**
-- `datetime` — A date with time to round. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — A date with time to round. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the date with time rounded to the start of the nearest five-minute interval. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns the date with time rounded to the start of the nearest five-minute interval. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4587,7 +4587,7 @@ Introduced in: v1.1.0
Rounds down a date with time to the start of the hour.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4599,11 +4599,11 @@ toStartOfHour(datetime)
**Arguments**
-- `datetime` — A date with time to round. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — A date with time to round. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the date with time rounded down to the start of the hour. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns the date with time rounded down to the start of the hour. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4627,7 +4627,7 @@ Introduced in: v1.1.0
Rounds down a date or date with time to the first day of the ISO year, which can be different than a regular year. See [ISO week date](https://en.wikipedia.org/wiki/ISO_week_date).
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4639,11 +4639,11 @@ toStartOfISOYear(value)
**Arguments**
-- `value` — The date or date with time to round down to the first day of the ISO year. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — The date or date with time to round down to the first day of the ISO year. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the first day of the ISO year for the given date or date with time. [`Date`](/reference/data-types/date)
+Returns the first day of the ISO year for the given date or date with time. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -4705,12 +4705,12 @@ toStartOfInterval(value, INTERVAL x unit[, origin[, time_zone]])
**Arguments**
-- `value` — Date or date with time value to round down. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — Date or date with time value to round down. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
- `x` — Interval length number. - `unit` — Interval unit: YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, SECOND, MILLISECOND, MICROSECOND, NANOSECOND. - `time_zone` — Optional. Time zone name as a string. - `origin` — Optional. Origin point for calculation (second overload only).
**Returned value**
-Returns the start of the interval containing the input value. [`DateTime`](/reference/data-types/datetime)
+Returns the start of the interval containing the input value. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -4753,12 +4753,12 @@ toStartOfMicrosecond(datetime[, timezone])
**Arguments**
-- `datetime` — Date and time. [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/reference/data-types/string)
+- `datetime` — Date and time. [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/core/reference/data-types/string)
**Returned value**
-Input value with sub-microseconds [`DateTime64`](/reference/data-types/datetime64)
+Input value with sub-microseconds [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4803,12 +4803,12 @@ toStartOfMillisecond(datetime[, timezone])
**Arguments**
-- `datetime` — Date and time. [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/reference/data-types/string)
+- `datetime` — Date and time. [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/core/reference/data-types/string)
**Returned value**
-Input value with sub-milliseconds. [`DateTime64`](/reference/data-types/datetime64)
+Input value with sub-milliseconds. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4845,7 +4845,7 @@ Introduced in: v1.1.0
Rounds down a date with time to the start of the minute.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4857,11 +4857,11 @@ toStartOfMinute(datetime)
**Arguments**
-- `datetime` — A date with time to round. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — A date with time to round. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the date with time rounded down to the start of the minute. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns the date with time rounded down to the start of the minute. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4888,7 +4888,7 @@ Introduced in: v1.1.0
Rounds down a date or date with time to the first day of the month.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4900,11 +4900,11 @@ toStartOfMonth(value)
**Arguments**
-- `value` — The date or date with time to round down to the first day of the month. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — The date or date with time to round down to the first day of the month. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the first day of the month for the given date or date with time. [`Date`](/reference/data-types/date)
+Returns the first day of the month for the given date or date with time. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -4935,12 +4935,12 @@ toStartOfNanosecond(datetime[, timezone])
**Arguments**
-- `datetime` — Date and time. [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/reference/data-types/string)
+- `datetime` — Date and time. [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/core/reference/data-types/string)
**Returned value**
-Input value with nanoseconds. [`DateTime64`](/reference/data-types/datetime64)
+Input value with nanoseconds. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -4977,7 +4977,7 @@ Introduced in: v1.1.0
Rounds down a date or date with time to the first day of the quarter. The first day of the quarter is either 1 January, 1 April, 1 July, or 1 October.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -4989,11 +4989,11 @@ toStartOfQuarter(value)
**Arguments**
-- `value` — The date or date with time to round down to the first day of the quarter. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — The date or date with time to round down to the first day of the quarter. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the first day of the quarter for the given date or date with time. [`Date`](/reference/data-types/date)
+Returns the first day of the quarter for the given date or date with time. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -5024,12 +5024,12 @@ toStartOfSecond(datetime[, timezone])
**Arguments**
-- `datetime` — Date and time to truncate sub-seconds from. [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/reference/data-types/string)
+- `datetime` — Date and time to truncate sub-seconds from. [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the returned value. If not specified, the function uses the timezone of the `value` parameter. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the input value without sub-seconds. [`DateTime64`](/reference/data-types/datetime64)
+Returns the input value without sub-seconds. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -5066,7 +5066,7 @@ Introduced in: v20.1.0
Rounds down a date with time to the start of the nearest ten-minute interval.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -5078,11 +5078,11 @@ toStartOfTenMinutes(datetime)
**Arguments**
-- `datetime` — A date with time. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — A date with time. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the date with time rounded to the start of the nearest ten-minute interval. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns the date with time rounded to the start of the nearest ten-minute interval. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -5111,7 +5111,7 @@ Introduced in: v20.1.0
Rounds a date or date with time down to the nearest Sunday or Monday.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -5123,13 +5123,13 @@ toStartOfWeek(datetime[, mode[, timezone]])
**Arguments**
-- `datetime` — A date or date with time to convert. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`Date32`](/reference/data-types/date32) or [`DateTime64`](/reference/data-types/datetime64)
-- `mode` — Determines the first day of the week as described in the `toWeek()` function. Default `0`. [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — The timezone to use for the conversion. If not specified, the server's timezone is used. [`String`](/reference/data-types/string)
+- `datetime` — A date or date with time to convert. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`Date32`](/core/reference/data-types/date32) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `mode` — Determines the first day of the week as described in the `toWeek()` function. Default `0`. [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — The timezone to use for the conversion. If not specified, the server's timezone is used. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the date of the nearest Sunday or Monday on, or prior to, the given date, depending on the mode. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32)
+Returns the date of the nearest Sunday or Monday on, or prior to, the given date, depending on the mode. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -5160,7 +5160,7 @@ Introduced in: v1.1.0
Rounds down a date or date with time to the first day of the year. Returns the date as a `Date` object.
-The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
+The return type can be configured by setting [`enable_extended_results_for_datetime_functions`](/core/reference/settings/session-settings#enable_extended_results_for_datetime_functions).
@@ -5172,11 +5172,11 @@ toStartOfYear(value)
**Arguments**
-- `value` — The date or date with time to round down. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `value` — The date or date with time to round down. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the first day of the year for the given date/time [`Date`](/reference/data-types/date)
+Returns the first day of the year for the given date/time [`Date`](/core/reference/data-types/date)
**Examples**
@@ -5212,12 +5212,12 @@ toTimeWithFixedDate(date[, timezone])
**Arguments**
-- `date` — Date to convert to a time. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the returned value. [`String`](/reference/data-types/string)
+- `date` — Date to convert to a time. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the time component of a date or date with time in the form of an offset to a fixed point in time (selected as 1970-01-02, currently). [`DateTime`](/reference/data-types/datetime)
+Returns the time component of a date or date with time in the form of an offset to a fixed point in time (selected as 1970-01-02, currently). [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -5252,12 +5252,12 @@ toTimezone(datetime, timezone)
**Arguments**
-- `date` — The value to convert. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — The target time zone name. [`String`](/reference/data-types/string)
+- `date` — The value to convert. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — The target time zone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the same timestamp as the input, but with the specified time zone [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns the same timestamp as the input, but with the specified time zone [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -5307,12 +5307,12 @@ toUTCTimestamp(datetime, time_zone)
**Arguments**
-- `datetime` — A date or date with time type const value or an expression. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `time_zone` — A String type const value or an expression representing the time zone. [`String`](/reference/data-types/string)
+- `datetime` — A date or date with time type const value or an expression. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `time_zone` — A String type const value or an expression representing the time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a date or date with time in UTC timezone. [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+Returns a date or date with time in UTC timezone. [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -5343,12 +5343,12 @@ toUnixTimestamp(date[, timezone])
**Arguments**
-- `date` — Value to convert. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64) or [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone to use for conversion. If not specified, the server's timezone is used. [`String`](/reference/data-types/string)
+- `date` — Value to convert. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64) or [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone to use for conversion. If not specified, the server's timezone is used. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Unix timestamp. [`UInt32`](/reference/data-types/int-uint)
+Returns the Unix timestamp. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5411,7 +5411,7 @@ For mode values with a meaning of "contains January 1", the week contains Januar
It does not matter how many days in the new year the week contained, even if it contained only one day.
I.e. if the last week of December contains January 1 of the next year, it will be week 1 of the next year.
-The first argument can also be specified as [`String`](/reference/data-types/string) in a format supported by [`parseDateTime64BestEffort()`](/reference/functions/regular-functions/type-conversion-functions#parseDateTime64BestEffort). Support for string arguments exists only for reasons of compatibility with MySQL which is expected by certain 3rd party tools. As string argument support may in future be made dependent on new MySQL-compatibility settings and because string parsing is generally slow, it is recommended to not use it.
+The first argument can also be specified as [`String`](/core/reference/data-types/string) in a format supported by [`parseDateTime64BestEffort()`](/core/reference/functions/regular-functions/type-conversion-functions#parseDateTime64BestEffort). Support for string arguments exists only for reasons of compatibility with MySQL which is expected by certain 3rd party tools. As string argument support may in future be made dependent on new MySQL-compatibility settings and because string parsing is generally slow, it is recommended to not use it.
**Syntax**
@@ -5424,12 +5424,12 @@ toWeek(datetime[, mode[, time_zone]])
**Arguments**
-- `datetime` — Date or date with time to get the week number from. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `mode` — Optional. A mode `0` to `9` determines the first day of the week and the range of the week number. Default `0`. - `time_zone` — Optional. Time zone. [`String`](/reference/data-types/string)
+- `datetime` — Date or date with time to get the week number from. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `mode` — Optional. A mode `0` to `9` determines the first day of the week and the range of the week number. Default `0`. - `time_zone` — Optional. Time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the week number according to the specified mode. [`UInt32`](/reference/data-types/int-uint)
+Returns the week number according to the specified mode. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5463,12 +5463,12 @@ toYYYYMM(datetime[, timezone])
**Arguments**
-- `datetime` — A date or date with time to convert. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the conversion. If provided, the timezone must be a string constant. [`String`](/reference/data-types/string)
+- `datetime` — A date or date with time to convert. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the conversion. If provided, the timezone must be a string constant. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a UInt32 number containing the year and month number (YYYY * 100 + MM). [`UInt32`](/reference/data-types/int-uint)
+Returns a UInt32 number containing the year and month number (YYYY * 100 + MM). [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5499,12 +5499,12 @@ toYYYYMMDD(datetime[, timezone])
**Arguments**
-- `datetime` — A date or date with time to convert. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the conversion. If provided, the timezone must be a string constant. [`String`](/reference/data-types/string)
+- `datetime` — A date or date with time to convert. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the conversion. If provided, the timezone must be a string constant. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `UInt32` number containing the year, month and day (YYYY * 10000 + MM * 100 + DD). [`UInt32`](/reference/data-types/int-uint)
+Returns a `UInt32` number containing the year, month and day (YYYY * 10000 + MM * 100 + DD). [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5536,12 +5536,12 @@ toYYYYMMDDhhmmss(datetime[, timezone])
**Arguments**
-- `datetime` — Date or date with time to convert. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the conversion. If provided, the timezone must be a string constant. [`String`](/reference/data-types/string)
+- `datetime` — Date or date with time to convert. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the conversion. If provided, the timezone must be a string constant. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `UInt64` number containing the year, month, day, hour, minute and second (YYYY * 10000000000 + MM * 100000000 + DD * 1000000 + hh * 10000 + mm * 100 + ss). [`UInt64`](/reference/data-types/int-uint)
+Returns a `UInt64` number containing the year, month, day, hour, minute and second (YYYY * 10000000000 + MM * 100000000 + DD * 1000000 + hh * 10000 + mm * 100 + ss). [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5574,11 +5574,11 @@ toYear(datetime)
**Arguments**
-- `datetime` — Date or date with time to get the year from. [`Date`](/reference/data-types/date) or [`Date32`](/reference/data-types/date32) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `datetime` — Date or date with time to get the year from. [`Date`](/core/reference/data-types/date) or [`Date32`](/core/reference/data-types/date32) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the year of the given Date or DateTime [`UInt16`](/reference/data-types/int-uint)
+Returns the year of the given Date or DateTime [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -5608,7 +5608,7 @@ toYearNumSinceEpoch(date)
**Arguments**
-- `date` — A date or date with time to convert. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `date` — A date or date with time to convert. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
@@ -5632,11 +5632,11 @@ Introduced in: v20.1.0
Returns the year and week for a date. The year in the result may be different from the year in the date argument for the first and the last week of the year.
-The mode argument works like the mode argument of [`toWeek()`](/reference/functions/regular-functions/date-time-functions#toWeek).
+The mode argument works like the mode argument of [`toWeek()`](/core/reference/functions/regular-functions/date-time-functions#toWeek).
Warning: The week number returned by `toYearWeek()` can be different from what the `toWeek()` returns. `toWeek()` always returns week number in the context of the given year, and in case `toWeek()` returns `0`, `toYearWeek()` returns the value corresponding to the last week of previous year. See `prev_yearWeek` in example below.
-The first argument can also be specified as [`String`](/reference/data-types/string) in a format supported by [`parseDateTime64BestEffort()`](/reference/functions/regular-functions/type-conversion-functions#parseDateTime64BestEffort). Support for string arguments exists only for reasons of compatibility with MySQL which is expected by certain 3rd party tools. As string argument support may in future be made dependent on new MySQL-compatibility settings and because string parsing is generally slow, it is recommended to not use it.
+The first argument can also be specified as [`String`](/core/reference/data-types/string) in a format supported by [`parseDateTime64BestEffort()`](/core/reference/functions/regular-functions/type-conversion-functions#parseDateTime64BestEffort). Support for string arguments exists only for reasons of compatibility with MySQL which is expected by certain 3rd party tools. As string argument support may in future be made dependent on new MySQL-compatibility settings and because string parsing is generally slow, it is recommended to not use it.
**Syntax**
@@ -5649,12 +5649,12 @@ toYearWeek(datetime[, mode[, timezone]])
**Arguments**
-- `datetime` — Date or date with time to get the year and week of. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `mode` — Optional. A mode `0` to `9` determines the first day of the week and the range of the week number. Default `0`. - `timezone` — Optional. Time zone. [`String`](/reference/data-types/string)
+- `datetime` — Date or date with time to get the year and week of. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `mode` — Optional. A mode `0` to `9` determines the first day of the week and the range of the week number. Default `0`. - `timezone` — Optional. Time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns year and week number as a combined integer value. [`UInt32`](/reference/data-types/int-uint)
+Returns year and week number as a combined integer value. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5690,7 +5690,7 @@ today()
**Returned value**
-Returns the current date [`Date`](/reference/data-types/date)
+Returns the current date [`Date`](/core/reference/data-types/date)
**Examples**
@@ -5741,7 +5741,7 @@ yesterday()
**Returned value**
-Returns yesterday's date. [`Date`](/reference/data-types/date)
+Returns yesterday's date. [`Date`](/core/reference/data-types/date)
**Examples**
diff --git a/reference/functions/regular-functions/distance-functions.mdx b/core/reference/functions/regular-functions/distance-functions.mdx
similarity index 76%
rename from reference/functions/regular-functions/distance-functions.mdx
rename to core/reference/functions/regular-functions/distance-functions.mdx
index 3c2f4f3a..cfc97a54 100644
--- a/reference/functions/regular-functions/distance-functions.mdx
+++ b/core/reference/functions/regular-functions/distance-functions.mdx
@@ -31,12 +31,12 @@ L1Distance(vector1, vector2)
**Arguments**
-- `vector1` — First vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `vector2` — Second vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
+- `vector1` — First vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `vector2` — Second vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the 1-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, the return type follows the arithmetic result type of the element-wise operations (integer types are preserved). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+Returns the 1-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, the return type follows the arithmetic result type of the element-wise operations (integer types are preserved). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -69,11 +69,11 @@ L1Norm(vector)
**Arguments**
-- `vector` — Vector or tuple of numeric values. [`Array(T)`](/reference/data-types/array) or [`Tuple(T)`](/reference/data-types/tuple)
+- `vector` — Vector or tuple of numeric values. [`Array(T)`](/core/reference/data-types/array) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the L1-norm or [taxicab geometry](https://en.wikipedia.org/wiki/Taxicab_geometry) distance. [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+Returns the L1-norm or [taxicab geometry](https://en.wikipedia.org/wiki/Taxicab_geometry) distance. [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Examples**
@@ -106,11 +106,11 @@ L1Normalize(tuple)
**Arguments**
-- `tuple` — A tuple of numeric values. [`Tuple(T)`](/reference/data-types/tuple)
+- `tuple` — A tuple of numeric values. [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the unit vector. [`Tuple(Float64)`](/reference/data-types/tuple)
+Returns the unit vector. [`Tuple(Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -143,12 +143,12 @@ L2Distance(vector1, vector2)
**Arguments**
-- `vector1` — First vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `vector2` — Second vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
+- `vector1` — First vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `vector2` — Second vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the 2-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/reference/data-types/float)
+Returns the 2-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -181,13 +181,13 @@ L2DistanceTransposed(vector1, vector2, p)
**Arguments**
-- `vectors` — Vectors. [`QBit(T, UInt64)`](/reference/data-types/qbit)
-- `reference` — Reference vector. [`Array(T)`](/reference/data-types/array)
-- `p` — Number of bits from each vector element to use in the distance calculation (1 to element bit-width). The quantization level controls the precision-speed trade-off. Using fewer bits results in faster I/O and calculations with reduced accuracy, while using more bits increases accuracy at the cost of performance. [`UInt`](/reference/data-types/int-uint)
+- `vectors` — Vectors. [`QBit(T, UInt64)`](/core/reference/data-types/qbit)
+- `reference` — Reference vector. [`Array(T)`](/core/reference/data-types/array)
+- `p` — Number of bits from each vector element to use in the distance calculation (1 to element bit-width). The quantization level controls the precision-speed trade-off. Using fewer bits results in faster I/O and calculations with reduced accuracy, while using more bits increases accuracy at the cost of performance. [`UInt`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the approximate 2-norm distance. Always returns `Float64`. [`Float64`](/reference/data-types/float)
+Returns the approximate 2-norm distance. Always returns `Float64`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -222,11 +222,11 @@ L2Norm(vector)
**Arguments**
-- `vector` — Vector or tuple of numeric values. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
+- `vector` — Vector or tuple of numeric values. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the L2-norm or [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance). [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+Returns the L2-norm or [Euclidean distance](https://en.wikipedia.org/wiki/Euclidean_distance). [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -259,11 +259,11 @@ L2Normalize(tuple)
**Arguments**
-- `tuple` — A tuple of numeric values. [`Tuple(T)`](/reference/data-types/tuple)
+- `tuple` — A tuple of numeric values. [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the unit vector. [`Tuple(Float64)`](/reference/data-types/tuple)
+Returns the unit vector. [`Tuple(Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -296,12 +296,12 @@ L2SquaredDistance(vector1, vector2)
**Arguments**
-- `vector1` — First vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `vector2` — Second vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
+- `vector1` — First vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `vector2` — Second vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the sum of the squares of the differences between the corresponding elements of two vectors. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, the return type follows the arithmetic result type of the element-wise operations (integer types are preserved). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+Returns the sum of the squares of the differences between the corresponding elements of two vectors. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, the return type follows the arithmetic result type of the element-wise operations (integer types are preserved). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -334,11 +334,11 @@ L2SquaredNorm(vector)
**Arguments**
-- `vector` — Vector or tuple of numeric values. [`Array(T)`](/reference/data-types/array) or [`Tuple(T)`](/reference/data-types/tuple)
+- `vector` — Vector or tuple of numeric values. [`Array(T)`](/core/reference/data-types/array) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the L2-norm squared. [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+Returns the L2-norm squared. [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Examples**
@@ -371,12 +371,12 @@ LinfDistance(vector1, vector2)
**Arguments**
-- `vector1` — First vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `vector2` — Second vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
+- `vector1` — First vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `vector2` — Second vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the infinity-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/reference/data-types/float)
+Returns the infinity-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -409,11 +409,11 @@ LinfNorm(vector)
**Arguments**
-- `vector` — Vector or tuple of numeric values. [`Array(T)`](/reference/data-types/array) or [`Tuple(T)`](/reference/data-types/tuple)
+- `vector` — Vector or tuple of numeric values. [`Array(T)`](/core/reference/data-types/array) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the Linf-norm or the maximum absolute value. [`Float64`](/reference/data-types/float)
+Returns the Linf-norm or the maximum absolute value. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -446,11 +446,11 @@ LinfNormalize(tuple)
**Arguments**
-- `tuple` — A tuple of numeric values. [`Tuple(T)`](/reference/data-types/tuple)
+- `tuple` — A tuple of numeric values. [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the unit vector. [`Tuple(Float64)`](/reference/data-types/tuple)
+Returns the unit vector. [`Tuple(Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -483,13 +483,13 @@ LpDistance(vector1, vector2, p)
**Arguments**
-- `vector1` — First vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `vector2` — Second vector. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `p` — The power. Possible values: real number from `[1; inf)`. [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `vector1` — First vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `vector2` — Second vector. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `p` — The power. Possible values: real number from `[1; inf)`. [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the p-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/reference/data-types/float)
+Returns the p-norm distance. For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -527,12 +527,12 @@ LpNorm(vector, p)
**Arguments**
-- `vector` — Vector or tuple of numeric values. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `p` — The power. Possible values are real numbers in the range `[1; inf)`. [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `vector` — Vector or tuple of numeric values. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `p` — The power. Possible values are real numbers in the range `[1; inf)`. [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the [Lp-norm](https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm). [`Float64`](/reference/data-types/float)
+Returns the [Lp-norm](https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm). [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -565,12 +565,12 @@ LpNormalize(tuple, p)
**Arguments**
-- `tuple` — A tuple of numeric values. [`Tuple(T)`](/reference/data-types/tuple)
-- `p` — The power. Possible values are any number in the range range from `[1; inf)`. [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `tuple` — A tuple of numeric values. [`Tuple(T)`](/core/reference/data-types/tuple)
+- `p` — The power. Possible values are any number in the range range from `[1; inf)`. [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the unit vector. [`Tuple(Float64)`](/reference/data-types/tuple)
+Returns the unit vector. [`Tuple(Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -603,12 +603,12 @@ cosineDistance(vector1, vector2)
**Arguments**
-- `vector1` — First tuple. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
-- `vector2` — Second tuple. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(T)`](/reference/data-types/array)
+- `vector1` — First tuple. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
+- `vector2` — Second tuple. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(T)`](/core/reference/data-types/array)
**Returned value**
-Returns the cosine distance (one minus the cosine similarity). For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/reference/data-types/float)
+Returns the cosine distance (one minus the cosine similarity). For `Array` inputs, returns `Float32` if the least common supertype of the element types is `Float32` or `BFloat16`, otherwise `Float64`. For `Tuple` inputs, always returns `Float64`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -641,13 +641,13 @@ cosineDistanceTransposed(vector1, vector2, p)
**Arguments**
-- `vectors` — Vectors. [`QBit(T, UInt64)`](/reference/data-types/qbit)
-- `reference` — Reference vector. [`Array(T)`](/reference/data-types/array)
-- `p` — Number of bits from each vector element to use in the distance calculation (1 to element bit-width). The quantization level controls the precision-speed trade-off. Using fewer bits results in faster I/O and calculations with reduced accuracy, while using more bits increases accuracy at the cost of performance. [`UInt`](/reference/data-types/int-uint)
+- `vectors` — Vectors. [`QBit(T, UInt64)`](/core/reference/data-types/qbit)
+- `reference` — Reference vector. [`Array(T)`](/core/reference/data-types/array)
+- `p` — Number of bits from each vector element to use in the distance calculation (1 to element bit-width). The quantization level controls the precision-speed trade-off. Using fewer bits results in faster I/O and calculations with reduced accuracy, while using more bits increases accuracy at the cost of performance. [`UInt`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the approximate cosine distance (one minus the cosine similarity). Always returns Float64. [`Float64`](/reference/data-types/float)
+Returns the approximate cosine distance (one minus the cosine similarity). Always returns Float64. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/regular-functions/embedded-dict-functions.mdx b/core/reference/functions/regular-functions/embedded-dict-functions.mdx
similarity index 88%
rename from reference/functions/regular-functions/embedded-dict-functions.mdx
rename to core/reference/functions/regular-functions/embedded-dict-functions.mdx
index 10658599..5f5cd0bc 100644
--- a/reference/functions/regular-functions/embedded-dict-functions.mdx
+++ b/core/reference/functions/regular-functions/embedded-dict-functions.mdx
@@ -12,7 +12,7 @@ In order for the functions below to work, the server config must specify the pat
As such, the examples shown in this section will throw an exception in [ClickHouse Fiddle](https://fiddle.clickhouse.com/) and in quick release and production deployments by default, unless first configured.
-For information about creating reference lists, see the section ["Dictionaries"](/reference/statements/create/dictionary/embedded).
+For information about creating reference lists, see the section ["Dictionaries"](/core/reference/statements/create/dictionary/embedded).
## Multiple Geobases {#multiple-geobases}
@@ -25,7 +25,7 @@ The 'clickhouse-server' config specifies the file with the regional hierarchy:
Besides this file, it also searches for files nearby that have the `_` symbol and any suffix appended to the name (before the file extension).
For example, it will also find the file `/opt/geo/regions_hierarchy_ua.txt`, if present. Here `ua` is called the dictionary key. For a dictionary without a suffix, the key is an empty string.
-All the dictionaries are re-loaded during runtime (once every certain number of seconds, as defined in the [`builtin_dictionaries_reload_interval`](/reference/settings/server-settings/settings#builtin_dictionaries_reload_interval) config parameter, or once an hour by default). However, the list of available dictionaries is defined once, when the server starts.
+All the dictionaries are re-loaded during runtime (once every certain number of seconds, as defined in the [`builtin_dictionaries_reload_interval`](/core/reference/settings/server-settings/settings#builtin_dictionaries_reload_interval) config parameter, or once an hour by default). However, the list of available dictionaries is defined once, when the server starts.
All functions for working with regions have an optional argument at the end – the dictionary key. It is referred to as the geobase.
@@ -48,12 +48,12 @@ regionToName(id\[, lang\])
```
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Name of the region in the corresponding language specified by `geobase`. [String](/reference/data-types/string).
+- Name of the region in the corresponding language specified by `geobase`. [String](/core/reference/data-types/string).
- Otherwise, an empty string.
**Example**
@@ -84,12 +84,12 @@ regionToCity(id [, geobase])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Region ID for the appropriate city, if it exists. [UInt32](/reference/data-types/int-uint).
+- Region ID for the appropriate city, if it exists. [UInt32](/core/reference/data-types/int-uint).
- 0, if there is none.
**Example**
@@ -128,12 +128,12 @@ regionToArea(id [, geobase])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Region ID for the appropriate area, if it exists. [UInt32](/reference/data-types/int-uint).
+- Region ID for the appropriate area, if it exists. [UInt32](/core/reference/data-types/int-uint).
- 0, if there is none.
**Example**
@@ -176,12 +176,12 @@ regionToDistrict(id [, geobase])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Region ID for the appropriate city, if it exists. [UInt32](/reference/data-types/int-uint).
+- Region ID for the appropriate city, if it exists. [UInt32](/core/reference/data-types/int-uint).
- 0, if there is none.
**Example**
@@ -224,12 +224,12 @@ regionToCountry(id [, geobase])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Region ID for the appropriate country, if it exists. [UInt32](/reference/data-types/int-uint).
+- Region ID for the appropriate country, if it exists. [UInt32](/core/reference/data-types/int-uint).
- 0, if there is none.
**Example**
@@ -268,12 +268,12 @@ regionToContinent(id [, geobase])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Region ID for the appropriate continent, if it exists. [UInt32](/reference/data-types/int-uint).
+- Region ID for the appropriate continent, if it exists. [UInt32](/core/reference/data-types/int-uint).
- 0, if there is none.
**Example**
@@ -312,12 +312,12 @@ regionToTopContinent(id[, geobase])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Identifier of the top level continent (the latter when you climb the hierarchy of regions).[UInt32](/reference/data-types/int-uint).
+- Identifier of the top level continent (the latter when you climb the hierarchy of regions).[UInt32](/core/reference/data-types/int-uint).
- 0, if there is none.
**Example**
@@ -346,7 +346,7 @@ SELECT regionToName(number::UInt32, 'en'), regionToTopContinent(number::UInt32)
### regionToPopulation {#regiontopopulation}
-Gets the population for a region. The population can be recorded in files with the geobase. See the section ["Dictionaries"](/reference/statements/create/dictionary/embedded). If the population is not recorded for the region, it returns 0. In the geobase, the population might be recorded for child regions, but not for parent regions.
+Gets the population for a region. The population can be recorded in files with the geobase. See the section ["Dictionaries"](/core/reference/statements/create/dictionary/embedded). If the population is not recorded for the region, it returns 0. In the geobase, the population might be recorded for child regions, but not for parent regions.
**Syntax**
@@ -356,12 +356,12 @@ regionToPopulation(id[, geobase])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Population for the region. [UInt32](/reference/data-types/int-uint).
+- Population for the region. [UInt32](/core/reference/data-types/int-uint).
- 0, if there is none.
**Example**
@@ -400,13 +400,13 @@ regionIn(lhs, rhs\[, geobase\])
**Parameters**
-- `lhs` — Lhs region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `rhs` — Rhs region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `lhs` — Lhs region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `rhs` — Rhs region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- 1, if it belongs. [UInt8](/reference/data-types/int-uint).
+- 1, if it belongs. [UInt8](/core/reference/data-types/int-uint).
- 0, if it doesn't belong.
**Implementation details**
@@ -444,12 +444,12 @@ regionHierarchy(id\[, geobase\])
**Parameters**
-- `id` — Region ID from the geobase. [UInt32](/reference/data-types/int-uint).
-- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/reference/data-types/string). Optional.
+- `id` — Region ID from the geobase. [UInt32](/core/reference/data-types/int-uint).
+- `geobase` — Dictionary key. See [Multiple Geobases](#multiple-geobases). [String](/core/reference/data-types/string). Optional.
**Returned value**
-- Array of region IDs consisting of the passed region and all parents along the chain. [Array](/reference/data-types/array)([UInt32](/reference/data-types/int-uint)).
+- Array of region IDs consisting of the passed region and all parents along the chain. [Array](/core/reference/data-types/array)([UInt32](/core/reference/data-types/int-uint)).
**Example**
diff --git a/reference/functions/regular-functions/encoding-functions.mdx b/core/reference/functions/regular-functions/encoding-functions.mdx
similarity index 87%
rename from reference/functions/regular-functions/encoding-functions.mdx
rename to core/reference/functions/regular-functions/encoding-functions.mdx
index 58fcf7dc..7449c471 100644
--- a/reference/functions/regular-functions/encoding-functions.mdx
+++ b/core/reference/functions/regular-functions/encoding-functions.mdx
@@ -33,12 +33,12 @@ bech32Decode(address[, 'raw'])
**Arguments**
-- `address` — A Bech32 string to decode. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `mode` — Optional. Pass `'raw'` to decode without stripping the first byte as a witness version. Use this for non-SegWit addresses (e.g. Cosmos SDK). [`String`](/reference/data-types/string)
+- `address` — A Bech32 string to decode. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `mode` — Optional. Pass `'raw'` to decode without stripping the first byte as a witness version. Use this for non-SegWit addresses (e.g. Cosmos SDK). [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a tuple consisting of `(hrp, data)` that was used to encode the string. The data is in binary format. [`Tuple(String, String)`](/reference/data-types/tuple)
+Returns a tuple consisting of `(hrp, data)` that was used to encode the string. The data is in binary format. [`Tuple(String, String)`](/core/reference/data-types/tuple)
**Examples**
@@ -69,9 +69,9 @@ Introduced in: v25.6.0
Encodes a binary data string, along with a human-readable part (HRP), using the [Bech32 or Bech32m](https://en.bitcoin.it/wiki/Bech32) algorithms.
-When using the [`FixedString`](/reference/data-types/fixedstring) data type, if a value does not fully fill the row it is padded with null characters.
+When using the [`FixedString`](/core/reference/data-types/fixedstring) data type, if a value does not fully fill the row it is padded with null characters.
While the `bech32Encode` function will handle this automatically for the hrp argument, for the data argument the values must not be padded.
-For this reason it is not recommended to use the [`FixedString`](/reference/data-types/fixedstring) data type for your data values unless you are
+For this reason it is not recommended to use the [`FixedString`](/core/reference/data-types/fixedstring) data type for your data values unless you are
certain that they are all the same length and ensure that your `FixedString` column is set to that length as well.
@@ -84,13 +84,13 @@ bech32Encode(hrp, data[, witver | 'bech32' | 'bech32m'])
**Arguments**
-- `hrp` — A String of `1 - 83` lowercase characters specifying the "human-readable part" of the code. Usually 'bc' or 'tb'. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `data` — A String of binary data to encode. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `witver_or_variant` — Optional. Either a UInt* witness version (default = 1, `0` for Bech32, `1`+ for Bech32m) or a String encoding variant: `'bech32'` (BIP173) or `'bech32m'` (BIP350). When a string variant is used, no witness version byte is prepended — this is needed for non-SegWit addresses such as Cosmos SDK. [`UInt*`](/reference/data-types/int-uint) or [`String`](/reference/data-types/string)
+- `hrp` — A String of `1 - 83` lowercase characters specifying the "human-readable part" of the code. Usually 'bc' or 'tb'. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `data` — A String of binary data to encode. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `witver_or_variant` — Optional. Either a UInt* witness version (default = 1, `0` for Bech32, `1`+ for Bech32m) or a String encoding variant: `'bech32'` (BIP173) or `'bech32m'` (BIP350). When a string variant is used, no witness version byte is prepended — this is needed for non-SegWit addresses such as Cosmos SDK. [`UInt*`](/core/reference/data-types/int-uint) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Bech32 address string, consisting of the human-readable part, a separator character which is always '1', and a data part. The length of the string will never exceed 90 characters. If the algorithm cannot generate a valid address from the input, it will return an empty string. [`String`](/reference/data-types/string)
+Returns a Bech32 address string, consisting of the human-readable part, a separator character which is always '1', and a data part. The length of the string will never exceed 90 characters. If the algorithm cannot generate a valid address from the input, it will return an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -164,11 +164,11 @@ bin(arg)
**Arguments**
-- `arg` — A value to convert to binary. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `arg` — A value to convert to binary. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns a string with the binary representation of the argument. [`String`](/reference/data-types/string)
+Returns a string with the binary representation of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -238,11 +238,11 @@ bitPositionsToArray(arg)
**Arguments**
-- `arg` — An integer value. [`(U)Int*`](/reference/data-types/int-uint)
+- `arg` — An integer value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array with the ascendingly ordered positions of 1 bits in the binary representation of the input. [`Array(UInt64)`](/reference/data-types/array)
+Returns an array with the ascendingly ordered positions of 1 bits in the binary representation of the input. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -286,11 +286,11 @@ bitmaskToArray(num)
**Arguments**
-- `num` — An integer value. [`(U)Int*`](/reference/data-types/int-uint)
+- `num` — An integer value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array with the ascendingly ordered powers of two which sum up to the input number. [`Array(UInt64)`](/reference/data-types/array)
+Returns an array with the ascendingly ordered powers of two which sum up to the input number. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -333,11 +333,11 @@ bitmaskToList(num)
**Arguments**
-- `num` — An integer value. [`(U)Int*`](/reference/data-types/int-uint)
+- `num` — An integer value. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string containing comma-separated powers of two. [`String`](/reference/data-types/string)
+Returns a string containing comma-separated powers of two. [`String`](/core/reference/data-types/string)
**Examples**
@@ -372,11 +372,11 @@ char(num1[, num2[, ...]])
**Arguments**
-- `num1[, num2[, num3 ...]]` — Numerical arguments interpreted as integers. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `num1[, num2[, num3 ...]]` — Numerical arguments interpreted as integers. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns a string of the given bytes. [`String`](/reference/data-types/string)
+Returns a string of the given bytes. [`String`](/core/reference/data-types/string)
**Examples**
@@ -432,11 +432,11 @@ hex(arg)
**Arguments**
-- `arg` — A value to convert to hexadecimal. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `arg` — A value to convert to hexadecimal. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns a string with the hexadecimal representation of the argument. [`String`](/reference/data-types/string)
+Returns a string with the hexadecimal representation of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -523,12 +523,12 @@ hilbertDecode(tuple_size, code)
**Arguments**
-- `tuple_size` — Integer value of no more than `2`. [`UInt8/16/32/64`](/reference/data-types/int-uint) or [`Tuple(UInt8/16/32/64)`](/reference/data-types/tuple)
-- `code` — `UInt64` code. [`UInt64`](/reference/data-types/int-uint)
+- `tuple_size` — Integer value of no more than `2`. [`UInt8/16/32/64`](/core/reference/data-types/int-uint) or [`Tuple(UInt8/16/32/64)`](/core/reference/data-types/tuple)
+- `code` — `UInt64` code. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple of the specified size. [`Tuple(UInt64)`](/reference/data-types/tuple)
+Returns a tuple of the specified size. [`Tuple(UInt64)`](/core/reference/data-types/tuple)
**Examples**
@@ -600,8 +600,8 @@ Accepts up to 2 unsigned integers as arguments and produces a UInt64 code.
**Expanded mode**
-Accepts a range mask ([Tuple](/reference/data-types/tuple)) as the
-first argument and up to 2 [unsigned integers](/reference/data-types/int-uint)
+Accepts a range mask ([Tuple](/core/reference/data-types/tuple)) as the
+first argument and up to 2 [unsigned integers](/core/reference/data-types/int-uint)
as other arguments.
Each number in the mask configures the number of bits by which the corresponding
@@ -620,12 +620,12 @@ hilbertEncode(range_mask, args)
**Arguments**
-- `args` — Up to two `UInt` values or columns of type `UInt`. [`UInt8/16/32/64`](/reference/data-types/int-uint)
-- `range_mask` — For the expanded mode, up to two `UInt` values or columns of type `UInt`. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `args` — Up to two `UInt` values or columns of type `UInt`. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
+- `range_mask` — For the expanded mode, up to two `UInt` values or columns of type `UInt`. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a `UInt64` code. [`UInt64`](/reference/data-types/int-uint)
+Returns a `UInt64` code. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -740,13 +740,13 @@ mortonDecode(range_mask, code)
**Arguments**
-- `tuple_size` — Integer value no more than 8. [`UInt8/16/32/64`](/reference/data-types/int-uint)
-- `range_mask` — For the expanded mode, the mask for each argument. The mask is a tuple of unsigned integers. Each number in the mask configures the amount of range shrink. [`Tuple(UInt8/16/32/64)`](/reference/data-types/tuple)
-- `code` — UInt64 code. [`UInt64`](/reference/data-types/int-uint)
+- `tuple_size` — Integer value no more than 8. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
+- `range_mask` — For the expanded mode, the mask for each argument. The mask is a tuple of unsigned integers. Each number in the mask configures the amount of range shrink. [`Tuple(UInt8/16/32/64)`](/core/reference/data-types/tuple)
+- `code` — UInt64 code. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple of the specified size. [`Tuple(UInt64)`](/reference/data-types/tuple)
+Returns a tuple of the specified size. [`Tuple(UInt64)`](/core/reference/data-types/tuple)
**Examples**
@@ -822,8 +822,8 @@ Accepts up to 8 unsigned integers as arguments and produces a `UInt64` code.
**Expanded mode**
-Accepts a range mask ([Tuple](/reference/data-types/tuple)) as the first argument and
-up to 8 [unsigned integers](/reference/data-types/int-uint) as other arguments.
+Accepts a range mask ([Tuple](/core/reference/data-types/tuple)) as the first argument and
+up to 8 [unsigned integers](/core/reference/data-types/int-uint) as other arguments.
Each number in the mask configures the amount of range expansion:
* 1 - no expansion
@@ -845,12 +845,12 @@ mortonEncode(range_mask, args)
**Arguments**
-- `args` — Up to 8 unsigned integers or columns of the aforementioned type. [`UInt8/16/32/64`](/reference/data-types/int-uint)
-- `range_mask` — For the expanded mode, the mask for each argument. The mask is a tuple of unsigned integers from `1` - `8`. Each number in the mask configures the amount of range shrink. [`Tuple(UInt8/16/32/64)`](/reference/data-types/tuple)
+- `args` — Up to 8 unsigned integers or columns of the aforementioned type. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
+- `range_mask` — For the expanded mode, the mask for each argument. The mask is a tuple of unsigned integers from `1` - `8`. Each number in the mask configures the amount of range shrink. [`Tuple(UInt8/16/32/64)`](/core/reference/data-types/tuple)
**Returned value**
-Returns a `UInt64` code. [`UInt64`](/reference/data-types/int-uint)
+Returns a `UInt64` code. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -940,11 +940,11 @@ sqidDecode(sqid)
**Arguments**
-- `sqid` — The sqid to decode. [`String`](/reference/data-types/string)
+- `sqid` — The sqid to decode. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of numbers from `sqid`. [`Array(UInt64)`](/reference/data-types/array)
+Returns an array of numbers from `sqid`. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -977,11 +977,11 @@ sqidEncode(n1[, n2, ...])
**Arguments**
-- `n1[, n2, ...]` — Arbitrarily many numbers. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `n1[, n2, ...]` — Arbitrarily many numbers. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a hash ID [`String`](/reference/data-types/string)
+Returns a hash ID [`String`](/core/reference/data-types/string)
**Examples**
@@ -1021,11 +1021,11 @@ unbin(arg)
**Arguments**
-- `arg` — A string containing any number of binary digits. [`String`](/reference/data-types/string)
+- `arg` — A string containing any number of binary digits. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a binary string (BLOB). [`String`](/reference/data-types/string)
+Returns a binary string (BLOB). [`String`](/core/reference/data-types/string)
**Examples**
@@ -1081,11 +1081,11 @@ unhex(arg)
**Arguments**
-- `arg` — A string containing any number of hexadecimal digits. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `arg` — A string containing any number of hexadecimal digits. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns a binary string (BLOB). [`String`](/reference/data-types/string)
+Returns a binary string (BLOB). [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/regular-functions/encryption-functions.mdx b/core/reference/functions/regular-functions/encryption-functions.mdx
similarity index 88%
rename from reference/functions/regular-functions/encryption-functions.mdx
rename to core/reference/functions/regular-functions/encryption-functions.mdx
index b9315433..2e3da4b7 100644
--- a/reference/functions/regular-functions/encryption-functions.mdx
+++ b/core/reference/functions/regular-functions/encryption-functions.mdx
@@ -63,13 +63,13 @@ HMAC(mode, message, key)
**Arguments**
-- `mode` — Hash algorithm name (case-insensitive). Supported: md5, sha1, sha224, sha256, sha384, sha512. [`String`](/reference/data-types/string)
-- `message` — Message to be authenticated. [`String`](/reference/data-types/string)
-- `key` — Secret key for HMAC. [`String`](/reference/data-types/string)
+- `mode` — Hash algorithm name (case-insensitive). Supported: md5, sha1, sha224, sha256, sha384, sha512. [`String`](/core/reference/data-types/string)
+- `message` — Message to be authenticated. [`String`](/core/reference/data-types/string)
+- `key` — Secret key for HMAC. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a binary string containing the HMAC digest. [`String`](/reference/data-types/string)
+Returns a binary string containing the HMAC digest. [`String`](/core/reference/data-types/string)
**Examples**
@@ -139,14 +139,14 @@ aes_decrypt_mysql(mode, ciphertext, key[, iv])
**Arguments**
-- `mode` — Decryption mode. [`String`](/reference/data-types/string)
-- `ciphertext` — Encrypted text that needs to be decrypted. [`String`](/reference/data-types/string)
-- `key` — Decryption key. [`String`](/reference/data-types/string)
-- `iv` — Optional. Initialization vector. [`String`](/reference/data-types/string)
+- `mode` — Decryption mode. [`String`](/core/reference/data-types/string)
+- `ciphertext` — Encrypted text that needs to be decrypted. [`String`](/core/reference/data-types/string)
+- `key` — Decryption key. [`String`](/core/reference/data-types/string)
+- `iv` — Optional. Initialization vector. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the decrypted String. [`String`](/reference/data-types/string)
+Returns the decrypted String. [`String`](/core/reference/data-types/string)
**Examples**
@@ -198,14 +198,14 @@ aes_encrypt_mysql(mode, plaintext, key[, iv])
**Arguments**
-- `mode` — Encryption mode. [`String`](/reference/data-types/string)
-- `plaintext` — Text that should be encrypted. [`String`](/reference/data-types/string)
-- `key` — Encryption key. If the key is longer than required by `mode`, MySQL-specific key folding is performed. [`String`](/reference/data-types/string)
-- `iv` — Optional. Initialization vector. Only the first 16 bytes are taken into account. [`String`](/reference/data-types/string)
+- `mode` — Encryption mode. [`String`](/core/reference/data-types/string)
+- `plaintext` — Text that should be encrypted. [`String`](/core/reference/data-types/string)
+- `key` — Encryption key. If the key is longer than required by `mode`, MySQL-specific key folding is performed. [`String`](/core/reference/data-types/string)
+- `iv` — Optional. Initialization vector. Only the first 16 bytes are taken into account. [`String`](/core/reference/data-types/string)
**Returned value**
-Ciphertext binary string. [`String`](/reference/data-types/string)
+Ciphertext binary string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -282,15 +282,15 @@ decrypt(mode, ciphertext, key[, iv, aad])
**Arguments**
-- `mode` — Decryption mode. [`String`](/reference/data-types/string)
-- `ciphertext` — Encrypted text that should be decrypted. [`String`](/reference/data-types/string)
-- `key` — Decryption key. [`String`](/reference/data-types/string)
-- `iv` — Initialization vector. Required for `-gcm` modes, optional for others. [`String`](/reference/data-types/string)
-- `aad` — Additional authenticated data. Won't decrypt if this value is incorrect. Works only in `-gcm` modes, for others throws an exception. [`String`](/reference/data-types/string)
+- `mode` — Decryption mode. [`String`](/core/reference/data-types/string)
+- `ciphertext` — Encrypted text that should be decrypted. [`String`](/core/reference/data-types/string)
+- `key` — Decryption key. [`String`](/core/reference/data-types/string)
+- `iv` — Initialization vector. Required for `-gcm` modes, optional for others. [`String`](/core/reference/data-types/string)
+- `aad` — Additional authenticated data. Won't decrypt if this value is incorrect. Works only in `-gcm` modes, for others throws an exception. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns decrypted plaintext. [`String`](/reference/data-types/string)
+Returns decrypted plaintext. [`String`](/core/reference/data-types/string)
**Examples**
@@ -359,15 +359,15 @@ encrypt(mode, plaintext, key[, iv, aad])
**Arguments**
-- `mode` — Encryption mode. [`String`](/reference/data-types/string)
-- `plaintext` — Text that should be encrypted. [`String`](/reference/data-types/string)
-- `key` — Encryption key. [`String`](/reference/data-types/string)
-- `iv` — Initialization vector. Required for `-gcm` modes, optional for others. [`String`](/reference/data-types/string)
-- `aad` — Additional authenticated data. It isn't encrypted, but it affects decryption. Works only in `-gcm` modes, for others it throws an exception. [`String`](/reference/data-types/string)
+- `mode` — Encryption mode. [`String`](/core/reference/data-types/string)
+- `plaintext` — Text that should be encrypted. [`String`](/core/reference/data-types/string)
+- `key` — Encryption key. [`String`](/core/reference/data-types/string)
+- `iv` — Initialization vector. Required for `-gcm` modes, optional for others. [`String`](/core/reference/data-types/string)
+- `aad` — Additional authenticated data. It isn't encrypted, but it affects decryption. Works only in `-gcm` modes, for others it throws an exception. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns binary string ciphertext. [`String`](/reference/data-types/string)
+Returns binary string ciphertext. [`String`](/core/reference/data-types/string)
**Examples**
@@ -432,15 +432,15 @@ tryDecrypt(mode, ciphertext, key[, iv, aad])
**Arguments**
-- `mode` — Decryption mode. [`String`](/reference/data-types/string)
-- `ciphertext` — Encrypted text that should be decrypted. [`String`](/reference/data-types/string)
-- `key` — Decryption key. [`String`](/reference/data-types/string)
-- `iv` — Optional. Initialization vector. Required for `-gcm` modes, optional for other modes. [`String`](/reference/data-types/string)
-- `aad` — Optional. Additional authenticated data. Won't decrypt if this value is incorrect. Works only in `-gcm` modes, for other modes throws an exception. [`String`](/reference/data-types/string)
+- `mode` — Decryption mode. [`String`](/core/reference/data-types/string)
+- `ciphertext` — Encrypted text that should be decrypted. [`String`](/core/reference/data-types/string)
+- `key` — Decryption key. [`String`](/core/reference/data-types/string)
+- `iv` — Optional. Initialization vector. Required for `-gcm` modes, optional for other modes. [`String`](/core/reference/data-types/string)
+- `aad` — Optional. Additional authenticated data. Won't decrypt if this value is incorrect. Works only in `-gcm` modes, for other modes throws an exception. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the decrypted String, or `NULL` if decryption fails. [`Nullable(String)`](/reference/data-types/nullable)
+Returns the decrypted String, or `NULL` if decryption fails. [`Nullable(String)`](/core/reference/data-types/nullable)
**Examples**
diff --git a/reference/functions/regular-functions/ext-dict-functions.mdx b/core/reference/functions/regular-functions/ext-dict-functions.mdx
similarity index 79%
rename from reference/functions/regular-functions/ext-dict-functions.mdx
rename to core/reference/functions/regular-functions/ext-dict-functions.mdx
index d0c26888..50439890 100644
--- a/reference/functions/regular-functions/ext-dict-functions.mdx
+++ b/core/reference/functions/regular-functions/ext-dict-functions.mdx
@@ -7,10 +7,10 @@ doc_type: 'reference'
---
-For dictionaries created with [DDL queries](/reference/statements/create/dictionary), the `dict_name` parameter must be fully specified, like `.`. Otherwise, the current database is used.
+For dictionaries created with [DDL queries](/core/reference/statements/create/dictionary), the `dict_name` parameter must be fully specified, like `.`. Otherwise, the current database is used.
-For information on connecting and configuring dictionaries, see [Dictionaries](/reference/statements/create/dictionary).
+For information on connecting and configuring dictionaries, see [Dictionaries](/core/reference/statements/create/dictionary).
## Example dictionaries {#example-dictionary}
@@ -301,9 +301,9 @@ dictGet('dict_name', attr_names, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_names` — Name of the column of the dictionary, or tuple of column names. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning UInt64/Tuple(T). [`UInt64`](/reference/data-types/int-uint) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_names` — Name of the column of the dictionary, or tuple of column names. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning UInt64/Tuple(T). [`UInt64`](/core/reference/data-types/int-uint) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -360,9 +360,9 @@ dictGetAll(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -408,12 +408,12 @@ dictGetChildren(dict_name, key)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `key` — Key to be checked. [`const String`](/reference/data-types/string)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `key` — Key to be checked. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the first-level descendants for the key. [`Array(UInt64)`](/reference/data-types/array)
+Returns the first-level descendants for the key. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -443,9 +443,9 @@ dictGetDate(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -484,10 +484,10 @@ dictGetDateOrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -533,9 +533,9 @@ dictGetDateTime(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -574,10 +574,10 @@ dictGetDateTimeOrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -623,13 +623,13 @@ dictGetDescendants(dict_name, key, level)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `key` — Key to be checked. [`const String`](/reference/data-types/string)
-- `level` — Key to be checked. Hierarchy level. If `level = 0` returns all descendants to the end. [`UInt8`](/reference/data-types/int-uint)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `key` — Key to be checked. [`const String`](/core/reference/data-types/string)
+- `level` — Key to be checked. Hierarchy level. If `level = 0` returns all descendants to the end. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the descendants for the key. [`Array(UInt64)`](/reference/data-types/array)
+Returns the descendants for the key. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -668,9 +668,9 @@ dictGetFloat32(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -709,10 +709,10 @@ dictGetFloat32OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -758,9 +758,9 @@ dictGetFloat64(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -799,10 +799,10 @@ dictGetFloat64OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -838,7 +838,7 @@ SELECT dictGetFloat64OrDefault('all_types_dict', 'Float64_value', 999, nan);
Introduced in: v1.1.0
-Creates an array, containing all the parents of a key in the [hierarchical dictionary](/reference/statements/create/dictionary/layouts/hierarchical#hierarchical-dictionaries).
+Creates an array, containing all the parents of a key in the [hierarchical dictionary](/core/reference/statements/create/dictionary/layouts/hierarchical#hierarchical-dictionaries).
**Syntax**
@@ -848,12 +848,12 @@ dictGetHierarchy(dict_name, key)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `key` — Key value. [`const String`](/reference/data-types/string)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `key` — Key value. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns parents for the key. [`Array(UInt64)`](/reference/data-types/array)
+Returns parents for the key. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -883,9 +883,9 @@ dictGetIPv4(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -924,10 +924,10 @@ dictGetIPv4OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -973,9 +973,9 @@ dictGetIPv6(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1014,10 +1014,10 @@ dictGetIPv6OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1063,9 +1063,9 @@ dictGetInt16(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1104,10 +1104,10 @@ dictGetInt16OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1153,9 +1153,9 @@ dictGetInt32(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1194,10 +1194,10 @@ dictGetInt32OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1243,9 +1243,9 @@ dictGetInt64(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1284,10 +1284,10 @@ dictGetInt64OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1333,9 +1333,9 @@ dictGetInt8(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1374,10 +1374,10 @@ dictGetInt8OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1429,9 +1429,9 @@ dictGetKeys('dict_name', 'attr_name', value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Attribute to match. [`String`](/reference/data-types/string)
-- `value_expr` — Value to match against the attribute. [`Expression`](/reference/data-types/special-data-types/expression)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Attribute to match. [`String`](/core/reference/data-types/string)
+- `value_expr` — Value to match against the attribute. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
@@ -1465,9 +1465,9 @@ dictGetOrDefault('dict_name', attr_names, id_expr, default_value)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_names` — Name of the column of the dictionary, or tuple of column names. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning UInt64/Tuple(T). [`UInt64`](/reference/data-types/int-uint) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_names` — Name of the column of the dictionary, or tuple of column names. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning UInt64/Tuple(T). [`UInt64`](/core/reference/data-types/int-uint) or [`Tuple(T)`](/core/reference/data-types/tuple)
- `default_value` — Default value to return if the key is not found. Type must match the attribute's data type.
**Returned value**
@@ -1541,9 +1541,9 @@ dictGetString(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1582,10 +1582,10 @@ dictGetStringOrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1631,9 +1631,9 @@ dictGetUInt16(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1672,10 +1672,10 @@ dictGetUInt16OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1721,9 +1721,9 @@ dictGetUInt32(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1762,10 +1762,10 @@ dictGetUInt32OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1811,9 +1811,9 @@ dictGetUInt64(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1852,10 +1852,10 @@ dictGetUInt64OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1901,9 +1901,9 @@ dictGetUInt8(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1942,10 +1942,10 @@ dictGetUInt8OrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -1991,9 +1991,9 @@ dictGetUUID(dict_name, attr_name, id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. An expression returning a dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -2032,10 +2032,10 @@ dictGetUUIDOrDefault(dict_name, attr_name, id_expr, default_value_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `attr_name` — Name of the column of the dictionary. [`String`](/reference/data-types/string) or [`Tuple(String)`](/reference/data-types/tuple)
-- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
-- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/reference/data-types/tuple)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `attr_name` — Name of the column of the dictionary. [`String`](/core/reference/data-types/string) or [`Tuple(String)`](/core/reference/data-types/tuple)
+- `id_expr` — Key value. Expression returning dictionary key-type value or tuple value (dictionary configuration dependent). [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `default_value_expr` — Value(s) returned if the dictionary does not contain a row with the `id_expr` key. [`Expression`](/core/reference/data-types/special-data-types/expression) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
@@ -2081,12 +2081,12 @@ dictHas('dict_name', id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `id_expr` — Key value [`const String`](/reference/data-types/string)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `id_expr` — Key value [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the key exists, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the key exists, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2129,13 +2129,13 @@ dictIsIn(dict_name, child_id_expr, ancestor_id_expr)
**Arguments**
-- `dict_name` — Name of the dictionary. [`String`](/reference/data-types/string)
-- `child_id_expr` — Key to be checked. [`String`](/reference/data-types/string)
-- `ancestor_id_expr` — Alleged ancestor of the `child_id_expr` key. [`const String`](/reference/data-types/string)
+- `dict_name` — Name of the dictionary. [`String`](/core/reference/data-types/string)
+- `child_id_expr` — Key to be checked. [`String`](/core/reference/data-types/string)
+- `ancestor_id_expr` — Alleged ancestor of the `child_id_expr` key. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `0` if `child_id_expr` is not a child of `ancestor_id_expr`, `1` if `child_id_expr` is a child of `ancestor_id_expr` or if `child_id_expr` is an `ancestor_id_expr`. [`UInt8`](/reference/data-types/int-uint)
+Returns `0` if `child_id_expr` is not a child of `ancestor_id_expr`, `1` if `child_id_expr` is a child of `ancestor_id_expr` or if `child_id_expr` is an `ancestor_id_expr`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/files.mdx b/core/reference/functions/regular-functions/files.mdx
similarity index 58%
rename from reference/functions/regular-functions/files.mdx
rename to core/reference/functions/regular-functions/files.mdx
index fe821e13..f8422a3b 100644
--- a/reference/functions/regular-functions/files.mdx
+++ b/core/reference/functions/regular-functions/files.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
Reads a file as string and loads the data into the specified column. The file content is not interpreted.
-Also see table function [file](/reference/functions/table-functions/file).
+Also see table function [file](/core/reference/functions/table-functions/file).
**Syntax**
@@ -20,8 +20,8 @@ file(path[, default])
**Arguments**
-- `path` — The path of the file relative to [user_files_path](/reference/settings/server-settings/settings#user_files_path). Supports wildcards `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` are numbers and `'abc', 'def'` are strings.
-- `default` — The value returned if the file does not exist or cannot be accessed. Supported data types: [String](/reference/data-types/string) and [NULL](/reference/settings/formats#input_format_null_as_default).
+- `path` — The path of the file relative to [user_files_path](/core/reference/settings/server-settings/settings#user_files_path). Supports wildcards `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` are numbers and `'abc', 'def'` are strings.
+- `default` — The value returned if the file does not exist or cannot be accessed. Supported data types: [String](/core/reference/data-types/string) and [NULL](/core/reference/settings/formats#input_format_null_as_default).
**Example**
diff --git a/reference/functions/regular-functions/financial-functions.mdx b/core/reference/functions/regular-functions/financial-functions.mdx
similarity index 82%
rename from reference/functions/regular-functions/financial-functions.mdx
rename to core/reference/functions/regular-functions/financial-functions.mdx
index e82d22ea..aa3cb682 100644
--- a/reference/functions/regular-functions/financial-functions.mdx
+++ b/core/reference/functions/regular-functions/financial-functions.mdx
@@ -40,12 +40,12 @@ financialInternalRateOfReturn(cashflows[, guess])
**Arguments**
-- `cashflows` — Array of cash flows. Each value represents a payment (negative value) or income (positive value). [`Array(Int8/16/32/64)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `[, guess]` — Optional initial guess (constant value) for the internal rate of return (default 0.1). [`Float*`](/reference/data-types/float)
+- `cashflows` — Array of cash flows. Each value represents a payment (negative value) or income (positive value). [`Array(Int8/16/32/64)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `[, guess]` — Optional initial guess (constant value) for the internal rate of return (default 0.1). [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the internal rate of return or `NaN` if the calculation cannot converge, input array is empty or has only one element, all cash flows are zero, or other calculation errors occur. [`Float64`](/reference/data-types/float)
+Returns the internal rate of return or `NaN` if the calculation cannot converge, input array is empty or has only one element, all cash flows are zero, or other calculation errors occur. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -92,18 +92,18 @@ financialInternalRateOfReturnExtended(cashflow, date [, guess, daycount])
**Arguments**
-- `cashflow` — An array of cash flows corresponding to the dates in second param. [`Array(Int8/16/32/64)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `date` — A sorted array of unique dates corresponding to the cash flows. [`Array(Date)`](/reference/data-types/array) or [`Array(Date32)`](/reference/data-types/array)
-- `[, guess]` — Optional. Initial guess (constant value) for the XIRR calculation. [`Float*`](/reference/data-types/float)
+- `cashflow` — An array of cash flows corresponding to the dates in second param. [`Array(Int8/16/32/64)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `date` — A sorted array of unique dates corresponding to the cash flows. [`Array(Date)`](/core/reference/data-types/array) or [`Array(Date32)`](/core/reference/data-types/array)
+- `[, guess]` — Optional. Initial guess (constant value) for the XIRR calculation. [`Float*`](/core/reference/data-types/float)
- `[, daycount]` —
Optional day count convention (default 'ACT_365F'). Supported values:
- 'ACT_365F' - Actual/365 Fixed: Uses actual number of days between dates divided by 365
- 'ACT_365_25' - Actual/365.25: Uses actual number of days between dates divided by 365.25
- [`String`](/reference/data-types/string)
+ [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the XIRR value. If the calculation cannot be performed, it returns NaN. [`Float64`](/reference/data-types/float)
+Returns the XIRR value. If the calculation cannot be performed, it returns NaN. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -164,13 +164,13 @@ financialNetPresentValue(rate, cashflows[, start_from_zero])
**Arguments**
-- `rate` — The discount rate to apply. [`Float*`](/reference/data-types/float)
-- `cashflows` — Array of cash flows. Each value represents a payment (negative value) or income (positive value). [`Array(Int8/16/32/64)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `[, start_from_zero]` — Optional boolean parameter indicating whether to start the NPV calculation from period `0` (true) or period `1` (false, Excel-compatible). Default: true. [`Bool`](/reference/data-types/boolean)
+- `rate` — The discount rate to apply. [`Float*`](/core/reference/data-types/float)
+- `cashflows` — Array of cash flows. Each value represents a payment (negative value) or income (positive value). [`Array(Int8/16/32/64)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `[, start_from_zero]` — Optional boolean parameter indicating whether to start the NPV calculation from period `0` (true) or period `1` (false, Excel-compatible). Default: true. [`Bool`](/core/reference/data-types/boolean)
**Returned value**
-Returns the net present value as a Float64 value. [`Float64`](/reference/data-types/float)
+Returns the net present value as a Float64 value. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -217,14 +217,14 @@ financialNetPresentValueExtended(rate, cashflows, dates[, daycount])
**Arguments**
-- `rate` — The discount rate to apply. [`Float*`](/reference/data-types/float)
-- `cashflows` — Array of cash flows. Each value represents a payment (negative value) or income (positive value). Must contain at least one positive and one negative value. [`Array(Int8/16/32/64)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `dates` — Array of dates corresponding to each cash flow. Must have the same size as cashflows array. [`Array(Date)`](/reference/data-types/array) or [`Array(Date32)`](/reference/data-types/array)
-- `[, daycount]` — Optional day count convention. Supported values: `'ACT_365F'` (default) — Actual/365 Fixed, `'ACT_365_25'` — Actual/365.25. [`String`](/reference/data-types/string)
+- `rate` — The discount rate to apply. [`Float*`](/core/reference/data-types/float)
+- `cashflows` — Array of cash flows. Each value represents a payment (negative value) or income (positive value). Must contain at least one positive and one negative value. [`Array(Int8/16/32/64)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `dates` — Array of dates corresponding to each cash flow. Must have the same size as cashflows array. [`Array(Date)`](/core/reference/data-types/array) or [`Array(Date32)`](/core/reference/data-types/array)
+- `[, daycount]` — Optional day count convention. Supported values: `'ACT_365F'` (default) — Actual/365 Fixed, `'ACT_365_25'` — Actual/365.25. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the net present value as a Float64 value. [`Float64`](/reference/data-types/float)
+Returns the net present value as a Float64 value. [`Float64`](/core/reference/data-types/float)
**Examples**
diff --git a/reference/functions/regular-functions/functions-for-nulls.mdx b/core/reference/functions/regular-functions/functions-for-nulls.mdx
similarity index 84%
rename from reference/functions/regular-functions/functions-for-nulls.mdx
rename to core/reference/functions/regular-functions/functions-for-nulls.mdx
index 501ae737..ac5c2021 100644
--- a/reference/functions/regular-functions/functions-for-nulls.mdx
+++ b/core/reference/functions/regular-functions/functions-for-nulls.mdx
@@ -18,7 +18,7 @@ See: https://github.com/ClickHouse/clickhouse-docs/blob/main/contribute/autogene
Introduced in: v1.1.0
-Returns the corresponding non-`Nullable` value for a value of type [`Nullable`](/reference/data-types/nullable).
+Returns the corresponding non-`Nullable` value for a value of type [`Nullable`](/core/reference/data-types/nullable).
If the original value is `NULL`, an arbitrary result can be returned.
See also: functions [`ifNull`](#ifNull) and [`coalesce`](#coalesce).
@@ -32,11 +32,11 @@ assumeNotNull(x)
**Arguments**
-- `x` — The original value of any nullable type. [`Nullable(T)`](/reference/data-types/nullable)
+- `x` — The original value of any nullable type. [`Nullable(T)`](/core/reference/data-types/nullable)
**Returned value**
-Returns the non-nullable value, if the original value was not `NULL`, otherwise an arbitrary value, if the input value is `NULL`. [`Any`](/reference/data-types)
+Returns the non-nullable value, if the original value was not `NULL`, otherwise an arbitrary value, if the input value is `NULL`. [`Any`](/core/reference/data-types)
**Examples**
@@ -79,11 +79,11 @@ coalesce(x[, y, ...])
**Arguments**
-- `x[, y, ...]` — Any number of parameters of non-compound type. All parameters must be of mutually compatible data types. [`Any`](/reference/data-types)
+- `x[, y, ...]` — Any number of parameters of non-compound type. All parameters must be of mutually compatible data types. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the first non-`NULL` argument, otherwise `NULL`, if all arguments are `NULL`. [`Any`](/reference/data-types) or [`NULL`](/reference/syntax#null)
+Returns the first non-`NULL` argument, otherwise `NULL`, if all arguments are `NULL`. [`Any`](/core/reference/data-types) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -195,12 +195,12 @@ ifNull(x, alt)
**Arguments**
-- `x` — The value to check for `NULL`. [`Any`](/reference/data-types)
-- `alt` — The value that the function returns if `x` is `NULL`. [`Any`](/reference/data-types)
+- `x` — The value to check for `NULL`. [`Any`](/core/reference/data-types)
+- `alt` — The value that the function returns if `x` is `NULL`. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the value of `x` if it is not `NULL`, otherwise `alt`. [`Any`](/reference/data-types)
+Returns the value of `x` if it is not `NULL`, otherwise `alt`. [`Any`](/core/reference/data-types)
**Examples**
@@ -222,7 +222,7 @@ Introduced in: v1.1.0
Checks if the argument is not `NULL`.
-Also see: operator [`IS NOT NULL`](/reference/operators#is_not_null).
+Also see: operator [`IS NOT NULL`](/core/reference/operators#is_not_null).
**Syntax**
@@ -233,11 +233,11 @@ isNotNull(x)
**Arguments**
-- `x` — A value of non-compound data type. [`Any`](/reference/data-types)
+- `x` — A value of non-compound data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns `1` if `x` is not `NULL`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `x` is not `NULL`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -269,7 +269,7 @@ Introduced in: v1.1.0
Checks if the argument is `NULL`.
-Also see: operator [`IS NULL`](/reference/operators#is_null).
+Also see: operator [`IS NULL`](/core/reference/operators#is_null).
**Syntax**
@@ -280,11 +280,11 @@ isNull(x)
**Arguments**
-- `x` — A value of non-compound data type. [`Any`](/reference/data-types)
+- `x` — A value of non-compound data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns `1` if `x` is `NULL`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `x` is `NULL`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -325,11 +325,11 @@ isNullable(x)
**Arguments**
-- `x` — A value of any data type. [`Any`](/reference/data-types)
+- `x` — A value of any data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns `1` if `x` is of a `Nullable` data type, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `x` is of a `Nullable` data type, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -369,11 +369,11 @@ isZeroOrNull(x)
**Arguments**
-- `x` — A numeric value. [`UInt`](/reference/data-types/int-uint)
+- `x` — A numeric value. [`UInt`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `1` if `x` is `NULL` or equal to zero, otherwise `0`. [`UInt8/16/32/64`](/reference/data-types/int-uint) or [`Float32/Float64`](/reference/data-types/float)
+Returns `1` if `x` is `NULL` or equal to zero, otherwise `0`. [`UInt8/16/32/64`](/core/reference/data-types/int-uint) or [`Float32/Float64`](/core/reference/data-types/float)
**Examples**
@@ -415,12 +415,12 @@ nullIf(x, y)
**Arguments**
-- `x` — The first value. [`Any`](/reference/data-types)
-- `y` — The second value. [`Any`](/reference/data-types)
+- `x` — The first value. [`Any`](/core/reference/data-types)
+- `y` — The second value. [`Any`](/core/reference/data-types)
**Returned value**
-Returns `NULL` if both arguments are equal, otherwise returns the first argument. [`NULL`](/reference/syntax#null) or [`Nullable(x)`](/reference/data-types/nullable)
+Returns `NULL` if both arguments are equal, otherwise returns the first argument. [`NULL`](/core/reference/syntax#null) or [`Nullable(x)`](/core/reference/data-types/nullable)
**Examples**
@@ -451,11 +451,11 @@ toNullable(x)
**Arguments**
-- `x` — A value of any non-compound type. [`Any`](/reference/data-types)
+- `x` — A value of any non-compound type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the input value but of `Nullable` type. [`Nullable(Any)`](/reference/data-types/nullable)
+Returns the input value but of `Nullable` type. [`Nullable(Any)`](/core/reference/data-types/nullable)
**Examples**
diff --git a/reference/functions/regular-functions/geo/coordinates.mdx b/core/reference/functions/regular-functions/geo/coordinates.mdx
similarity index 89%
rename from reference/functions/regular-functions/geo/coordinates.mdx
rename to core/reference/functions/regular-functions/geo/coordinates.mdx
index a58272d0..c5ed5c17 100644
--- a/reference/functions/regular-functions/geo/coordinates.mdx
+++ b/core/reference/functions/regular-functions/geo/coordinates.mdx
@@ -153,10 +153,10 @@ pointInPolygon((x, y), [(a, b), (c, d) ...], ...)
**Input values**
-- `(x, y)` — Coordinates of a point on the plane. Data type — [Tuple](/reference/data-types/tuple) — A tuple of two numbers.
-- `[(a, b), (c, d) ...]` — Polygon vertices. Data type — [Array](/reference/data-types/array). Each vertex is represented by a pair of coordinates `(a, b)`. Vertices should be specified in a clockwise or counterclockwise order. The minimum number of vertices is 3. The polygon must be constant.
-- The function supports polygon with holes (cut-out sections). Data type — [Polygon](/reference/data-types/geo#polygon). Either pass the entire `Polygon` as the second argument, or pass the outer ring first and then each hole as separate additional arguments.
-- The function also supports multipolygon. Data type — [MultiPolygon](/reference/data-types/geo#multipolygon). Either pass the entire `MultiPolygon` as the second argument, or list each component polygon as its own argument.
+- `(x, y)` — Coordinates of a point on the plane. Data type — [Tuple](/core/reference/data-types/tuple) — A tuple of two numbers.
+- `[(a, b), (c, d) ...]` — Polygon vertices. Data type — [Array](/core/reference/data-types/array). Each vertex is represented by a pair of coordinates `(a, b)`. Vertices should be specified in a clockwise or counterclockwise order. The minimum number of vertices is 3. The polygon must be constant.
+- The function supports polygon with holes (cut-out sections). Data type — [Polygon](/core/reference/data-types/geo#polygon). Either pass the entire `Polygon` as the second argument, or pass the outer ring first and then each hole as separate additional arguments.
+- The function also supports multipolygon. Data type — [MultiPolygon](/core/reference/data-types/geo#multipolygon). Either pass the entire `MultiPolygon` as the second argument, or list each component polygon as its own argument.
**Returned values**
diff --git a/reference/functions/regular-functions/geo/flipCoordinates.mdx b/core/reference/functions/regular-functions/geo/flipCoordinates.mdx
similarity index 83%
rename from reference/functions/regular-functions/geo/flipCoordinates.mdx
rename to core/reference/functions/regular-functions/geo/flipCoordinates.mdx
index 9d2f91af..f09ee157 100644
--- a/reference/functions/regular-functions/geo/flipCoordinates.mdx
+++ b/core/reference/functions/regular-functions/geo/flipCoordinates.mdx
@@ -17,10 +17,10 @@ flipCoordinates(coordinates)
### Input Parameters {#input-parameters}
- `coordinates` — A tuple representing a point `(x, y)`, or an array of such tuples representing a ring, polygon, or multipolygon. Supported input types include:
- - [**Point**](/reference/data-types/geo#point): A tuple `(x, y)` where `x` and `y` are [Float64](/reference/data-types/float) values.
- - [**Ring**](/reference/data-types/geo#ring): An array of points `[(x1, y1), (x2, y2), ...]`.
- - [**Polygon**](/reference/data-types/geo#polygon): An array of rings `[ring1, ring2, ...]`, where each ring is an array of points.
- - [**Multipolygon**](/reference/data-types/geo#multipolygon): An array of polygons `[polygon1, polygon2, ...]`.
+ - [**Point**](/core/reference/data-types/geo#point): A tuple `(x, y)` where `x` and `y` are [Float64](/core/reference/data-types/float) values.
+ - [**Ring**](/core/reference/data-types/geo#ring): An array of points `[(x1, y1), (x2, y2), ...]`.
+ - [**Polygon**](/core/reference/data-types/geo#polygon): An array of rings `[ring1, ring2, ...]`, where each ring is an array of points.
+ - [**Multipolygon**](/core/reference/data-types/geo#multipolygon): An array of polygons `[polygon1, polygon2, ...]`.
### Returned Value {#returned-value}
diff --git a/reference/functions/regular-functions/geo/geohash.mdx b/core/reference/functions/regular-functions/geo/geohash.mdx
similarity index 82%
rename from reference/functions/regular-functions/geo/geohash.mdx
rename to core/reference/functions/regular-functions/geo/geohash.mdx
index c6a62725..b454f238 100644
--- a/reference/functions/regular-functions/geo/geohash.mdx
+++ b/core/reference/functions/regular-functions/geo/geohash.mdx
@@ -24,9 +24,9 @@ geohashEncode(longitude, latitude, [precision])
**Input values**
-- `longitude` — Longitude part of the coordinate you want to encode. Floating in range`[-180°, 180°]`. [Float](/reference/data-types/float).
-- `latitude` — Latitude part of the coordinate you want to encode. Floating in range `[-90°, 90°]`. [Float](/reference/data-types/float).
-- `precision` (optional) — Length of the resulting encoded string. Defaults to `12`. Integer in the range `[1, 12]`. [Int8](/reference/data-types/int-uint).
+- `longitude` — Longitude part of the coordinate you want to encode. Floating in range`[-180°, 180°]`. [Float](/core/reference/data-types/float).
+- `latitude` — Latitude part of the coordinate you want to encode. Floating in range `[-90°, 90°]`. [Float](/core/reference/data-types/float).
+- `precision` (optional) — Length of the resulting encoded string. Defaults to `12`. Integer in the range `[1, 12]`. [Int8](/core/reference/data-types/int-uint).
- All coordinate parameters must be of the same type: either `Float32` or `Float64`.
@@ -35,7 +35,7 @@ geohashEncode(longitude, latitude, [precision])
**Returned values**
-- Alphanumeric string of the encoded coordinate (modified version of the base32-encoding alphabet is used). [String](/reference/data-types/string).
+- Alphanumeric string of the encoded coordinate (modified version of the base32-encoding alphabet is used). [String](/core/reference/data-types/string).
**Example**
@@ -65,7 +65,7 @@ geohashDecode(hash_str)
**Returned values**
-- Tuple `(longitude, latitude)` of `Float64` values of longitude and latitude. [Tuple](/reference/data-types/tuple)([Float64](/reference/data-types/float))
+- Tuple `(longitude, latitude)` of `Float64` values of longitude and latitude. [Tuple](/core/reference/data-types/tuple)([Float64](/core/reference/data-types/float))
**Example**
@@ -91,11 +91,11 @@ geohashesInBox(longitude_min, latitude_min, longitude_max, latitude_max, precisi
**Arguments**
-- `longitude_min` — Minimum longitude. Range: `[-180°, 180°]`. [Float](/reference/data-types/float).
-- `latitude_min` — Minimum latitude. Range: `[-90°, 90°]`. [Float](/reference/data-types/float).
-- `longitude_max` — Maximum longitude. Range: `[-180°, 180°]`. [Float](/reference/data-types/float).
-- `latitude_max` — Maximum latitude. Range: `[-90°, 90°]`. [Float](/reference/data-types/float).
-- `precision` — Geohash precision. Range: `[1, 12]`. [UInt8](/reference/data-types/int-uint).
+- `longitude_min` — Minimum longitude. Range: `[-180°, 180°]`. [Float](/core/reference/data-types/float).
+- `latitude_min` — Minimum latitude. Range: `[-90°, 90°]`. [Float](/core/reference/data-types/float).
+- `longitude_max` — Maximum longitude. Range: `[-180°, 180°]`. [Float](/core/reference/data-types/float).
+- `latitude_max` — Maximum latitude. Range: `[-90°, 90°]`. [Float](/core/reference/data-types/float).
+- `precision` — Geohash precision. Range: `[1, 12]`. [UInt8](/core/reference/data-types/int-uint).
****
@@ -105,7 +105,7 @@ All coordinate parameters must be of the same type: either `Float32` or `Float64
**Returned values**
-- Array of precision-long strings of geohash-boxes covering provided area, you should not rely on order of items. [Array](/reference/data-types/array)([String](/reference/data-types/string)).
+- Array of precision-long strings of geohash-boxes covering provided area, you should not rely on order of items. [Array](/core/reference/data-types/array)([String](/core/reference/data-types/string)).
- `[]` - Empty array if minimum latitude and longitude values aren't less than corresponding maximum values.
diff --git a/reference/functions/regular-functions/geo/geometry.mdx b/core/reference/functions/regular-functions/geo/geometry.mdx
similarity index 85%
rename from reference/functions/regular-functions/geo/geometry.mdx
rename to core/reference/functions/regular-functions/geo/geometry.mdx
index c6a1eb3e..d9868c76 100644
--- a/reference/functions/regular-functions/geo/geometry.mdx
+++ b/core/reference/functions/regular-functions/geo/geometry.mdx
@@ -21,10 +21,10 @@ perimeterCartesian(geom)
```
**Arguments**
-- `geom` — Geometry object. [Geometry](/reference/data-types/geo).
+- `geom` — Geometry object. [Geometry](/core/reference/data-types/geo).
**Returned values**
-- Number — Perimeter of the object in the coordinate system units. [Float64](/reference/data-types/float).
+- Number — Perimeter of the object in the coordinate system units. [Float64](/core/reference/data-types/float).
**Example**
@@ -51,10 +51,10 @@ areaCartesian(geom)
```
**Arguments**
-- `geom` — Geometry object. [Geometry](/reference/data-types/geo).
+- `geom` — Geometry object. [Geometry](/core/reference/data-types/geo).
**Returned values**
-- Number — Area of the object in coordinate system units. [Float64](/reference/data-types/float).
+- Number — Area of the object in coordinate system units. [Float64](/core/reference/data-types/float).
**Example**
@@ -81,10 +81,10 @@ perimeterSpherical(geom)
```
**Arguments**
-- `geom` — Geometry object. [Geometry](/reference/data-types/geo).
+- `geom` — Geometry object. [Geometry](/core/reference/data-types/geo).
**Returned values**
-- Number — Perimeter. [Float64](/reference/data-types/float).
+- Number — Perimeter. [Float64](/core/reference/data-types/float).
**Example**
@@ -111,10 +111,10 @@ areaSpherical(geom)
```
**Arguments**
-- `geom` — Geometry. [Geometry](/reference/data-types/geo).
+- `geom` — Geometry. [Geometry](/core/reference/data-types/geo).
**Returned values**
-- Number — Area. [Float64](/reference/data-types/float).
+- Number — Area. [Float64](/core/reference/data-types/float).
**Example**
diff --git a/reference/functions/regular-functions/geo/h3.mdx b/core/reference/functions/regular-functions/geo/h3.mdx
similarity index 78%
rename from reference/functions/regular-functions/geo/h3.mdx
rename to core/reference/functions/regular-functions/geo/h3.mdx
index 989d0926..5b41a106 100644
--- a/reference/functions/regular-functions/geo/h3.mdx
+++ b/core/reference/functions/regular-functions/geo/h3.mdx
@@ -30,12 +30,12 @@ h3IsValid(h3index)
**Parameter**
-- `h3index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `h3index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- 1 — The number is a valid H3 index. [UInt8](/reference/data-types/int-uint).
-- 0 — The number is not a valid H3 index. [UInt8](/reference/data-types/int-uint).
+- 1 — The number is a valid H3 index. [UInt8](/core/reference/data-types/int-uint).
+- 0 — The number is not a valid H3 index. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -61,12 +61,12 @@ h3GetResolution(h3index)
**Parameter**
-- `h3index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `h3index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
-- If the index is not valid, the function returns a random value. Use [h3IsValid](#h3isvalid) to verify the index. [UInt8](/reference/data-types/int-uint).
+- Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
+- If the index is not valid, the function returns a random value. Use [h3IsValid](#h3isvalid) to verify the index. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -92,11 +92,11 @@ h3EdgeAngle(resolution)
**Parameter**
-- `resolution` — Index resolution. [UInt8](/reference/data-types/int-uint). Range: `[0, 15]`.
+- `resolution` — Index resolution. [UInt8](/core/reference/data-types/int-uint). Range: `[0, 15]`.
**Returned values**
-- The average length of an [H3](#h3-index) hexagon edge in grades. [Float64](/reference/data-types/float).
+- The average length of an [H3](#h3-index) hexagon edge in grades. [Float64](/core/reference/data-types/float).
**Example**
@@ -122,11 +122,11 @@ h3EdgeLengthM(resolution)
**Parameter**
-- `resolution` — Index resolution. [UInt8](/reference/data-types/int-uint). Range: `[0, 15]`.
+- `resolution` — Index resolution. [UInt8](/core/reference/data-types/int-uint). Range: `[0, 15]`.
**Returned values**
-- The average edge length of an [H3](#h3-index) hexagon in meters. [Float64](/reference/data-types/float).
+- The average edge length of an [H3](#h3-index) hexagon in meters. [Float64](/core/reference/data-types/float).
**Example**
@@ -152,11 +152,11 @@ h3EdgeLengthKm(resolution)
**Parameter**
-- `resolution` — Index resolution. [UInt8](/reference/data-types/int-uint). Range: `[0, 15]`.
+- `resolution` — Index resolution. [UInt8](/core/reference/data-types/int-uint). Range: `[0, 15]`.
**Returned values**
-- The average length of an [H3](#h3-index) hexagon edge in kilometers. [Float64](/reference/data-types/float).
+- The average length of an [H3](#h3-index) hexagon edge in kilometers. [Float64](/core/reference/data-types/float).
**Example**
@@ -182,14 +182,14 @@ geoToH3(lat, lon, resolution)
**Arguments**
-- `lat` — Latitude. [Float64](/reference/data-types/float).
-- `lon` — Longitude. [Float64](/reference/data-types/float).
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `lat` — Latitude. [Float64](/core/reference/data-types/float).
+- `lon` — Longitude. [Float64](/core/reference/data-types/float).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned values**
-- Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- 0 in case of error. [UInt64](/reference/data-types/int-uint).
+- Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- 0 in case of error. [UInt64](/core/reference/data-types/int-uint).
Note: In ClickHouse v25.4 or older, `geoToH3()` takes values in order `(lon, lat)`. As per ClickHouse v25.5, the input values are in order `(lat, lon)`. The previous behaviour can be restored using setting `geotoh3_argument_order = 'lon_lat'`.
@@ -217,11 +217,11 @@ h3ToGeo(h3Index)
**Arguments**
-- `h3Index` — H3 Index. [UInt64](/reference/data-types/int-uint).
+- `h3Index` — H3 Index. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- A tuple consisting of two values: `tuple(lat,lon)`. `lat` — Latitude. [Float64](/reference/data-types/float). `lon` — Longitude. [Float64](/reference/data-types/float).
+- A tuple consisting of two values: `tuple(lat,lon)`. `lat` — Latitude. [Float64](/core/reference/data-types/float). `lon` — Longitude. [Float64](/core/reference/data-types/float).
Note: In ClickHouse v24.12 or older, `h3ToGeo()` returns values in order `(lon, lat)`. As per ClickHouse v25.1, the returned values are in order `(lat, lon)`. The previous behaviour can be restored using setting `h3togeo_lon_lat_result_order = true`.
@@ -249,11 +249,11 @@ h3ToGeoBoundary(h3Index)
**Arguments**
-- `h3Index` — H3 Index. [UInt64](/reference/data-types/int-uint).
+- `h3Index` — H3 Index. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- Array of pairs '(lat, lon)'. [Array](/reference/data-types/array)([Float64](/reference/data-types/float), [Float64](/reference/data-types/float)).
+- Array of pairs '(lat, lon)'. [Array](/core/reference/data-types/array)([Float64](/core/reference/data-types/float), [Float64](/core/reference/data-types/float)).
**Example**
@@ -279,12 +279,12 @@ h3kRing(h3index, k)
**Arguments**
-- `h3index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- `k` — Radius. [integer](/reference/data-types/int-uint)
+- `h3index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- `k` — Radius. [integer](/core/reference/data-types/int-uint)
**Returned values**
-- Array of H3 indexes. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- Array of H3 indexes. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -316,15 +316,15 @@ h3PolygonToCells(geometry, resolution)
**Arguments**
-- `geometry` can be one of the following [Geo Data Types](/reference/data-types/geo) or their underlying primitive types:
- - [Ring](/reference/data-types/geo#ring)
- - [Polygon](/reference/data-types/geo#polygon)
- - [MultiPolygon](/reference/data-types/geo#multipolygon)
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `geometry` can be one of the following [Geo Data Types](/core/reference/data-types/geo) or their underlying primitive types:
+ - [Ring](/core/reference/data-types/geo#ring)
+ - [Polygon](/core/reference/data-types/geo#polygon)
+ - [MultiPolygon](/core/reference/data-types/geo#multipolygon)
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned values**
-- Array of the contained H3-indexes. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- Array of the contained H3-indexes. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -356,11 +356,11 @@ h3GetBaseCell(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Hexagon base cell number. [UInt8](/reference/data-types/int-uint).
+- Hexagon base cell number. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -386,11 +386,11 @@ h3HexAreaM2(resolution)
**Parameter**
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned value**
-- Area in square meters. [Float64](/reference/data-types/float).
+- Area in square meters. [Float64](/core/reference/data-types/float).
**Example**
@@ -416,11 +416,11 @@ h3HexAreaKm2(resolution)
**Parameter**
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned value**
-- Area in square kilometers. [Float64](/reference/data-types/float).
+- Area in square kilometers. [Float64](/core/reference/data-types/float).
**Example**
@@ -446,13 +446,13 @@ h3IndexesAreNeighbors(index1, index2)
**Arguments**
-- `index1` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- `index2` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index1` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- `index2` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- `1` — Indexes are neighbours. [UInt8](/reference/data-types/int-uint).
-- `0` — Indexes are not neighbours. [UInt8](/reference/data-types/int-uint).
+- `1` — Indexes are neighbours. [UInt8](/core/reference/data-types/int-uint).
+- `0` — Indexes are not neighbours. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -478,12 +478,12 @@ h3ToChildren(index, resolution)
**Arguments**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned values**
-- Array of the child H3-indexes. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- Array of the child H3-indexes. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -509,12 +509,12 @@ h3ToParent(index, resolution)
**Arguments**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned value**
-- Parent H3 index. [UInt64](/reference/data-types/int-uint).
+- Parent H3 index. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -538,11 +538,11 @@ h3ToString(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- String representation of the H3 index. [String](/reference/data-types/string).
+- String representation of the H3 index. [String](/core/reference/data-types/string).
**Example**
@@ -568,11 +568,11 @@ stringToH3(index_str)
**Parameter**
-- `index_str` — String representation of the H3 index. [String](/reference/data-types/string).
+- `index_str` — String representation of the H3 index. [String](/core/reference/data-types/string).
**Returned value**
-- Hexagon index number. Returns 0 on error. [UInt64](/reference/data-types/int-uint).
+- Hexagon index number. Returns 0 on error. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -598,11 +598,11 @@ h3GetResolution(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -628,12 +628,12 @@ h3IsResClassIII(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- `1` — Index has a resolution with Class III orientation. [UInt8](/reference/data-types/int-uint).
-- `0` — Index doesn't have a resolution with Class III orientation. [UInt8](/reference/data-types/int-uint).
+- `1` — Index has a resolution with Class III orientation. [UInt8](/core/reference/data-types/int-uint).
+- `0` — Index doesn't have a resolution with Class III orientation. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -659,12 +659,12 @@ h3IsPentagon(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- `1` — Index represents a pentagonal cell. [UInt8](/reference/data-types/int-uint).
-- `0` — Index doesn't represent a pentagonal cell. [UInt8](/reference/data-types/int-uint).
+- `1` — Index represents a pentagonal cell. [UInt8](/core/reference/data-types/int-uint).
+- `0` — Index doesn't represent a pentagonal cell. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -690,11 +690,11 @@ h3GetFaces(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- Array containing icosahedron faces intersected by a given H3 index. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- Array containing icosahedron faces intersected by a given H3 index. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -720,11 +720,11 @@ h3CellAreaM2(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Cell area in square meters. [Float64](/reference/data-types/float).
+- Cell area in square meters. [Float64](/core/reference/data-types/float).
**Example**
@@ -750,11 +750,11 @@ h3CellAreaRads2(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Cell area in square radians. [Float64](/reference/data-types/float).
+- Cell area in square radians. [Float64](/core/reference/data-types/float).
**Example**
@@ -780,12 +780,12 @@ h3ToCenterChild(index, resolution)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned values**
-- [H3](#h3-index) index of the center child contained by given [H3](#h3-index) at the given resolution. [UInt64](/reference/data-types/int-uint).
+- [H3](#h3-index) index of the center child contained by given [H3](#h3-index) at the given resolution. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -811,11 +811,11 @@ h3ExactEdgeLengthM(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Exact edge length in meters. [Float64](/reference/data-types/float).
+- Exact edge length in meters. [Float64](/core/reference/data-types/float).
**Example**
@@ -841,11 +841,11 @@ h3ExactEdgeLengthKm(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Exact edge length in kilometers. [Float64](/reference/data-types/float).
+- Exact edge length in kilometers. [Float64](/core/reference/data-types/float).
**Example**
@@ -871,11 +871,11 @@ h3ExactEdgeLengthRads(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Exact edge length in radians. [Float64](/reference/data-types/float).
+- Exact edge length in radians. [Float64](/core/reference/data-types/float).
**Example**
@@ -901,11 +901,11 @@ h3NumHexagons(resolution)
**Parameter**
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned value**
-- Number of H3 indices. [Int64](/reference/data-types/int-uint).
+- Number of H3 indices. [Int64](/core/reference/data-types/int-uint).
**Example**
@@ -931,12 +931,12 @@ h3PointDistM(lat1, lon1, lat2, lon2)
**Arguments**
-- `lat1`, `lon1` — Latitude and Longitude of point1 in degrees. [Float64](/reference/data-types/float).
-- `lat2`, `lon2` — Latitude and Longitude of point2 in degrees. [Float64](/reference/data-types/float).
+- `lat1`, `lon1` — Latitude and Longitude of point1 in degrees. [Float64](/core/reference/data-types/float).
+- `lat2`, `lon2` — Latitude and Longitude of point2 in degrees. [Float64](/core/reference/data-types/float).
**Returned values**
-- Haversine or great circle distance in meters.[Float64](/reference/data-types/float).
+- Haversine or great circle distance in meters.[Float64](/core/reference/data-types/float).
**Example**
@@ -962,12 +962,12 @@ h3PointDistKm(lat1, lon1, lat2, lon2)
**Arguments**
-- `lat1`, `lon1` — Latitude and Longitude of point1 in degrees. [Float64](/reference/data-types/float).
-- `lat2`, `lon2` — Latitude and Longitude of point2 in degrees. [Float64](/reference/data-types/float).
+- `lat1`, `lon1` — Latitude and Longitude of point1 in degrees. [Float64](/core/reference/data-types/float).
+- `lat2`, `lon2` — Latitude and Longitude of point2 in degrees. [Float64](/core/reference/data-types/float).
**Returned values**
-- Haversine or great circle distance in kilometers. [Float64](/reference/data-types/float).
+- Haversine or great circle distance in kilometers. [Float64](/core/reference/data-types/float).
**Example**
@@ -993,12 +993,12 @@ h3PointDistRads(lat1, lon1, lat2, lon2)
**Arguments**
-- `lat1`, `lon1` — Latitude and Longitude of point1 in degrees. [Float64](/reference/data-types/float).
-- `lat2`, `lon2` — Latitude and Longitude of point2 in degrees. [Float64](/reference/data-types/float).
+- `lat1`, `lon1` — Latitude and Longitude of point1 in degrees. [Float64](/core/reference/data-types/float).
+- `lat2`, `lon2` — Latitude and Longitude of point2 in degrees. [Float64](/core/reference/data-types/float).
**Returned values**
-- Haversine or great circle distance in radians. [Float64](/reference/data-types/float).
+- Haversine or great circle distance in radians. [Float64](/core/reference/data-types/float).
**Example**
@@ -1024,7 +1024,7 @@ h3GetRes0Indexes()
**Returned values**
-- Array of all the resolution 0 H3 indexes. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- Array of all the resolution 0 H3 indexes. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -1050,11 +1050,11 @@ h3GetPentagonIndexes(resolution)
**Parameter**
-- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/reference/data-types/int-uint).
+- `resolution` — Index resolution. Range: `[0, 15]`. [UInt8](/core/reference/data-types/int-uint).
**Returned value**
-- Array of all pentagon H3 indexes. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- Array of all pentagon H3 indexes. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -1080,12 +1080,12 @@ h3Line(start,end)
**Parameter**
-- `start` — Hexagon index number that represents a starting point. [UInt64](/reference/data-types/int-uint).
-- `end` — Hexagon index number that represents an ending point. [UInt64](/reference/data-types/int-uint).
+- `start` — Hexagon index number that represents a starting point. [UInt64](/core/reference/data-types/int-uint).
+- `end` — Hexagon index number that represents an ending point. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-Array of h3 indexes representing the line of indices between the two provided indices. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+Array of h3 indexes representing the line of indices between the two provided indices. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -1111,12 +1111,12 @@ h3Distance(start,end)
**Parameter**
-- `start` — Hexagon index number that represents a starting point. [UInt64](/reference/data-types/int-uint).
-- `end` — Hexagon index number that represents an ending point. [UInt64](/reference/data-types/int-uint).
+- `start` — Hexagon index number that represents a starting point. [UInt64](/core/reference/data-types/int-uint).
+- `end` — Hexagon index number that represents an ending point. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Number of grid cells. [Int64](/reference/data-types/int-uint).
+- Number of grid cells. [Int64](/core/reference/data-types/int-uint).
Returns a negative number if finding the distance fails.
@@ -1146,12 +1146,12 @@ h3HexRing(index, k)
**Parameter**
-- `index` — Hexagon index number that represents the origin. [UInt64](/reference/data-types/int-uint).
-- `k` — Distance. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number that represents the origin. [UInt64](/core/reference/data-types/int-uint).
+- `k` — Distance. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- Array of H3 indexes. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- Array of H3 indexes. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -1177,12 +1177,12 @@ h3GetUnidirectionalEdge(originIndex, destinationIndex)
**Parameter**
-- `originIndex` — Origin Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- `destinationIndex` — Destination Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `originIndex` — Origin Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- `destinationIndex` — Destination Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Unidirectional Edge Hexagon Index number. [UInt64](/reference/data-types/int-uint).
+- Unidirectional Edge Hexagon Index number. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -1208,12 +1208,12 @@ h3UnidirectionalEdgeisValid(index)
**Parameter**
-- `index` — Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- 1 — The H3 index is a valid unidirectional edge. [UInt8](/reference/data-types/int-uint).
-- 0 — The H3 index is not a valid unidirectional edge. [UInt8](/reference/data-types/int-uint).
+- 1 — The H3 index is a valid unidirectional edge. [UInt8](/core/reference/data-types/int-uint).
+- 0 — The H3 index is not a valid unidirectional edge. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -1239,11 +1239,11 @@ h3GetOriginIndexFromUnidirectionalEdge(edge)
**Parameter**
-- `edge` — Hexagon index number that represents a unidirectional edge. [UInt64](/reference/data-types/int-uint).
+- `edge` — Hexagon index number that represents a unidirectional edge. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Origin Hexagon Index number. [UInt64](/reference/data-types/int-uint).
+- Origin Hexagon Index number. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -1269,11 +1269,11 @@ h3GetDestinationIndexFromUnidirectionalEdge(edge)
**Parameter**
-- `edge` — Hexagon index number that represents a unidirectional edge. [UInt64](/reference/data-types/int-uint).
+- `edge` — Hexagon index number that represents a unidirectional edge. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Destination Hexagon Index number. [UInt64](/reference/data-types/int-uint).
+- Destination Hexagon Index number. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -1299,14 +1299,14 @@ h3GetIndexesFromUnidirectionalEdge(edge)
**Parameter**
-- `edge` — Hexagon index number that represents a unidirectional edge. [UInt64](/reference/data-types/int-uint).
+- `edge` — Hexagon index number that represents a unidirectional edge. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
A tuple consisting of two values `tuple(origin,destination)`:
-- `origin` — Origin Hexagon index number. [UInt64](/reference/data-types/int-uint).
-- `destination` — Destination Hexagon index number. [UInt64](/reference/data-types/int-uint).
+- `origin` — Origin Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
+- `destination` — Destination Hexagon index number. [UInt64](/core/reference/data-types/int-uint).
Returns `(0,0)` if the provided input is not valid.
@@ -1334,11 +1334,11 @@ h3GetUnidirectionalEdgesFromHexagon(index)
**Parameter**
-- `index` — Hexagon index number that represents a unidirectional edge. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number that represents a unidirectional edge. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-Array of h3 indexes representing each unidirectional edge. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+Array of h3 indexes representing each unidirectional edge. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -1364,11 +1364,11 @@ h3GetUnidirectionalEdgeBoundary(index)
**Parameter**
-- `index` — Hexagon index number that represents a unidirectional edge. [UInt64](/reference/data-types/int-uint).
+- `index` — Hexagon index number that represents a unidirectional edge. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- Array of pairs '(lon, lat)'. [Array](/reference/data-types/array)([Float64](/reference/data-types/float), [Float64](/reference/data-types/float)).
+- Array of pairs '(lon, lat)'. [Array](/core/reference/data-types/array)([Float64](/core/reference/data-types/float), [Float64](/core/reference/data-types/float)).
**Example**
diff --git a/core/reference/functions/regular-functions/geo/index.mdx b/core/reference/functions/regular-functions/geo/index.mdx
new file mode 100644
index 00000000..702cb941
--- /dev/null
+++ b/core/reference/functions/regular-functions/geo/index.mdx
@@ -0,0 +1,9 @@
+---
+description: 'Documentation for Index'
+sidebarTitle: 'Geo'
+slug: /sql-reference/functions/geo/
+title: 'Geo Functions'
+doc_type: 'reference'
+---
+
+Functions for working with geometric objects, for example [to calculate distances between points on a sphere](/core/reference/functions/regular-functions/geo/coordinates), [compute geohashes](/core/reference/functions/regular-functions/geo/geohash), and work with [h3 indexes](/core/reference/functions/regular-functions/geo/h3).
diff --git a/reference/functions/regular-functions/geo/polygon.mdx b/core/reference/functions/regular-functions/geo/polygon.mdx
similarity index 98%
rename from reference/functions/regular-functions/geo/polygon.mdx
rename to core/reference/functions/regular-functions/geo/polygon.mdx
index 825a98b4..106b4797 100644
--- a/reference/functions/regular-functions/geo/polygon.mdx
+++ b/core/reference/functions/regular-functions/geo/polygon.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
## WKT {#wkt}
-Returns a WKT (Well Known Text) geometric object from various [Geo Data Types](/reference/data-types/geo). Supported WKT objects are:
+Returns a WKT (Well Known Text) geometric object from various [Geo Data Types](/core/reference/data-types/geo). Supported WKT objects are:
- POINT
- POLYGON
@@ -24,14 +24,14 @@ WKT(geo_data)
**Parameters**
-`geo_data` can be one of the following [Geo Data Types](/reference/data-types/geo) or their underlying primitive types:
+`geo_data` can be one of the following [Geo Data Types](/core/reference/data-types/geo) or their underlying primitive types:
-- [Point](/reference/data-types/geo#point)
-- [Ring](/reference/data-types/geo#ring)
-- [Polygon](/reference/data-types/geo#polygon)
-- [MultiPolygon](/reference/data-types/geo#multipolygon)
-- [LineString](/reference/data-types/geo#linestring)
-- [MultiLineString](/reference/data-types/geo#multilinestring)
+- [Point](/core/reference/data-types/geo#point)
+- [Ring](/core/reference/data-types/geo#ring)
+- [Polygon](/core/reference/data-types/geo#polygon)
+- [MultiPolygon](/core/reference/data-types/geo#multipolygon)
+- [LineString](/core/reference/data-types/geo#linestring)
+- [MultiLineString](/core/reference/data-types/geo#multilinestring)
**Returned value**
diff --git a/reference/functions/regular-functions/geo/s2.mdx b/core/reference/functions/regular-functions/geo/s2.mdx
similarity index 79%
rename from reference/functions/regular-functions/geo/s2.mdx
rename to core/reference/functions/regular-functions/geo/s2.mdx
index 44324111..841e7693 100644
--- a/reference/functions/regular-functions/geo/s2.mdx
+++ b/core/reference/functions/regular-functions/geo/s2.mdx
@@ -24,12 +24,12 @@ geoToS2(lon, lat)
**Arguments**
-- `lon` — Longitude. [Float64](/reference/data-types/float).
-- `lat` — Latitude. [Float64](/reference/data-types/float).
+- `lon` — Longitude. [Float64](/core/reference/data-types/float).
+- `lat` — Latitude. [Float64](/core/reference/data-types/float).
**Returned values**
-- S2 point index. [UInt64](/reference/data-types/int-uint).
+- S2 point index. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -55,13 +55,13 @@ s2ToGeo(s2index)
**Arguments**
-- `s2index` — S2 Index. [UInt64](/reference/data-types/int-uint).
+- `s2index` — S2 Index. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- A [tuple](/reference/data-types/tuple) consisting of two values:
- - `lon`. [Float64](/reference/data-types/float).
- - `lat`. [Float64](/reference/data-types/float).
+- A [tuple](/core/reference/data-types/tuple) consisting of two values:
+ - `lon`. [Float64](/core/reference/data-types/float).
+ - `lat`. [Float64](/core/reference/data-types/float).
**Example**
@@ -87,11 +87,11 @@ s2GetNeighbors(s2index)
**Arguments**
-- `s2index` — S2 Index. [UInt64](/reference/data-types/int-uint).
+- `s2index` — S2 Index. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- An array consisting of 4 neighbor indexes: `array[s2index1, s2index3, s2index2, s2index4]`. [Array](/reference/data-types/array)([UInt64](/reference/data-types/int-uint)).
+- An array consisting of 4 neighbor indexes: `array[s2index1, s2index3, s2index2, s2index4]`. [Array](/core/reference/data-types/array)([UInt64](/core/reference/data-types/int-uint)).
**Example**
@@ -117,12 +117,12 @@ s2CellsIntersect(s2index1, s2index2)
**Arguments**
-- `siIndex1`, `s2index2` — S2 Index. [UInt64](/reference/data-types/int-uint).
+- `siIndex1`, `s2index2` — S2 Index. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- `1` — If the cells intersect. [UInt8](/reference/data-types/int-uint).
-- `0` — If the cells don't intersect. [UInt8](/reference/data-types/int-uint).
+- `1` — If the cells intersect. [UInt8](/core/reference/data-types/int-uint).
+- `0` — If the cells don't intersect. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -148,14 +148,14 @@ s2CapContains(center, degrees, point)
**Arguments**
-- `center` — S2 point index corresponding to the cap. [UInt64](/reference/data-types/int-uint).
-- `degrees` — Radius of the cap in degrees. [Float64](/reference/data-types/float).
-- `point` — S2 point index. [UInt64](/reference/data-types/int-uint).
+- `center` — S2 point index corresponding to the cap. [UInt64](/core/reference/data-types/int-uint).
+- `degrees` — Radius of the cap in degrees. [Float64](/core/reference/data-types/float).
+- `point` — S2 point index. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
-- `1` — If the cap contains the S2 point index. [UInt8](/reference/data-types/int-uint).
-- `0` — If the cap doesn't contain the S2 point index. [UInt8](/reference/data-types/int-uint).
+- `1` — If the cap contains the S2 point index. [UInt8](/core/reference/data-types/int-uint).
+- `0` — If the cap doesn't contain the S2 point index. [UInt8](/core/reference/data-types/int-uint).
**Example**
@@ -181,13 +181,13 @@ s2CapUnion(center1, radius1, center2, radius2)
**Arguments**
-- `center1`, `center2` — S2 point indexes corresponding to the two input caps. [UInt64](/reference/data-types/int-uint).
-- `radius1`, `radius2` — Radius of the two input caps in degrees. [Float64](/reference/data-types/float).
+- `center1`, `center2` — S2 point indexes corresponding to the two input caps. [UInt64](/core/reference/data-types/int-uint).
+- `radius1`, `radius2` — Radius of the two input caps in degrees. [Float64](/core/reference/data-types/float).
**Returned values**
-- `center` — S2 point index corresponding the center of the smallest cap containing the two input caps. [UInt64](/reference/data-types/int-uint).
-- `radius` — Radius of the smallest cap containing the two input caps. [Float64](/reference/data-types/float).
+- `center` — S2 point index corresponding the center of the smallest cap containing the two input caps. [UInt64](/core/reference/data-types/int-uint).
+- `radius` — Radius of the smallest cap containing the two input caps. [Float64](/core/reference/data-types/float).
**Example**
@@ -213,14 +213,14 @@ s2RectAdd(s2pointLow, s2pointHigh, s2Point)
**Arguments**
-- `s2PointLow` — Low S2 point index corresponding to the rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2PointHigh` — High S2 point index corresponding to the rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2Point` — Target S2 point index that the bound rectangle should be grown to include. [UInt64](/reference/data-types/int-uint).
+- `s2PointLow` — Low S2 point index corresponding to the rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2PointHigh` — High S2 point index corresponding to the rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2Point` — Target S2 point index that the bound rectangle should be grown to include. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- `s2PointLow` — Low S2 cell id corresponding to the grown rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2PointHigh` — Height S2 cell id corresponding to the grown rectangle. [UInt64](/reference/data-types/float).
+- `s2PointLow` — Low S2 cell id corresponding to the grown rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2PointHigh` — Height S2 cell id corresponding to the grown rectangle. [UInt64](/core/reference/data-types/float).
**Example**
@@ -246,9 +246,9 @@ s2RectContains(s2PointLow, s2PointHi, s2Point)
**Arguments**
-- `s2PointLow` — Low S2 point index corresponding to the rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2PointHigh` — High S2 point index corresponding to the rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2Point` — Target S2 point index. [UInt64](/reference/data-types/int-uint).
+- `s2PointLow` — Low S2 point index corresponding to the rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2PointHigh` — High S2 point index corresponding to the rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2Point` — Target S2 point index. [UInt64](/core/reference/data-types/int-uint).
**Returned value**
@@ -279,13 +279,13 @@ s2RectUnion(s2Rect1PointLow, s2Rect1PointHi, s2Rect2PointLow, s2Rect2PointHi)
**Arguments**
-- `s2Rect1PointLow`, `s2Rect1PointHi` — Low and High S2 point indexes corresponding to the first rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2Rect2PointLow`, `s2Rect2PointHi` — Low and High S2 point indexes corresponding to the second rectangle. [UInt64](/reference/data-types/int-uint).
+- `s2Rect1PointLow`, `s2Rect1PointHi` — Low and High S2 point indexes corresponding to the first rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2Rect2PointLow`, `s2Rect2PointHi` — Low and High S2 point indexes corresponding to the second rectangle. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- `s2UnionRect2PointLow` — Low S2 cell id corresponding to the union rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2UnionRect2PointHi` — High S2 cell id corresponding to the union rectangle. [UInt64](/reference/data-types/int-uint).
+- `s2UnionRect2PointLow` — Low S2 cell id corresponding to the union rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2UnionRect2PointHi` — High S2 cell id corresponding to the union rectangle. [UInt64](/core/reference/data-types/int-uint).
**Example**
@@ -311,13 +311,13 @@ s2RectIntersection(s2Rect1PointLow, s2Rect1PointHi, s2Rect2PointLow, s2Rect2Poin
**Arguments**
-- `s2Rect1PointLow`, `s2Rect1PointHi` — Low and High S2 point indexes corresponding to the first rectangle. [UInt64](/reference/data-types/int-uint).
-- `s2Rect2PointLow`, `s2Rect2PointHi` — Low and High S2 point indexes corresponding to the second rectangle. [UInt64](/reference/data-types/int-uint).
+- `s2Rect1PointLow`, `s2Rect1PointHi` — Low and High S2 point indexes corresponding to the first rectangle. [UInt64](/core/reference/data-types/int-uint).
+- `s2Rect2PointLow`, `s2Rect2PointHi` — Low and High S2 point indexes corresponding to the second rectangle. [UInt64](/core/reference/data-types/int-uint).
**Returned values**
-- `s2UnionRect2PointLow` — Low S2 cell id corresponding to the rectangle containing the intersection of the given rectangles. [UInt64](/reference/data-types/int-uint).
-- `s2UnionRect2PointHi` — High S2 cell id corresponding to the rectangle containing the intersection of the given rectangles. [UInt64](/reference/data-types/int-uint).
+- `s2UnionRect2PointLow` — Low S2 cell id corresponding to the rectangle containing the intersection of the given rectangles. [UInt64](/core/reference/data-types/int-uint).
+- `s2UnionRect2PointHi` — High S2 cell id corresponding to the rectangle containing the intersection of the given rectangles. [UInt64](/core/reference/data-types/int-uint).
**Example**
diff --git a/reference/functions/regular-functions/geo/svg.mdx b/core/reference/functions/regular-functions/geo/svg.mdx
similarity index 81%
rename from reference/functions/regular-functions/geo/svg.mdx
rename to core/reference/functions/regular-functions/geo/svg.mdx
index ca1081d0..423525a8 100644
--- a/reference/functions/regular-functions/geo/svg.mdx
+++ b/core/reference/functions/regular-functions/geo/svg.mdx
@@ -20,12 +20,12 @@ Aliases: `SVG`, `svg`
**Parameters**
-- `geometry` — Geo data. [Geo](/reference/data-types/geo).
-- `style` — Optional style name. [String](/reference/data-types/string).
+- `geometry` — Geo data. [Geo](/core/reference/data-types/geo).
+- `style` — Optional style name. [String](/core/reference/data-types/string).
**Returned value**
-- The SVG representation of the geometry. [String](/reference/data-types/string).
+- The SVG representation of the geometry. [String](/core/reference/data-types/string).
- SVG circle
- SVG polygon
- SVG path
diff --git a/reference/functions/regular-functions/hash-functions.mdx b/core/reference/functions/regular-functions/hash-functions.mdx
similarity index 82%
rename from reference/functions/regular-functions/hash-functions.mdx
rename to core/reference/functions/regular-functions/hash-functions.mdx
index d092d688..f69a1082 100644
--- a/reference/functions/regular-functions/hash-functions.mdx
+++ b/core/reference/functions/regular-functions/hash-functions.mdx
@@ -48,11 +48,11 @@ BLAKE3(message)
**Arguments**
-- `message` — The input string to hash. [`String`](/reference/data-types/string)
+- `message` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the 32-byte BLAKE3 hash of the input string as a fixed-length string. [`FixedString(32)`](/reference/data-types/fixedstring)
+Returns the 32-byte BLAKE3 hash of the input string as a fixed-length string. [`FixedString(32)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -83,11 +83,11 @@ MD4(s)
**Arguments**
-- `s` — The input string to hash. [`String`](/reference/data-types/string)
+- `s` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the MD4 hash of the given input string as a fixed-length string. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns the MD4 hash of the given input string as a fixed-length string. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -118,11 +118,11 @@ MD5(s)
**Arguments**
-- `s` — The input string to hash. [`String`](/reference/data-types/string)
+- `s` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the MD5 hash of the given input string as a fixed-length string. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns the MD5 hash of the given input string as a fixed-length string. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -152,11 +152,11 @@ RIPEMD160(s)
**Arguments**
-- `s` — The input string to hash. [`String`](/reference/data-types/string)
+- `s` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the RIPEMD160 hash of the given input string as a fixed-length string. [`FixedString(20)`](/reference/data-types/fixedstring)
+Returns the RIPEMD160 hash of the given input string as a fixed-length string. [`FixedString(20)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -187,11 +187,11 @@ SHA1(s)
**Arguments**
-- `s` — The input string to hash [`String`](/reference/data-types/string)
+- `s` — The input string to hash [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the SHA1 hash of the given input string as a fixed-length string. [`FixedString(20)`](/reference/data-types/fixedstring)
+Returns the SHA1 hash of the given input string as a fixed-length string. [`FixedString(20)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -222,11 +222,11 @@ SHA224(s)
**Arguments**
-- `s` — The input value to hash. [`String`](/reference/data-types/string)
+- `s` — The input value to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the SHA224 hash of the given input string as a fixed-length string. [`FixedString(28)`](/reference/data-types/fixedstring)
+Returns the SHA224 hash of the given input string as a fixed-length string. [`FixedString(28)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -257,11 +257,11 @@ SHA256(s)
**Arguments**
-- `s` — The input string to hash. [`String`](/reference/data-types/string)
+- `s` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the SHA256 hash of the given input string as a fixed-length string. [`FixedString(32)`](/reference/data-types/fixedstring)
+Returns the SHA256 hash of the given input string as a fixed-length string. [`FixedString(32)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -292,11 +292,11 @@ SHA384(s)
**Arguments**
-- `s` — The input string to hash. [`String`](/reference/data-types/string)
+- `s` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the SHA384 hash of the given input string as a fixed-length string. [`FixedString(48)`](/reference/data-types/fixedstring)
+Returns the SHA384 hash of the given input string as a fixed-length string. [`FixedString(48)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -327,11 +327,11 @@ SHA512(s)
**Arguments**
-- `s` — The input string to hash [`String`](/reference/data-types/string)
+- `s` — The input string to hash [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the SHA512 hash of the given input string as a fixed-length string. [`FixedString(64)`](/reference/data-types/fixedstring)
+Returns the SHA512 hash of the given input string as a fixed-length string. [`FixedString(64)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -362,11 +362,11 @@ SHA512_256(s)
**Arguments**
-- `s` — The input string to hash. [`String`](/reference/data-types/string)
+- `s` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the SHA512_256 hash of the given input string as a fixed-length string. [`FixedString(32)`](/reference/data-types/fixedstring)
+Returns the SHA512_256 hash of the given input string as a fixed-length string. [`FixedString(32)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -403,12 +403,12 @@ URLHash(url[, N])
**Arguments**
-- `url` — URL string to hash. [`String`](/reference/data-types/string)
-- `N` — Optional. Level in the URL hierarchy. [`(U)Int*`](/reference/data-types/int-uint)
+- `url` — URL string to hash. [`String`](/core/reference/data-types/string)
+- `N` — Optional. Level in the URL hierarchy. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value of `url`. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value of `url`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -471,11 +471,11 @@ cityHash64(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -540,11 +540,11 @@ farmFingerprint64(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash value of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -583,11 +583,11 @@ farmHash64(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash value of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -619,11 +619,11 @@ gccMurmurHash(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the calculated hash value of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns the calculated hash value of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -645,9 +645,9 @@ SELECT
Introduced in: v1.1.0
-[Interprets](/reference/functions/regular-functions/type-conversion-functions#reinterpretAsString) all the input
+[Interprets](/core/reference/functions/regular-functions/type-conversion-functions#reinterpretAsString) all the input
parameters as strings and calculates the MD5 hash value for each of them. Then combines hashes, takes the first 8 bytes of the hash of the
-resulting string, and interprets them as [UInt64](/reference/data-types/int-uint) in big-endian byte order. The function is
+resulting string, and interprets them as [UInt64](/core/reference/data-types/int-uint) in big-endian byte order. The function is
relatively slow (5 million short strings per second per processor core).
Consider using the [`sipHash64`](#sipHash64) function instead.
@@ -665,11 +665,11 @@ halfMD5(arg1[, arg2, ..., argN])
**Arguments**
-- `arg1[, arg2, ..., argN]` — Variable number of arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ..., argN]` — Variable number of arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed half MD5 hash of the given input params returned as a `UInt64` in big-endian byte order. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed half MD5 hash of the given input params returned as a `UInt64` in big-endian byte order. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -706,11 +706,11 @@ hiveHash(arg)
**Arguments**
-- `arg` — Input string to hash. [`String`](/reference/data-types/string)
+- `arg` — Input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the computed "hive hash" of the input string. [`Int32`](/reference/data-types/int-uint)
+Returns the computed "hive hash" of the input string. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -740,11 +740,11 @@ icebergHash(value)
**Arguments**
-- `value` — Source value to take the hash of [`Integer`](/reference/data-types/int-uint) or [`Bool`](/reference/data-types/boolean) or [`Decimal`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`UUID`](/reference/data-types/uuid) or [`Date`](/reference/data-types/date) or [`Time`](/reference/data-types/time) or [`DateTime`](/reference/data-types/datetime)
+- `value` — Source value to take the hash of [`Integer`](/core/reference/data-types/int-uint) or [`Bool`](/core/reference/data-types/boolean) or [`Decimal`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`UUID`](/core/reference/data-types/uuid) or [`Date`](/core/reference/data-types/date) or [`Time`](/core/reference/data-types/time) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns a 32-bit Murmur3 hash, x86 variant, seeded with 0 [`Int32`](/reference/data-types/int-uint)
+Returns a 32-bit Murmur3 hash, x86 variant, seeded with 0 [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -774,11 +774,11 @@ intHash32(arg)
**Arguments**
-- `arg` — Integer to hash. [`(U)Int*`](/reference/data-types/int-uint)
+- `arg` — Integer to hash. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed 32-bit hash code of the input integer [`UInt32`](/reference/data-types/int-uint)
+Returns the computed 32-bit hash code of the input integer [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -810,11 +810,11 @@ intHash64(int)
**Arguments**
-- `int` — Integer to hash. [`(U)Int*`](/reference/data-types/int-uint)
+- `int` — Integer to hash. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-64-bit hash code. [`UInt64`](/reference/data-types/int-uint)
+64-bit hash code. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -859,11 +859,11 @@ javaHash(arg)
**Arguments**
-- `arg` — Input value to hash. [`Any`](/reference/data-types)
+- `arg` — Input value to hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash of `arg` [`Int32`](/reference/data-types/int-uint)
+Returns the computed hash of `arg` [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -905,11 +905,11 @@ javaHashUTF16LE(arg)
**Arguments**
-- `arg` — A string in UTF-16LE encoding. [`String`](/reference/data-types/string)
+- `arg` — A string in UTF-16LE encoding. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the computed hash of the UTF-16LE encoded string. [`Int32`](/reference/data-types/int-uint)
+Returns the computed hash of the UTF-16LE encoded string. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -939,12 +939,12 @@ jumpConsistentHash(key, buckets)
**Arguments**
-- `key` — The input key. [`UInt64`](/reference/data-types/int-uint)
-- `buckets` — The number of buckets. [`Int32`](/reference/data-types/int-uint)
+- `key` — The input key. [`UInt64`](/core/reference/data-types/int-uint)
+- `buckets` — The number of buckets. [`Int32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`Int32`](/reference/data-types/int-uint)
+Returns the computed hash value. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -974,11 +974,11 @@ kafkaMurmurHash(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of parameters for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of parameters for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the calculated hash value of the input arguments. [`UInt32`](/reference/data-types/int-uint)
+Returns the calculated hash value of the input arguments. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -1012,11 +1012,11 @@ keccak256(message)
**Arguments**
-- `message` — The input string to hash. [`String`](/reference/data-types/string)
+- `message` — The input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the 32-byte Keccak-256 hash of the input string as a fixed-length string. [`FixedString(32)`](/reference/data-types/fixedstring)
+Returns the 32-byte Keccak-256 hash of the input string as a fixed-length string. [`FixedString(32)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -1049,12 +1049,12 @@ kostikConsistentHash(input, n)
**Arguments**
-- `input` — An integer key. [`UInt64`](/reference/data-types/int-uint)
-- `n` — The number of buckets. [`UInt16`](/reference/data-types/int-uint)
+- `input` — An integer key. [`UInt64`](/core/reference/data-types/int-uint)
+- `n` — The number of buckets. [`UInt16`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`UInt16`](/reference/data-types/int-uint)
+Returns the computed hash value. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -1089,11 +1089,11 @@ metroHash64(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1128,11 +1128,11 @@ murmurHash2_32(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash value of the input arguments. [`UInt32`](/reference/data-types/int-uint)
+Returns the computed hash value of the input arguments. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -1167,11 +1167,11 @@ murmurHash2_64(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1201,11 +1201,11 @@ murmurHash3_128(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed 128-bit `MurmurHash3` hash value of the input arguments. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns the computed 128-bit `MurmurHash3` hash value of the input arguments. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -1240,11 +1240,11 @@ murmurHash3_32(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash value of the input arguments. [`UInt32`](/reference/data-types/int-uint)
+Returns the computed hash value of the input arguments. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -1279,11 +1279,11 @@ murmurHash3_64(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash value of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1307,7 +1307,7 @@ Splits a ASCII string into n-grams of `ngramsize` symbols and calculates hash va
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case sensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -1318,13 +1318,13 @@ ngramMinHash(string[, ngramsize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two hashes — the minimum and the maximum. [`Tuple`](/reference/data-types/tuple)
+Returns a tuple with two hashes — the minimum and the maximum. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -1355,13 +1355,13 @@ ngramMinHashArg(string[, ngramsize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(String)`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(String)`](/core/reference/data-types/tuple)
**Examples**
@@ -1392,13 +1392,13 @@ ngramMinHashArgCaseInsensitive(string[, ngramsize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(Tuple(String))`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(Tuple(String))`](/core/reference/data-types/tuple)
**Examples**
@@ -1429,13 +1429,13 @@ ngramMinHashArgCaseInsensitiveUTF8(string[, ngramsize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(Tuple(String))`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(Tuple(String))`](/core/reference/data-types/tuple)
**Examples**
@@ -1466,13 +1466,13 @@ ngramMinHashArgUTF8(string[, ngramsize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(Tuple(String))`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` n-grams each. [`Tuple(Tuple(String))`](/core/reference/data-types/tuple)
**Examples**
@@ -1496,7 +1496,7 @@ Splits a ASCII string into n-grams of `ngramsize` symbols and calculates hash va
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case insensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -1507,11 +1507,11 @@ ngramMinHashCaseInsensitive(string[, ngramsize, hashnum])
**Arguments**
-- `string` — String. [String](/reference/data-types/string). - `ngramsize` — The size of an n-gram. Optional. Possible values: any number from `1` to `25`. Default value: `3`. [UInt8](/reference/data-types/int-uint). - `hashnum` — The number of minimum and maximum hashes used to calculate the result. Optional. Possible values: any number from `1` to `25`. Default value: `6`. [UInt8](/reference/data-types/int-uint).
+- `string` — String. [String](/core/reference/data-types/string). - `ngramsize` — The size of an n-gram. Optional. Possible values: any number from `1` to `25`. Default value: `3`. [UInt8](/core/reference/data-types/int-uint). - `hashnum` — The number of minimum and maximum hashes used to calculate the result. Optional. Possible values: any number from `1` to `25`. Default value: `6`. [UInt8](/core/reference/data-types/int-uint).
**Returned value**
-Tuple with two hashes — the minimum and the maximum. [Tuple](/reference/data-types/tuple)([UInt64](/reference/data-types/int-uint), [UInt64](/reference/data-types/int-uint)). [`Tuple`](/reference/data-types/tuple)
+Tuple with two hashes — the minimum and the maximum. [Tuple](/core/reference/data-types/tuple)([UInt64](/core/reference/data-types/int-uint), [UInt64](/core/reference/data-types/int-uint)). [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -1535,7 +1535,7 @@ Splits a UTF-8 string into n-grams of `ngramsize` symbols and calculates hash va
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case insensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -1546,13 +1546,13 @@ ngramMinHashCaseInsensitiveUTF8(string [, ngramsize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two hashes — the minimum and the maximum. [`Tuple`](/reference/data-types/tuple)
+Returns a tuple with two hashes — the minimum and the maximum. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -1576,7 +1576,7 @@ Splits a UTF-8 string into n-grams of `ngramsize` symbols and calculates hash va
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case sensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -1587,13 +1587,13 @@ ngramMinHashUTF8(string[, ngramsize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two hashes — the minimum and the maximum. [`Tuple`](/reference/data-types/tuple)
+Returns a tuple with two hashes — the minimum and the maximum. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -1615,7 +1615,7 @@ Introduced in: v21.1.0
Splits a ASCII string into n-grams of `ngramsize` symbols and returns the n-gram `simhash`.
-Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/reference/functions/regular-functions/bit-functions#bitHammingDistance).
+Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance).
The smaller the [Hamming distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -1626,12 +1626,12 @@ ngramSimHash(string[, ngramsize])
**Arguments**
-- `string` — String for which to compute the case sensitive `simhash`. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is`3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the case sensitive `simhash`. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is`3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash of the input string. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash of the input string. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1654,7 +1654,7 @@ Introduced in: v21.1.0
Splits a ASCII string into n-grams of `ngramsize` symbols and returns the n-gram `simhash`.
It is case insensitive.
-Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/reference/functions/regular-functions/bit-functions#bitHammingDistance).
+Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance).
The smaller the [Hamming distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -1665,12 +1665,12 @@ ngramSimHashCaseInsensitive(string[, ngramsize])
**Arguments**
-- `string` — String for which to compute the case insensitive `simhash`. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the case insensitive `simhash`. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Hash value. [UInt64](/reference/data-types/int-uint). [`UInt64`](/reference/data-types/int-uint)
+Hash value. [UInt64](/core/reference/data-types/int-uint). [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1693,7 +1693,7 @@ Introduced in: v21.1.0
Splits a UTF-8 string into n-grams of `ngramsize` symbols and returns the n-gram `simhash`.
It is case insensitive.
-Can be used for detection of semi-duplicate strings with [bitHammingDistance](/reference/functions/regular-functions/bit-functions#bitHammingDistance). The smaller is the [Hamming Distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
+Can be used for detection of semi-duplicate strings with [bitHammingDistance](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance). The smaller is the [Hamming Distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -1703,12 +1703,12 @@ ngramSimHashCaseInsensitiveUTF8(string[, ngramsize])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1731,7 +1731,7 @@ Introduced in: v21.1.0
Splits a UTF-8 encoded string into n-grams of `ngramsize` symbols and returns the n-gram `simhash`.
It is case sensitive.
-Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/reference/functions/regular-functions/bit-functions#bitHammingDistance).
+Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance).
The smaller the [Hamming distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -1742,12 +1742,12 @@ ngramSimHashUTF8(string[, ngramsize])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `ngramsize` — Optional. The size of an n-gram, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1785,11 +1785,11 @@ sipHash128(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a 128-bit `SipHash` hash value. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns a 128-bit `SipHash` hash value. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -1827,12 +1827,12 @@ sipHash128Keyed((k0, k1), [arg1, arg2, ...])
**Arguments**
-- `(k0, k1)` — A tuple of two UInt64 values representing the key. [`Tuple(UInt64, UInt64)`](/reference/data-types/tuple)
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `(k0, k1)` — A tuple of two UInt64 values representing the key. [`Tuple(UInt64, UInt64)`](/core/reference/data-types/tuple)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-A 128-bit `SipHash` hash value of type [FixedString(16)](/reference/data-types/fixedstring). [`FixedString(16)`](/reference/data-types/fixedstring)
+A 128-bit `SipHash` hash value of type [FixedString(16)](/core/reference/data-types/fixedstring). [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -1852,7 +1852,7 @@ SELECT hex(sipHash128Keyed((506097522914230528, 1084818905618843912),'foo', '\x0
Introduced in: v23.2.0
-Like [`sipHash128`](/reference/functions/regular-functions/hash-functions#sipHash128) but implements the 128-bit algorithm from the original authors of SipHash.
+Like [`sipHash128`](/core/reference/functions/regular-functions/hash-functions#sipHash128) but implements the 128-bit algorithm from the original authors of SipHash.
**Syntax**
@@ -1863,11 +1863,11 @@ sipHash128Reference(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed 128-bit `SipHash` hash value of the input arguments. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns the computed 128-bit `SipHash` hash value of the input arguments. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -1898,12 +1898,12 @@ sipHash128ReferenceKeyed((k0, k1), arg1[, arg2, ...])
**Arguments**
-- `(k0, k1)` — Tuple of two values representing the key [`Tuple(UInt64, UInt64)`](/reference/data-types/tuple)
-- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/reference/data-types)
+- `(k0, k1)` — Tuple of two values representing the key [`Tuple(UInt64, UInt64)`](/core/reference/data-types/tuple)
+- `arg1[, arg2, ...]` — A variable number of input arguments for which to compute the hash. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed 128-bit `SipHash` hash value of the input arguments. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns the computed 128-bit `SipHash` hash value of the input arguments. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -1927,7 +1927,7 @@ Produces a 64-bit [SipHash](https://en.wikipedia.org/wiki/SipHash) hash value.
This is a cryptographic hash function. It works at least three times faster than the [`MD5`](#MD5) hash function.
-The function [interprets](/reference/functions/regular-functions/type-conversion-functions#reinterpretAsString) all the input parameters as strings and calculates the hash value for each of them.
+The function [interprets](/core/reference/functions/regular-functions/type-conversion-functions#reinterpretAsString) all the input parameters as strings and calculates the hash value for each of them.
It then combines the hashes using the following algorithm:
1. The first and the second hash value are concatenated to an array which is hashed.
@@ -1947,11 +1947,11 @@ sipHash64(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — A variable number of input arguments. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — A variable number of input arguments. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a computed hash value of the input arguments. [`UInt64`](/reference/data-types/int-uint)
+Returns a computed hash value of the input arguments. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1981,12 +1981,12 @@ sipHash64Keyed((k0, k1), arg1[,arg2, ...])
**Arguments**
-- `(k0, k1)` — A tuple of two values representing the key. [`Tuple(UInt64, UInt64)`](/reference/data-types/tuple)
-- `arg1[,arg2, ...]` — A variable number of input arguments. [`Any`](/reference/data-types)
+- `(k0, k1)` — A tuple of two values representing the key. [`Tuple(UInt64, UInt64)`](/core/reference/data-types/tuple)
+- `arg1[,arg2, ...]` — A variable number of input arguments. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed hash of the input values. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash of the input values. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2010,7 +2010,7 @@ Splits a ASCII string into parts (shingles) of `shinglesize` words, calculates h
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case sensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -2021,13 +2021,13 @@ wordShingleMinHash(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/reference/data-types/tuple)
+Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/core/reference/data-types/tuple)
**Examples**
@@ -2058,13 +2058,13 @@ wordShingleMinHashArg(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/core/reference/data-types/tuple)
**Examples**
@@ -2095,13 +2095,13 @@ wordShingleMinHashArgCaseInsensitive(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/core/reference/data-types/tuple)
**Examples**
@@ -2132,13 +2132,13 @@ wordShingleMinHashArgCaseInsensitiveUTF8(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/core/reference/data-types/tuple)
**Examples**
@@ -2169,13 +2169,13 @@ wordShingleMinHashArgUTF8(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/reference/data-types/tuple)
+Returns a tuple with two tuples with `hashnum` word shingles each. [`Tuple(Tuple(String))`](/core/reference/data-types/tuple)
**Examples**
@@ -2199,7 +2199,7 @@ Splits a ASCII string into parts (shingles) of `shinglesize` words, calculates h
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case insensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -2210,13 +2210,13 @@ wordShingleMinHashCaseInsensitive(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/reference/data-types/tuple)
+Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/core/reference/data-types/tuple)
**Examples**
@@ -2240,7 +2240,7 @@ Splits a UTF-8 string into parts (shingles) of `shinglesize` words, calculates h
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case insensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -2251,13 +2251,13 @@ wordShingleMinHashCaseInsensitiveUTF8(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/reference/data-types/tuple)
+Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/core/reference/data-types/tuple)
**Examples**
@@ -2281,7 +2281,7 @@ Splits a UTF-8 string into parts (shingles) of `shinglesize` words, calculates h
Uses `hashnum` minimum hashes to calculate the minimum hash and `hashnum` maximum hashes to calculate the maximum hash.
It is case sensitive.
-Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
+Can be used to detect semi-duplicate strings with [`tupleHammingDistance`](/core/reference/functions/regular-functions/tuple-functions#tupleHammingDistance).
For two strings, if the returned hashes are the same for both strings, then those strings are the same.
**Syntax**
@@ -2292,13 +2292,13 @@ wordShingleMinHashUTF8(string[, shinglesize, hashnum])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
-- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `hashnum` — Optional. The number of minimum and maximum hashes used to calculate the result, any number from `1` to `25`. The default value is `6`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/reference/data-types/tuple)
+Returns a tuple with two hashes — the minimum and the maximum. [`Tuple(UInt64, UInt64)`](/core/reference/data-types/tuple)
**Examples**
@@ -2321,7 +2321,7 @@ Introduced in: v21.1.0
Splits a ASCII string into parts (shingles) of `shinglesize` words and returns the word shingle `simhash`.
Is is case sensitive.
-Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/reference/functions/regular-functions/bit-functions#bitHammingDistance).
+Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance).
The smaller the [Hamming distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -2332,12 +2332,12 @@ wordShingleSimHash(string[, shinglesize])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2360,7 +2360,7 @@ Introduced in: v21.1.0
Splits a ASCII string into parts (shingles) of `shinglesize` words and returns the word shingle `simhash`.
It is case insensitive.
-Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/reference/functions/regular-functions/bit-functions#bitHammingDistance).
+Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance).
The smaller the [Hamming distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -2371,12 +2371,12 @@ wordShingleSimHashCaseInsensitive(string[, shinglesize])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2399,7 +2399,7 @@ Introduced in: v1.1.0
Splits a UTF-8 encoded string into parts (shingles) of `shinglesize` words and returns the word shingle `simhash`.
It is case insensitive.
-Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/reference/functions/regular-functions/bit-functions#bitHammingDistance).
+Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance).
The smaller the [Hamming Distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -2410,12 +2410,12 @@ wordShingleSimHashCaseInsensitiveUTF8(string[, shinglesize])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2438,7 +2438,7 @@ Introduced in: v21.1.0
Splits a UTF-8 string into parts (shingles) of `shinglesize` words and returns the word shingle `simhash`.
It is case sensitive.
-Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/reference/functions/regular-functions/bit-functions#bitHammingDistance).
+Can be used for detection of semi-duplicate strings with [`bitHammingDistance`](/core/reference/functions/regular-functions/bit-functions#bitHammingDistance).
The smaller the [Hamming distance](https://en.wikipedia.org/wiki/Hamming_distance) of the calculated `simhashes` of two strings, the more likely these strings are the same.
**Syntax**
@@ -2449,12 +2449,12 @@ wordShingleSimHashUTF8(string[, shinglesize])
**Arguments**
-- `string` — String for which to compute the hash. [`String`](/reference/data-types/string)
-- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/reference/data-types/int-uint)
+- `string` — String for which to compute the hash. [`String`](/core/reference/data-types/string)
+- `shinglesize` — Optional. The size of a word shingle, any number from `1` to `25`. The default value is `3`. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the computed hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2484,11 +2484,11 @@ wyHash64(arg)
**Arguments**
-- `arg` — String argument for which to compute the hash. [`String`](/reference/data-types/string)
+- `arg` — String argument for which to compute the hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the computed 64-bit hash value [`UInt64`](/reference/data-types/int-uint)
+Returns the computed 64-bit hash value [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2518,11 +2518,11 @@ xxHash32(arg)
**Arguments**
-- `arg` — Input string to hash. [`String`](/reference/data-types/string)
+- `arg` — Input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the computed 32-bit hash of the input string. [`UInt32`](/reference/data-types/int-uint)
+Returns the computed 32-bit hash of the input string. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -2554,11 +2554,11 @@ xxHash64(arg)
**Arguments**
-- `arg` — Input string to hash. [`String`](/reference/data-types/string)
+- `arg` — Input string to hash. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the computed 64-bit hash of the input string. [`UInt64`](/reference/data-types/int-uint)
+Returns the computed 64-bit hash of the input string. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2588,11 +2588,11 @@ xxh3(expr)
**Arguments**
-- `expr` — A list of expressions of any data type. [`Any`](/reference/data-types)
+- `expr` — A list of expressions of any data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed 64-bit `xxh3` hash value [`UInt64`](/reference/data-types/int-uint)
+Returns the computed 64-bit `xxh3` hash value [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2620,11 +2620,11 @@ xxh3_128(expr)
**Arguments**
-- `expr` — A list of expressions of any data type. [`Any`](/reference/data-types)
+- `expr` — A list of expressions of any data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the computed 128-bit `xxh3` hash value [`UInt128`](/reference/data-types/int-uint)
+Returns the computed 128-bit `xxh3` hash value [`UInt128`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/in-functions.mdx b/core/reference/functions/regular-functions/in-functions.mdx
similarity index 82%
rename from reference/functions/regular-functions/in-functions.mdx
rename to core/reference/functions/regular-functions/in-functions.mdx
index 52ebd0f2..d72faed5 100644
--- a/reference/functions/regular-functions/in-functions.mdx
+++ b/core/reference/functions/regular-functions/in-functions.mdx
@@ -8,4 +8,4 @@ doc_type: 'reference'
## in, notIn, globalIn, globalNotIn {#in-notin-globalin-globalnotin}
-See the section [IN operators](/reference/statements/in).
+See the section [IN operators](/core/reference/statements/in).
diff --git a/reference/functions/regular-functions/introspection.mdx b/core/reference/functions/regular-functions/introspection.mdx
similarity index 93%
rename from reference/functions/regular-functions/introspection.mdx
rename to core/reference/functions/regular-functions/introspection.mdx
index e1bac239..e67cf7c2 100644
--- a/reference/functions/regular-functions/introspection.mdx
+++ b/core/reference/functions/regular-functions/introspection.mdx
@@ -16,11 +16,11 @@ For proper operation of introspection functions:
- Install the `clickhouse-common-static-dbg` package.
-- Set the [allow_introspection_functions](/reference/settings/session-settings#allow_introspection_functions) setting to 1.
+- Set the [allow_introspection_functions](/core/reference/settings/session-settings#allow_introspection_functions) setting to 1.
For security reasons introspection functions are disabled by default.
-ClickHouse saves profiler reports to the [trace_log](/reference/system-tables/trace_log) system table. Make sure the table and profiler are configured properly.
+ClickHouse saves profiler reports to the [trace_log](/core/reference/system-tables/trace_log) system table. Make sure the table and profiler are configured properly.
{/*
The inner content of the tags below are replaced at doc framework build time with
@@ -42,7 +42,7 @@ This function is slow and may impose security considerations.
To enable this introspection function:
- Install the `clickhouse-common-static-dbg` package.
-- Set setting [`allow_introspection_functions`](/reference/settings/session-settings#allow_introspection_functions) to `1`.
+- Set setting [`allow_introspection_functions`](/core/reference/settings/session-settings#allow_introspection_functions) to `1`.
**Syntax**
@@ -53,11 +53,11 @@ addressToLine(address_of_binary_instruction)
**Arguments**
-- `address_of_binary_instruction` — Address of instruction in a running process. [`UInt64`](/reference/data-types/int-uint)
+- `address_of_binary_instruction` — Address of instruction in a running process. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a source code filename and line number delimited by a colon, for example, `/build/obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:199`. Returns the name of a binary, if no debug information could be found, otherwise an empty string, if the address is not valid. [`String`](/reference/data-types/string)
+Returns a source code filename and line number delimited by a colon, for example, `/build/obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:199`. Returns the name of a binary, if no debug information could be found, otherwise an empty string, if the address is not valid. [`String`](/core/reference/data-types/string)
**Examples**
@@ -130,7 +130,7 @@ As a result of this, it is slower than `addressToLine`.
To enable this introspection function:
- Install the `clickhouse-common-static-dbg` package.
-- Set setting [`allow_introspection_functions`](/reference/settings/session-settings#allow_introspection_functions) to `1`.
+- Set setting [`allow_introspection_functions`](/core/reference/settings/session-settings#allow_introspection_functions) to `1`.
**Syntax**
@@ -141,11 +141,11 @@ addressToLineWithInlines(address_of_binary_instruction)
**Arguments**
-- `address_of_binary_instruction` — The address of an instruction in a running process. [`UInt64`](/reference/data-types/int-uint)
+- `address_of_binary_instruction` — The address of an instruction in a running process. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array whose first element is the source code filename and line number delimited by a colon. The second, third, etc. element list inline functions' source code filenames, line numbers and function names. If no debug information could be found, then an array with a single element equal to the name of the binary is returned, otherwise an empty array is returned if the address is not valid. [`Array(String)`](/reference/data-types/array)
+Returns an array whose first element is the source code filename and line number delimited by a colon. The second, third, etc. element list inline functions' source code filenames, line numbers and function names. If no debug information could be found, then an array with a single element equal to the name of the binary is returned, otherwise an empty array is returned if the address is not valid. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -236,11 +236,11 @@ addressToSymbol(address_of_binary_instruction)
**Arguments**
-- `address_of_binary_instruction` — Address of instruction in a running process. [`UInt64`](/reference/data-types/int-uint)
+- `address_of_binary_instruction` — Address of instruction in a running process. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the symbol from ClickHouse object files or an empty string, if the address is not valid. [`String`](/reference/data-types/string)
+Returns the symbol from ClickHouse object files or an empty string, if the address is not valid. [`String`](/core/reference/data-types/string)
**Examples**
@@ -332,11 +332,11 @@ demangle(symbol)
**Arguments**
-- `symbol` — Symbol from an object file. [`String`](/reference/data-types/string)
+- `symbol` — Symbol from an object file. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the name of the C++ function, or an empty string if the symbol is not valid. [`String`](/reference/data-types/string)
+Returns the name of the C++ function, or an empty string if the symbol is not valid. [`String`](/core/reference/data-types/string)
**Examples**
@@ -426,12 +426,12 @@ isMergeTreePartCoveredBy(nested_part, covering_part)
**Arguments**
-- `nested_part` — Name of expected nested part. [`String`](/reference/data-types/string)
-- `covering_part` — Name of expected covering part. [`String`](/reference/data-types/string)
+- `nested_part` — Name of expected nested part. [`String`](/core/reference/data-types/string)
+- `covering_part` — Name of expected covering part. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if it covers, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if it covers, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -452,7 +452,7 @@ SELECT isMergeTreePartCoveredBy(rhs, lhs), isMergeTreePartCoveredBy(lhs, rhs);
Introduced in: v20.12.0
-Emits a trace log message to the server log for each [Block](/resources/contribute/architecture#block).
+Emits a trace log message to the server log for each [Block](/resources/develop-contribute/introduction/architecture#block).
**Syntax**
@@ -463,11 +463,11 @@ logTrace(message)
**Arguments**
-- `message` — Message that is emitted to the server log. [`const String`](/reference/data-types/string)
+- `message` — Message that is emitted to the server log. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `0` always. [`UInt8`](/reference/data-types/int-uint)
+Returns `0` always. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -498,11 +498,11 @@ mergeTreePartInfo(part_name)
**Arguments**
-- `part_name` — Name of part to unpack. [`String`](/reference/data-types/string)
+- `part_name` — Name of part to unpack. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Tuple with subcolumns: `partition_id`, `min_block`, `max_block`, `level`, `mutation`. [`Tuple`](/reference/data-types/tuple)
+Returns a Tuple with subcolumns: `partition_id`, `min_block`, `max_block`, `level`, `mutation`. [`Tuple`](/core/reference/data-types/tuple)
**Examples**
@@ -523,7 +523,7 @@ SELECT info.partition_id, info.min_block, info.max_block, info.level, info.mutat
Introduced in: v20.12.0
-Returns id of the thread, in which the current [Block](/resources/contribute/architecture#block) is processed.
+Returns id of the thread, in which the current [Block](/resources/develop-contribute/introduction/architecture#block) is processed.
**Syntax**
@@ -538,7 +538,7 @@ tid()
**Returned value**
-Returns the current thread id. [`UInt64`](/reference/data-types/int-uint)
+Returns the current thread id. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/ip-address-functions.mdx b/core/reference/functions/regular-functions/ip-address-functions.mdx
similarity index 84%
rename from reference/functions/regular-functions/ip-address-functions.mdx
rename to core/reference/functions/regular-functions/ip-address-functions.mdx
index 68788827..d6c86373 100644
--- a/reference/functions/regular-functions/ip-address-functions.mdx
+++ b/core/reference/functions/regular-functions/ip-address-functions.mdx
@@ -29,12 +29,12 @@ IPv4CIDRToRange(ipv4, cidr)
**Arguments**
-- `ipv4` — IPv4 address. [`IPv4`](/reference/data-types/ipv4) or [`String`](/reference/data-types/string)
-- `cidr` — CIDR value. [`UInt8`](/reference/data-types/int-uint)
+- `ipv4` — IPv4 address. [`IPv4`](/core/reference/data-types/ipv4) or [`String`](/core/reference/data-types/string)
+- `cidr` — CIDR value. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two IPv4 addresses representing the subnet range. [`Tuple(IPv4, IPv4)`](/reference/data-types/tuple)
+Returns a tuple with two IPv4 addresses representing the subnet range. [`Tuple(IPv4, IPv4)`](/core/reference/data-types/tuple)
**Examples**
@@ -68,11 +68,11 @@ IPv4NumToString(num)
**Arguments**
-- `num` — IPv4 address as UInt32 number. [`UInt32`](/reference/data-types/int-uint)
+- `num` — IPv4 address as UInt32 number. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a number representing the MAC address, or `0` if the format is invalid. [`String`](/reference/data-types/string)
+Returns a number representing the MAC address, or `0` if the format is invalid. [`String`](/core/reference/data-types/string)
**Examples**
@@ -102,11 +102,11 @@ IPv4NumToStringClassC(num)
**Arguments**
-- `num` — IPv4 address as UInt32 number. [`UInt32`](/reference/data-types/int-uint)
+- `num` — IPv4 address as UInt32 number. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the IPv4 address string with xxx replacing the last octet. [`String`](/reference/data-types/string)
+Returns the IPv4 address string with xxx replacing the last octet. [`String`](/core/reference/data-types/string)
**Examples**
@@ -155,11 +155,11 @@ IPv4StringToNum(string)
**Arguments**
-- `string` — IPv4 address string. [`String`](/reference/data-types/string)
+- `string` — IPv4 address string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns theIPv4 address. [`UInt32`](/reference/data-types/int-uint)
+Returns theIPv4 address. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -188,11 +188,11 @@ IPv4StringToNumOrDefault(string)
**Arguments**
-- `string` — IPv4 address string. [`String`](/reference/data-types/string)
+- `string` — IPv4 address string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the IPv4 address, or `0` if invalid. [`UInt32`](/reference/data-types/int-uint)
+Returns the IPv4 address, or `0` if invalid. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -225,11 +225,11 @@ IPv4StringToNumOrNull(string)
**Arguments**
-- `string` — IPv4 address string. [`String`](/reference/data-types/string)
+- `string` — IPv4 address string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the IPv4 address, or `NULL` if invalid. [`Nullable(UInt32)`](/reference/data-types/nullable)
+Returns the IPv4 address, or `NULL` if invalid. [`Nullable(UInt32)`](/core/reference/data-types/nullable)
**Examples**
@@ -262,11 +262,11 @@ IPv4ToIPv6(x)
**Arguments**
-- `x` — IPv4 address. [`UInt32`](/reference/data-types/int-uint)
+- `x` — IPv4 address. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an IPv6 address in binary format. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns an IPv6 address in binary format. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -298,12 +298,12 @@ IPv6CIDRToRange(ipv6, cidr)
**Arguments**
-- `ipv6` — IPv6 address. [`IPv6`](/reference/data-types/ipv6) or [`String`](/reference/data-types/string)
-- `cidr` — CIDR value. [`UInt8`](/reference/data-types/int-uint)
+- `ipv6` — IPv6 address. [`IPv6`](/core/reference/data-types/ipv6) or [`String`](/core/reference/data-types/string)
+- `cidr` — CIDR value. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a tuple with two IPv6 addresses representing the subnet range. [`Tuple(IPv6, IPv6)`](/reference/data-types/tuple)
+Returns a tuple with two IPv6 addresses representing the subnet range. [`Tuple(IPv6, IPv6)`](/core/reference/data-types/tuple)
**Examples**
@@ -337,11 +337,11 @@ IPv6NumToString(x)
**Arguments**
-- `x` — IPv6 address in binary format. [`FixedString(16)`](/reference/data-types/fixedstring) or [`IPv6`](/reference/data-types/ipv6)
+- `x` — IPv6 address in binary format. [`FixedString(16)`](/core/reference/data-types/fixedstring) or [`IPv6`](/core/reference/data-types/ipv6)
**Returned value**
-Returns the IPv6 address string in text format. [`String`](/reference/data-types/string)
+Returns the IPv6 address string in text format. [`String`](/core/reference/data-types/string)
**Examples**
@@ -435,11 +435,11 @@ IPv6StringToNum(string)
**Arguments**
-- `string` — IPv6 address string. [`String`](/reference/data-types/string)
+- `string` — IPv6 address string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns theIPv6 address in binary format. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns theIPv6 address in binary format. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -474,11 +474,11 @@ IPv6StringToNumOrDefault(string)
**Arguments**
-- `string` — IPv6 address string. [`String`](/reference/data-types/string)
+- `string` — IPv6 address string. [`String`](/core/reference/data-types/string)
**Returned value**
-IPv6 address in binary format, or zero-filled FixedString(16) if invalid. [`FixedString(16)`](/reference/data-types/fixedstring)
+IPv6 address in binary format, or zero-filled FixedString(16) if invalid. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -513,11 +513,11 @@ IPv6StringToNumOrNull(string)
**Arguments**
-- `string` — IPv6 address string. [`String`](/reference/data-types/string)
+- `string` — IPv6 address string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns IPv6 address in binary format, or `NULL` if invalid. [`Nullable(FixedString(16))`](/reference/data-types/nullable)
+Returns IPv6 address in binary format, or `NULL` if invalid. [`Nullable(FixedString(16))`](/core/reference/data-types/nullable)
**Examples**
@@ -551,13 +551,13 @@ cutIPv6(x, bytesToCutForIPv6, bytesToCutForIPv4)
**Arguments**
-- `x` — IPv6 address in binary format. [`FixedString(16)`](/reference/data-types/fixedstring) or [`IPv6`](/reference/data-types/ipv6)
-- `bytesToCutForIPv6` — Number of bytes to cut for IPv6. [`UInt8`](/reference/data-types/int-uint)
-- `bytesToCutForIPv4` — Number of bytes to cut for IPv4. [`UInt8`](/reference/data-types/int-uint)
+- `x` — IPv6 address in binary format. [`FixedString(16)`](/core/reference/data-types/fixedstring) or [`IPv6`](/core/reference/data-types/ipv6)
+- `bytesToCutForIPv6` — Number of bytes to cut for IPv6. [`UInt8`](/core/reference/data-types/int-uint)
+- `bytesToCutForIPv4` — Number of bytes to cut for IPv4. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string containing the IPv6 address in text format with specified bytes removed. [`String`](/reference/data-types/string)
+Returns a string containing the IPv6 address in text format with specified bytes removed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -595,12 +595,12 @@ isIPAddressInRange(address, prefix)
**Arguments**
-- `address` — An IPv4 or IPv6 address. [`String`](/reference/data-types/string)
-- `prefix` — An IPv4 or IPv6 network prefix in CIDR. [`String`](/reference/data-types/string)
+- `address` — An IPv4 or IPv6 address. [`String`](/core/reference/data-types/string)
+- `prefix` — An IPv4 or IPv6 network prefix in CIDR. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the IP version of the address and the CIDR match, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the IP version of the address and the CIDR match, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -650,11 +650,11 @@ isIPv4String(string)
**Arguments**
-- `string` — IP address string to check. [`String`](/reference/data-types/string)
+- `string` — IP address string to check. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `string` is IPv4 address, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `string` is IPv4 address, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -692,11 +692,11 @@ isIPv6String(string)
**Arguments**
-- `string` — IP address string to check. [`String`](/reference/data-types/string)
+- `string` — IP address string to check. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `string` is IPv6 address, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `string` is IPv6 address, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -722,7 +722,7 @@ ARRAY JOIN addr;
Introduced in: v20.1.0
Converts a string or a UInt32 form of IPv4 address to type IPv4.
-It is similar to [`IPv4StringToNum`](/reference/functions/regular-functions/ip-address-functions#IPv4StringToNum) and [`IPv4NumToString`](/reference/functions/regular-functions/ip-address-functions#IPv4NumToString) functions but it supports both string and unsigned integer data types as input arguments.
+It is similar to [`IPv4StringToNum`](/core/reference/functions/regular-functions/ip-address-functions#IPv4StringToNum) and [`IPv4NumToString`](/core/reference/functions/regular-functions/ip-address-functions#IPv4NumToString) functions but it supports both string and unsigned integer data types as input arguments.
**Syntax**
@@ -732,11 +732,11 @@ toIPv4(x)
**Arguments**
-- `x` — An IPv4 address [`String`](/reference/data-types/string) or [`UInt8/16/32`](/reference/data-types/int-uint)
+- `x` — An IPv4 address [`String`](/core/reference/data-types/string) or [`UInt8/16/32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an IPv4 address. [`IPv4`](/reference/data-types/ipv4)
+Returns an IPv4 address. [`IPv4`](/core/reference/data-types/ipv4)
**Examples**
@@ -784,7 +784,7 @@ SELECT toIPv4(2130706433);
Introduced in: v22.3.0
-Converts a string or a UInt32 form of an IPv4 address to [`IPv4`](/reference/data-types/ipv4) type.
+Converts a string or a UInt32 form of an IPv4 address to [`IPv4`](/core/reference/data-types/ipv4) type.
If the IPv4 address has an invalid format, it returns `0.0.0.0` (0 IPv4), or the provided IPv4 default.
@@ -796,12 +796,12 @@ toIPv4OrDefault(string[, default])
**Arguments**
-- `string` — IP address string to convert. [`String`](/reference/data-types/string)
-- `default` — Optional. The value to return if string is an invalid IPv4 address. [`IPv4`](/reference/data-types/ipv4)
+- `string` — IP address string to convert. [`String`](/core/reference/data-types/string)
+- `default` — Optional. The value to return if string is an invalid IPv4 address. [`IPv4`](/core/reference/data-types/ipv4)
**Returned value**
-Returns a string converted to the current IPv4 address, or the default value if conversion fails. [`IPv4`](/reference/data-types/ipv4)
+Returns a string converted to the current IPv4 address, or the default value if conversion fails. [`IPv4`](/core/reference/data-types/ipv4)
**Examples**
@@ -850,11 +850,11 @@ toIPv4OrNull(x)
**Arguments**
-- `x` — A string or integer representation of an IPv4 address. [`String`](/reference/data-types/string) or [`Integer`](/reference/data-types/int-uint)
+- `x` — A string or integer representation of an IPv4 address. [`String`](/core/reference/data-types/string) or [`Integer`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an IPv4 address if successful, otherwise `NULL`. [`IPv4`](/reference/data-types/ipv4) or [`NULL`](/reference/syntax#null)
+Returns an IPv4 address if successful, otherwise `NULL`. [`IPv4`](/core/reference/data-types/ipv4) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -876,7 +876,7 @@ SELECT
Introduced in: v23.1.0
-Converts an input value to a value of type [IPv4](/reference/data-types/ipv4) but returns zero IPv4 address in case of an error.
+Converts an input value to a value of type [IPv4](/core/reference/data-types/ipv4) but returns zero IPv4 address in case of an error.
Like [`toIPv4`](#toIPv4) but returns zero IPv4 address (`0.0.0.0`) instead of throwing an exception on conversion errors.
Supported arguments:
@@ -897,11 +897,11 @@ toIPv4OrZero(x)
**Arguments**
-- `x` — A string or integer representation of an IPv4 address. [`String`](/reference/data-types/string) or [`Integer`](/reference/data-types/int-uint)
+- `x` — A string or integer representation of an IPv4 address. [`String`](/core/reference/data-types/string) or [`Integer`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an IPv4 address if successful, otherwise zero IPv4 address (`0.0.0.0`). [`IPv4`](/reference/data-types/ipv4)
+Returns an IPv4 address if successful, otherwise zero IPv4 address (`0.0.0.0`). [`IPv4`](/core/reference/data-types/ipv4)
**Examples**
@@ -923,9 +923,9 @@ SELECT
Introduced in: v20.1.0
-onverts a string or a `UInt128` form of IPv6 address to [`IPv6`](/reference/data-types/ipv6) type.
+onverts a string or a `UInt128` form of IPv6 address to [`IPv6`](/core/reference/data-types/ipv6) type.
For strings, if the IPv6 address has an invalid format, returns an empty value.
-Similar to [`IPv6StringToNum`](/reference/functions/regular-functions/ip-address-functions#IPv6StringToNum) and [`IPv6NumToString`](/reference/functions/regular-functions/ip-address-functions#IPv6NumToString) functions, which convert IPv6 address to and from binary format (i.e. `FixedString(16)`).
+Similar to [`IPv6StringToNum`](/core/reference/functions/regular-functions/ip-address-functions#IPv6StringToNum) and [`IPv6NumToString`](/core/reference/functions/regular-functions/ip-address-functions#IPv6NumToString) functions, which convert IPv6 address to and from binary format (i.e. `FixedString(16)`).
If the input string contains a valid IPv4 address, then the IPv6 equivalent of the IPv4 address is returned.
@@ -937,11 +937,11 @@ toIPv6(x)
**Arguments**
-- `x` — An IP address. [`String`](/reference/data-types/string) or [`UInt128`](/reference/data-types/int-uint)
+- `x` — An IP address. [`String`](/core/reference/data-types/string) or [`UInt128`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an IPv6 address. [`IPv6`](/reference/data-types/ipv6)
+Returns an IPv6 address. [`IPv6`](/core/reference/data-types/ipv6)
**Examples**
@@ -976,7 +976,7 @@ SELECT toIPv6('127.0.0.1');
Introduced in: v22.3.0
-Converts a string or a UInt128 form of IPv6 address to [`IPv6`](/reference/data-types/ipv6) type.
+Converts a string or a UInt128 form of IPv6 address to [`IPv6`](/core/reference/data-types/ipv6) type.
If the IPv6 address has an invalid format, it returns `::` (0 IPv6) or the provided IPv6 default.
@@ -992,7 +992,7 @@ toIPv6OrDefault(string[, default])
**Returned value**
-Returns the IPv6 address, otherwise `::` or the provided optional default if argument `string` has an invalid format. [`IPv6`](/reference/data-types/ipv6)
+Returns the IPv6 address, otherwise `::` or the provided optional default if argument `string` has an invalid format. [`IPv6`](/core/reference/data-types/ipv6)
**Examples**
@@ -1042,11 +1042,11 @@ toIPv6OrNull(x)
**Arguments**
-- `x` — A string representation of an IPv6 or IPv4 address. [`String`](/reference/data-types/string)
+- `x` — A string representation of an IPv6 or IPv4 address. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an IPv6 address if successful, otherwise `NULL`. [`IPv6`](/reference/data-types/ipv6) or [`NULL`](/reference/syntax#null)
+Returns an IPv6 address if successful, otherwise `NULL`. [`IPv6`](/core/reference/data-types/ipv6) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -1068,7 +1068,7 @@ SELECT
Introduced in: v23.1.0
-Converts an input value to a value of type [IPv6](/reference/data-types/ipv6) but returns zero IPv6 address in case of an error.
+Converts an input value to a value of type [IPv6](/core/reference/data-types/ipv6) but returns zero IPv6 address in case of an error.
Like [`toIPv6`](#toIPv6) but returns zero IPv6 address (`::`) instead of throwing an exception on conversion errors.
Supported arguments:
@@ -1090,11 +1090,11 @@ toIPv6OrZero(x)
**Arguments**
-- `x` — A string representation of an IPv6 or IPv4 address. [`String`](/reference/data-types/string)
+- `x` — A string representation of an IPv6 or IPv4 address. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an IPv6 address if successful, otherwise zero IPv6 address (`::`). [`IPv6`](/reference/data-types/ipv6)
+Returns an IPv6 address if successful, otherwise zero IPv6 address (`::`). [`IPv6`](/core/reference/data-types/ipv6)
**Examples**
diff --git a/reference/functions/regular-functions/json-functions.mdx b/core/reference/functions/regular-functions/json-functions.mdx
similarity index 81%
rename from reference/functions/regular-functions/json-functions.mdx
rename to core/reference/functions/regular-functions/json-functions.mdx
index 921c214a..20dcd23e 100644
--- a/reference/functions/regular-functions/json-functions.mdx
+++ b/core/reference/functions/regular-functions/json-functions.mdx
@@ -59,11 +59,11 @@ JSONAllPaths(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns an array of all paths in the JSON column. [`Array(String)`](/reference/data-types/array)
+Returns an array of all paths in the JSON column. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -98,11 +98,11 @@ JSONAllPathsWithTypes(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns a map of all paths and their data types in the JSON column. [`Map(String, String)`](/reference/data-types/map)
+Returns a map of all paths and their data types in the JSON column. [`Map(String, String)`](/core/reference/data-types/map)
**Examples**
@@ -138,11 +138,11 @@ JSONAllValues(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns an array of all values as strings in the JSON column. [`Array(String)`](/reference/data-types/array)
+Returns an array of all values as strings in the JSON column. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -180,11 +180,11 @@ JSONArrayLength(json)
**Arguments**
-- `json` — String with valid JSON. [`String`](/reference/data-types/string)
+- `json` — String with valid JSON. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of array elements if `json` is a valid JSON array string, otherwise returns `NULL`. [`Nullable(UInt64)`](/reference/data-types/nullable)
+Returns the number of array elements if `json` is a valid JSON array string, otherwise returns `NULL`. [`Nullable(UInt64)`](/core/reference/data-types/nullable)
**Examples**
@@ -217,11 +217,11 @@ JSONDynamicPaths(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns an array of dynamic paths in the JSON column. [`Array(String)`](/reference/data-types/array)
+Returns an array of dynamic paths in the JSON column. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -256,11 +256,11 @@ JSONDynamicPathsWithTypes(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns a map of dynamic paths and their data types in the JSON column. [`Map(String, String)`](/reference/data-types/map)
+Returns a map of dynamic paths and their data types in the JSON column. [`Map(String, String)`](/core/reference/data-types/map)
**Examples**
@@ -295,9 +295,9 @@ JSONExtract(json[, indices_or_keys, ...], return_type)
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
-- `return_type` — ClickHouse data type to return. [`String`](/reference/data-types/string)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `return_type` — ClickHouse data type to return. [`String`](/core/reference/data-types/string)
**Returned value**
@@ -332,12 +332,12 @@ JSONExtractArrayRaw(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of strings with JSON array elements. If the part is not an array or does not exist, an empty array will be returned. [`Array(String)`](/reference/data-types/array)
+Returns an array of strings with JSON array elements. If the part is not an array or does not exist, an empty array will be returned. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -368,12 +368,12 @@ JSONExtractArrayRawCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the array. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the array. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of raw JSON strings. [`Array(String)`](/reference/data-types/array)
+Returns an array of raw JSON strings. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -402,12 +402,12 @@ JSONExtractBool(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Bool value if it exists, otherwise returns `0`. [`Bool`](/reference/data-types/boolean)
+Returns a Bool value if it exists, otherwise returns `0`. [`Bool`](/core/reference/data-types/boolean)
**Examples**
@@ -438,12 +438,12 @@ JSONExtractBoolCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the extracted boolean value (1 for true, 0 for false), 0 if not found. [`UInt8`](/reference/data-types/int-uint)
+Returns the extracted boolean value (1 for true, 0 for false), 0 if not found. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -472,13 +472,13 @@ JSONExtractCaseInsensitive(json [, indices_or_keys...], return_type)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
-- `return_type` — The ClickHouse data type to extract [`String`](/reference/data-types/string)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `return_type` — The ClickHouse data type to extract [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the extracted value in the specified data type. [`Any`](/reference/data-types)
+Returns the extracted value in the specified data type. [`Any`](/core/reference/data-types)
**Examples**
@@ -517,12 +517,12 @@ JSONExtractFloat(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Float value if it exists, otherwise returns `0`. [`Float64`](/reference/data-types/float)
+Returns a Float value if it exists, otherwise returns `0`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -553,12 +553,12 @@ JSONExtractFloatCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the extracted Float value, 0 if not found or cannot be converted. [`Float64`](/reference/data-types/float)
+Returns the extracted Float value, 0 if not found or cannot be converted. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -587,12 +587,12 @@ JSONExtractInt(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an Int value if it exists, otherwise returns `0`. [`Int64`](/reference/data-types/int-uint)
+Returns an Int value if it exists, otherwise returns `0`. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -623,12 +623,12 @@ JSONExtractIntCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the extracted Int value, 0 if not found or cannot be converted. [`Int64`](/reference/data-types/int-uint)
+Returns the extracted Int value, 0 if not found or cannot be converted. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -667,12 +667,12 @@ JSONExtractKeys(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array with the keys of the JSON object. [`Array(String)`](/reference/data-types/array)
+Returns an array with the keys of the JSON object. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -703,13 +703,13 @@ JSONExtractKeysAndValues(json[, indices_or_keys, ...], value_type)
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
-- `value_type` — ClickHouse data type of the values. [`String`](/reference/data-types/string)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `value_type` — ClickHouse data type of the values. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of tuples with the parsed key-value pairs. [`Array(Tuple(String, value_type))`](/reference/data-types/array)
+Returns an array of tuples with the parsed key-value pairs. [`Array(Tuple(String, value_type))`](/core/reference/data-types/array)
**Examples**
@@ -740,13 +740,13 @@ JSONExtractKeysAndValuesCaseInsensitive(json [, indices_or_keys...], value_type)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the object. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
-- `value_type` — The ClickHouse data type of the values [`String`](/reference/data-types/string)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the object. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `value_type` — The ClickHouse data type of the values [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of tuples containing key-value pairs. [`Array(Tuple(String, T))`](/reference/data-types/array)
+Returns an array of tuples containing key-value pairs. [`Array(Tuple(String, T))`](/core/reference/data-types/array)
**Examples**
@@ -775,12 +775,12 @@ JSONExtractKeysAndValuesRaw(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of tuples with parsed key-value pairs where values are unparsed strings. [`Array(Tuple(String, String))`](/reference/data-types/array)
+Returns an array of tuples with parsed key-value pairs where values are unparsed strings. [`Array(Tuple(String, String))`](/core/reference/data-types/array)
**Examples**
@@ -811,12 +811,12 @@ JSONExtractKeysAndValuesRawCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the object. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the object. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of tuples containing key-value pairs as raw strings. [`Array(Tuple(String, String))`](/reference/data-types/array)
+Returns an array of tuples containing key-value pairs as raw strings. [`Array(Tuple(String, String))`](/core/reference/data-types/array)
**Examples**
@@ -845,12 +845,12 @@ JSONExtractKeysCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the object. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the object. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of keys from the JSON object. [`Array(String)`](/reference/data-types/array)
+Returns an array of keys from the JSON object. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -889,12 +889,12 @@ JSONExtractRaw(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the part of JSON as an unparsed string. If the part does not exist or has a wrong type, an empty string will be returned. [`String`](/reference/data-types/string)
+Returns the part of JSON as an unparsed string. If the part does not exist or has a wrong type, an empty string will be returned. [`String`](/core/reference/data-types/string)
**Examples**
@@ -925,12 +925,12 @@ JSONExtractRawCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the raw JSON string of the extracted element. [`String`](/reference/data-types/string)
+Returns the raw JSON string of the extracted element. [`String`](/core/reference/data-types/string)
**Examples**
@@ -959,12 +959,12 @@ JSONExtractString(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a String value if it exists, otherwise returns an empty string. [`String`](/reference/data-types/string)
+Returns a String value if it exists, otherwise returns an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -995,12 +995,12 @@ JSONExtractStringCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the extracted string value, empty string if not found. [`String`](/reference/data-types/string)
+Returns the extracted string value, empty string if not found. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1039,12 +1039,12 @@ JSONExtractUInt(json [, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — A list of zero or more arguments each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a UInt value if it exists, otherwise returns `0`. [`UInt64`](/reference/data-types/int-uint)
+Returns a UInt value if it exists, otherwise returns `0`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1075,12 +1075,12 @@ JSONExtractUIntCaseInsensitive(json [, indices_or_keys]...)
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional. Indices or keys to navigate to the field. Keys use case-insensitive matching [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the extracted UInt value, 0 if not found or cannot be converted. [`UInt64`](/reference/data-types/int-uint)
+Returns the extracted UInt value, 0 if not found or cannot be converted. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1109,12 +1109,12 @@ JSONHas(json[ ,indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `[ ,indices_or_keys, ...]` — A list of zero or more arguments. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `[ ,indices_or_keys, ...]` — A list of zero or more arguments. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `1` if the value exists in `json`, otherwise `0` [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the value exists in `json`, otherwise `0` [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1145,12 +1145,12 @@ JSONKey(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse. [`String`](/reference/data-types/string)
-- `indices_or_keys` — Optional list of indices or keys specifying a path to a nested element. Each argument can be either a string (access by key) or an integer (access by index starting from 1). [`String`](/reference/data-types/string) or [`Int*`](/reference/data-types/int-uint)
+- `json` — JSON string to parse. [`String`](/core/reference/data-types/string)
+- `indices_or_keys` — Optional list of indices or keys specifying a path to a nested element. Each argument can be either a string (access by key) or an integer (access by index starting from 1). [`String`](/core/reference/data-types/string) or [`Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the key name at the specified position in the JSON object. [`String`](/reference/data-types/string)
+Returns the key name at the specified position in the JSON object. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1180,12 +1180,12 @@ JSONLength(json [, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `[, indices_or_keys, ...]` — Optional. A list of zero or more arguments. [`String`](/reference/data-types/string) or [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `[, indices_or_keys, ...]` — Optional. A list of zero or more arguments. [`String`](/core/reference/data-types/string) or [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the length of the JSON array or JSON object, otherwise returns `0` if the value does not exist or has the wrong type. [`UInt64`](/reference/data-types/int-uint)
+Returns the length of the JSON array or JSON object, otherwise returns `0` if the value does not exist or has the wrong type. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1218,11 +1218,11 @@ JSONMergePatch(json1[, json2, ...])
**Arguments**
-- `json1[, json2, ...]` — One or more strings with valid JSON. [`String`](/reference/data-types/string)
+- `json1[, json2, ...]` — One or more strings with valid JSON. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the merged JSON object string, if the JSON object strings are valid. [`String`](/reference/data-types/string)
+Returns the merged JSON object string, if the JSON object strings are valid. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1253,11 +1253,11 @@ JSONSharedDataPaths(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns an array of paths stored in shared data structure in the JSON column. [`Array(String)`](/reference/data-types/array)
+Returns an array of paths stored in shared data structure in the JSON column. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1292,11 +1292,11 @@ JSONSharedDataPathsWithTypes(json)
**Arguments**
-- `json` — JSON column. [`JSON`](/reference/data-types/newjson)
+- `json` — JSON column. [`JSON`](/core/reference/data-types/newjson)
**Returned value**
-Returns a map of paths stored in shared data structure and their data types in the JSON column. [`Map(String, String)`](/reference/data-types/map)
+Returns a map of paths stored in shared data structure and their data types in the JSON column. [`Map(String, String)`](/core/reference/data-types/map)
**Examples**
@@ -1331,12 +1331,12 @@ JSONType(json[, indices_or_keys, ...])
**Arguments**
-- `json` — JSON string to parse [`String`](/reference/data-types/string)
-- `json[, indices_or_keys, ...]` — A list of zero or more arguments, each of which can be either string or integer. [`String`](/reference/data-types/string) or [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+- `json` — JSON string to parse [`String`](/core/reference/data-types/string)
+- `json[, indices_or_keys, ...]` — A list of zero or more arguments, each of which can be either string or integer. [`String`](/core/reference/data-types/string) or [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the type of a JSON value as a string, otherwise if the value doesn't exist it returns `Null=0` [`Enum`](/reference/data-types/enum)
+Returns the type of a JSON value as a string, otherwise if the value doesn't exist it returns `Null=0` [`Enum`](/core/reference/data-types/enum)
**Examples**
@@ -1370,12 +1370,12 @@ JSON_EXISTS(json, path)
**Arguments**
-- `json` — A string with valid JSON. [`String`](/reference/data-types/string)
-- `path` — A string representing the path. [`String`](/reference/data-types/string)
+- `json` — A string with valid JSON. [`String`](/core/reference/data-types/string)
+- `path` — A string representing the path. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the value exists in the JSON document, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the value exists in the JSON document, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1419,12 +1419,12 @@ JSON_QUERY(json, path)
**Arguments**
-- `json` — A string with valid JSON. [`String`](/reference/data-types/string)
-- `path` — A string representing the path. [`String`](/reference/data-types/string)
+- `json` — A string with valid JSON. [`String`](/core/reference/data-types/string)
+- `path` — A string representing the path. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the extracted JSON array or JSON object as a string, or an empty string if the value does not exist. [`String`](/reference/data-types/string)
+Returns the extracted JSON array or JSON object as a string, or an empty string if the value does not exist. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1463,12 +1463,12 @@ JSON_VALUE(json, path)
**Arguments**
-- `json` — A string with valid JSON. [`String`](/reference/data-types/string)
-- `path` — A string representing the path. [`String`](/reference/data-types/string)
+- `json` — A string with valid JSON. [`String`](/core/reference/data-types/string)
+- `path` — A string representing the path. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the extracted JSON scalar as a string, or an empty string if the value does not exist. [`String`](/reference/data-types/string)
+Returns the extracted JSON scalar as a string, or an empty string if the value does not exist. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1507,12 +1507,12 @@ dynamicElement(dynamic, type_name)
**Arguments**
-- `dynamic` — Dynamic column to extract from. [`Dynamic`](/reference/data-types/dynamic)
+- `dynamic` — Dynamic column to extract from. [`Dynamic`](/core/reference/data-types/dynamic)
- `type_name` — The name of the variant type to extract (e.g., 'String', 'Int64', 'Array(Int64)').
**Returned value**
-Returns values of the specified type from the Dynamic column. Returns NULL for non-matching types (or empty array for array types). [`Any`](/reference/data-types)
+Returns values of the specified type from the Dynamic column. Returns NULL for non-matching types (or empty array for array types). [`Any`](/core/reference/data-types)
**Examples**
@@ -1550,11 +1550,11 @@ dynamicType(dynamic)
**Arguments**
-- `dynamic` — Dynamic column to inspect. [`Dynamic`](/reference/data-types/dynamic)
+- `dynamic` — Dynamic column to inspect. [`Dynamic`](/core/reference/data-types/dynamic)
**Returned value**
-Returns the type name of the value stored in each row, or 'None' for NULL values. [`String`](/reference/data-types/string)
+Returns the type name of the value stored in each row, or 'None' for NULL values. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1593,11 +1593,11 @@ isDynamicElementInSharedData(dynamic)
**Arguments**
-- `dynamic` — Dynamic column to inspect. [`Dynamic`](/reference/data-types/dynamic)
+- `dynamic` — Dynamic column to inspect. [`Dynamic`](/core/reference/data-types/dynamic)
**Returned value**
-Returns true if the value is stored in shared variant format, false if stored as a separate subcolumn or is NULL. [`Bool`](/reference/data-types/boolean)
+Returns true if the value is stored in shared variant format, false if stored as a separate subcolumn or is NULL. [`Bool`](/core/reference/data-types/boolean)
**Examples**
@@ -1633,11 +1633,11 @@ isValidJSON(json)
**Arguments**
-- `json` — JSON string to validate [`String`](/reference/data-types/string)
+- `json` — JSON string to validate [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the string is valid JSON, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the string is valid JSON, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1691,15 +1691,15 @@ simpleJSONExtractBool(json, field_name)
**Arguments**
-- `json` — The JSON in which the field is searched for. [`String`](/reference/data-types/string)
-- `field_name` — The name of the field to search for. [`const String`](/reference/data-types/string)
+- `json` — The JSON in which the field is searched for. [`String`](/core/reference/data-types/string)
+- `field_name` — The name of the field to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
Returns `1` if the value of the field is `true`, `0` otherwise. This means this function will return `0` including (and not only) in the following cases:
- If the field doesn't exists.
- If the field contains `true` as a string, e.g.: `{"field":"true"}`.
-- If the field contains `1` as a numerical value. [`UInt8`](/reference/data-types/int-uint)
+- If the field contains `1` as a numerical value. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1745,12 +1745,12 @@ simpleJSONExtractFloat(json, field_name)
**Arguments**
-- `json` — The JSON in which the field is searched for. [`String`](/reference/data-types/string)
-- `field_name` — The name of the field to search for. [`const String`](/reference/data-types/string)
+- `json` — The JSON in which the field is searched for. [`String`](/core/reference/data-types/string)
+- `field_name` — The name of the field to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the number parsed from the field if the field exists and contains a number, otherwise `0`. [`Float64`](/reference/data-types/float)
+Returns the number parsed from the field if the field exists and contains a number, otherwise `0`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1799,12 +1799,12 @@ simpleJSONExtractInt(json, field_name)
**Arguments**
-- `json` — The JSON in which the field is searched for. [`String`](/reference/data-types/string)
-- `field_name` — The name of the field to search for. [`const String`](/reference/data-types/string)
+- `json` — The JSON in which the field is searched for. [`String`](/core/reference/data-types/string)
+- `field_name` — The name of the field to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the number parsed from the field if the field exists and contains a number, `0` otherwise [`Int64`](/reference/data-types/int-uint)
+Returns the number parsed from the field if the field exists and contains a number, `0` otherwise [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1851,12 +1851,12 @@ simpleJSONExtractRaw(json, field_name)
**Arguments**
-- `json` — The JSON in which the field is searched for. [`String`](/reference/data-types/string)
-- `field_name` — The name of the field to search for. [`const String`](/reference/data-types/string)
+- `json` — The JSON in which the field is searched for. [`String`](/core/reference/data-types/string)
+- `field_name` — The name of the field to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the value of the field as a string, including separators if the field exists, or an empty string otherwise [`String`](/reference/data-types/string)
+Returns the value of the field as a string, including separators if the field exists, or an empty string otherwise [`String`](/core/reference/data-types/string)
**Examples**
@@ -1906,12 +1906,12 @@ simpleJSONExtractString(json, field_name)
**Arguments**
-- `json` — The JSON in which the field is searched for. [`String`](/reference/data-types/string)
-- `field_name` — The name of the field to search for. [`const String`](/reference/data-types/string)
+- `json` — The JSON in which the field is searched for. [`String`](/core/reference/data-types/string)
+- `field_name` — The name of the field to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the unescaped value of a field as a string, including separators. An empty string is returned if the field doesn't contain a double quoted string, if unescaping fails or if the field doesn't exist [`String`](/reference/data-types/string)
+Returns the unescaped value of a field as a string, including separators. An empty string is returned if the field doesn't contain a double quoted string, if unescaping fails or if the field doesn't exist [`String`](/core/reference/data-types/string)
**Examples**
@@ -1957,12 +1957,12 @@ simpleJSONExtractUInt(json, field_name)
**Arguments**
-- `json` — The JSON in which the field is searched for. [`String`](/reference/data-types/string)
-- `field_name` — The name of the field to search for. [`const String`](/reference/data-types/string)
+- `json` — The JSON in which the field is searched for. [`String`](/core/reference/data-types/string)
+- `field_name` — The name of the field to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the number parsed from the field if the field exists and contains a number, `0` otherwise [`UInt64`](/reference/data-types/int-uint)
+Returns the number parsed from the field if the field exists and contains a number, `0` otherwise [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2009,12 +2009,12 @@ simpleJSONHas(json, field_name)
**Arguments**
-- `json` — The JSON in which the field is searched for. [`String`](/reference/data-types/string)
-- `field_name` — The name of the field to search for. [`const String`](/reference/data-types/string)
+- `json` — The JSON in which the field is searched for. [`String`](/core/reference/data-types/string)
+- `field_name` — The name of the field to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the field exists, `0` otherwise [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the field exists, `0` otherwise [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2044,13 +2044,13 @@ SELECT simpleJSONHas(json, 'bar') FROM jsons;
Introduced in: v21.7.0
Serializes a value to its JSON representation. Various data types and nested structures are supported.
-64-bit [integers](/reference/data-types/int-uint) or bigger (like `UInt64` or `Int128`) are enclosed in quotes by default. [output_format_json_quote_64bit_integers](/reference/settings/formats#output_format_json_quote_64bit_integers) controls this behavior.
-Special values `NaN` and `inf` are replaced with `null`. Enable [output_format_json_quote_denormals](/reference/settings/formats#output_format_json_quote_denormals) setting to show them.
-When serializing an [Enum](/reference/data-types/enum) value, the function outputs its name.
+64-bit [integers](/core/reference/data-types/int-uint) or bigger (like `UInt64` or `Int128`) are enclosed in quotes by default. [output_format_json_quote_64bit_integers](/core/reference/settings/formats#output_format_json_quote_64bit_integers) controls this behavior.
+Special values `NaN` and `inf` are replaced with `null`. Enable [output_format_json_quote_denormals](/core/reference/settings/formats#output_format_json_quote_denormals) setting to show them.
+When serializing an [Enum](/core/reference/data-types/enum) value, the function outputs its name.
See also:
-- [output_format_json_quote_64bit_integers](/reference/settings/formats#output_format_json_quote_64bit_integers)
-- [output_format_json_quote_denormals](/reference/settings/formats#output_format_json_quote_denormals)
+- [output_format_json_quote_64bit_integers](/core/reference/settings/formats#output_format_json_quote_64bit_integers)
+- [output_format_json_quote_denormals](/core/reference/settings/formats#output_format_json_quote_denormals)
**Syntax**
@@ -2061,11 +2061,11 @@ toJSONString(value)
**Arguments**
-- `value` — Value to serialize. Value may be of any data type. [`Any`](/reference/data-types)
+- `value` — Value to serialize. Value may be of any data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the JSON representation of the value. [`String`](/reference/data-types/string)
+Returns the JSON representation of the value. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/regular-functions/logical-functions.mdx b/core/reference/functions/regular-functions/logical-functions.mdx
similarity index 77%
rename from reference/functions/regular-functions/logical-functions.mdx
rename to core/reference/functions/regular-functions/logical-functions.mdx
index f93a7bbc..1e19a6a4 100644
--- a/reference/functions/regular-functions/logical-functions.mdx
+++ b/core/reference/functions/regular-functions/logical-functions.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
---
The functions below perform logical operations on arguments of arbitrary numeric types.
-They return either `0` or `1` as [`UInt8`](/reference/data-types/int-uint) or in some cases `NULL`.
+They return either `0` or `1` as [`UInt8`](/core/reference/data-types/int-uint) or in some cases `NULL`.
Zero as an argument is considered `false`, non-zero values are considered `true`.
@@ -24,7 +24,7 @@ Introduced in: v1.1.0
Calculates the logical conjunction of two or more values.
-Setting [`short_circuit_function_evaluation`](/reference/settings/session-settings#short_circuit_function_evaluation) controls whether short-circuit evaluation is used.
+Setting [`short_circuit_function_evaluation`](/core/reference/settings/session-settings#short_circuit_function_evaluation) controls whether short-circuit evaluation is used.
If enabled, `val_i` is evaluated only if `(val_1 AND val_2 AND ... AND val_{i-1})` is `true`.
For example, with short-circuit evaluation, no division-by-zero exception is thrown when executing the query `SELECT and(number = 2, intDiv(1, number)) FROM numbers(5)`.
@@ -38,7 +38,7 @@ and(val1, val2[, ...])
**Arguments**
-- `val1, val2[, ...]` — List of at least two values. [`Nullable((U)Int*)`](/reference/data-types/nullable) or [`Nullable(Float*)`](/reference/data-types/nullable)
+- `val1, val2[, ...]` — List of at least two values. [`Nullable((U)Int*)`](/core/reference/data-types/nullable) or [`Nullable(Float*)`](/core/reference/data-types/nullable)
**Returned value**
@@ -46,7 +46,7 @@ Returns:
- `0`, if at least one argument evaluates to `false`
- `NULL`, if no argument evaluates to `false` and at least one argument is `NULL`
- `1`, otherwise
- [`Nullable(UInt8)`](/reference/data-types/nullable)
+ [`Nullable(UInt8)`](/core/reference/data-types/nullable)
**Examples**
@@ -85,7 +85,7 @@ not(val)
**Arguments**
-- `val` — The value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `val` — The value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
@@ -93,7 +93,7 @@ Returns:
- `1`, if `val` evaluates to `false`
- `0`, if `val` evaluates to `true`
- `NULL`, if `val` is `NULL`.
- [`Nullable(UInt8)`](/reference/data-types/nullable)
+ [`Nullable(UInt8)`](/core/reference/data-types/nullable)
**Examples**
@@ -113,7 +113,7 @@ Introduced in: v1.1.0
Calculates the logical disjunction of two or more values.
-Setting [`short_circuit_function_evaluation`](/reference/settings/session-settings#short_circuit_function_evaluation) controls whether short-circuit evaluation is used.
+Setting [`short_circuit_function_evaluation`](/core/reference/settings/session-settings#short_circuit_function_evaluation) controls whether short-circuit evaluation is used.
If enabled, `val_i` is evaluated only if `((NOT val_1) AND (NOT val_2) AND ... AND (NOT val_{i-1}))` is `true`.
For example, with short-circuit evaluation, no division-by-zero exception is thrown when executing the query `SELECT or(number = 0, intDiv(1, number) != 0) FROM numbers(5)`.
@@ -127,7 +127,7 @@ or(val1, val2[, ...])
**Arguments**
-- `val1, val2[, ...]` — List of at least two values. [`Nullable((U)Int*)`](/reference/data-types/nullable) or [`Nullable(Float*)`](/reference/data-types/nullable)
+- `val1, val2[, ...]` — List of at least two values. [`Nullable((U)Int*)`](/core/reference/data-types/nullable) or [`Nullable(Float*)`](/core/reference/data-types/nullable)
**Returned value**
@@ -135,7 +135,7 @@ Returns:
- `1`, if at least one argument evaluates to `true`
- `0`, if all arguments evaluate to `false`
- `NULL`, if all arguments evaluate to `false` and at least one argument is `NULL`
- [`Nullable(UInt8)`](/reference/data-types/nullable)
+ [`Nullable(UInt8)`](/core/reference/data-types/nullable)
**Examples**
@@ -175,7 +175,7 @@ xor(val1, val2[, ...])
**Arguments**
-- `val1, val2[, ...]` — List of at least two values. [`Nullable((U)Int*)`](/reference/data-types/nullable) or [`Nullable(Float*)`](/reference/data-types/nullable)
+- `val1, val2[, ...]` — List of at least two values. [`Nullable((U)Int*)`](/core/reference/data-types/nullable) or [`Nullable(Float*)`](/core/reference/data-types/nullable)
**Returned value**
@@ -183,7 +183,7 @@ Returns:
- `1`, for two values: if one of the values evaluates to `false` and other does not
- `0`, for two values: if both values evaluate to `false` or to both `true`
- `NULL`, if at least one of the inputs is `NULL`.
- [`Nullable(UInt8)`](/reference/data-types/nullable)
+ [`Nullable(UInt8)`](/core/reference/data-types/nullable)
**Examples**
diff --git a/reference/functions/regular-functions/machine-learning-functions.mdx b/core/reference/functions/regular-functions/machine-learning-functions.mdx
similarity index 90%
rename from reference/functions/regular-functions/machine-learning-functions.mdx
rename to core/reference/functions/regular-functions/machine-learning-functions.mdx
index 371a63be..53950276 100644
--- a/reference/functions/regular-functions/machine-learning-functions.mdx
+++ b/core/reference/functions/regular-functions/machine-learning-functions.mdx
@@ -12,11 +12,11 @@ Prediction using fitted regression models uses `evalMLMethod` function. See link
## stochasticLinearRegression {#stochasticlinearregression}
-The [stochasticLinearRegression](/reference/functions/aggregate-functions/reference/stochasticLinearRegression) aggregate function implements stochastic gradient descent method using linear model and MSE loss function. Uses `evalMLMethod` to predict on new data.
+The [stochasticLinearRegression](/core/reference/functions/aggregate-functions/reference/stochasticLinearRegression) aggregate function implements stochastic gradient descent method using linear model and MSE loss function. Uses `evalMLMethod` to predict on new data.
## stochasticLogisticRegression {#stochasticlogisticregression}
-The [stochasticLogisticRegression](/reference/functions/aggregate-functions/reference/stochasticLogisticRegression) aggregate function implements stochastic gradient descent method for binary classification problem. Uses `evalMLMethod` to predict on new data.
+The [stochasticLogisticRegression](/core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression) aggregate function implements stochastic gradient descent method for binary classification problem. Uses `evalMLMethod` to predict on new data.
## naiveBayesClassifier {#naivebayesclassifier}
@@ -30,13 +30,13 @@ naiveBayesClassifier(model_name, input_text);
**Arguments**
-- `model_name` — Name of the pre-configured model. [String](/reference/data-types/string)
+- `model_name` — Name of the pre-configured model. [String](/core/reference/data-types/string)
The model must be defined in ClickHouse's configuration files (see below).
-- `input_text` — Text to classify. [String](/reference/data-types/string)
+- `input_text` — Text to classify. [String](/core/reference/data-types/string)
Input is processed exactly as provided (case/punctuation preserved).
**Returned Value**
-- Predicted class ID as an unsigned integer. [UInt32](/reference/data-types/int-uint)
+- Predicted class ID as an unsigned integer. [UInt32](/core/reference/data-types/int-uint)
Class IDs correspond to categories defined during model construction.
**Example**
diff --git a/reference/functions/regular-functions/math-functions.mdx b/core/reference/functions/regular-functions/math-functions.mdx
similarity index 67%
rename from reference/functions/regular-functions/math-functions.mdx
rename to core/reference/functions/regular-functions/math-functions.mdx
index 73f67609..b831fc20 100644
--- a/reference/functions/regular-functions/math-functions.mdx
+++ b/core/reference/functions/regular-functions/math-functions.mdx
@@ -27,11 +27,11 @@ acos(x)
**Arguments**
-- `x` — The value for which to find arc cosine of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The value for which to find arc cosine of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the arc cosine of x [`Float*`](/reference/data-types/float)
+Returns the arc cosine of x [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -59,11 +59,11 @@ acosh(x)
**Arguments**
-- `x` — Hyperbolic cosine of angle. Values from the interval: `1 ≤ x < +∞`. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Hyperbolic cosine of angle. Values from the interval: `1 ≤ x < +∞`. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the angle, in radians. Values from the interval: `0 ≤ acosh(x) < +∞`. [`Float64`](/reference/data-types/float)
+Returns the angle, in radians. Values from the interval: `0 ≤ acosh(x) < +∞`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -93,11 +93,11 @@ asin(x)
**Arguments**
-- `x` — Argument for which to calculate arcsine of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `x` — Argument for which to calculate arcsine of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the arcsine value of the provided argument `x` [`Float64`](/reference/data-types/float)
+Returns the arcsine value of the provided argument `x` [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -145,11 +145,11 @@ asinh(x)
**Arguments**
-- `x` — Hyperbolic sine of angle. Values from the interval: `-∞ < x < +∞`. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Hyperbolic sine of angle. Values from the interval: `-∞ < x < +∞`. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the angle, in radians. Values from the interval: `-∞ < asinh(x) < +∞`. [`Float64`](/reference/data-types/float)
+Returns the angle, in radians. Values from the interval: `-∞ < asinh(x) < +∞`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -177,11 +177,11 @@ atan(x)
**Arguments**
-- `x` — The value for which to find arc tangent of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The value for which to find arc tangent of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the arc tangent of `x`. [`Float*`](/reference/data-types/float)
+Returns the arc tangent of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -209,12 +209,12 @@ atan2(y, x)
**Arguments**
-- `y` — y-coordinate of the point through which the ray passes. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
-- `x` — x-coordinate of the point through which the ray passes. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `y` — y-coordinate of the point through which the ray passes. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
+- `x` — x-coordinate of the point through which the ray passes. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the angle `θ` such that `-π < θ ≤ π`, in radians [`Float64`](/reference/data-types/float)
+Returns the angle `θ` such that `-π < θ ≤ π`, in radians [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -242,11 +242,11 @@ atanh(x)
**Arguments**
-- `x` — Hyperbolic tangent of angle. Values from the interval: -1 < x < 1. `(U)Int*`, `Float*` or `Decimal*`. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Hyperbolic tangent of angle. Values from the interval: -1 < x < 1. `(U)Int*`, `Float*` or `Decimal*`. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the angle, in radians. Values from the interval: -∞ < atanh(x) < +∞ [`Float64`](/reference/data-types/float)
+Returns the angle, in radians. Values from the interval: -∞ < atanh(x) < +∞ [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -274,11 +274,11 @@ cbrt(x)
**Arguments**
-- `x` — The value for which to find the cubic root of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The value for which to find the cubic root of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the cubic root of `x`. [`Float*`](/reference/data-types/float)
+Returns the cubic root of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -306,11 +306,11 @@ cos(x)
**Arguments**
-- `x` — The angle in radians. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The angle in radians. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the cosine of `x`. [`Float*`](/reference/data-types/float)
+Returns the cosine of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -338,11 +338,11 @@ cosh(x)
**Arguments**
-- `x` — The angle, in radians. Values from the interval: `-∞ < x < +∞`. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The angle, in radians. Values from the interval: `-∞ < x < +∞`. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns values from the interval: `1 ≤ cosh(x) < +∞` [`Float64`](/reference/data-types/float)
+Returns values from the interval: `1 ≤ cosh(x) < +∞` [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -370,11 +370,11 @@ degrees(x)
**Arguments**
-- `x` — Input in radians. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Input in radians. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the value of `x` in degrees. [`Float64`](/reference/data-types/float)
+Returns the value of `x` in degrees. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -406,7 +406,7 @@ e()
**Returned value**
-Returns Euler's constant [`Float64`](/reference/data-types/float)
+Returns Euler's constant [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -434,11 +434,11 @@ erf(x)
**Arguments**
-- `x` — The value for which to compute the error function value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The value for which to compute the error function value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the error function value [`Float*`](/reference/data-types/float)
+Returns the error function value [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -468,11 +468,11 @@ erfc(x)
**Arguments**
-- `x` — The value for which to find the error function value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The value for which to find the error function value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the complementary error function value [`Float*`](/reference/data-types/float)
+Returns the complementary error function value [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -500,11 +500,11 @@ exp(x)
**Arguments**
-- `x` — The exponent. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The exponent. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns `e^x` [`Float*`](/reference/data-types/float)
+Returns `e^x` [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -534,11 +534,11 @@ exp10(x)
**Arguments**
-- `x` — The exponent. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The exponent. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns 10^x [`Float*`](/reference/data-types/float)
+Returns 10^x [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -566,11 +566,11 @@ exp2(x)
**Arguments**
-- `x` — The exponent. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The exponent. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns 2^x [`Float*`](/reference/data-types/float)
+Returns 2^x [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -601,11 +601,11 @@ factorial(n)
**Arguments**
-- `n` — Integer value for which to calculate the factorial. Maximum value is 20. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
+- `n` — Integer value for which to calculate the factorial. Maximum value is 20. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the factorial of the input as UInt64. Returns 1 for input 0 or any negative value. [`UInt64`](/reference/data-types/int-uint)
+Returns the factorial of the input as UInt64. Returns 1 for input 0 or any negative value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -634,12 +634,12 @@ hypot(x, y)
**Arguments**
-- `x` — The first cathetus of a right-angle triangle. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
-- `y` — The second cathetus of a right-angle triangle. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The first cathetus of a right-angle triangle. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
+- `y` — The second cathetus of a right-angle triangle. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the length of the hypotenuse of a right-angle triangle. [`Float64`](/reference/data-types/float)
+Returns the length of the hypotenuse of a right-angle triangle. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -667,11 +667,11 @@ intExp10(x)
**Arguments**
-- `x` — The exponent. [`Int*`](/reference/data-types/int-uint) or [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — The exponent. [`Int*`](/core/reference/data-types/int-uint) or [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns 10^x. [`UInt64`](/reference/data-types/int-uint)
+Returns 10^x. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -699,11 +699,11 @@ intExp2(x)
**Arguments**
-- `x` — The exponent. [`Int*`](/reference/data-types/int-uint) or [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — The exponent. [`Int*`](/core/reference/data-types/int-uint) or [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns 2^x. [`UInt64`](/reference/data-types/int-uint)
+Returns 2^x. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -726,7 +726,7 @@ Returns `1` if the argument is a prime number, otherwise `0`.
Uses an exact lookup bitmap for small values and a deterministic [Miller-Rabin test](https://en.wikipedia.org/wiki/Miller-Rabin_primality_test)
for larger values. The result is exact for every supported input type.
-For wider unsigned integer types (`UInt128`, `UInt256`), use [`isProbablePrime`](/reference/functions/regular-functions/math-functions#isProbablePrime) instead.
+For wider unsigned integer types (`UInt128`, `UInt256`), use [`isProbablePrime`](/core/reference/functions/regular-functions/math-functions#isProbablePrime) instead.
**Syntax**
@@ -737,11 +737,11 @@ isPrime(n)
**Arguments**
-- `n` — Unsigned integer to test for primality. [`UInt8`](/reference/data-types/int-uint) or [`UInt16`](/reference/data-types/int-uint) or [`UInt32`](/reference/data-types/int-uint) or [`UInt64`](/reference/data-types/int-uint)
+- `n` — Unsigned integer to test for primality. [`UInt8`](/core/reference/data-types/int-uint) or [`UInt16`](/core/reference/data-types/int-uint) or [`UInt32`](/core/reference/data-types/int-uint) or [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `1` if `n` is prime, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `n` is prime, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -792,7 +792,7 @@ Introduced in: v26.5.0
Returns `1` if the argument is probably prime, `0` if it is definitely composite.
For `UInt8`, `UInt16`, `UInt32`, and `UInt64`, the result is exact and matches
-[`isPrime`](/reference/functions/regular-functions/math-functions#isPrime). The `rounds` argument is ignored.
+[`isPrime`](/core/reference/functions/regular-functions/math-functions#isPrime). The `rounds` argument is ignored.
For `UInt128` and `UInt256`, a return value of `1` is probabilistic. The optional `rounds` argument controls
how many [Miller-Rabin](https://en.wikipedia.org/wiki/Miller-Rabin_primality_test) rounds are used:
@@ -814,12 +814,12 @@ isProbablePrime(n[, rounds])
**Arguments**
-- `n` — Unsigned integer to test for primality. [`UInt8`](/reference/data-types/int-uint) or [`UInt16`](/reference/data-types/int-uint) or [`UInt32`](/reference/data-types/int-uint) or [`UInt64`](/reference/data-types/int-uint) or [`UInt128`](/reference/data-types/int-uint) or [`UInt256`](/reference/data-types/int-uint)
-- `rounds` — Optional positive integer constant in `[1, 256]`. Number of Miller-Rabin rounds for `UInt128`/`UInt256` (ignored for narrower types). Default `25`. [`UInt8`](/reference/data-types/int-uint) or [`UInt16`](/reference/data-types/int-uint) or [`UInt32`](/reference/data-types/int-uint) or [`UInt64`](/reference/data-types/int-uint)
+- `n` — Unsigned integer to test for primality. [`UInt8`](/core/reference/data-types/int-uint) or [`UInt16`](/core/reference/data-types/int-uint) or [`UInt32`](/core/reference/data-types/int-uint) or [`UInt64`](/core/reference/data-types/int-uint) or [`UInt128`](/core/reference/data-types/int-uint) or [`UInt256`](/core/reference/data-types/int-uint)
+- `rounds` — Optional positive integer constant in `[1, 256]`. Number of Miller-Rabin rounds for `UInt128`/`UInt256` (ignored for narrower types). Default `25`. [`UInt8`](/core/reference/data-types/int-uint) or [`UInt16`](/core/reference/data-types/int-uint) or [`UInt32`](/core/reference/data-types/int-uint) or [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `1` if `n` is probably prime, `0` if it is definitely composite. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `n` is probably prime, `0` if it is definitely composite. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -897,11 +897,11 @@ lgamma(x)
**Arguments**
-- `x` — The number for which to compute the logarithm of the gamma function. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The number for which to compute the logarithm of the gamma function. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the logarithm of the gamma function of `x`. [`Float*`](/reference/data-types/float)
+Returns the logarithm of the gamma function of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -931,11 +931,11 @@ log(x)
**Arguments**
-- `x` — The number for which to compute the natural logarithm of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The number for which to compute the natural logarithm of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the natural logarithm of `x`. [`Float*`](/reference/data-types/float)
+Returns the natural logarithm of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -963,11 +963,11 @@ log10(x)
**Arguments**
-- `x` — Number for which to compute the decimal logarithm of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Number for which to compute the decimal logarithm of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the decimal logarithm of `x`. [`Float*`](/reference/data-types/float)
+Returns the decimal logarithm of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -996,11 +996,11 @@ log1p(x)
**Arguments**
-- `x` — Values from the interval: `-1 < x < +∞`. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Values from the interval: `-1 < x < +∞`. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns values from the interval: -∞ < log1p(x) < +∞ [`Float64`](/reference/data-types/float)
+Returns values from the interval: -∞ < log1p(x) < +∞ [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1028,11 +1028,11 @@ log2(x)
**Arguments**
-- `x` — The number for which to compute the binary logarithm of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The number for which to compute the binary logarithm of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the binary logarithm of `x`. [`Float*`](/reference/data-types/float)
+Returns the binary logarithm of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -1064,7 +1064,7 @@ pi()
**Returned value**
-Returns pi [`Float64`](/reference/data-types/float)
+Returns pi [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1094,12 +1094,12 @@ pow(x, y)
**Arguments**
-- `x` — The base. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
-- `y` — The exponent. [`(U)Int8/16/32/64`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The base. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
+- `y` — The exponent. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns x^y [`Float64`](/reference/data-types/float)
+Returns x^y [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1131,16 +1131,16 @@ proportionsZTest(successes_x, successes_y, trials_x, trials_y, conf_level, pool_
**Arguments**
-- `successes_x` — Number of successes in population x. [`UInt64`](/reference/data-types/int-uint)
-- `successes_y` — Number of successes in population y. [`UInt64`](/reference/data-types/int-uint)
-- `trials_x` — Number of trials in population x. [`UInt64`](/reference/data-types/int-uint)
-- `trials_y` — Number of trials in population y. [`UInt64`](/reference/data-types/int-uint)
-- `conf_level` — Confidence level for the test. [`Float64`](/reference/data-types/float)
-- `pool_type` — Selection of pooling method for standard error estimation. Can be either 'unpooled' or 'pooled'. [`String`](/reference/data-types/string)
+- `successes_x` — Number of successes in population x. [`UInt64`](/core/reference/data-types/int-uint)
+- `successes_y` — Number of successes in population y. [`UInt64`](/core/reference/data-types/int-uint)
+- `trials_x` — Number of trials in population x. [`UInt64`](/core/reference/data-types/int-uint)
+- `trials_y` — Number of trials in population y. [`UInt64`](/core/reference/data-types/int-uint)
+- `conf_level` — Confidence level for the test. [`Float64`](/core/reference/data-types/float)
+- `pool_type` — Selection of pooling method for standard error estimation. Can be either 'unpooled' or 'pooled'. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a tuple containing: `z_stat` (Z statistic), `p_val` (P value), `ci_low` (lower confidence interval), `ci_high` (upper confidence interval). [`Tuple(Float64, Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple containing: `z_stat` (Z statistic), `p_val` (P value), `ci_low` (lower confidence interval), `ci_high` (upper confidence interval). [`Tuple(Float64, Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -1170,11 +1170,11 @@ radians(x)
**Arguments**
-- `x` — Input in degrees. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — Input in degrees. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns value in radians [`Float64`](/reference/data-types/float)
+Returns value in radians [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1203,11 +1203,11 @@ sigmoid(x)
**Arguments**
-- `x` — The input value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — The input value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the sigmoid of the input value, in the range (0, 1). [`Float64`](/reference/data-types/float)
+Returns the sigmoid of the input value, in the range (0, 1). [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1235,11 +1235,11 @@ sign(x)
**Arguments**
-- `x` — Values from -∞ to +∞. [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal*`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float)
+- `x` — Values from -∞ to +∞. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal*`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `-1` for `x < 0`, `0` for `x = 0`, `1` for `x > 0`. [`Int8`](/reference/data-types/int-uint)
+Returns `-1` for `x < 0`, `0` for `x = 0`, `1` for `x > 0`. [`Int8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1287,7 +1287,7 @@ sin(x)
**Arguments**
-- `x` — The number whose sine will be returned. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The number whose sine will be returned. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
@@ -1319,11 +1319,11 @@ sinh(x)
**Arguments**
-- `x` — The angle, in radians. Values from the interval: -∞ < x < +∞. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The angle, in radians. Values from the interval: -∞ < x < +∞. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns values from the interval: -∞ < sinh(x) < +∞ [`Float64`](/reference/data-types/float)
+Returns values from the interval: -∞ < sinh(x) < +∞ [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1351,11 +1351,11 @@ sqrt(x)
**Arguments**
-- `x` — The number for which to find the square root of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The number for which to find the square root of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the square root of x [`Float*`](/reference/data-types/float)
+Returns the square root of x [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -1383,11 +1383,11 @@ tan(x)
**Arguments**
-- `x` — The angle in radians. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The angle in radians. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the tangent of `x`. [`Float*`](/reference/data-types/float)
+Returns the tangent of `x`. [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -1415,11 +1415,11 @@ tanh(x)
**Arguments**
-- `x` — The angle in radians. Values from the interval: -∞ < x < +∞. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The angle in radians. Values from the interval: -∞ < x < +∞. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns values from the interval: -1 < tanh(x) < 1 [`Float*`](/reference/data-types/float)
+Returns values from the interval: -1 < tanh(x) < 1 [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -1447,11 +1447,11 @@ tgamma(x)
**Arguments**
-- `x` — The number for which to compute the gamma function of. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal)
+- `x` — The number for which to compute the gamma function of. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal)
**Returned value**
-Returns the gamma function value [`Float*`](/reference/data-types/float)
+Returns the gamma function value [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -1482,14 +1482,14 @@ widthBucket(operand, low, high, count)
**Arguments**
-- `operand` — The value for which to determine the bucket. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
-- `low` — The lower bound of the histogram range. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
-- `high` — The upper bound of the histogram range. [`(U)Int8/16/32/64`](/reference/data-types/int-uint)
-- `count` — The number of equal-width buckets. Cannot be zero. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `operand` — The value for which to determine the bucket. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
+- `low` — The lower bound of the histogram range. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
+- `high` — The upper bound of the histogram range. [`(U)Int8/16/32/64`](/core/reference/data-types/int-uint)
+- `count` — The number of equal-width buckets. Cannot be zero. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the bucket number as an integer. Returns 0 if operand < low, returns count+1 if operand >= high. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+Returns the bucket number as an integer. Returns 0 if operand < low, returns count+1 if operand >= high. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/nlp-functions.mdx b/core/reference/functions/regular-functions/nlp-functions.mdx
similarity index 86%
rename from reference/functions/regular-functions/nlp-functions.mdx
rename to core/reference/functions/regular-functions/nlp-functions.mdx
index 73fe3ea6..4acd4410 100644
--- a/reference/functions/regular-functions/nlp-functions.mdx
+++ b/core/reference/functions/regular-functions/nlp-functions.mdx
@@ -41,11 +41,11 @@ detectCharset(s)
**Arguments**
-- `s` — The text to analyze. [`String`](/reference/data-types/string)
+- `s` — The text to analyze. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the code of the detected character set [`String`](/reference/data-types/string)
+Returns a string containing the code of the detected character set [`String`](/core/reference/data-types/string)
**Examples**
@@ -81,11 +81,11 @@ detectLanguage(s)
**Arguments**
-- `text_to_be_analyzed` — The text to analyze. [`String`](/reference/data-types/string)
+- `text_to_be_analyzed` — The text to analyze. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the 2-letter ISO code of the detected language. Other possible results: `un` = unknown, can not detect any language, `other` = the detected language does not have 2 letter code. [`String`](/reference/data-types/string)
+Returns the 2-letter ISO code of the detected language. Other possible results: `un` = unknown, can not detect any language, `other` = the detected language does not have 2 letter code. [`String`](/core/reference/data-types/string)
**Examples**
@@ -118,11 +118,11 @@ detectLanguageMixed(s)
**Arguments**
-- `s` — The text to analyze [`String`](/reference/data-types/string)
+- `s` — The text to analyze [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a map with keys which are 2-letter ISO codes and corresponding values which are a percentage of the text found for that language [`Map(String, Float32)`](/reference/data-types/map)
+Returns a map with keys which are 2-letter ISO codes and corresponding values which are a percentage of the text found for that language [`Map(String, Float32)`](/core/reference/data-types/map)
**Examples**
@@ -156,11 +156,11 @@ detectLanguageUnknown('s')
**Arguments**
-- `s` — The text to analyze. [`String`](/reference/data-types/string)
+- `s` — The text to analyze. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the 2-letter ISO code of the detected language. Other possible results: `un` = unknown, can not detect any language, `other` = the detected language does not have 2 letter code. [`String`](/reference/data-types/string)
+Returns the 2-letter ISO code of the detected language. Other possible results: `un` = unknown, can not detect any language, `other` = the detected language does not have 2 letter code. [`String`](/core/reference/data-types/string)
**Examples**
@@ -199,11 +199,11 @@ detectTonality(s)
**Arguments**
-- `s` — The text to be analyzed. [`String`](/reference/data-types/string)
+- `s` — The text to be analyzed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the average sentiment value of the words in text [`Float32`](/reference/data-types/float)
+Returns the average sentiment value of the words in text [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -226,7 +226,7 @@ Introduced in: v21.9.0
Performs lemmatization on a given word.
This function needs dictionaries to operate, which can be obtained from [github](https://github.com/vpodpecan/lemmagen3/tree/master/src/lemmagen3/models).
-For more details on loading a dictionary from a local file see page ["Defining Dictionaries"](/reference/statements/create/dictionary/sources/local-file).
+For more details on loading a dictionary from a local file see page ["Defining Dictionaries"](/core/reference/statements/create/dictionary/sources/local-file).
This function is experimental and may change in unpredictable backwards-incompatible ways in future releases.
@@ -241,12 +241,12 @@ lemmatize(lang, word)
**Arguments**
-- `lang` — Language which rules will be applied. [`String`](/reference/data-types/string)
-- `word` — Lowercase word that needs to be lemmatized. [`String`](/reference/data-types/string)
+- `lang` — Language which rules will be applied. [`String`](/core/reference/data-types/string)
+- `word` — Lowercase word that needs to be lemmatized. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the lemmatized form of the word [`String`](/reference/data-types/string)
+Returns the lemmatized form of the word [`String`](/core/reference/data-types/string)
**Examples**
@@ -278,12 +278,12 @@ stem(word, language)
**Arguments**
-- `word` — A single lowercase word (or array of words) to stem. Must be lowercase — uppercase characters produce undefined results. Accepts String, FixedString, Array(String), Array(FixedString), Array(Nullable(String)), or Array(Nullable(FixedString)). [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Array(String)`](/reference/data-types/array) or [`Array(FixedString)`](/reference/data-types/array)
-- `language` — Language whose stemming rules will be applied. Use the two-letter ISO 639-1 code (e.g. 'en', 'de', 'fr'), see https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes. [`String`](/reference/data-types/string)
+- `word` — A single lowercase word (or array of words) to stem. Must be lowercase — uppercase characters produce undefined results. Accepts String, FixedString, Array(String), Array(FixedString), Array(Nullable(String)), or Array(Nullable(FixedString)). [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Array(String)`](/core/reference/data-types/array) or [`Array(FixedString)`](/core/reference/data-types/array)
+- `language` — Language whose stemming rules will be applied. Use the two-letter ISO 639-1 code (e.g. 'en', 'de', 'fr'), see https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes. [`String`](/core/reference/data-types/string)
**Returned value**
-The stemmed form of the word (String), or an array of stemmed words (Array(String)). [`String`](/reference/data-types/string) or [`Array(String)`](/reference/data-types/array)
+The stemmed form of the word (String), or an array of stemmed words (Array(String)). [`String`](/core/reference/data-types/string) or [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -356,12 +356,12 @@ synonyms(ext_name, word)
**Arguments**
-- `ext_name` — Name of the extension in which search will be performed. [`String`](/reference/data-types/string)
-- `word` — Word that will be searched in extension. [`String`](/reference/data-types/string)
+- `ext_name` — Name of the extension in which search will be performed. [`String`](/core/reference/data-types/string)
+- `word` — Word that will be searched in extension. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns array of synonyms for the given word. [`Array(String)`](/reference/data-types/array)
+Returns array of synonyms for the given word. [`Array(String)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/regular-functions/numeric-indexed-vector-functions.mdx b/core/reference/functions/regular-functions/numeric-indexed-vector-functions.mdx
similarity index 79%
rename from reference/functions/regular-functions/numeric-indexed-vector-functions.mdx
rename to core/reference/functions/regular-functions/numeric-indexed-vector-functions.mdx
index 0d2bfd89..f920ade3 100644
--- a/reference/functions/regular-functions/numeric-indexed-vector-functions.mdx
+++ b/core/reference/functions/regular-functions/numeric-indexed-vector-functions.mdx
@@ -113,11 +113,11 @@ numericIndexedVectorAllValueSum(v)
**Arguments**
-- `v` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns the sum. [`Float64`](/reference/data-types/float)
+Returns the sum. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -148,11 +148,11 @@ numericIndexedVectorBuild(map)
**Arguments**
-- `map` — A mapping from index to value. [`Map`](/reference/data-types/map)
+- `map` — A mapping from index to value. [`Map`](/core/reference/data-types/map)
**Returned value**
-Returns a NumericIndexedVector object. [`AggregateFunction`](/reference/data-types/aggregatefunction)
+Returns a NumericIndexedVector object. [`AggregateFunction`](/core/reference/data-types/aggregatefunction)
**Examples**
@@ -183,11 +183,11 @@ numericIndexedVectorCardinality(v)
**Arguments**
-- `v` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns the number of unique indexes. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of unique indexes. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -218,12 +218,12 @@ numericIndexedVectorGetValue(v, i)
**Arguments**
-- `v` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `i` — The index for which the value is to be retrieved. [`(U)Int*`](/reference/data-types/int-uint)
+- `v` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `i` — The index for which the value is to be retrieved. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-A numeric value with the same type as the value type of NumericIndexedVector. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+A numeric value with the same type as the value type of NumericIndexedVector. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -254,12 +254,12 @@ numericIndexedVectorPointwiseAdd(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -295,12 +295,12 @@ numericIndexedVectorPointwiseDivide(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -337,12 +337,12 @@ numericIndexedVectorPointwiseEqual(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -379,12 +379,12 @@ numericIndexedVectorPointwiseGreater(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -421,12 +421,12 @@ numericIndexedVectorPointwiseGreaterEqual(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -463,12 +463,12 @@ numericIndexedVectorPointwiseLess(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -505,12 +505,12 @@ numericIndexedVectorPointwiseLessEqual(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -546,12 +546,12 @@ numericIndexedVectorPointwiseMultiply(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -588,12 +588,12 @@ numericIndexedVectorPointwiseNotEqual(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -629,12 +629,12 @@ numericIndexedVectorPointwiseSubtract(v1, v2)
**Arguments**
-- `v1` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
-- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v1` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v2` — A numeric constant or numericIndexedVector object. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a new numericIndexedVector object. [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+Returns a new numericIndexedVector object. [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Examples**
@@ -671,11 +671,11 @@ numericIndexedVectorShortDebugString(v)
**Arguments**
-- `v` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a JSON string containing debug information. [`String`](/reference/data-types/string)
+Returns a JSON string containing debug information. [`String`](/core/reference/data-types/string)
**Examples**
@@ -706,11 +706,11 @@ numericIndexedVectorToMap(v)
**Arguments**
-- `v` — [`numericIndexedVector`](/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
+- `v` — [`numericIndexedVector`](/core/reference/functions/regular-functions/numeric-indexed-vector-functions#create-numeric-indexed-vector-object)
**Returned value**
-Returns a map with index-value pairs. [`Map`](/reference/data-types/map)
+Returns a map with index-value pairs. [`Map`](/core/reference/data-types/map)
**Examples**
diff --git a/reference/functions/regular-functions/other-functions.mdx b/core/reference/functions/regular-functions/other-functions.mdx
similarity index 84%
rename from reference/functions/regular-functions/other-functions.mdx
rename to core/reference/functions/regular-functions/other-functions.mdx
index 4339a861..e46f6d64 100644
--- a/reference/functions/regular-functions/other-functions.mdx
+++ b/core/reference/functions/regular-functions/other-functions.mdx
@@ -42,7 +42,7 @@ FQDN()
**Returned value**
-Returns the fully qualified domain name of the ClickHouse server. [`String`](/reference/data-types/string)
+Returns the fully qualified domain name of the ClickHouse server. [`String`](/core/reference/data-types/string)
**Examples**
@@ -62,7 +62,7 @@ SELECT fqdn()
Introduced in: v1.1.0
-Interprets a [`UInt64`](/reference/data-types/int-uint) number as a MAC address in big endian format.
+Interprets a [`UInt64`](/core/reference/data-types/int-uint) number as a MAC address in big endian format.
Returns the corresponding MAC address in format `AA:BB:CC:DD:EE:FF` (colon-separated numbers in hexadecimal form) as string.
@@ -74,11 +74,11 @@ MACNumToString(num)
**Arguments**
-- `num` — UInt64 number. [`UInt64`](/reference/data-types/int-uint)
+- `num` — UInt64 number. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a MAC address in format AA:BB:CC:DD:EE:FF. [`String`](/reference/data-types/string)
+Returns a MAC address in format AA:BB:CC:DD:EE:FF. [`String`](/core/reference/data-types/string)
**Examples**
@@ -108,11 +108,11 @@ MACStringToNum(s)
**Arguments**
-- `s` — MAC address string. [`String`](/reference/data-types/string)
+- `s` — MAC address string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a UInt64 number. [`UInt64`](/reference/data-types/int-uint)
+Returns a UInt64 number. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -141,11 +141,11 @@ MACStringToOUI(s)
**Arguments**
-- `s` — MAC address string. [`String`](/reference/data-types/string)
+- `s` — MAC address string. [`String`](/core/reference/data-types/string)
**Returned value**
-First three octets as UInt64 number. [`UInt64`](/reference/data-types/int-uint)
+First three octets as UInt64 number. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -181,7 +181,7 @@ authenticatedUser()
**Returned value**
-The name of the authenticated user. [`String`](/reference/data-types/string)
+The name of the authenticated user. [`String`](/core/reference/data-types/string)
**Examples**
@@ -214,14 +214,14 @@ bar(x, min, max[, width])
**Arguments**
-- `x` — Size to display. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `min` — The minimum value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `max` — The maximum value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `width` — Optional. The width of the bar in characters. The default is `80`. [`const (U)Int*`](/reference/data-types/int-uint) or [`const Float*`](/reference/data-types/float) or [`const Decimal`](/reference/data-types/decimal)
+- `x` — Size to display. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `min` — The minimum value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `max` — The maximum value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `width` — Optional. The width of the bar in characters. The default is `80`. [`const (U)Int*`](/core/reference/data-types/int-uint) or [`const Float*`](/core/reference/data-types/float) or [`const Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a unicode-art bar string. [`String`](/reference/data-types/string)
+Returns a unicode-art bar string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -270,7 +270,7 @@ ORDER BY h ASC
Introduced in: v1.1.0
-Returns a monotonically increasing sequence number of the [block](/resources/contribute/architecture#block) containing the row.
+Returns a monotonically increasing sequence number of the [block](/resources/develop-contribute/introduction/architecture#block) containing the row.
The returned block number is updated on a best-effort basis, i.e. it may not be fully accurate.
@@ -286,7 +286,7 @@ blockNumber()
**Returned value**
-Sequence number of the data block where the row is located. [`UInt64`](/reference/data-types/int-uint)
+Sequence number of the data block where the row is located. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -339,11 +339,11 @@ blockSerializedSize(x1[, x2[, ...]])
**Arguments**
-- `x1[, x2, ...]` — Any number of values for which to get the uncompressed size of the block. [`Any`](/reference/data-types)
+- `x1[, x2, ...]` — Any number of values for which to get the uncompressed size of the block. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the number of bytes that will be written to disk for a block of values without compression. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of bytes that will be written to disk for a block of values without compression. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -363,7 +363,7 @@ SELECT blockSerializedSize(maxState(1)) AS x;
Introduced in: v1.1.0
-In ClickHouse, queries are processed in [blocks](/resources/contribute/architecture#block) (chunks).
+In ClickHouse, queries are processed in [blocks](/resources/develop-contribute/introduction/architecture#block) (chunks).
This function returns the size (row count) of the block the function is called on.
@@ -379,7 +379,7 @@ blockSize()
**Returned value**
-Returns the number of rows in the current block. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of rows in the current block. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -421,7 +421,7 @@ buildId()
**Returned value**
-Returns the build ID. [`String`](/reference/data-types/string)
+Returns the build ID. [`String`](/core/reference/data-types/string)
**Examples**
@@ -454,11 +454,11 @@ byteSize(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — Values of any data type for which to estimate the uncompressed byte size. [`Any`](/reference/data-types)
+- `arg1[, arg2, ...]` — Values of any data type for which to estimate the uncompressed byte size. [`Any`](/core/reference/data-types)
**Returned value**
-Returns an estimation of the byte size of the arguments in memory. [`UInt64`](/reference/data-types/int-uint)
+Returns an estimation of the byte size of the arguments in memory. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -532,12 +532,12 @@ catboostEvaluate(path_to_model, feature_1[, feature_2, ..., feature_n])
**Arguments**
-- `path_to_model` — Path to catboost model. [`const String`](/reference/data-types/string)
-- `feature` — One or more model features/arguments. [`Float*`](/reference/data-types/float)
+- `path_to_model` — Path to catboost model. [`const String`](/core/reference/data-types/string)
+- `feature` — One or more model features/arguments. [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the model evaluation result. [`Float64`](/reference/data-types/float)
+Returns the model evaluation result. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -590,12 +590,12 @@ colorOKLABToSRGB(tuple [, gamma])
**Arguments**
-- `tuple` — A tuple of three numeric values `L`, `a`, `b`, where `L` is in the range `[0...1]`. [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
-- `gamma` — Optional. The exponent that is used to transform linear sRGB back to sRGB by applying `(x ^ (1 / gamma)) * 255` for each channel `x`. Defaults to `2.2`. [`Float64`](/reference/data-types/float)
+- `tuple` — A tuple of three numeric values `L`, `a`, `b`, where `L` is in the range `[0...1]`. [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
+- `gamma` — Optional. The exponent that is used to transform linear sRGB back to sRGB by applying `(x ^ (1 / gamma)) * 255` for each channel `x`. Defaults to `2.2`. [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns a tuple (R, G, B) representing sRGB color values. [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple (R, G, B) representing sRGB color values. [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -657,12 +657,12 @@ colorOKLCHToSRGB(tuple [, gamma])
**Arguments**
-- `tuple` — A tuple of three numeric values `L`, `C`, `H`, where `L` is in the range `[0...1]`, `C >= 0` and `H` is in the range `[0...360]`. [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
-- `gamma` — Optional. The exponent that is used to transform linear sRGB back to sRGB by applying `(x ^ (1 / gamma)) * 255` for each channel `x`. Defaults to `2.2`. [`Float64`](/reference/data-types/float)
+- `tuple` — A tuple of three numeric values `L`, `C`, `H`, where `L` is in the range `[0...1]`, `C >= 0` and `H` is in the range `[0...360]`. [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
+- `gamma` — Optional. The exponent that is used to transform linear sRGB back to sRGB by applying `(x ^ (1 / gamma)) * 255` for each channel `x`. Defaults to `2.2`. [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns a tuple (R, G, B) representing sRGB color values. [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple (R, G, B) representing sRGB color values. [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -718,12 +718,12 @@ colorSRGBToOKLAB(tuple[, gamma])
**Arguments**
-- `tuple` — Tuple of three values R, G, B in the range `[0...255]`. [`Tuple(UInt8, UInt8, UInt8)`](/reference/data-types/tuple)
-- `gamma` — Optional. Exponent that is used to linearize sRGB by applying `(x / 255)^gamma` to each channel `x`. Defaults to `2.2`. [`Float64`](/reference/data-types/float)
+- `tuple` — Tuple of three values R, G, B in the range `[0...255]`. [`Tuple(UInt8, UInt8, UInt8)`](/core/reference/data-types/tuple)
+- `gamma` — Optional. Exponent that is used to linearize sRGB by applying `(x / 255)^gamma` to each channel `x`. Defaults to `2.2`. [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns a tuple (L, a, b) representing the OKLAB color space values. [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple (L, a, b) representing the OKLAB color space values. [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -769,12 +769,12 @@ colorSRGBToOKLCH(tuple[, gamma])
**Arguments**
-- `tuple` — Tuple of three values R, G, B in the range `[0...255]`. [`Tuple(UInt8, UInt8, UInt8)`](/reference/data-types/tuple)
-- `gamma` — Optional. Exponent that is used to linearize sRGB by applying `(x / 255)^gamma` to each channel `x`. Defaults to `2.2`. [`Float64`](/reference/data-types/float)
+- `tuple` — Tuple of three values R, G, B in the range `[0...255]`. [`Tuple(UInt8, UInt8, UInt8)`](/core/reference/data-types/tuple)
+- `gamma` — Optional. Exponent that is used to linearize sRGB by applying `(x / 255)^gamma` to each channel `x`. Defaults to `2.2`. [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns a tuple (L, C, H) representing the OKLCH color space values. [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a tuple (L, C, H) representing the OKLCH color space values. [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -811,7 +811,7 @@ connectionId()
**Returned value**
-Returns the connection ID of the current client. [`UInt64`](/reference/data-types/int-uint)
+Returns the connection ID of the current client. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -855,11 +855,11 @@ countDigits(x)
**Arguments**
-- `x` — An integer or decimal value. [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal`](/reference/data-types/decimal)
+- `x` — An integer or decimal value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the number of digits needed to represent `x`. [`UInt8`](/reference/data-types/int-uint)
+Returns the number of digits needed to represent `x`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -884,7 +884,7 @@ Introduced in: v1.1.0
Returns the name of the current database.
Useful in table engine parameters of `CREATE TABLE` queries where you need to specify the database.
-Also see the [`SET` statement](/reference/statements/use).
+Also see the [`SET` statement](/core/reference/statements/use).
**Syntax**
@@ -901,7 +901,7 @@ currentDatabase()
**Returned value**
-Returns the current database name. [`String`](/reference/data-types/string)
+Returns the current database name. [`String`](/core/reference/data-types/string)
**Examples**
@@ -947,7 +947,7 @@ currentProfiles()
**Returned value**
-Returns an array of setting profiles for the current user. [`Array(String)`](/reference/data-types/array)
+Returns an array of setting profiles for the current user. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1016,7 +1016,7 @@ currentRoles()
**Returned value**
-Returns an array of the roles which are assigned to the current user. [`Array(String)`](/reference/data-types/array)
+Returns an array of the roles which are assigned to the current user. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1043,7 +1043,7 @@ Same as function [`currentDatabase`](#currentDatabase) but
Function `currentSchemas` only exists for compatibility with PostgreSQL.
Please use `currentDatabase` instead.
-Also see the [`SET` statement](/reference/statements/use).
+Also see the [`SET` statement](/core/reference/statements/use).
**Syntax**
@@ -1056,11 +1056,11 @@ currentSchemas(bool)
**Arguments**
-- `bool` — A boolean value, which is ignored. [`Bool`](/reference/data-types/boolean)
+- `bool` — A boolean value, which is ignored. [`Bool`](/core/reference/data-types/boolean)
**Returned value**
-Returns a single-element array with the name of the current database. [`Array(String)`](/reference/data-types/array)
+Returns a single-element array with the name of the current database. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1098,7 +1098,7 @@ currentUser()
**Returned value**
-Returns the name of the current user, otherwise the login of the user who initiated the query. [`String`](/reference/data-types/string)
+Returns the name of the current user, otherwise the login of the user who initiated the query. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1144,7 +1144,7 @@ defaultProfiles()
**Returned value**
-Returns an array of default setting profile names for the current user. [`Array(String)`](/reference/data-types/array)
+Returns an array of default setting profile names for the current user. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1179,7 +1179,7 @@ defaultRoles()
**Returned value**
-Returns an array of default roles for the current user. [`Array(String)`](/reference/data-types/array)
+Returns an array of default roles for the current user. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1210,11 +1210,11 @@ defaultValueOfArgumentType(expression)
**Arguments**
-- `expression` — Arbitrary type of value or an expression that results in a value of an arbitrary type. [`Any`](/reference/data-types)
+- `expression` — Arbitrary type of value or an expression that results in a value of an arbitrary type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns `0` for numbers, an empty string for strings or `NULL` for Nullable types. [`UInt8`](/reference/data-types/int-uint) or [`String`](/reference/data-types/string) or [`NULL`](/reference/syntax#null)
+Returns `0` for numbers, an empty string for strings or `NULL` for Nullable types. [`UInt8`](/core/reference/data-types/int-uint) or [`String`](/core/reference/data-types/string) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -1257,11 +1257,11 @@ defaultValueOfTypeName(type)
**Arguments**
-- `type` — A string representing a type name. [`String`](/reference/data-types/string)
+- `type` — A string representing a type name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the default value for the given type name: `0` for numbers, an empty string for strings, or `NULL` for Nullable [`UInt8`](/reference/data-types/int-uint) or [`String`](/reference/data-types/string) or [`NULL`](/reference/syntax#null)
+Returns the default value for the given type name: `0` for numbers, an empty string for strings, or `NULL` for Nullable [`UInt8`](/core/reference/data-types/int-uint) or [`String`](/core/reference/data-types/string) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -1293,7 +1293,7 @@ SELECT defaultValueOfTypeName('Nullable(Int8)');
Introduced in: v22.11.0
-Returns the value of `display_name` from [config](/concepts/features/configuration/server-config/configuration-files) or the server's Fully Qualified Domain Name (FQDN) if not set.
+Returns the value of `display_name` from [config](/core/concepts/features/configuration/server-config/configuration-files) or the server's Fully Qualified Domain Name (FQDN) if not set.
**Syntax**
@@ -1307,7 +1307,7 @@ displayName()
**Returned value**
-Returns the value of `display_name` from config or server FQDN if not set. [`String`](/reference/data-types/string)
+Returns the value of `display_name` from config or server FQDN if not set. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1337,11 +1337,11 @@ dumpColumnStructure(x)
**Arguments**
-- `x` — Value for which to get the description of. [`Any`](/reference/data-types)
+- `x` — Value for which to get the description of. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a description of the column structure used for representing the value. [`String`](/reference/data-types/string)
+Returns a description of the column structure used for representing the value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1375,7 +1375,7 @@ enabledProfiles()
**Returned value**
-Returns an array of setting profile names which are enabled for the current user. [`Array(String)`](/reference/data-types/array)
+Returns an array of setting profile names which are enabled for the current user. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1410,7 +1410,7 @@ enabledRoles()
**Returned value**
-Returns an array of role names which are enabled for the current user. [`Array(String)`](/reference/data-types/array)
+Returns an array of role names which are enabled for the current user. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1441,11 +1441,11 @@ errorCodeToName(error_code)
**Arguments**
-- `error_code` — ClickHouse error code. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `error_code` — ClickHouse error code. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns the textual name of `error_code`. [`String`](/reference/data-types/string)
+Returns the textual name of `error_code`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1468,7 +1468,7 @@ Introduced in: v21.3.0
Reads a file as a string and loads the data into the specified column.
The file content is not interpreted.
-Also see the [`file`](/reference/functions/table-functions/file) table function.
+Also see the [`file`](/core/reference/functions/table-functions/file) table function.
**Syntax**
@@ -1479,12 +1479,12 @@ file(path[, default])
**Arguments**
-- `path` — The path of the file relative to the `user_files_path`. Supports wildcards `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` are numbers and `'abc', 'def'` are strings. [`String`](/reference/data-types/string)
-- `default` — The value returned if the file does not exist or cannot be accessed. [`String`](/reference/data-types/string) or [`NULL`](/reference/syntax#null)
+- `path` — The path of the file relative to the `user_files_path`. Supports wildcards `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` are numbers and `'abc', 'def'` are strings. [`String`](/core/reference/data-types/string)
+- `default` — The value returned if the file does not exist or cannot be accessed. [`String`](/core/reference/data-types/string) or [`NULL`](/core/reference/syntax#null)
**Returned value**
-Returns the file content as a string. [`String`](/reference/data-types/string)
+Returns the file content as a string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1503,7 +1503,7 @@ INSERT INTO table SELECT file('a.txt'), file('b.txt');
Introduced in: v20.1.0
Returns the amount of free space in the filesystem hosting the database persistence.
-The returned value is always smaller than the total free space ([`filesystemUnreserved`](/reference/functions/regular-functions/other-functions#filesystemUnreserved)) because some space is reserved for the operating system.
+The returned value is always smaller than the total free space ([`filesystemUnreserved`](/core/reference/functions/regular-functions/other-functions#filesystemUnreserved)) because some space is reserved for the operating system.
**Syntax**
@@ -1514,11 +1514,11 @@ filesystemAvailable([disk_name])
**Arguments**
-- `disk_name` — Optional. The disk name to find the amount of free space for. If omitted, uses the default disk. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `disk_name` — Optional. The disk name to find the amount of free space for. If omitted, uses the default disk. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the amount of remaining space available in bytes. [`UInt64`](/reference/data-types/int-uint)
+Returns the amount of remaining space available in bytes. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1539,7 +1539,7 @@ SELECT formatReadableSize(filesystemAvailable()) AS "Available space";
Introduced in: v20.1.0
Returns the capacity of the filesystem in bytes.
-Needs the [path](/reference/settings/server-settings/settings#path) to the data directory to be configured.
+Needs the [path](/core/reference/settings/server-settings/settings#path) to the data directory to be configured.
**Syntax**
@@ -1549,11 +1549,11 @@ filesystemCapacity([disk_name])
**Arguments**
-- `disk_name` — Optional. The disk name to get the capacity for. If omitted, uses the default disk. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `disk_name` — Optional. The disk name to get the capacity for. If omitted, uses the default disk. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the capacity of the filesystem in bytes. [`UInt64`](/reference/data-types/int-uint)
+Returns the capacity of the filesystem in bytes. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1584,11 +1584,11 @@ filesystemUnreserved([disk_name])
**Arguments**
-- `disk_name` — Optional. The disk name for which to find the total amount of free space. If omitted, uses the default disk. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `disk_name` — Optional. The disk name for which to find the total amount of free space. If omitted, uses the default disk. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the amount of free space in bytes. [`UInt64`](/reference/data-types/int-uint)
+Returns the amount of free space in bytes. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1608,7 +1608,7 @@ SELECT formatReadableSize(filesystemUnreserved()) AS "Free space";
Introduced in: v1.1.0
-Given an aggregation state, this function returns the result of aggregation (or the finalized state when using a [-State](/reference/functions/aggregate-functions/combinators#-state) combinator).
+Given an aggregation state, this function returns the result of aggregation (or the finalized state when using a [-State](/core/reference/functions/aggregate-functions/combinators#-state) combinator).
**Syntax**
@@ -1618,11 +1618,11 @@ finalizeAggregation(state)
**Arguments**
-- `state` — State of aggregation. [`AggregateFunction`](/reference/data-types/aggregatefunction)
+- `state` — State of aggregation. [`AggregateFunction`](/core/reference/data-types/aggregatefunction)
**Returned value**
-Returns the finalized result of aggregation. [`Any`](/reference/data-types)
+Returns the finalized result of aggregation. [`Any`](/core/reference/data-types)
**Examples**
@@ -1681,7 +1681,7 @@ flipCoordinates(geometry)
**Returned value**
-The geometry with flipped coordinates. The return type matches the input type. [`Point`](/reference/data-types/geo#point) or [`Ring`](/reference/data-types/geo#ring) or [`Polygon`](/reference/data-types/geo#polygon) or [`MultiPolygon`](/reference/data-types/geo#multipolygon) or [`LineString`](/reference/data-types/geo#linestring) or [`MultiLineString`](/reference/data-types/geo#multilinestring) or [`Geometry`](/reference/data-types/geo)
+The geometry with flipped coordinates. The return type matches the input type. [`Point`](/core/reference/data-types/geo#point) or [`Ring`](/core/reference/data-types/geo#ring) or [`Polygon`](/core/reference/data-types/geo#polygon) or [`MultiPolygon`](/core/reference/data-types/geo#multipolygon) or [`LineString`](/core/reference/data-types/geo#linestring) or [`MultiLineString`](/core/reference/data-types/geo#multilinestring) or [`Geometry`](/core/reference/data-types/geo)
**Examples**
@@ -1750,11 +1750,11 @@ formatQuery(query)
**Arguments**
-- `query` — The SQL query to be formatted. [String](/reference/data-types/string)
+- `query` — The SQL query to be formatted. [String](/core/reference/data-types/string)
**Returned value**
-The formatted query [`String`](/reference/data-types/string)
+The formatted query [`String`](/core/reference/data-types/string)
**Examples**
@@ -1787,11 +1787,11 @@ formatQueryOrNull(query)
**Arguments**
-- `query` — The SQL query to be formatted. [String](/reference/data-types/string)
+- `query` — The SQL query to be formatted. [String](/core/reference/data-types/string)
**Returned value**
-The formatted query [`String`](/reference/data-types/string)
+The formatted query [`String`](/core/reference/data-types/string)
**Examples**
@@ -1824,11 +1824,11 @@ formatQuerySingleLine(query)
**Arguments**
-- `query` — The SQL query to be formatted. [String](/reference/data-types/string)
+- `query` — The SQL query to be formatted. [String](/core/reference/data-types/string)
**Returned value**
-The formatted query [`String`](/reference/data-types/string)
+The formatted query [`String`](/core/reference/data-types/string)
**Examples**
@@ -1857,11 +1857,11 @@ formatQuerySingleLineOrNull(query)
**Arguments**
-- `query` — The SQL query to be formatted. [`String`](/reference/data-types/string)
+- `query` — The SQL query to be formatted. [`String`](/core/reference/data-types/string)
**Returned value**
-The formatted query [`String`](/reference/data-types/string)
+The formatted query [`String`](/core/reference/data-types/string)
**Examples**
@@ -1892,11 +1892,11 @@ formatReadableDecimalSize(x)
**Arguments**
-- `x` — Size in bytes. [`UInt64`](/reference/data-types/int-uint)
+- `x` — Size in bytes. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a readable, rounded size with suffix as a string. [`String`](/reference/data-types/string)
+Returns a readable, rounded size with suffix as a string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1935,11 +1935,11 @@ formatReadableQuantity(x)
**Arguments**
-- `x` — A number to format. [`UInt64`](/reference/data-types/int-uint)
+- `x` — A number to format. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a rounded number with suffix as a string. [`String`](/reference/data-types/string)
+Returns a rounded number with suffix as a string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1980,11 +1980,11 @@ formatReadableSize(x)
**Arguments**
-- `x` — Size in bytes. [`UInt64`](/reference/data-types/int-uint)
+- `x` — Size in bytes. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a readable, rounded size with suffix as a string. [`String`](/reference/data-types/string)
+Returns a readable, rounded size with suffix as a string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2022,13 +2022,13 @@ formatReadableTimeDelta(column[, maximum_unit, minimum_unit])
**Arguments**
-- `column` — A column with a numeric time delta. [`Float64`](/reference/data-types/float)
-- `maximum_unit` — Optional. Maximum unit to show. Acceptable values: `nanoseconds`, `microseconds`, `milliseconds`, `seconds`, `minutes`, `hours`, `days`, `months`, `years`. Default value: `years`. [`const String`](/reference/data-types/string)
-- `minimum_unit` — Optional. Minimum unit to show. All smaller units are truncated. Acceptable values: `nanoseconds`, `microseconds`, `milliseconds`, `seconds`, `minutes`, `hours`, `days`, `months`, `years`. If explicitly specified value is bigger than `maximum_unit`, an exception will be thrown. Default value: `seconds` if `maximum_unit` is `seconds` or bigger, `nanoseconds` otherwise. [`const String`](/reference/data-types/string)
+- `column` — A column with a numeric time delta. [`Float64`](/core/reference/data-types/float)
+- `maximum_unit` — Optional. Maximum unit to show. Acceptable values: `nanoseconds`, `microseconds`, `milliseconds`, `seconds`, `minutes`, `hours`, `days`, `months`, `years`. Default value: `years`. [`const String`](/core/reference/data-types/string)
+- `minimum_unit` — Optional. Minimum unit to show. All smaller units are truncated. Acceptable values: `nanoseconds`, `microseconds`, `milliseconds`, `seconds`, `minutes`, `hours`, `days`, `months`, `years`. If explicitly specified value is bigger than `maximum_unit`, an exception will be thrown. Default value: `seconds` if `maximum_unit` is `seconds` or bigger, `nanoseconds` otherwise. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a time delta as a string. [`String`](/reference/data-types/string)
+Returns a time delta as a string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2078,11 +2078,11 @@ fuzzQuery(query)
**Arguments**
-- `query` — The SQL query to be fuzzed. [String](/reference/data-types/string)
+- `query` — The SQL query to be fuzzed. [String](/core/reference/data-types/string)
**Returned value**
-The fuzzed query string [`String`](/reference/data-types/string)
+The fuzzed query string [`String`](/core/reference/data-types/string)
**Examples**
@@ -2110,12 +2110,12 @@ generateRandomStructure([number_of_columns, seed])
**Arguments**
-- `number_of_columns` — The desired number of columns in the resultant table structure. If set to 0 or `Null`, the number of columns will be random from 1 to 128. Default value: `Null`. [`UInt64`](/reference/data-types/int-uint)
-- `seed` — Random seed to produce stable results. If seed is not specified or set to `Null`, it is randomly generated. [`UInt64`](/reference/data-types/int-uint)
+- `number_of_columns` — The desired number of columns in the resultant table structure. If set to 0 or `Null`, the number of columns will be random from 1 to 128. Default value: `Null`. [`UInt64`](/core/reference/data-types/int-uint)
+- `seed` — Random seed to produce stable results. If seed is not specified or set to `Null`, it is randomly generated. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Randomly generated table structure. [`String`](/reference/data-types/string)
+Randomly generated table structure. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2156,7 +2156,7 @@ Introduced in: v25.1.0
Generates and returns sequential numbers starting from the previous counter value.
This function takes a string argument - a series identifier, and an optional starting value.
The server should be configured with Keeper.
-The series are stored in Keeper nodes under the path, which can be configured in [`series_keeper_path`](/reference/settings/server-settings/settings#series_keeper_path) in the server configuration.
+The series are stored in Keeper nodes under the path, which can be configured in [`series_keeper_path`](/core/reference/settings/server-settings/settings#series_keeper_path) in the server configuration.
**Syntax**
@@ -2167,12 +2167,12 @@ generateSerialID(series_identifier[, start_value])
**Arguments**
-- `series_identifier` — Series identifier [`const String`](/reference/data-types/string)
-- `start_value` — Optional. Starting value for the counter. Defaults to 0. Note: this value is only used when creating a new series and is ignored if the series already exists [`UInt*`](/reference/data-types/int-uint)
+- `series_identifier` — Series identifier [`const String`](/core/reference/data-types/string)
+- `start_value` — Optional. Starting value for the counter. Defaults to 0. Note: this value is only used when creating a new series and is ignored if the series already exists [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns sequential numbers starting from the previous counter value. [`UInt64`](/reference/data-types/int-uint)
+Returns sequential numbers starting from the previous counter value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2266,11 +2266,11 @@ getClientHTTPHeader(name)
**Arguments**
-- `name` — The HTTP header name. [`String`](/reference/data-types/string)
+- `name` — The HTTP header name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the value of the header. [`String`](/reference/data-types/string)
+Returns the value of the header. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2291,7 +2291,7 @@ SELECT getClientHTTPHeader('Content-Type');
Introduced in: v20.1.0
Returns the value of a macro from the server configuration file.
-Macros are defined in the [``](/reference/settings/server-settings/settings#macros) section of the configuration file and can be used to distinguish servers by convenient names even if they have complicated hostnames.
+Macros are defined in the [``](/core/reference/settings/server-settings/settings#macros) section of the configuration file and can be used to distinguish servers by convenient names even if they have complicated hostnames.
If the function is executed in the context of a distributed table, it generates a normal column with values relevant to each shard.
**Syntax**
@@ -2302,11 +2302,11 @@ getMacro(name)
**Arguments**
-- `name` — The name of the macro to retrieve. [`const String`](/reference/data-types/string)
+- `name` — The name of the macro to retrieve. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the value of the specified macro. [`String`](/reference/data-types/string)
+Returns the value of the specified macro. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2336,7 +2336,7 @@ getMaxTableNameLengthForDatabase(database_name)
**Arguments**
-- `database_name` — The name of the specified database. [`String`](/reference/data-types/string)
+- `database_name` — The name of the specified database. [`String`](/core/reference/data-types/string)
**Returned value**
@@ -2370,7 +2370,7 @@ getMergeTreeSetting(setting_name)
**Arguments**
-- `setting_name` — The setting name. [`String`](/reference/data-types/string)
+- `setting_name` — The setting name. [`String`](/core/reference/data-types/string)
**Returned value**
@@ -2408,7 +2408,7 @@ getOSKernelVersion()
**Returned value**
-Returns the current OS kernel version. [`String`](/reference/data-types/string)
+Returns the current OS kernel version. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2439,11 +2439,11 @@ getServerPort(port_name)
**Arguments**
-- `port_name` — The name of the port. [`String`](/reference/data-types/string)
+- `port_name` — The name of the port. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the server port number. [`UInt16`](/reference/data-types/int-uint)
+Returns the server port number. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -2474,11 +2474,11 @@ getServerSetting(setting_name')
**Arguments**
-- `setting_name` — The server setting name. [`String`](/reference/data-types/string)
+- `setting_name` — The server setting name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the server setting's current value. [`Any`](/reference/data-types)
+Returns the server setting's current value. [`Any`](/core/reference/data-types)
**Examples**
@@ -2508,11 +2508,11 @@ getSetting(setting_name)
**Arguments**
-- `setting_Name` — The setting name. [`const String`](/reference/data-types/string)
+- `setting_Name` — The setting name. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the setting's current value. [`Any`](/reference/data-types)
+Returns the setting's current value. [`Any`](/core/reference/data-types)
**Examples**
@@ -2547,7 +2547,7 @@ getSettingOrDefault(setting_name, default_value)
**Arguments**
-- `setting_name` — The setting name. [`String`](/reference/data-types/string)
+- `setting_name` — The setting name. [`String`](/core/reference/data-types/string)
- `default_value` — Value to return if custom_setting is not set. Value may be of any data type or Null.
**Returned value**
@@ -2574,7 +2574,7 @@ NULL
Introduced in: v1.1.0
-Returns the number of fields in the given [`Enum`](/reference/data-types/enum).
+Returns the number of fields in the given [`Enum`](/core/reference/data-types/enum).
**Syntax**
@@ -2584,11 +2584,11 @@ getSizeOfEnumType(x)
**Arguments**
-- `x` — Value of type `Enum`. [`Enum`](/reference/data-types/enum)
+- `x` — Value of type `Enum`. [`Enum`](/core/reference/data-types/enum)
**Returned value**
-Returns the number of fields with `Enum` input values. [`UInt8/16`](/reference/data-types/int-uint)
+Returns the number of fields with `Enum` input values. [`UInt8/16`](/core/reference/data-types/int-uint)
**Examples**
@@ -2652,11 +2652,11 @@ getTypeSerializationStreams(col)
**Arguments**
-- `col` — Column or string representation of a data-type from which the data type will be detected. [`Any`](/reference/data-types)
+- `col` — Column or string representation of a data-type from which the data type will be detected. [`Any`](/core/reference/data-types)
**Returned value**
-Returns an array with all the serialization sub-stream paths. [`Array(String)`](/reference/data-types/array)
+Returns an array with all the serialization sub-stream paths. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -2695,11 +2695,11 @@ globalVariable(name)
**Arguments**
-- `name` — Global variable name. [`String`](/reference/data-types/string)
+- `name` — Global variable name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the value of variable `name`. [`Any`](/reference/data-types)
+Returns the value of variable `name`. [`Any`](/core/reference/data-types)
**Examples**
@@ -2730,16 +2730,16 @@ hasColumnInTable([hostname[, username[, password]],]database, table, column)
**Arguments**
-- `database` — Name of the database. [`const String`](/reference/data-types/string)
-- `table` — Name of the table. [`const String`](/reference/data-types/string)
-- `column` — Name of the column. [`const String`](/reference/data-types/string)
-- `hostname` — Optional. Remote server name to perform the check on. [`const String`](/reference/data-types/string)
-- `username` — Optional. Username for remote server. [`const String`](/reference/data-types/string)
-- `password` — Optional. Password for remote server. [`const String`](/reference/data-types/string)
+- `database` — Name of the database. [`const String`](/core/reference/data-types/string)
+- `table` — Name of the table. [`const String`](/core/reference/data-types/string)
+- `column` — Name of the column. [`const String`](/core/reference/data-types/string)
+- `hostname` — Optional. Remote server name to perform the check on. [`const String`](/core/reference/data-types/string)
+- `username` — Optional. Username for remote server. [`const String`](/core/reference/data-types/string)
+- `password` — Optional. Password for remote server. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the given column exists, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the given column exists, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2783,7 +2783,7 @@ hasThreadFuzzer()
**Returned value**
-Returns whether Thread Fuzzer is effective. [`UInt8`](/reference/data-types/int-uint)
+Returns whether Thread Fuzzer is effective. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2821,7 +2821,7 @@ highlightQuery(query)
**Returned value**
-An array of named tuples `(begin UInt64, end UInt64, type Enum8(...))` representing highlighted ranges. [`Array(Tuple(begin UInt64, end UInt64, type Enum8(...)))`](/reference/data-types/array)
+An array of named tuples `(begin UInt64, end UInt64, type Enum8(...))` representing highlighted ranges. [`Array(Tuple(begin UInt64, end UInt64, type Enum8(...)))`](/core/reference/data-types/array)
**Examples**
@@ -2859,7 +2859,7 @@ hostName()
**Returned value**
-Returns the host name. [`String`](/reference/data-types/string)
+Returns the host name. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2889,12 +2889,12 @@ icebergBucket(N, value)
**Arguments**
-- `N` — The number of buckets, modulo. [`const (U)Int*`](/reference/data-types/int-uint)
-- `value` — The source value to transform. [`(U)Int*`](/reference/data-types/int-uint) or [`Bool`](/reference/data-types/boolean) or [`Decimal`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`UUID`](/reference/data-types/uuid) or [`Date`](/reference/data-types/date) or [`Time`](/reference/data-types/time) or [`DateTime`](/reference/data-types/datetime)
+- `N` — The number of buckets, modulo. [`const (U)Int*`](/core/reference/data-types/int-uint)
+- `value` — The source value to transform. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Bool`](/core/reference/data-types/boolean) or [`Decimal`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`UUID`](/core/reference/data-types/uuid) or [`Date`](/core/reference/data-types/date) or [`Time`](/core/reference/data-types/time) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns a 32-bit hash of the source value. [`Int32`](/reference/data-types/int-uint)
+Returns a 32-bit hash of the source value. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -2922,7 +2922,7 @@ icebergTruncate(N, value)
**Arguments**
-- `value` — The value to transform. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal`](/reference/data-types/decimal)
+- `value` — The value to transform. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
@@ -2954,11 +2954,11 @@ identity(x)
**Arguments**
-- `x` — Input value. [`Any`](/reference/data-types)
+- `x` — Input value. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the input value unchanged. [`Any`](/reference/data-types)
+Returns the input value unchanged. [`Any`](/core/reference/data-types)
**Examples**
@@ -2987,11 +2987,11 @@ ignore(x)
**Arguments**
-- `x` — An input value which is unused and passed only so as to avoid a syntax error. [`Any`](/reference/data-types)
+- `x` — An input value which is unused and passed only so as to avoid a syntax error. [`Any`](/core/reference/data-types)
**Returned value**
-Always returns `0`. [`UInt8`](/reference/data-types/int-uint)
+Always returns `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3061,11 +3061,11 @@ indexHint(expression)
**Arguments**
-- `expression` — Any expression for index range selection. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expression` — Any expression for index range selection. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns `1` in all cases. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` in all cases. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3089,9 +3089,9 @@ SELECT FlightDate AS k, count() FROM ontime WHERE indexHint(k = '2025-09-15') GR
Introduced in: v1.1.0
Returns the ID of the initial current query.
-Other parameters of a query can be extracted from field `initial_query_id` in [`system.query_log`](/reference/system-tables/query_log).
+Other parameters of a query can be extracted from field `initial_query_id` in [`system.query_log`](/core/reference/system-tables/query_log).
-In contrast to [`queryID`](/reference/functions/regular-functions/other-functions#queryID) function, `initialQueryID` returns the same results on different shards.
+In contrast to [`queryID`](/core/reference/functions/regular-functions/other-functions#queryID) function, `initialQueryID` returns the same results on different shards.
**Syntax**
@@ -3107,7 +3107,7 @@ initialQueryID()
**Returned value**
-Returns the ID of the initial current query. [`String`](/reference/data-types/string)
+Returns the ID of the initial current query. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3146,7 +3146,7 @@ initialQueryStartTime()
**Returned value**
-Returns the start time of the initial current query. [`DateTime`](/reference/data-types/datetime)
+Returns the start time of the initial current query. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -3169,8 +3169,8 @@ SELECT count(DISTINCT t) FROM (SELECT initialQueryStartTime() AS t FROM remote('
Introduced in: v20.6.0
Calculates the result of an aggregate function based on a single value.
-This function can be used to initialize aggregate functions with combinator [-State](/reference/functions/aggregate-functions/combinators#-state).
-You can create states of aggregate functions and insert them to columns of type [`AggregateFunction`](/reference/data-types/aggregatefunction) or use initialized aggregates as default values.
+This function can be used to initialize aggregate functions with combinator [-State](/core/reference/functions/aggregate-functions/combinators#-state).
+You can create states of aggregate functions and insert them to columns of type [`AggregateFunction`](/core/reference/data-types/aggregatefunction) or use initialized aggregates as default values.
**Syntax**
@@ -3181,12 +3181,12 @@ initializeAggregation(aggregate_function, arg1[, arg2, ...])
**Arguments**
-- `aggregate_function` — Name of the aggregation function to initialize. [`String`](/reference/data-types/string)
-- `arg1[, arg2, ...]` — Arguments of the aggregate function. [`Any`](/reference/data-types)
+- `aggregate_function` — Name of the aggregation function to initialize. [`String`](/core/reference/data-types/string)
+- `arg1[, arg2, ...]` — Arguments of the aggregate function. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the result of aggregation for every row passed to the function. The return type is the same as the return type of the function that `initializeAggregation` takes as a first argument. [`Any`](/reference/data-types)
+Returns the result of aggregation for every row passed to the function. The return type is the same as the return type of the function that `initializeAggregation` takes as a first argument. [`Any`](/core/reference/data-types)
**Examples**
@@ -3224,7 +3224,7 @@ Introduced in: v20.3.0
Returns whether the argument is a constant expression.
A constant expression is an expression whose result is known during query analysis, i.e. before execution.
-For example, expressions over [literals](/reference/syntax#literals) are constant expressions.
+For example, expressions over [literals](/core/reference/syntax#literals) are constant expressions.
This function is mostly intended for development, debugging and demonstration.
@@ -3236,11 +3236,11 @@ isConstant(x)
**Arguments**
-- `x` — An expression to check. [`Any`](/reference/data-types)
+- `x` — An expression to check. [`Any`](/core/reference/data-types)
**Returned value**
-Returns `1` if `x` is constant, `0` if `x` is non-constant. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `x` is constant, `0` if `x` is non-constant. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3310,12 +3310,12 @@ isDecimalOverflow(value[, precision])
**Arguments**
-- `value` — Decimal value to check. [`Decimal`](/reference/data-types/decimal)
-- `precision` — Optional. The precision of the Decimal type. If omitted, the initial precision of the first argument is used. [`UInt8`](/reference/data-types/int-uint)
+- `value` — Decimal value to check. [`Decimal`](/core/reference/data-types/decimal)
+- `precision` — Optional. The precision of the Decimal type. If omitted, the initial precision of the first argument is used. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `1` if the decimal value has more digits than allowed by its precision, `0` if the decimal value satisfies the specified precision. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the decimal value has more digits than allowed by its precision, `0` if the decimal value satisfies the specified precision. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3342,7 +3342,7 @@ Allows you to extract data from a table the same way as from a dictionary.
Gets data from Join tables using the specified join key.
-Only supports tables created with the `ENGINE = Join(ANY, LEFT, )` [statement](/reference/engines/table-engines/special/join).
+Only supports tables created with the `ENGINE = Join(ANY, LEFT, )` [statement](/core/reference/engines/table-engines/special/join).
**Syntax**
@@ -3353,13 +3353,13 @@ joinGet(join_storage_table_name, value_column, join_keys)
**Arguments**
-- `join_storage_table_name` — An identifier which indicates where to perform the search. The identifier is searched in the default database (see parameter `default_database` in the config file). To override the default database, use the `USE database_name` query or specify the database and the table through a dot, like `database_name.table_name`. [`String`](/reference/data-types/string)
-- `value_column` — The name of the column of the table that contains required data. [`const String`](/reference/data-types/string)
-- `join_keys` — A list of join keys. [`Any`](/reference/data-types)
+- `join_storage_table_name` — An identifier which indicates where to perform the search. The identifier is searched in the default database (see parameter `default_database` in the config file). To override the default database, use the `USE database_name` query or specify the database and the table through a dot, like `database_name.table_name`. [`String`](/core/reference/data-types/string)
+- `value_column` — The name of the column of the table that contains required data. [`const String`](/core/reference/data-types/string)
+- `join_keys` — A list of join keys. [`Any`](/core/reference/data-types)
**Returned value**
-Returns list of values corresponded to list of keys. [`Any`](/reference/data-types)
+Returns list of values corresponded to list of keys. [`Any`](/core/reference/data-types)
**Examples**
@@ -3415,7 +3415,7 @@ Gets data from Join tables using the specified join key.
Unlike [`joinGet`](#joinGet) it returns `NULL` when the key is missing.
-Only supports tables created with the `ENGINE = Join(ANY, LEFT, )` [statement](/reference/engines/table-engines/special/join).
+Only supports tables created with the `ENGINE = Join(ANY, LEFT, )` [statement](/core/reference/engines/table-engines/special/join).
**Syntax**
@@ -3426,13 +3426,13 @@ joinGetOrNull(join_storage_table_name, value_column, join_keys)
**Arguments**
-- `join_storage_table_name` — An identifier which indicates where to perform the search. The identifier is searched in the default database (see parameter default_database in the config file). To override the default database, use the `USE database_name` query or specify the database and the table through a dot, like `database_name.table_name`. [`String`](/reference/data-types/string)
-- `value_column` — The name of the column of the table that contains required data. [`const String`](/reference/data-types/string)
-- `join_keys` — A list of join keys. [`Any`](/reference/data-types)
+- `join_storage_table_name` — An identifier which indicates where to perform the search. The identifier is searched in the default database (see parameter default_database in the config file). To override the default database, use the `USE database_name` query or specify the database and the table through a dot, like `database_name.table_name`. [`String`](/core/reference/data-types/string)
+- `value_column` — The name of the column of the table that contains required data. [`const String`](/core/reference/data-types/string)
+- `join_keys` — A list of join keys. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a list of values corresponding to the list of keys, or `NULL` if a key is not found. [`Any`](/reference/data-types)
+Returns a list of values corresponding to the list of keys, or `NULL` if a key is not found. [`Any`](/core/reference/data-types)
**Examples**
@@ -3455,7 +3455,7 @@ SELECT joinGetOrNull(db_test.id_val, 'val', toUInt32(1)), joinGetOrNull(db_test.
Introduced in: v18.12.0
-Returns the position of a value in the dictionary of a [LowCardinality](/reference/data-types/lowcardinality) column. Positions start at 1. Since LowCardinality have per-part dictionaries, this function may return different positions for the same value in different parts.
+Returns the position of a value in the dictionary of a [LowCardinality](/core/reference/data-types/lowcardinality) column. Positions start at 1. Since LowCardinality have per-part dictionaries, this function may return different positions for the same value in different parts.
**Syntax**
@@ -3466,11 +3466,11 @@ lowCardinalityIndices(col)
**Arguments**
-- `col` — A low cardinality column. [`LowCardinality`](/reference/data-types/lowcardinality)
+- `col` — A low cardinality column. [`LowCardinality`](/core/reference/data-types/lowcardinality)
**Returned value**
-The position of the value in the dictionary of the current part. [`UInt64`](/reference/data-types/int-uint)
+The position of the value in the dictionary of the current part. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -3509,7 +3509,7 @@ SELECT s, lowCardinalityIndices(s) FROM test;
Introduced in: v18.12.0
-Returns the dictionary values of a [LowCardinality](/reference/data-types/lowcardinality) column.
+Returns the dictionary values of a [LowCardinality](/core/reference/data-types/lowcardinality) column.
If the block is smaller or larger than the dictionary size, the result will be truncated or extended with default values.
Since LowCardinality have per-part dictionaries, this function may return different dictionary values in different parts.
@@ -3522,11 +3522,11 @@ lowCardinalityKeys(col)
**Arguments**
-- `col` — A low cardinality column. [`LowCardinality`](/reference/data-types/lowcardinality)
+- `col` — A low cardinality column. [`LowCardinality`](/core/reference/data-types/lowcardinality)
**Returned value**
-Returns the dictionary keys. [`UInt64`](/reference/data-types/int-uint)
+Returns the dictionary keys. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -3578,11 +3578,11 @@ materialize(x)
**Arguments**
-- `x` — A constant. [`Any`](/reference/data-types)
+- `x` — A constant. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a full column containing the constant value. [`Any`](/reference/data-types)
+Returns a full column containing the constant value. [`Any`](/core/reference/data-types)
**Examples**
@@ -3623,15 +3623,15 @@ minSampleSizeContinuous(baseline, sigma, mde, power, alpha)
**Arguments**
-- `baseline` — Baseline value of a metric. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `sigma` — Baseline standard deviation of a metric. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `mde` — Minimum detectable effect (MDE) as percentage of the baseline value (e.g. for a baseline value 112.25 the MDE 0.03 means an expected change to 112.25 ± 112.25*0.03). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `power` — Required statistical power of a test (1 - probability of Type II error). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `alpha` — Required significance level of a test (probability of Type I error). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `baseline` — Baseline value of a metric. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `sigma` — Baseline standard deviation of a metric. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `mde` — Minimum detectable effect (MDE) as percentage of the baseline value (e.g. for a baseline value 112.25 the MDE 0.03 means an expected change to 112.25 ± 112.25*0.03). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `power` — Required statistical power of a test (1 - probability of Type II error). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `alpha` — Required significance level of a test (probability of Type I error). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns a named Tuple with 3 elements: `minimum_sample_size`, `detect_range_lower` and `detect_range_upper`. These are respectively: the required sample size, the lower bound of the range of values not detectable with the returned required sample size, calculated as `baseline * (1 - mde)`, and the upper bound of the range of values not detectable with the returned required sample size, calculated as `baseline * (1 + mde)` (Float64). [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a named Tuple with 3 elements: `minimum_sample_size`, `detect_range_lower` and `detect_range_upper`. These are respectively: the required sample size, the lower bound of the range of values not detectable with the returned required sample size, calculated as `baseline * (1 - mde)`, and the upper bound of the range of values not detectable with the returned required sample size, calculated as `baseline * (1 + mde)` (Float64). [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -3661,14 +3661,14 @@ minSampleSizeConversion(baseline, mde, power, alpha)
**Arguments**
-- `baseline` — Baseline conversion. [`Float*`](/reference/data-types/float)
-- `mde` — Minimum detectable effect (MDE) as percentage points (e.g. for a baseline conversion 0.25 the MDE 0.03 means an expected change to 0.25 ± 0.03). [`Float*`](/reference/data-types/float)
-- `power` — Required statistical power of a test (1 - probability of Type II error). [`Float*`](/reference/data-types/float)
-- `alpha` — Required significance level of a test (probability of Type I error). [`Float*`](/reference/data-types/float)
+- `baseline` — Baseline conversion. [`Float*`](/core/reference/data-types/float)
+- `mde` — Minimum detectable effect (MDE) as percentage points (e.g. for a baseline conversion 0.25 the MDE 0.03 means an expected change to 0.25 ± 0.03). [`Float*`](/core/reference/data-types/float)
+- `power` — Required statistical power of a test (1 - probability of Type II error). [`Float*`](/core/reference/data-types/float)
+- `alpha` — Required significance level of a test (probability of Type I error). [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns a named Tuple with 3 elements: `minimum_sample_size`, `detect_range_lower`, `detect_range_upper`. These are, respectively: the required sample size, the lower bound of the range of values not detectable with the returned required sample size, calculated as `baseline - mde`, the upper bound of the range of values not detectable with the returned required sample size, calculated as `baseline + mde`. [`Tuple(Float64, Float64, Float64)`](/reference/data-types/tuple)
+Returns a named Tuple with 3 elements: `minimum_sample_size`, `detect_range_lower`, `detect_range_upper`. These are, respectively: the required sample size, the lower bound of the range of values not detectable with the returned required sample size, calculated as `baseline - mde`, the upper bound of the range of values not detectable with the returned required sample size, calculated as `baseline + mde`. [`Tuple(Float64, Float64, Float64)`](/core/reference/data-types/tuple)
**Examples**
@@ -3700,13 +3700,13 @@ neighbor(column, offset[, default_value])
**Arguments**
-- `column` — The source column. [`Any`](/reference/data-types)
-- `offset` — The offset from the current row. Positive values look forward, negative values look backward. [`Integer`](/reference/data-types/int-uint)
-- `default_value` — Optional. The value to return if the offset goes beyond the data bounds. If not specified, uses the default value for the column type. [`Any`](/reference/data-types)
+- `column` — The source column. [`Any`](/core/reference/data-types)
+- `offset` — The offset from the current row. Positive values look forward, negative values look backward. [`Integer`](/core/reference/data-types/int-uint)
+- `default_value` — Optional. The value to return if the offset goes beyond the data bounds. If not specified, uses the default value for the column type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a value from the specified offset, or default if out of bounds. [`Any`](/reference/data-types)
+Returns a value from the specified offset, or default if out of bounds. [`Any`](/core/reference/data-types)
**Examples**
@@ -3767,11 +3767,11 @@ normalizeQuery(x)
**Arguments**
-- `x` — Sequence of characters. [`String`](/reference/data-types/string)
+- `x` — Sequence of characters. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the given sequence of characters with placeholders. [`String`](/reference/data-types/string)
+Returns the given sequence of characters with placeholders. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3803,11 +3803,11 @@ normalizeQueryKeepNames(x)
**Arguments**
-- `x` — Sequence of characters. [`String`](/reference/data-types/string)
+- `x` — Sequence of characters. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the given sequence of characters with placeholders. [`String`](/reference/data-types/string)
+Returns the given sequence of characters with placeholders. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3839,11 +3839,11 @@ normalizedQueryHash(x)
**Arguments**
-- `x` — Sequence of characters. [`String`](/reference/data-types/string)
+- `x` — Sequence of characters. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a 64 bit hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns a 64 bit hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -3875,11 +3875,11 @@ normalizedQueryHashKeepNames(x)
**Arguments**
-- `x` — Sequence of characters. [`String`](/reference/data-types/string)
+- `x` — Sequence of characters. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a 64 bit hash value. [`UInt64`](/reference/data-types/int-uint)
+Returns a 64 bit hash value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -3926,12 +3926,12 @@ obfuscateQuery(query[, tag])
**Arguments**
-- `query` — The SQL query to obfuscate. [`String`](/reference/data-types/string)
+- `query` — The SQL query to obfuscate. [`String`](/core/reference/data-types/string)
- `tag` — Optional. A value to prevent common subexpression elimination when the same function call is used multiple times.
**Returned value**
-The obfuscated query with identifiers and literals replaced while preserving the original query structure. [`String`](/reference/data-types/string)
+The obfuscated query with identifiers and literals replaced while preserving the original query structure. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3994,12 +3994,12 @@ obfuscateQueryWithSeed(query, seed)
**Arguments**
-- `query` — The SQL query to obfuscate. [`String`](/reference/data-types/string)
-- `seed` — The seed for obfuscation. The same seed produces deterministic results. [`Integer`](/reference/data-types/int-uint) or [`String`](/reference/data-types/string)
+- `query` — The SQL query to obfuscate. [`String`](/core/reference/data-types/string)
+- `seed` — The seed for obfuscation. The same seed produces deterministic results. [`Integer`](/core/reference/data-types/int-uint) or [`String`](/core/reference/data-types/string)
**Returned value**
-The obfuscated query, deterministically generated based on the provided seed. [`String`](/reference/data-types/string)
+The obfuscated query, deterministically generated based on the provided seed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -4050,11 +4050,11 @@ parseReadableSize(x)
**Arguments**
-- `x` — Readable size with ISO/IEC 80000-13 or decimal byte unit. [`String`](/reference/data-types/string)
+- `x` — Readable size with ISO/IEC 80000-13 or decimal byte unit. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of bytes, rounded up to the nearest integer. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of bytes, rounded up to the nearest integer. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -4090,11 +4090,11 @@ parseReadableSizeOrNull(x)
**Arguments**
-- `x` — Readable size with ISO/IEC 80000-13 or decimal byte unit. [`String`](/reference/data-types/string)
+- `x` — Readable size with ISO/IEC 80000-13 or decimal byte unit. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of bytes, rounded up to the nearest integer, or `NULL` if unable to parse the input [`Nullable(UInt64)`](/reference/data-types/nullable)
+Returns the number of bytes, rounded up to the nearest integer, or `NULL` if unable to parse the input [`Nullable(UInt64)`](/core/reference/data-types/nullable)
**Examples**
@@ -4131,11 +4131,11 @@ parseReadableSizeOrZero(x)
**Arguments**
-- `x` — Readable size with ISO/IEC 80000-13 or decimal byte unit. [`String`](/reference/data-types/string)
+- `x` — Readable size with ISO/IEC 80000-13 or decimal byte unit. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of bytes, rounded up to the nearest integer, or `0` if unable to parse the input. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of bytes, rounded up to the nearest integer, or `0` if unable to parse the input. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -4186,11 +4186,11 @@ parseTimeDelta(timestr)
**Arguments**
-- `timestr` — A sequence of numbers followed by something resembling a time unit. [`String`](/reference/data-types/string)
+- `timestr` — A sequence of numbers followed by something resembling a time unit. [`String`](/core/reference/data-types/string)
**Returned value**
-The number of seconds. [`Float64`](/reference/data-types/float)
+The number of seconds. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -4222,7 +4222,7 @@ SELECT parseTimeDelta('1yr2mo')
Introduced in: v21.4.0
-Computes the [partition ID](/reference/engines/table-engines/mergetree-family/custom-partitioning-key).
+Computes the [partition ID](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key).
This function is slow and should not be called for large numbers of rows.
@@ -4242,7 +4242,7 @@ partitionId(column1[, column2, ...])
**Returned value**
-Returns the partition ID that the row belongs to. [`String`](/reference/data-types/string)
+Returns the partition ID that the row belongs to. [`String`](/core/reference/data-types/string)
**Examples**
@@ -4281,7 +4281,7 @@ SELECT i, j, partitionId(i), _partition_id FROM tab ORDER BY i, j;
Introduced in: v21.9.0
Returns the ID of the current query.
-Other parameters of a query can be extracted from field `query_id` in the [`system.query_log`](/reference/system-tables/query_log) table.
+Other parameters of a query can be extracted from field `query_id` in the [`system.query_log`](/core/reference/system-tables/query_log) table.
In contrast to [`initialQueryID`](#initialQueryID) function, `queryID` can return different results on different shards.
@@ -4299,7 +4299,7 @@ queryID()
**Returned value**
-Returns the ID of the current query. [`String`](/reference/data-types/string)
+Returns the ID of the current query. [`String`](/core/reference/data-types/string)
**Examples**
@@ -4336,7 +4336,7 @@ revision()
**Returned value**
-Returns the current ClickHouse server revision. [`UInt32`](/reference/data-types/int-uint)
+Returns the current ClickHouse server revision. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4371,7 +4371,7 @@ rowNumberInAllBlocks()
**Returned value**
-Returns the ordinal number of the row in the data block starting from `0`. [`UInt64`](/reference/data-types/int-uint)
+Returns the ordinal number of the row in the data block starting from `0`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -4415,7 +4415,7 @@ SETTINGS max_block_size = 2
Introduced in: v1.1.0
-For each [block](/resources/contribute/architecture#block) processed by `rowNumberInBlock`, returns the number of the current row.
+For each [block](/resources/develop-contribute/introduction/architecture#block) processed by `rowNumberInBlock`, returns the number of the current row.
The returned number starts from 0 for each block.
@@ -4432,7 +4432,7 @@ rowNumberInBlock()
**Returned value**
-Returns the ordinal number of the row in the data block starting from `0`. [`UInt64`](/reference/data-types/int-uint)
+Returns the ordinal number of the row in the data block starting from `0`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -4481,8 +4481,8 @@ Accumulates the states of an aggregate function for each row of a data block.
**Deprecated**
The state is reset for each new block of data.
-Due to this error-prone behavior the function has been deprecated, and you are advised to use [window functions](/reference/functions/window-functions) instead.
-You can use setting [`allow_deprecated_error_prone_window_functions`](/reference/settings/session-settings#allow_deprecated_error_prone_window_functions) to allow usage of this function.
+Due to this error-prone behavior the function has been deprecated, and you are advised to use [window functions](/core/reference/functions/window-functions) instead.
+You can use setting [`allow_deprecated_error_prone_window_functions`](/core/reference/settings/session-settings#allow_deprecated_error_prone_window_functions) to allow usage of this function.
**Syntax**
@@ -4493,12 +4493,12 @@ runningAccumulate(agg_state[, grouping])
**Arguments**
-- `agg_state` — State of the aggregate function. [`AggregateFunction`](/reference/data-types/aggregatefunction)
-- `grouping` — Optional. Grouping key. The state of the function is reset if the `grouping` value is changed. It can be any of the supported data types for which the equality operator is defined. [`Any`](/reference/data-types)
+- `agg_state` — State of the aggregate function. [`AggregateFunction`](/core/reference/data-types/aggregatefunction)
+- `grouping` — Optional. Grouping key. The state of the function is reset if the `grouping` value is changed. It can be any of the supported data types for which the equality operator is defined. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the accumulated result for each row. [`Any`](/reference/data-types)
+Returns the accumulated result for each row. [`Any`](/core/reference/data-types)
**Examples**
@@ -4545,7 +4545,7 @@ If events from different data blocks overlap then they can not be processed corr
**Deprecated**
-It is advised to use [window functions](/reference/functions/window-functions) instead.
+It is advised to use [window functions](/core/reference/functions/window-functions) instead.
**Syntax**
@@ -4556,12 +4556,12 @@ runningConcurrency(start, end)
**Arguments**
-- `start` — A column with the start time of events. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `end` — A column with the end time of events. [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
+- `start` — A column with the start time of events. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `end` — A column with the end time of events. [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the number of concurrent events at each event start time. [`UInt32`](/reference/data-types/int-uint)
+Returns the number of concurrent events at each event start time. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4592,14 +4592,14 @@ Returns `0` for the first row, and for subsequent rows the difference to the pre
Only returns differences inside the currently processed data block.
Because of this error-prone behavior, the function is deprecated.
-It is advised to use [window functions](/reference/functions/window-functions) instead.
+It is advised to use [window functions](/core/reference/functions/window-functions) instead.
-You can use setting [`allow_deprecated_error_prone_window_functions`](/reference/settings/session-settings#allow_deprecated_error_prone_window_functions) to allow usage of this function.
+You can use setting [`allow_deprecated_error_prone_window_functions`](/core/reference/settings/session-settings#allow_deprecated_error_prone_window_functions) to allow usage of this function.
The result of the function depends on the affected data blocks and the order of data in the block.
The order of rows during calculation of `runningDifference()` can differ from the order of rows returned to the user.
-To prevent that you can create a subquery with [`ORDER BY`](/reference/statements/select/order-by) and call the function from outside the subquery.
+To prevent that you can create a subquery with [`ORDER BY`](/core/reference/statements/select/order-by) and call the function from outside the subquery.
Please note that the block size affects the result.
The internal state of `runningDifference` state is reset for each new block.
@@ -4611,7 +4611,7 @@ runningDifference(x)
**Arguments**
-- `x` — Column for which to calculate the running difference. [`Any`](/reference/data-types)
+- `x` — Column for which to calculate the running difference. [`Any`](/core/reference/data-types)
**Returned value**
@@ -4678,7 +4678,7 @@ Calculates the difference between consecutive row values in a data block, but un
Only returns differences inside the currently processed data block.
Because of this error-prone behavior, the function is deprecated.
-It is advised to use [window functions](/reference/functions/window-functions) instead.
+It is advised to use [window functions](/core/reference/functions/window-functions) instead.
You can use setting `allow_deprecated_error_prone_window_functions` to allow usage of this function.
@@ -4691,11 +4691,11 @@ runningDifferenceStartingWithFirstValue(x)
**Arguments**
-- `x` — Column for which to calculate the running difference. [`Any`](/reference/data-types)
+- `x` — Column for which to calculate the running difference. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the difference between consecutive values, with the first row's value for the first row. [`Any`](/reference/data-types)
+Returns the difference between consecutive values, with the first row's value for the first row. [`Any`](/core/reference/data-types)
**Examples**
@@ -4738,7 +4738,7 @@ serverUUID()
**Returned value**
-Returns the random UUID of the server. [`UUID`](/reference/data-types/uuid)
+Returns the random UUID of the server. [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -4773,7 +4773,7 @@ shardCount()
**Returned value**
-Returns the total number of shards or `0`. [`UInt32`](/reference/data-types/int-uint)
+Returns the total number of shards or `0`. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4813,7 +4813,7 @@ shardNum()
**Returned value**
-Returns the shard index or a constant `0`. [`UInt32`](/reference/data-types/int-uint)
+Returns the shard index or a constant `0`. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -4837,7 +4837,7 @@ SELECT dummy, shardNum(), shardCount() FROM shard_num_example;
Introduced in: v22.6.0
Shows information about the current server's Secure Sockets Layer (SSL) certificate if it has been configured.
-See [Configuring TLS](/concepts/features/security/tls/configuring-tls) for more information on how to configure ClickHouse to use OpenSSL certificates to validate connections.
+See [Configuring TLS](/core/concepts/features/security/tls/configuring-tls) for more information on how to configure ClickHouse to use OpenSSL certificates to validate connections.
**Syntax**
@@ -4852,7 +4852,7 @@ showCertificate()
**Returned value**
-Returns map of key-value pairs relating to the configured SSL certificate. [`Map(String, String)`](/reference/data-types/map)
+Returns map of key-value pairs relating to the configured SSL certificate. [`Map(String, String)`](/core/reference/data-types/map)
**Examples**
@@ -4894,11 +4894,11 @@ sleep(seconds)
**Arguments**
-- `seconds` — The number of seconds to pause the query execution to a maximum of 3 seconds. It can be a floating-point value to specify fractional seconds. [`const UInt*`](/reference/data-types/int-uint) or [`const Float*`](/reference/data-types/float)
+- `seconds` — The number of seconds to pause the query execution to a maximum of 3 seconds. It can be a floating-point value to specify fractional seconds. [`const UInt*`](/core/reference/data-types/int-uint) or [`const Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -4942,11 +4942,11 @@ sleepEachRow(seconds)
**Arguments**
-- `seconds` — The number of seconds to pause the query execution for each row in the result set to a maximum of 3 seconds. It can be a floating-point value to specify fractional seconds. [`const UInt*`](/reference/data-types/int-uint) or [`const Float*`](/reference/data-types/float)
+- `seconds` — The number of seconds to pause the query execution for each row in the result set to a maximum of 3 seconds. It can be a floating-point value to specify fractional seconds. [`const UInt*`](/core/reference/data-types/int-uint) or [`const Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `0` for each row. [`UInt8`](/reference/data-types/int-uint)
+Returns `0` for each row. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -5020,12 +5020,12 @@ structureToProtobufSchema(structure, message_name)
**Arguments**
-- `structure` — ClickHouse table structure definition as a string (e.g., 'column1 Type1, column2 Type2'). [`String`](/reference/data-types/string)
-- `message_name` — Name for the Protobuf message type in the generated schema. [`String`](/reference/data-types/string)
+- `structure` — ClickHouse table structure definition as a string (e.g., 'column1 Type1, column2 Type2'). [`String`](/core/reference/data-types/string)
+- `message_name` — Name for the Protobuf message type in the generated schema. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Protobuf schema definition in proto3 syntax that corresponds to the input ClickHouse structure. [`String`](/reference/data-types/string)
+Returns a Protobuf schema definition in proto3 syntax that corresponds to the input ClickHouse structure. [`String`](/core/reference/data-types/string)
**Examples**
@@ -5049,7 +5049,7 @@ message MessageName
Introduced in: v20.12.0
-Returns the [native interface](/integrations/connectors/data-integrations/drivers-and-interfaces/tcp) TCP port number listened to by the server.
+Returns the [native interface](/core/concepts/features/interfaces/tcp) TCP port number listened to by the server.
If executed in the context of a distributed table, this function generates a normal column with values relevant to each shard.
Otherwise it produces a constant value.
@@ -5066,7 +5066,7 @@ tcpPort()
**Returned value**
-Returns the TCP port number. [`UInt16`](/reference/data-types/int-uint)
+Returns the TCP port number. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -5097,13 +5097,13 @@ throwIf(x[, message[, error_code]])
**Arguments**
-- `x` — The condition to check. [`Any`](/reference/data-types)
-- `message` — Optional. Custom error message. [`const String`](/reference/data-types/string)
-- `error_code` — Optional. Custom error code. [`const Int8/16/32`](/reference/data-types/int-uint)
+- `x` — The condition to check. [`Any`](/core/reference/data-types)
+- `message` — Optional. Custom error message. [`const String`](/core/reference/data-types/string)
+- `error_code` — Optional. Custom error code. [`const Int8/16/32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `0` if the condition is false, throws an exception if the condition is true. [`UInt8`](/reference/data-types/int-uint)
+Returns `0` if the condition is false, throws an exception if the condition is true. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -5133,11 +5133,11 @@ toColumnTypeName(value)
**Arguments**
-- `value` — Value for which to return the internal data type. [`Any`](/reference/data-types)
+- `value` — Value for which to return the internal data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the internal data type used to represent the value. [`String`](/reference/data-types/string)
+Returns the internal data type used to represent the value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -5169,11 +5169,11 @@ toTypeName(x)
**Arguments**
-- `x` — A value of arbitrary type. [`Any`](/reference/data-types)
+- `x` — A value of arbitrary type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the data type name of the input value. [`String`](/reference/data-types/string)
+Returns the data type name of the input value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -5208,7 +5208,7 @@ tokenizeQuery(query)
**Returned value**
-An array of named tuples `(begin UInt64, end UInt64, type Enum8(...))` representing the tokens of the query. [`Array(Tuple(begin UInt64, end UInt64, type Enum8(...)))`](/reference/data-types/array)
+An array of named tuples `(begin UInt64, end UInt64, type Enum8(...))` representing the tokens of the query. [`Array(Tuple(begin UInt64, end UInt64, type Enum8(...)))`](/core/reference/data-types/array)
**Examples**
@@ -5233,7 +5233,7 @@ Returns the ID of a transaction.
This function is part of an experimental feature set.
-Enable experimental transaction support by adding this setting to your [configuration](/concepts/features/configuration/server-config/configuration-files):
+Enable experimental transaction support by adding this setting to your [configuration](/core/concepts/features/configuration/server-config/configuration-files):
```xml
@@ -5241,7 +5241,7 @@ Enable experimental transaction support by adding this setting to your [configur
```
-For more information see the page [Transactional (ACID) support](/concepts/operations/insert/transactions#transactions-commit-and-rollback).
+For more information see the page [Transactional (ACID) support](/core/concepts/features/operations/insert/transactions#transactions-commit-and-rollback).
@@ -5261,7 +5261,7 @@ Returns a tuple consisting of `start_csn`, `local_tid` and `host_id`.
- `start_csn`: Global sequential number, the newest commit timestamp that was seen when this transaction began.
- `local_tid`: Local sequential number that is unique for each transaction started by this host within a specific start_csn.
- `host_id`: UUID of the host that has started this transaction.
- [`Tuple(UInt64, UInt64, UUID)`](/reference/data-types/tuple)
+ [`Tuple(UInt64, UInt64, UUID)`](/core/reference/data-types/tuple)
**Examples**
@@ -5286,7 +5286,7 @@ Introduced in: v22.6.0
-Returns the newest snapshot (Commit Sequence Number) of a [transaction](/concepts/operations/insert/transactions#transactions-commit-and-rollback) that is available for reading.
+Returns the newest snapshot (Commit Sequence Number) of a [transaction](/core/concepts/features/operations/insert/transactions#transactions-commit-and-rollback) that is available for reading.
This function is part of an experimental feature set. Enable experimental transaction support by adding this setting to your configuration:
@@ -5297,7 +5297,7 @@ This function is part of an experimental feature set. Enable experimental transa
```
-For more information see the page [Transactional (ACID) support](/concepts/operations/insert/transactions#transactions-commit-and-rollback).
+For more information see the page [Transactional (ACID) support](/core/concepts/features/operations/insert/transactions#transactions-commit-and-rollback).
@@ -5313,7 +5313,7 @@ transactionLatestSnapshot()
**Returned value**
-Returns the latest snapshot (CSN) of a transaction. [`UInt64`](/reference/data-types/int-uint)
+Returns the latest snapshot (CSN) of a transaction. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5338,7 +5338,7 @@ Introduced in: v22.6.0
-Returns the oldest snapshot (Commit Sequence Number) that is visible for some running [transaction](/concepts/operations/insert/transactions#transactions-commit-and-rollback).
+Returns the oldest snapshot (Commit Sequence Number) that is visible for some running [transaction](/core/concepts/features/operations/insert/transactions#transactions-commit-and-rollback).
This function is part of an experimental feature set. Enable experimental transaction support by adding this setting to your configuration:
@@ -5349,7 +5349,7 @@ This function is part of an experimental feature set. Enable experimental transa
```
-For more information see the page [Transactional (ACID) support](/concepts/operations/insert/transactions#transactions-commit-and-rollback).
+For more information see the page [Transactional (ACID) support](/core/concepts/features/operations/insert/transactions#transactions-commit-and-rollback).
**Syntax**
@@ -5364,7 +5364,7 @@ transactionOldestSnapshot()
**Returned value**
-Returns the oldest snapshot (CSN) of a transaction. [`UInt64`](/reference/data-types/int-uint)
+Returns the oldest snapshot (CSN) of a transaction. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5409,14 +5409,14 @@ transform(x, array_from, array_to[, default])
**Arguments**
-- `x` — Value to transform. [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `array_from` — Constant array of values to search for matches. [`Array((U)Int*)`](/reference/data-types/array) or [`Array(Decimal)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array) or [`Array(String)`](/reference/data-types/array) or [`Array(Date)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
-- `array_to` — Constant array of values to return for corresponding matches in `array_from`. [`Array((U)Int*)`](/reference/data-types/array) or [`Array(Decimal)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array) or [`Array(String)`](/reference/data-types/array) or [`Array(Date)`](/reference/data-types/array) or [`Array(DateTime)`](/reference/data-types/array)
-- `default` — Optional. Value to return if `x` is not found in `array_from`. If omitted, returns x unchanged. [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `x` — Value to transform. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `array_from` — Constant array of values to search for matches. [`Array((U)Int*)`](/core/reference/data-types/array) or [`Array(Decimal)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array) or [`Array(String)`](/core/reference/data-types/array) or [`Array(Date)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
+- `array_to` — Constant array of values to return for corresponding matches in `array_from`. [`Array((U)Int*)`](/core/reference/data-types/array) or [`Array(Decimal)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array) or [`Array(String)`](/core/reference/data-types/array) or [`Array(Date)`](/core/reference/data-types/array) or [`Array(DateTime)`](/core/reference/data-types/array)
+- `default` — Optional. Value to return if `x` is not found in `array_from`. If omitted, returns x unchanged. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the corresponding value from `array_to` if x matches an element in `array_from`, otherwise returns default (if provided) or x (if default not provided). [`Any`](/reference/data-types)
+Returns the corresponding value from `array_to` if x matches an element in `array_from`, otherwise returns default (if provided) or x (if default not provided). [`Any`](/core/reference/data-types)
**Examples**
@@ -5480,11 +5480,11 @@ uniqThetaIntersect(uniqThetaSketch,uniqThetaSketch)
**Arguments**
-- `uniqThetaSketch` — uniqThetaSketch object. [`Tuple`](/reference/data-types/tuple) or [`Array`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `uniqThetaSketch` — uniqThetaSketch object. [`Tuple`](/core/reference/data-types/tuple) or [`Array`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-A new uniqThetaSketch containing the intersect result. [`UInt64`](/reference/data-types/int-uint)
+A new uniqThetaSketch containing the intersect result. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5517,11 +5517,11 @@ uniqThetaNot(uniqThetaSketch,uniqThetaSketch)
**Arguments**
-- `uniqThetaSketch` — uniqThetaSketch object. [`Tuple`](/reference/data-types/tuple) or [`Array`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `uniqThetaSketch` — uniqThetaSketch object. [`Tuple`](/core/reference/data-types/tuple) or [`Array`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a new uniqThetaSketch containing the a_not_b result. [`UInt64`](/reference/data-types/int-uint)
+Returns a new uniqThetaSketch containing the a_not_b result. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5554,11 +5554,11 @@ uniqThetaUnion(uniqThetaSketch,uniqThetaSketch)
**Arguments**
-- `uniqThetaSketch` — uniqThetaSketch object. [`Tuple`](/reference/data-types/tuple) or [`Array`](/reference/data-types/array) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `uniqThetaSketch` — uniqThetaSketch object. [`Tuple`](/core/reference/data-types/tuple) or [`Array`](/core/reference/data-types/array) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a new uniqThetaSketch containing the union result. [`UInt64`](/reference/data-types/int-uint)
+Returns a new uniqThetaSketch containing the union result. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5597,7 +5597,7 @@ uptime()
**Returned value**
-Returns the server uptime in seconds. [`UInt32`](/reference/data-types/int-uint)
+Returns the server uptime in seconds. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5627,13 +5627,13 @@ variantElement(variant, type_name[, default_value])
**Arguments**
-- `variant` — Variant column. [`Variant`](/reference/data-types/variant)
-- `type_name` — The name of the variant type to extract. [`String`](/reference/data-types/string)
-- `default_value` — The default value that will be used if variant doesn't have variant with specified type. Can be any type. Optional. [`Any`](/reference/data-types)
+- `variant` — Variant column. [`Variant`](/core/reference/data-types/variant)
+- `type_name` — The name of the variant type to extract. [`String`](/core/reference/data-types/string)
+- `default_value` — The default value that will be used if variant doesn't have variant with specified type. Can be any type. Optional. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a column with the specified variant type extracted from the Variant column. [`Any`](/reference/data-types)
+Returns a column with the specified variant type extracted from the Variant column. [`Any`](/core/reference/data-types)
**Examples**
@@ -5668,11 +5668,11 @@ variantType(variant)
**Arguments**
-- `variant` — Variant column. [`Variant`](/reference/data-types/variant)
+- `variant` — Variant column. [`Variant`](/core/reference/data-types/variant)
**Returned value**
-Returns an Enum column with variant type name for each row. [`Enum`](/reference/data-types/enum)
+Returns an Enum column with variant type name for each row. [`Enum`](/core/reference/data-types/enum)
**Examples**
@@ -5714,7 +5714,7 @@ version()
**Returned value**
-Returns the current version of ClickHouse. [`String`](/reference/data-types/string)
+Returns the current version of ClickHouse. [`String`](/core/reference/data-types/string)
**Examples**
@@ -5747,11 +5747,11 @@ visibleWidth(x)
**Arguments**
-- `x` — A value of any data type. [`Any`](/reference/data-types)
+- `x` — A value of any data type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the approximate width of the value when displayed in text format. [`UInt64`](/reference/data-types/int-uint)
+Returns the approximate width of the value when displayed in text format. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5785,7 +5785,7 @@ zookeeperSessionUptime()
**Returned value**
-Returns the uptime of the current ZooKeeper session in seconds. [`UInt32`](/reference/data-types/int-uint)
+Returns the uptime of the current ZooKeeper session in seconds. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/overview.mdx b/core/reference/functions/regular-functions/overview.mdx
similarity index 95%
rename from reference/functions/regular-functions/overview.mdx
rename to core/reference/functions/regular-functions/overview.mdx
index c9ebfa88..199385b2 100644
--- a/reference/functions/regular-functions/overview.mdx
+++ b/core/reference/functions/regular-functions/overview.mdx
@@ -11,7 +11,7 @@ There are at least\* two types of functions - regular functions (they are just c
In this section we discuss regular functions. For aggregate functions, see the section "Aggregate functions".
-There is a third type of function that the ['arrayJoin' function](/reference/functions/regular-functions/array-join) belongs to. And [table functions](/reference/functions/table-functions) can also be mentioned separately.
+There is a third type of function that the ['arrayJoin' function](/core/reference/functions/regular-functions/array-join) belongs to. And [table functions](/core/reference/functions/table-functions) can also be mentioned separately.
## Strong Typing {#strong-typing}
@@ -93,4 +93,4 @@ Variadic inner functions also do not auto-unpack tuple inputs. For example, `arr
## User Defined Functions (UDFs) {#user-defined-functions-udfs}
-ClickHouse supports user-defined functions. See [UDFs](/reference/functions/regular-functions/udf).
+ClickHouse supports user-defined functions. See [UDFs](/core/reference/functions/regular-functions/udf).
diff --git a/reference/functions/regular-functions/random-functions.mdx b/core/reference/functions/regular-functions/random-functions.mdx
similarity index 71%
rename from reference/functions/regular-functions/random-functions.mdx
rename to core/reference/functions/regular-functions/random-functions.mdx
index f89854f1..805c057a 100644
--- a/reference/functions/regular-functions/random-functions.mdx
+++ b/core/reference/functions/regular-functions/random-functions.mdx
@@ -7,12 +7,12 @@ doc_type: 'reference'
---
All functions in this section accept zero or one arguments. The only use of the argument (if provided) is to prevent [common subexpression
-elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) such that two different executions within a row of the same random
+elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) such that two different executions within a row of the same random
function return different random values.
Related content
-- Guide: [Generating random data in ClickHouse](/get-started/oss/starter-guides/generating-test-data)
+- Guide: [Generating random data in ClickHouse](/core/guides/clickhouse/data-modelling/generating-test-data)
- Blog: [Generating random data in ClickHouse](https://clickhouse.com/blog/generating-random-test-distribution-data-for-clickhouse)
@@ -45,12 +45,12 @@ fuzzBits(s, p)
**Arguments**
-- `s` — String or FixedString to perform bit fuzzing on [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `p` — Probability of flipping each bit as a number between `0.0` and `1.0` [`Float*`](/reference/data-types/float)
+- `s` — String or FixedString to perform bit fuzzing on [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `p` — Probability of flipping each bit as a number between `0.0` and `1.0` [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns a Fuzzed string with same type as `s`. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+Returns a Fuzzed string with same type as `s`. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Examples**
@@ -89,11 +89,11 @@ rand([x])
**Arguments**
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random number of type `UInt32`. [`UInt32`](/reference/data-types/int-uint)
+Returns a random number of type `UInt32`. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -125,11 +125,11 @@ rand64([x])
**Arguments**
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random UInt64 number with uniform distribution. [`UInt64`](/reference/data-types/int-uint)
+Returns a random UInt64 number with uniform distribution. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -158,12 +158,12 @@ randBernoulli(probability[, x])
**Arguments**
-- `probability` — The probability of success as a value between `0` and `1`. [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `probability` — The probability of success as a value between `0` and `1`. [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified Bernoulli distribution. [`UInt64`](/reference/data-types/int-uint)
+Returns a random Float64 number drawn from the specified Bernoulli distribution. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -198,13 +198,13 @@ randBinomial(experiments, probability[, x])
**Arguments**
-- `experiments` — The number of experiments [`UInt64`](/reference/data-types/int-uint)
-- `probability` — The probability of success in each experiment as a value between `0` and `1` [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `experiments` — The number of experiments [`UInt64`](/core/reference/data-types/int-uint)
+- `probability` — The probability of success in each experiment as a value between `0` and `1` [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified binomial distribution. [`UInt64`](/reference/data-types/int-uint)
+Returns a random Float64 number drawn from the specified binomial distribution. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -239,11 +239,11 @@ randCanonical([x])
**Arguments**
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number. [`Float64`](/reference/data-types/float)
+Returns a random Float64 number. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -272,12 +272,12 @@ randChiSquared(degree_of_freedom[, x])
**Arguments**
-- `degree_of_freedom` — Degrees of freedom. [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `degree_of_freedom` — Degrees of freedom. [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified chi-square distribution. [`Float64`](/reference/data-types/float)
+Returns a random Float64 number drawn from the specified chi-square distribution. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -318,11 +318,11 @@ randConstant([x])
**Arguments**
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a column of type `UInt32` containing the same random value in each row. [`UInt32`](/reference/data-types/int-uint)
+Returns a column of type `UInt32` containing the same random value in each row. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -365,12 +365,12 @@ randExponential(lambda[, x])
**Arguments**
-- `lambda` — Rate parameter or lambda value of the distribution [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `lambda` — Rate parameter or lambda value of the distribution [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified exponential distribution. [`Float64`](/reference/data-types/float)
+Returns a random Float64 number drawn from the specified exponential distribution. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -405,13 +405,13 @@ randFisherF(d1, d2[, x])
**Arguments**
-- `d1` — d1 degree of freedom in `X = (S1 / d1) / (S2 / d2)`. [`Float64`](/reference/data-types/float)
-- `d2` — d2 degree of freedom in `X = (S1 / d1) / (S2 / d2)`. [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `d1` — d1 degree of freedom in `X = (S1 / d1) / (S2 / d2)`. [`Float64`](/core/reference/data-types/float)
+- `d2` — d2 degree of freedom in `X = (S1 / d1) / (S2 / d2)`. [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified F-distribution [`Float64`](/reference/data-types/float)
+Returns a random Float64 number drawn from the specified F-distribution [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -446,13 +446,13 @@ randLogNormal(mean, stddev[, x])
**Arguments**
-- `mean` — The mean value of distribution. [`Float64`](/reference/data-types/float)
-- `stddev` — The standard deviation of the distribution. [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `mean` — The mean value of distribution. [`Float64`](/core/reference/data-types/float)
+- `stddev` — The standard deviation of the distribution. [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified log-normal distribution. [`Float64`](/reference/data-types/float)
+Returns a random Float64 number drawn from the specified log-normal distribution. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -487,13 +487,13 @@ randNegativeBinomial(experiments, probability[, x])
**Arguments**
-- `experiments` — The number of experiments. [`UInt64`](/reference/data-types/int-uint)
-- `probability` — `The probability of failure in each experiment as a value between `0` and `1`. [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `experiments` — The number of experiments. [`UInt64`](/core/reference/data-types/int-uint)
+- `probability` — `The probability of failure in each experiment as a value between `0` and `1`. [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified negative binomial distribution [`UInt64`](/reference/data-types/int-uint)
+Returns a random Float64 number drawn from the specified negative binomial distribution [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -528,13 +528,13 @@ randNormal(mean, stddev[, x])
**Arguments**
-- `mean` — The mean value of distribution [`Float64`](/reference/data-types/float)
-- `stddev` — The standard deviation of the distribution [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `mean` — The mean value of distribution [`Float64`](/core/reference/data-types/float)
+- `stddev` — The standard deviation of the distribution [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified normal distribution. [`Float64`](/reference/data-types/float)
+Returns a random Float64 number drawn from the specified normal distribution. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -569,12 +569,12 @@ randPoisson(n[, x])
**Arguments**
-- `n` — The mean number of occurrences. [`UInt64`](/reference/data-types/int-uint)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `n` — The mean number of occurrences. [`UInt64`](/core/reference/data-types/int-uint)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified Poisson distribution. [`UInt64`](/reference/data-types/int-uint)
+Returns a random Float64 number drawn from the specified Poisson distribution. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -609,12 +609,12 @@ randStudentT(degree_of_freedom[, x])
**Arguments**
-- `degree_of_freedom` — Degrees of freedom. [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `degree_of_freedom` — Degrees of freedom. [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random Float64 number drawn from the specified Student's t-distribution. [`Float64`](/reference/data-types/float)
+Returns a random Float64 number drawn from the specified Student's t-distribution. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -649,13 +649,13 @@ randUniform(min, max[, x])
**Arguments**
-- `min` — Left boundary of the range (inclusive). [`Float64`](/reference/data-types/float)
-- `max` — Right boundary of the range (inclusive). [`Float64`](/reference/data-types/float)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `min` — Left boundary of the range (inclusive). [`Float64`](/core/reference/data-types/float)
+- `max` — Right boundary of the range (inclusive). [`Float64`](/core/reference/data-types/float)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a random number drawn uniformly from the interval formed by `min` and `max`. [`Float64`](/reference/data-types/float)
+Returns a random number drawn uniformly from the interval formed by `min` and `max`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -691,11 +691,11 @@ randomFixedString(length)
**Arguments**
-- `length` — Length of the string in bytes. [`UInt*`](/reference/data-types/int-uint)
+- `length` — Length of the string in bytes. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string filled with random bytes. [`FixedString`](/reference/data-types/fixedstring)
+Returns a string filled with random bytes. [`FixedString`](/core/reference/data-types/fixedstring)
**Examples**
@@ -728,12 +728,12 @@ randomPrintableASCII(length[, x])
**Arguments**
-- `length` — String length in bytes. [`(U)Int*`](/reference/data-types/int-uint)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `length` — String length in bytes. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a string with a random set of ASCII printable characters. [`String`](/reference/data-types/string)
+Returns a string with a random set of ASCII printable characters. [`String`](/core/reference/data-types/string)
**Examples**
@@ -767,12 +767,12 @@ randomString(length[, x])
**Arguments**
-- `length` — Length of the string in bytes. [`(U)Int*`](/reference/data-types/int-uint)
-- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/reference/data-types)
+- `length` — Length of the string in bytes. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `x` — Optional and ignored. The only purpose of the argument is to prevent [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) when the same function call is used multiple times in a query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a string filled with random bytes. [`String`](/reference/data-types/string)
+Returns a string filled with random bytes. [`String`](/core/reference/data-types/string)
**Examples**
@@ -804,11 +804,11 @@ randomStringUTF8(length)
**Arguments**
-- `length` — Length of the string in code points. [`(U)Int*`](/reference/data-types/int-uint)
+- `length` — Length of the string in code points. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string filled with random UTF-8 codepoints. [`String`](/reference/data-types/string)
+Returns a string filled with random UTF-8 codepoints. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/core/reference/functions/regular-functions/regular-functions-index.mdx b/core/reference/functions/regular-functions/regular-functions-index.mdx
new file mode 100644
index 00000000..79b7e428
--- /dev/null
+++ b/core/reference/functions/regular-functions/regular-functions-index.mdx
@@ -0,0 +1,52 @@
+---
+description: 'Landing page for Regular Functions'
+slug: /sql-reference/functions/regular-functions
+title: 'Regular functions'
+doc_type: 'landing-page'
+---
+
+| Page | Description |
+|--------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|
+| [Overview](/core/reference/functions/regular-functions/overview) | Overview of all functions. |
+| [Machine Learning](/core/reference/functions/regular-functions/machine-learning-functions) | Functions for machine learning. |
+| [Introspection](/core/reference/functions/regular-functions/introspection) | Functions for introspection of ClickHouse. |
+| [arrayJoin](/core/reference/functions/regular-functions/array-join) | The arrayJoin function which takes each row and generates a set of rows (unfold) |
+| [Searching in Strings](/core/reference/functions/regular-functions/string-search-functions) | Functions for searching within strings. |
+| [Hash](/core/reference/functions/regular-functions/hash-functions) | Hashing functions. |
+| [UUIDs](/core/reference/functions/regular-functions/uuid-functions) | Functions for Working with UUIDs. |
+| [Time-Series](/core/reference/functions/regular-functions/time-series-functions) | Functions for working with time series |
+| [Random Numbers](/core/reference/functions/regular-functions/random-functions) | Functions for random number generation. |
+| [NLP](/core/reference/functions/regular-functions/nlp-functions) | Functions for Natural Language Processing. |
+| [Conditional](/core/reference/functions/regular-functions/conditional-functions) | Conditional functions. |
+| [Nullable](/core/reference/functions/regular-functions/functions-for-nulls) | Functions for working with NULL. |
+| [Bit](/core/reference/functions/regular-functions/bit-functions) | Bitwise functions. |
+| [Time Window](/core/reference/functions/regular-functions/time-window-functions) | Functions which return the inclusive lower and exclusive upper bound of the corresponding window. |
+| [IP Address](/core/reference/functions/regular-functions/ip-address-functions) | Functions for Working with IPv4 and IPv6 Addresses. |
+| [Splitting Strings](/core/reference/functions/regular-functions/splitting-merging-functions) | Functions for splitting strings. |
+| [Tuples](/core/reference/functions/regular-functions/tuple-functions) | Functions for working with tuples. |
+| [String replacement](/core/reference/functions/regular-functions/string-replace-functions) | Functions for string replacement. |
+| [User Defined Functions](/core/reference/functions/regular-functions/udf) | User Defined Functions. |
+| [Comparison](/core/reference/functions/regular-functions/comparison-functions) | Comparison functions (equals, less, greater etc.) |
+| [Other](/core/reference/functions/regular-functions/other-functions) | Functions which don't fit into any other category. |
+| [JSON](/core/reference/functions/regular-functions/json-functions) | Functions for working with JSON. |
+| [URL](/core/reference/functions/regular-functions/url-functions) | Functions for working with URLs. |
+| [Encoding](/core/reference/functions/regular-functions/encoding-functions) | Functions for encoding data. |
+| [ULID](/core/reference/functions/regular-functions/ulid-functions) | Functions for Working with ULID. |
+| [Maps](/core/reference/functions/regular-functions/tuple-map-functions) | Functions for working with Maps. |
+| [Dictionaries](/core/reference/functions/regular-functions/ext-dict-functions) | Functions for working with dictionaries. |
+| [IN](/core/reference/functions/regular-functions/in-functions) | IN operators |
+| [Files](/core/reference/functions/regular-functions/files) | The file function. |
+| [Arrays](/core/reference/functions/regular-functions/array-functions) | Functions for working with arrays. |
+| [String](/core/reference/functions/regular-functions/string-functions) | Functions for working with Strings. (Functions for searching in strings and for replacing in strings are described separately.) |
+| [DateTime](/core/reference/functions/regular-functions/date-time-functions) | Functions for working with dates and times. |
+| [Logical](/core/reference/functions/regular-functions/logical-functions) | Functions which perform logical operations on arguments of arbitrary numeric types. |
+| [Rounding](/core/reference/functions/regular-functions/rounding-functions) | Functions for rounding. |
+| [uniqTheta](/core/reference/functions/regular-functions/uniqtheta-functions) | uniqTheta functions work on two uniqThetaSketch objects to do set operation calculations such as ∪ / ∩ / ×. |
+| [Distance](/core/reference/functions/regular-functions/distance-functions) | Functions for calculating vector norms, distances, normalization, and common operations in linear algebra and machine learning. |
+| [Bitmap](/core/reference/functions/regular-functions/bitmap-functions) | Functions for bitmaps. |
+| [Math](/core/reference/functions/regular-functions/math-functions) | Mathematical functions. |
+| [Financial](/core/reference/functions/regular-functions/financial-functions) | Financial functions. |
+| [Encryption](/core/reference/functions/regular-functions/encryption-functions) | Functions for encryption. |
+| [Arithmetic](/core/reference/functions/regular-functions/arithmetic-functions) | Functions for performing arithmetic on `UInt`, `Int` or `Float` types. |
+| [Embedded Dictionaries](/core/reference/functions/regular-functions/embedded-dict-functions) | Functions for Working with Embedded Dictionaries |
+| [Type Conversion](/core/reference/functions/regular-functions/type-conversion-functions) | Functions for converting from one type to another type. |
diff --git a/reference/functions/regular-functions/rounding-functions.mdx b/core/reference/functions/regular-functions/rounding-functions.mdx
similarity index 78%
rename from reference/functions/regular-functions/rounding-functions.mdx
rename to core/reference/functions/regular-functions/rounding-functions.mdx
index e979b34e..f1ed6ed2 100644
--- a/reference/functions/regular-functions/rounding-functions.mdx
+++ b/core/reference/functions/regular-functions/rounding-functions.mdx
@@ -35,12 +35,12 @@ ceiling(x[, N])
**Arguments**
-- `x` — The value to round. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
-- `N` — Optional. The number of decimal places to round to. Defaults to zero, which means rounding to an integer. Can be negative. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — The value to round. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `N` — Optional. The number of decimal places to round to. Defaults to zero, which means rounding to an integer. Can be negative. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a rounded number of the same type as `x`. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
+Returns a rounded number of the same type as `x`. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
@@ -87,12 +87,12 @@ floor(x[, N])
**Arguments**
-- `x` — The value to round. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
-- `N` — Optional. The number of decimal places to round to. Defaults to zero, which means rounding to an integer. Can be negative. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — The value to round. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `N` — Optional. The number of decimal places to round to. Defaults to zero, which means rounding to an integer. Can be negative. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a rounded number of the same type as `x`. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
+Returns a rounded number of the same type as `x`. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
@@ -143,12 +143,12 @@ round(x[, N])
**Arguments**
-- `x` — A number to round. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
-- `N` — Optional. The number of decimal places to round to. Defaults to `0`. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — A number to round. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `N` — Optional. The number of decimal places to round to. Defaults to `0`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a rounded number of the same type as `x`. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
+Returns a rounded number of the same type as `x`. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
@@ -202,11 +202,11 @@ roundAge(num)
**Arguments**
-- `age` — A number representing an age in years. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `age` — A number representing an age in years. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns either the highest or lowest age of the range `age` falls within. [`UInt8`](/reference/data-types/int-uint)
+Returns either the highest or lowest age of the range `age` falls within. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -268,12 +268,12 @@ roundBankers(x[, N])
**Arguments**
-- `x` — A number to round. [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal*`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float)
-- `[, N]` — Optional. The number of decimal places to round to. Defaults to `0`. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — A number to round. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal*`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float)
+- `[, N]` — Optional. The number of decimal places to round to. Defaults to `0`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value rounded by the banker's rounding method. [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal*`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float)
+Returns a value rounded by the banker's rounding method. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal*`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -313,12 +313,12 @@ roundDown(num, arr)
**Arguments**
-- `num` — A number to round down. [`(U)Int*`](/reference/data-types/int-uint) or [`Decimal*`](/reference/data-types/decimal) or [`Float*`](/reference/data-types/float)
-- `arr` — Array of elements to round `num` down to. [`Array((U)Int*)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
+- `num` — A number to round down. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Decimal*`](/core/reference/data-types/decimal) or [`Float*`](/core/reference/data-types/float)
+- `arr` — Array of elements to round `num` down to. [`Array((U)Int*)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns a number rounded down to an element in `arr`. If the value is less than the lowest bound, the lowest bound is returned. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+Returns a number rounded down to an element in `arr`. If the value is less than the lowest bound, the lowest bound is returned. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -354,11 +354,11 @@ roundDuration(num)
**Arguments**
-- `num` — A number to round to one of the numbers in the set of common durations. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `num` — A number to round to one of the numbers in the set of common durations. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `0`, for `num` < 1. Otherwise, one of: `1, 10, 30, 60, 120, 180, 240, 300, 600, 1200, 1800, 3600, 7200, 18000, 36000`. [`UInt16`](/reference/data-types/int-uint)
+Returns `0`, for `num` < 1. Otherwise, one of: `1, 10, 30, 60, 120, 180, 240, 300, 600, 1200, 1800, 3600, 7200, 18000, 36000`. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -404,11 +404,11 @@ roundToExp2(num)
**Arguments**
-- `num` — A number to round. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `num` — A number to round. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns `num` rounded down to the nearest (whole non-negative) power of two, otherwise `0` for `num < 1`. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+Returns `num` rounded down to the nearest (whole non-negative) power of two, otherwise `0` for `num < 1`. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Examples**
@@ -445,12 +445,12 @@ truncate(x[, N])
**Arguments**
-- `x` — The value to round. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
-- `N` — Optional. The number of decimal places to round to. Defaults to zero, which means rounding to an integer. [`(U)Int*`](/reference/data-types/int-uint)
+- `x` — The value to round. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
+- `N` — Optional. The number of decimal places to round to. Defaults to zero, which means rounding to an integer. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a rounded number of the same type as `x`. [`Float*`](/reference/data-types/float) or [`Decimal*`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint)
+Returns a rounded number of the same type as `x`. [`Float*`](/core/reference/data-types/float) or [`Decimal*`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/splitting-merging-functions.mdx b/core/reference/functions/regular-functions/splitting-merging-functions.mdx
similarity index 70%
rename from reference/functions/regular-functions/splitting-merging-functions.mdx
rename to core/reference/functions/regular-functions/splitting-merging-functions.mdx
index e1cacbba..171cdb67 100644
--- a/reference/functions/regular-functions/splitting-merging-functions.mdx
+++ b/core/reference/functions/regular-functions/splitting-merging-functions.mdx
@@ -35,12 +35,12 @@ alphaTokens(s[, max_substrings])
**Arguments**
-- `s` — The string to split. [`String`](/reference/data-types/string)
-- `max_substrings` — Optional. When `max_substrings > 0`, the number of returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. [`Int64`](/reference/data-types/int-uint)
+- `s` — The string to split. [`String`](/core/reference/data-types/string)
+- `max_substrings` — Optional. When `max_substrings > 0`, the number of returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. [`Int64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected substrings of `s`. [`Array(String)`](/reference/data-types/array)
+Returns an array of selected substrings of `s`. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -72,12 +72,12 @@ arrayStringConcat(arr[, separator])
**Arguments**
-- `arr` — The array to concatenate. [`Array(T)`](/reference/data-types/array)
-- `separator` — Optional. Separator string. By default an empty string. [`const String`](/reference/data-types/string)
+- `arr` — The array to concatenate. [`Array(T)`](/core/reference/data-types/array)
+- `separator` — Optional. Separator string. By default an empty string. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the concatenated string. [`String`](/reference/data-types/string)
+Returns the concatenated string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -109,12 +109,12 @@ extractAllGroupsVertical(s, regexp)
**Arguments**
-- `s` — Input string to extract from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `regexp` — Regular expression to match by. [`const String`](/reference/data-types/string) or [`const FixedString`](/reference/data-types/fixedstring)
+- `s` — Input string to extract from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `regexp` — Regular expression to match by. [`const String`](/core/reference/data-types/string) or [`const FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns an array of arrays, where each inner array contains the captured groups from one match. Each match produces an array with elements corresponding to the capturing groups in the regular expression (group 1, group 2, etc.). If no matches are found, returns an empty array. [`Array(Array(String))`](/reference/data-types/array)
+Returns an array of arrays, where each inner array contains the captured groups from one match. Each match produces an array with elements corresponding to the capturing groups in the regular expression (group 1, group 2, etc.). If no matches are found, returns an empty array. [`Array(Array(String))`](/core/reference/data-types/array)
**Examples**
@@ -147,12 +147,12 @@ ngrams(s, N)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `N` — The n-gram length. [`const UInt8/16/32/64`](/reference/data-types/int-uint)
+- `s` — Input string. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `N` — The n-gram length. [`const UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array with n-grams. [`Array(String)`](/reference/data-types/array)
+Returns an array with n-grams. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -188,12 +188,12 @@ reverseBySeparator(string[, separator])
**Arguments**
-- `string` — The input string to reverse the order of its parts. [`String`](/reference/data-types/string)
-- `separator` — The separator string used to identify parts. If not provided, uses '.' (dot). Default: '.' [`String`](/reference/data-types/string)
+- `string` — The input string to reverse the order of its parts. [`String`](/core/reference/data-types/string)
+- `separator` — The separator string used to identify parts. If not provided, uses '.' (dot). Default: '.' [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with substrings ordered from right to left of the original string, joined by the same separator. [`String`](/reference/data-types/string)
+Returns a string with substrings ordered from right to left of the original string, joined by the same separator. [`String`](/core/reference/data-types/string)
**Examples**
@@ -265,7 +265,7 @@ Splits a string separated by a specified constant string `separator` of exactly
Empty substrings may be selected if the separator occurs at the beginning or end of the string, or if there are multiple consecutive separators.
-Setting [`splitby_max_substrings_includes_remaining_string`](/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
+Setting [`splitby_max_substrings_includes_remaining_string`](/core/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
Empty substrings may be selected when:
@@ -281,13 +281,13 @@ splitByChar(separator, s[, max_substrings])
**Arguments**
-- `separator` — The separator must be a single-byte character. [`String`](/reference/data-types/string)
-- `s` — The string to split. [`String`](/reference/data-types/string)
-- `max_substrings` — Optional. If `max_substrings > 0`, the returned array will contain at most `max_substrings` substrings, otherwise the function will return as many substrings as possible. The default value is `0`. [`Int64`](/reference/data-types/int-uint)
+- `separator` — The separator must be a single-byte character. [`String`](/core/reference/data-types/string)
+- `s` — The string to split. [`String`](/core/reference/data-types/string)
+- `max_substrings` — Optional. If `max_substrings > 0`, the returned array will contain at most `max_substrings` substrings, otherwise the function will return as many substrings as possible. The default value is `0`. [`Int64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected substrings. [`Array(String)`](/reference/data-types/array)
+Returns an array of selected substrings. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -310,7 +310,7 @@ Introduced in: v21.9.0
Splits a string separated by whitespace and punctuation characters into an array of substrings.
-Setting [`splitby_max_substrings_includes_remaining_string`](/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
+Setting [`splitby_max_substrings_includes_remaining_string`](/core/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
**Syntax**
@@ -321,12 +321,12 @@ splitByNonAlpha(s[, max_substrings])
**Arguments**
-- `s` — The string to split. [`String`](/reference/data-types/string)
-- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/reference/data-types/int-uint)
+- `s` — The string to split. [`String`](/core/reference/data-types/string)
+- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected substrings of `s`. [`Array(String)`](/reference/data-types/array)
+Returns an array of selected substrings of `s`. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -354,7 +354,7 @@ Empty substrings may be selected when:
- the original string string is empty while the regular expression is not empty.
-Setting [`splitby_max_substrings_includes_remaining_string`](/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
+Setting [`splitby_max_substrings_includes_remaining_string`](/core/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
**Syntax**
@@ -365,13 +365,13 @@ splitByRegexp(regexp, s[, max_substrings])
**Arguments**
-- `regexp` — Regular expression. Constant. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `s` — The string to split. [`String`](/reference/data-types/string)
-- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/reference/data-types/int-uint)
+- `regexp` — Regular expression. Constant. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `s` — The string to split. [`String`](/core/reference/data-types/string)
+- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of the selected substrings of `s`. [`Array(String)`](/reference/data-types/array)
+Returns an array of the selected substrings of `s`. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -412,7 +412,7 @@ Empty substrings may be selected when:
- The original string `s` is empty while the separator is not empty
-Setting [`splitby_max_substrings_includes_remaining_string`](/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
+Setting [`splitby_max_substrings_includes_remaining_string`](/core/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
**Syntax**
@@ -423,13 +423,13 @@ splitByString(separator, s[, max_substrings])
**Arguments**
-- `separator` — The separator. [`String`](/reference/data-types/string)
-- `s` — The string to split. [`String`](/reference/data-types/string)
-- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/reference/data-types/int-uint)
+- `separator` — The separator. [`String`](/core/reference/data-types/string)
+- `s` — The string to split. [`String`](/core/reference/data-types/string)
+- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected substrings of `s` [`Array(String)`](/reference/data-types/array)
+Returns an array of selected substrings of `s` [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -464,7 +464,7 @@ Introduced in: v21.9.0
Splits a string which is separated by whitespace characters into an array of substrings.
-Setting [`splitby_max_substrings_includes_remaining_string`](/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
+Setting [`splitby_max_substrings_includes_remaining_string`](/core/reference/settings/session-settings#splitby_max_substrings_includes_remaining_string) (default: `0`) controls if the remaining string is included in the last element of the result array when argument `max_substrings > 0`.
**Syntax**
@@ -475,12 +475,12 @@ splitByWhitespace(s[, max_substrings])
**Arguments**
-- `s` — The string to split. [`String`](/reference/data-types/string)
-- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/reference/data-types/int-uint)
+- `s` — The string to split. [`String`](/core/reference/data-types/string)
+- `max_substrings` — Optional. When `max_substrings > 0`, the returned substrings will be no more than `max_substrings`, otherwise the function will return as many substrings as possible. Default value: `0`. [`Int64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of the selected substrings of `s`. [`Array(String)`](/reference/data-types/array)
+Returns an array of the selected substrings of `s`. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -501,12 +501,12 @@ Introduced in: v21.11.0
Splits a string into tokens using the given tokenizer.
Available tokenizers:
-- `splitByNonAlpha` splits strings along non-alphanumeric ASCII characters (also see function [splitByNonAlpha](/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha)).
-- `splitByString(S)` splits strings along certain user-defined separator strings `S` (also see function [splitByString](/reference/functions/regular-functions/splitting-merging-functions#splitByString)). The separators can be specified using an optional parameter, for example, `tokens(value, 'splitByString', [', ', '; ', '\n', '\\'])`. Note that each string can consist of multiple characters (`', '` in the example). The default separator list, if not specified explicitly, is a single whitespace `[' ']`.
+- `splitByNonAlpha` splits strings along non-alphanumeric ASCII characters (also see function [splitByNonAlpha](/core/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha)).
+- `splitByString(S)` splits strings along certain user-defined separator strings `S` (also see function [splitByString](/core/reference/functions/regular-functions/splitting-merging-functions#splitByString)). The separators can be specified using an optional parameter, for example, `tokens(value, 'splitByString', [', ', '; ', '\n', '\\'])`. Note that each string can consist of multiple characters (`', '` in the example). The default separator list, if not specified explicitly, is a single whitespace `[' ']`.
- `asciiCJK` splits strings into tokens using Unicode word boundary rules (similar to UAX #29). ASCII alphanumeric characters and underscores form tokens with connectors (`:` for letters, `.` and `'` for same-type characters). Non-ASCII Unicode characters become single-character tokens.
-- `ngrams(N)` splits strings into equally large `N`-grams (also see function [ngrams](/reference/functions/regular-functions/splitting-merging-functions#ngrams)). The ngram length can be specified using an optional integer parameter between 1 and 8, for example, `tokens(value, 'ngrams', 3)`. The default ngram size, if not specified explicitly, is 3.
-- `sparseGrams(min_length, max_length, min_cutoff_length)` splits strings into variable-length n-grams of at least `min_length` and at most `max_length` (inclusive) characters (also see function [sparseGrams](/reference/functions/regular-functions/string-functions#sparseGrams)). Unless specified explicitly, `min_length` and `max_length` default to 3 and 100. If parameter `min_cutoff_length` is provided, only n-grams with length greater or equal than `min_cutoff_length` are returned. Compared to `ngrams(N)`, the `sparseGrams` tokenizer produces variable-length N-grams, allowing for a more flexible representation of the original text. For example, `tokens(value, 'sparseGrams', 3, 5, 4)` internally generates 3-, 4-, 5-grams from the input string but only the 4- and 5-grams are returned.
-- `array` performs no tokenization, i.e. every row value is a token (also see function [array](/reference/functions/regular-functions/array-functions#array)).
+- `ngrams(N)` splits strings into equally large `N`-grams (also see function [ngrams](/core/reference/functions/regular-functions/splitting-merging-functions#ngrams)). The ngram length can be specified using an optional integer parameter between 1 and 8, for example, `tokens(value, 'ngrams', 3)`. The default ngram size, if not specified explicitly, is 3.
+- `sparseGrams(min_length, max_length, min_cutoff_length)` splits strings into variable-length n-grams of at least `min_length` and at most `max_length` (inclusive) characters (also see function [sparseGrams](/core/reference/functions/regular-functions/string-functions#sparseGrams)). Unless specified explicitly, `min_length` and `max_length` default to 3 and 100. If parameter `min_cutoff_length` is provided, only n-grams with length greater or equal than `min_cutoff_length` are returned. Compared to `ngrams(N)`, the `sparseGrams` tokenizer produces variable-length N-grams, allowing for a more flexible representation of the original text. For example, `tokens(value, 'sparseGrams', 3, 5, 4)` internally generates 3-, 4-, 5-grams from the input string but only the 4- and 5-grams are returned.
+- `array` performs no tokenization, i.e. every row value is a token (also see function [array](/core/reference/functions/regular-functions/array-functions#array)).
In case of the `splitByString` tokenizer, if the tokens do not form a [prefix code](https://en.wikipedia.org/wiki/Prefix_code), you likely want that the matching prefers longer separators first.
To do so, pass the separators in order of descending length.
@@ -526,17 +526,17 @@ tokens(value, 'array')
**Arguments**
-- `value` — The input string. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/reference/data-types/string)
-- `n` — Only relevant if argument `tokenizer` is `ngrams`: An optional parameter which defines the length of the ngrams. If not set explicitly, defaults to `3`. [`const UInt8`](/reference/data-types/int-uint)
-- `separators` — Only relevant if argument `tokenizer` is `split`: An optional parameter which defines the separator strings. If not set explicitly, defaults to `[' ']`. [`const Array(String)`](/reference/data-types/array)
-- `min_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum gram length, defaults to 3. [`const UInt8`](/reference/data-types/int-uint)
-- `max_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the maximum gram length, defaults to 100. [`const UInt8`](/reference/data-types/int-uint)
-- `min_cutoff_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum cutoff length. [`const UInt8`](/reference/data-types/int-uint)
+- `value` — The input string. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/core/reference/data-types/string)
+- `n` — Only relevant if argument `tokenizer` is `ngrams`: An optional parameter which defines the length of the ngrams. If not set explicitly, defaults to `3`. [`const UInt8`](/core/reference/data-types/int-uint)
+- `separators` — Only relevant if argument `tokenizer` is `split`: An optional parameter which defines the separator strings. If not set explicitly, defaults to `[' ']`. [`const Array(String)`](/core/reference/data-types/array)
+- `min_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum gram length, defaults to 3. [`const UInt8`](/core/reference/data-types/int-uint)
+- `max_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the maximum gram length, defaults to 100. [`const UInt8`](/core/reference/data-types/int-uint)
+- `min_cutoff_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum cutoff length. [`const UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the resulting array of tokens from input string. [`Array`](/reference/data-types/array)
+Returns the resulting array of tokens from input string. [`Array`](/core/reference/data-types/array)
**Examples**
@@ -586,17 +586,17 @@ tokensForLikePattern(value[, tokenizer[, tokenizer_specific_arguments...]])
**Arguments**
-- `value` — The input string. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/reference/data-types/string)
-- `n` — Only relevant if argument `tokenizer` is `ngrams`: An optional parameter which defines the length of the ngrams. If not set explicitly, defaults to `3`. [`const UInt8`](/reference/data-types/int-uint)
-- `separators` — Only relevant if argument `tokenizer` is `split`: An optional parameter which defines the separator strings. If not set explicitly, defaults to `[' ']`. [`const Array(String)`](/reference/data-types/array)
-- `min_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum gram length, defaults to 3. [`const UInt8`](/reference/data-types/int-uint)
-- `max_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the maximum gram length, defaults to 100. [`const UInt8`](/reference/data-types/int-uint)
-- `min_cutoff_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum cutoff length. [`const UInt8`](/reference/data-types/int-uint)
+- `value` — The input string. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/core/reference/data-types/string)
+- `n` — Only relevant if argument `tokenizer` is `ngrams`: An optional parameter which defines the length of the ngrams. If not set explicitly, defaults to `3`. [`const UInt8`](/core/reference/data-types/int-uint)
+- `separators` — Only relevant if argument `tokenizer` is `split`: An optional parameter which defines the separator strings. If not set explicitly, defaults to `[' ']`. [`const Array(String)`](/core/reference/data-types/array)
+- `min_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum gram length, defaults to 3. [`const UInt8`](/core/reference/data-types/int-uint)
+- `max_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the maximum gram length, defaults to 100. [`const UInt8`](/core/reference/data-types/int-uint)
+- `min_cutoff_length` — Only relevant if argument `tokenizer` is `sparseGrams`: An optional parameter which defines the minimum cutoff length. [`const UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the resulting array of tokens from input string. [`Array`](/reference/data-types/array)
+Returns the resulting array of tokens from input string. [`Array`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/regular-functions/string-functions.mdx b/core/reference/functions/regular-functions/string-functions.mdx
similarity index 83%
rename from reference/functions/regular-functions/string-functions.mdx
rename to core/reference/functions/regular-functions/string-functions.mdx
index c5f25269..ef874d09 100644
--- a/reference/functions/regular-functions/string-functions.mdx
+++ b/core/reference/functions/regular-functions/string-functions.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
import VersionBadge from "/snippets/components/VersionBadge/VersionBadge.jsx";
-Functions for [searching](/reference/functions/regular-functions/string-search-functions) in strings and for [replacing](/reference/functions/regular-functions/string-replace-functions) in strings are described separately.
+Functions for [searching](/core/reference/functions/regular-functions/string-search-functions) in strings and for [replacing](/core/reference/functions/regular-functions/string-replace-functions) in strings are described separately.
The documentation below is generated from the `system.functions` system table.
@@ -35,11 +35,11 @@ CRC32(s)
**Arguments**
-- `s` — String to calculate CRC32 for. [`String`](/reference/data-types/string)
+- `s` — String to calculate CRC32 for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the CRC32 checksum of the string. [`UInt32`](/reference/data-types/int-uint)
+Returns the CRC32 checksum of the string. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -69,11 +69,11 @@ CRC32IEEE(s)
**Arguments**
-- `s` — String to calculate CRC32 for. [`String`](/reference/data-types/string)
+- `s` — String to calculate CRC32 for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the CRC32 checksum of the string. [`UInt32`](/reference/data-types/int-uint)
+Returns the CRC32 checksum of the string. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -103,11 +103,11 @@ CRC64(s)
**Arguments**
-- `s` — String to calculate CRC64 for. [`String`](/reference/data-types/string)
+- `s` — String to calculate CRC64 for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the CRC64 checksum of the string. [`UInt64`](/reference/data-types/int-uint)
+Returns the CRC64 checksum of the string. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -137,12 +137,12 @@ appendTrailingCharIfAbsent(s, c)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
-- `c` — Character to append if absent. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
+- `c` — Character to append if absent. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns string `s` with character `c` appended if `s` does not end with `c`. [`String`](/reference/data-types/string)
+Returns string `s` with character `c` appended if `s` does not end with `c`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -172,11 +172,11 @@ ascii(s)
**Arguments**
-- `s` — String input. [`String`](/reference/data-types/string)
+- `s` — String input. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the ASCII code point of the first character. If `s` is empty, the result is `0`. If the first character is not an ASCII character or not part of the Latin-1 supplement range of UTF-16, the result is undefined. [`Int32`](/reference/data-types/int-uint)
+Returns the ASCII code point of the first character. If `s` is empty, the result is `0`. If the first character is not an ASCII character or not part of the Latin-1 supplement range of UTF-16, the result is undefined. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -207,11 +207,11 @@ base32Decode(encoded)
**Arguments**
-- `encoded` — String column or constant. [`String`](/reference/data-types/string)
+- `encoded` — String column or constant. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the decoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the decoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -241,11 +241,11 @@ base32Encode(plaintext)
**Arguments**
-- `plaintext` — Plaintext to encode. [`String`](/reference/data-types/string)
+- `plaintext` — Plaintext to encode. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the encoded value of the argument. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+Returns a string containing the encoded value of the argument. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Examples**
@@ -280,12 +280,12 @@ base58Decode(encoded[, expected_size])
**Arguments**
-- `encoded` — String column or constant to decode. [`String`](/reference/data-types/string)
-- `expected_size` — Optional. Expected decoded size in bytes. When 32 or 64, an optimized decoder is used; for other values, the generic decoder is used. [`UInt8, UInt16, UInt32, or UInt64`](/reference/data-types/int-uint)
+- `encoded` — String column or constant to decode. [`String`](/core/reference/data-types/string)
+- `expected_size` — Optional. Expected decoded size in bytes. When 32 or 64, an optimized decoder is used; for other values, the generic decoder is used. [`UInt8, UInt16, UInt32, or UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string containing the decoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the decoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -315,11 +315,11 @@ base58Encode(plaintext)
**Arguments**
-- `plaintext` — Plaintext to encode. [`String`](/reference/data-types/string)
+- `plaintext` — Plaintext to encode. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the encoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the encoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -352,11 +352,11 @@ base64Decode(encoded)
**Arguments**
-- `encoded` — String column or constant to decode. If the string is not valid Base64-encoded, an exception is thrown. [`String`](/reference/data-types/string)
+- `encoded` — String column or constant to decode. If the string is not valid Base64-encoded, an exception is thrown. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the decoded string. [`String`](/reference/data-types/string)
+Returns the decoded string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -388,11 +388,11 @@ base64Encode(plaintext)
**Arguments**
-- `plaintext` — Plaintext column or constant to decode. [`String`](/reference/data-types/string)
+- `plaintext` — Plaintext column or constant to decode. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the encoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the encoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -423,11 +423,11 @@ base64URLDecode(encoded)
**Arguments**
-- `encoded` — String column or constant to encode. If the string is not valid Base64-encoded, an exception is thrown. [`String`](/reference/data-types/string)
+- `encoded` — String column or constant to encode. If the string is not valid Base64-encoded, an exception is thrown. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the decoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the decoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -457,11 +457,11 @@ base64URLEncode(plaintext)
**Arguments**
-- `plaintext` — Plaintext column or constant to encode. [`String`](/reference/data-types/string)
+- `plaintext` — Plaintext column or constant to encode. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the encoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the encoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -493,11 +493,11 @@ basename(expr)
**Arguments**
-- `expr` — A string expression. Backslashes must be escaped. [`String`](/reference/data-types/string)
+- `expr` — A string expression. Backslashes must be escaped. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the tail of the input string after its last slash or backslash. If the input string ends with a slash or backslash, the function returns an empty string. Returns the original string if there are no slashes or backslashes. [`String`](/reference/data-types/string)
+Returns the tail of the input string after its last slash or backslash. If the input string ends with a slash or backslash, the function returns an empty string. Returns the original string if there are no slashes or backslashes. [`String`](/core/reference/data-types/string)
**Examples**
@@ -553,12 +553,12 @@ byteHammingDistance(s1, s2)
**Arguments**
-- `s1` — First input string. [`String`](/reference/data-types/string)
-- `s2` — Second input string. [`String`](/reference/data-types/string)
+- `s1` — First input string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Hamming distance between the two strings. [`UInt64`](/reference/data-types/int-uint)
+Returns the Hamming distance between the two strings. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -591,11 +591,11 @@ caseFoldUTF8(str)
**Arguments**
-- `str` — UTF-8 encoded input string. [`String`](/reference/data-types/string)
+- `str` — UTF-8 encoded input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Case-folded UTF-8 string. [`String`](/reference/data-types/string)
+Case-folded UTF-8 string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -625,11 +625,11 @@ compareSubstrings(s1, s2, s1_offset, s2_offset, num_bytes)
**Arguments**
-- `s1` — The first string to compare. [`String`](/reference/data-types/string)
-- `s2` — The second string to compare. [`String`](/reference/data-types/string)
-- `s1_offset` — The position (zero-based) in `s1` from which the comparison starts. [`UInt*`](/reference/data-types/int-uint)
-- `s2_offset` — The position (zero-based index) in `s2` from which the comparison starts. [`UInt*`](/reference/data-types/int-uint)
-- `num_bytes` — The maximum number of bytes to compare in both strings. If `s1_offset` (or `s2_offset`) + `num_bytes` exceeds the end of an input string, `num_bytes` will be reduced accordingly. [`UInt*`](/reference/data-types/int-uint)
+- `s1` — The first string to compare. [`String`](/core/reference/data-types/string)
+- `s2` — The second string to compare. [`String`](/core/reference/data-types/string)
+- `s1_offset` — The position (zero-based) in `s1` from which the comparison starts. [`UInt*`](/core/reference/data-types/int-uint)
+- `s2_offset` — The position (zero-based index) in `s2` from which the comparison starts. [`UInt*`](/core/reference/data-types/int-uint)
+- `num_bytes` — The maximum number of bytes to compare in both strings. If `s1_offset` (or `s2_offset`) + `num_bytes` exceeds the end of an input string, `num_bytes` will be reduced accordingly. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -637,7 +637,7 @@ Returns:
- `-1` if `s1`[`s1_offset` : `s1_offset` + `num_bytes`] < `s2`[`s2_offset` : `s2_offset` + `num_bytes`].
- `0` if `s1`[`s1_offset` : `s1_offset` + `num_bytes`] = `s2`[`s2_offset` : `s2_offset` + `num_bytes`].
- `1` if `s1`[`s1_offset` : `s1_offset` + `num_bytes`] > `s2`[`s2_offset` : `s2_offset` + `num_bytes`].
- [`Int8`](/reference/data-types/int-uint)
+ [`Int8`](/core/reference/data-types/int-uint)
**Examples**
@@ -659,7 +659,7 @@ Introduced in: v1.1.0
Concatenates the given arguments.
-Arguments which are not of types [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) are converted to strings using their default serialization.
+Arguments which are not of types [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) are converted to strings using their default serialization.
As this decreases performance, it is not recommended to use non-String/FixedString arguments.
**Syntax**
@@ -670,11 +670,11 @@ concat([s1, s2, ...])
**Arguments**
-- `s1, s2, ...` — Any number of values of arbitrary type. [`Any`](/reference/data-types)
+- `s1, s2, ...` — Any number of values of arbitrary type. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the String created by concatenating the arguments. If any of arguments is `NULL`, the function returns `NULL`. If there are no arguments, it returns an empty string. [`Nullable(String)`](/reference/data-types/nullable)
+Returns the String created by concatenating the arguments. If any of arguments is `NULL`, the function returns `NULL`. If there are no arguments, it returns an empty string. [`Nullable(String)`](/core/reference/data-types/nullable)
**Examples**
@@ -719,11 +719,11 @@ concatAssumeInjective([s1, s2, ...])
**Arguments**
-- `s1, s2, ...` — Any number of values of arbitrary type. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `s1, s2, ...` — Any number of values of arbitrary type. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the string created by concatenating the arguments. If any of argument values is `NULL`, the function returns `NULL`. If no arguments are passed, it returns an empty string. [`String`](/reference/data-types/string)
+Returns the string created by concatenating the arguments. If any of argument values is `NULL`, the function returns `NULL`. If no arguments are passed, it returns an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -757,12 +757,12 @@ concatWithSeparator(sep[, exp1, exp2, ...])
**Arguments**
-- `sep` — The separator to use. [`const String`](/reference/data-types/string) or [`const FixedString`](/reference/data-types/fixedstring)
-- `exp1, exp2, ...` — Expression to be concatenated. Arguments which are not of type `String` or `FixedString` are converted to strings using their default serialization. As this decreases performance, it is not recommended to use non-String/FixedString arguments. [`Any`](/reference/data-types)
+- `sep` — The separator to use. [`const String`](/core/reference/data-types/string) or [`const FixedString`](/core/reference/data-types/fixedstring)
+- `exp1, exp2, ...` — Expression to be concatenated. Arguments which are not of type `String` or `FixedString` are converted to strings using their default serialization. As this decreases performance, it is not recommended to use non-String/FixedString arguments. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the String created by concatenating the arguments. If any of the argument values is `NULL`, the function returns `NULL`. [`String`](/reference/data-types/string)
+Returns the String created by concatenating the arguments. If any of the argument values is `NULL`, the function returns `NULL`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -795,12 +795,12 @@ concatWithSeparatorAssumeInjective(sep[, exp1, exp2, ... ])
**Arguments**
-- `sep` — The separator to use. [`const String`](/reference/data-types/string) or [`const FixedString`](/reference/data-types/fixedstring)
-- `exp1, exp2, ...` — Expression to be concatenated. Arguments which are not of type `String` or `FixedString` are converted to strings using their default serialization. As this decreases performance, it is not recommended to use non-String/FixedString arguments. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `sep` — The separator to use. [`const String`](/core/reference/data-types/string) or [`const FixedString`](/core/reference/data-types/fixedstring)
+- `exp1, exp2, ...` — Expression to be concatenated. Arguments which are not of type `String` or `FixedString` are converted to strings using their default serialization. As this decreases performance, it is not recommended to use non-String/FixedString arguments. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the String created by concatenating the arguments. If any of the argument values is `NULL`, the function returns `NULL`. [`String`](/reference/data-types/string)
+Returns the String created by concatenating the arguments. If any of the argument values is `NULL`, the function returns `NULL`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -918,13 +918,13 @@ convertCharset(s, from, to)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
-- `from` — Source character encoding. [`String`](/reference/data-types/string)
-- `to` — Target character encoding. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
+- `from` — Source character encoding. [`String`](/core/reference/data-types/string)
+- `to` — Target character encoding. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns string `s` converted from encoding `from` to encoding `to`. [`String`](/reference/data-types/string)
+Returns string `s` converted from encoding `from` to encoding `to`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -954,12 +954,12 @@ damerauLevenshteinDistance(s1, s2)
**Arguments**
-- `s1` — First input string. [`String`](/reference/data-types/string)
-- `s2` — Second input string. [`String`](/reference/data-types/string)
+- `s1` — First input string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Damerau-Levenshtein distance between the two strings. [`UInt64`](/reference/data-types/int-uint)
+Returns the Damerau-Levenshtein distance between the two strings. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -989,11 +989,11 @@ decodeHTMLComponent(s)
**Arguments**
-- `s` — String containing HTML entities to decode. [`String`](/reference/data-types/string)
+- `s` — String containing HTML entities to decode. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the string with HTML entities decoded. [`String`](/reference/data-types/string)
+Returns the string with HTML entities decoded. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1023,11 +1023,11 @@ decodeXMLComponent(s)
**Arguments**
-- `s` — String containing XML entities to decode. [`String`](/reference/data-types/string)
+- `s` — String containing XML entities to decode. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the provided string with XML entities decoded. [`String`](/reference/data-types/string)
+Returns the provided string with XML entities decoded. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1059,12 +1059,12 @@ editDistance(s1, s2)
**Arguments**
-- `s1` — First input string. [`String`](/reference/data-types/string)
-- `s2` — Second input string. [`String`](/reference/data-types/string)
+- `s1` — First input string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the edit distance between the two strings. [`UInt64`](/reference/data-types/int-uint)
+Returns the edit distance between the two strings. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1096,12 +1096,12 @@ editDistanceUTF8(s1, s2)
**Arguments**
-- `s1` — First input string. [`String`](/reference/data-types/string)
-- `s2` — Second input string. [`String`](/reference/data-types/string)
+- `s1` — First input string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the edit distance between the two UTF8 strings. [`UInt64`](/reference/data-types/int-uint)
+Returns the edit distance between the two UTF8 strings. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1131,11 +1131,11 @@ encodeXMLComponent(s)
**Arguments**
-- `s` — String to escape. [`String`](/reference/data-types/string)
+- `s` — String to escape. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the escaped string. [`String`](/reference/data-types/string)
+Returns the escaped string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1167,12 +1167,12 @@ endsWith(s, suffix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `suffix` — Suffix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `suffix` — Suffix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` ends with `suffix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` ends with `suffix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1202,12 +1202,12 @@ endsWithCaseInsensitive(s, suffix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `suffix` — Case-insensitive suffix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `suffix` — Case-insensitive suffix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` ends with case-insensitive `suffix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` ends with case-insensitive `suffix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1239,12 +1239,12 @@ endsWithCaseInsensitiveUTF8(s, suffix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `suffix` — Case-insensitive suffix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `suffix` — Case-insensitive suffix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` ends with case-insensitive `suffix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` ends with case-insensitive `suffix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1276,12 +1276,12 @@ endsWithUTF8(s, suffix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `suffix` — Suffix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `suffix` — Suffix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` ends with `suffix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` ends with `suffix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1320,11 +1320,11 @@ extractTextFromHTML(html)
**Arguments**
-- `html` — String containing HTML content to extract text from. [`String`](/reference/data-types/string)
+- `html` — String containing HTML content to extract text from. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the extracted text content with normalized whitespace. [`String`](/reference/data-types/string)
+Returns the extracted text content with normalized whitespace. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1363,11 +1363,11 @@ firstLine(s)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the first line of the input string or the whole string if there are no line separators. [`String`](/reference/data-types/string)
+Returns the first line of the input string or the whole string if there are no line separators. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1399,11 +1399,11 @@ idnaDecode(s)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Unicode (UTF-8) representation of the input string according to the IDNA mechanism of the input value. [`String`](/reference/data-types/string)
+Returns a Unicode (UTF-8) representation of the input string according to the IDNA mechanism of the input value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1438,11 +1438,11 @@ idnaEncode(s)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an ASCII representation of the input string according to the IDNA mechanism of the input value. [`String`](/reference/data-types/string)
+Returns an ASCII representation of the input string according to the IDNA mechanism of the input value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1478,11 +1478,11 @@ initcap(s)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `s` with the first letter of each word converted to upper case. [`String`](/reference/data-types/string)
+Returns `s` with the first letter of each word converted to upper case. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1531,11 +1531,11 @@ initcapUTF8(s)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `s` with the first letter of each word converted to upper case. [`String`](/reference/data-types/string)
+Returns `s` with the first letter of each word converted to upper case. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1597,11 +1597,11 @@ isValidUTF8(s)
**Arguments**
-- `s` — The string to check for UTF-8 encoded validity. [`String`](/reference/data-types/string)
+- `s` — The string to check for UTF-8 encoded validity. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1`, if the set of bytes constitutes valid UTF-8-encoded text, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1`, if the set of bytes constitutes valid UTF-8-encoded text, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1631,12 +1631,12 @@ jaroSimilarity(s1, s2)
**Arguments**
-- `s1` — First input string. [`String`](/reference/data-types/string)
-- `s2` — Second input string. [`String`](/reference/data-types/string)
+- `s1` — First input string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Jaro similarity between the two strings. [`Float64`](/reference/data-types/float)
+Returns the Jaro similarity between the two strings. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1666,12 +1666,12 @@ jaroWinklerSimilarity(s1, s2)
**Arguments**
-- `s1` — First input string. [`String`](/reference/data-types/string)
-- `s2` — Second input string. [`String`](/reference/data-types/string)
+- `s1` — First input string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Jaro-Winkler similarity between the two strings. [`Float64`](/reference/data-types/float)
+Returns the Jaro-Winkler similarity between the two strings. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -1701,8 +1701,8 @@ left(s, offset)
**Arguments**
-- `s` — The string to calculate a substring from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `offset` — The number of bytes of the offset. [`(U)Int*`](/reference/data-types/int-uint)
+- `s` — The string to calculate a substring from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `offset` — The number of bytes of the offset. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -1710,7 +1710,7 @@ Returns:
- For positive `offset`, a substring of `s` with `offset` many bytes, starting from the left of the string.
- For negative `offset`, a substring of `s` with `length(s) - |offset|` bytes, starting from the left of the string.
- An empty string if `length` is `0`.
- [`String`](/reference/data-types/string)
+ [`String`](/core/reference/data-types/string)
**Examples**
@@ -1750,13 +1750,13 @@ leftPad(string, length[, pad_string])
**Arguments**
-- `string` — Input string that should be padded. [`String`](/reference/data-types/string)
-- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/reference/data-types/int-uint)
-- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/reference/data-types/string)
+- `string` — Input string that should be padded. [`String`](/core/reference/data-types/string)
+- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a left-padded string of the given length. [`String`](/reference/data-types/string)
+Returns a left-padded string of the given length. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1787,13 +1787,13 @@ leftPadUTF8(string, length[, pad_string])
**Arguments**
-- `string` — Input string that should be padded. [`String`](/reference/data-types/string)
-- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/reference/data-types/int-uint)
-- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/reference/data-types/string)
+- `string` — Input string that should be padded. [`String`](/core/reference/data-types/string)
+- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a left-padded string of the given length. [`String`](/reference/data-types/string)
+Returns a left-padded string of the given length. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1823,8 +1823,8 @@ leftUTF8(s, offset)
**Arguments**
-- `s` — The UTF-8 encoded string to calculate a substring from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `offset` — The number of bytes of the offset. [`(U)Int*`](/reference/data-types/int-uint)
+- `s` — The UTF-8 encoded string to calculate a substring from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `offset` — The number of bytes of the offset. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -1832,7 +1832,7 @@ Returns:
- For positive `offset`, a substring of `s` with `offset` many bytes, starting from the left of the string.\n"
- For negative `offset`, a substring of `s` with `length(s) - |offset|` bytes, starting from the left of the string.\n"
- An empty string if `length` is 0.
- [`String`](/reference/data-types/string)
+ [`String`](/core/reference/data-types/string)
**Examples**
@@ -1874,11 +1874,11 @@ lengthUTF8(s)
**Arguments**
-- `s` — String containing valid UTF-8 encoded text. [`String`](/reference/data-types/string)
+- `s` — String containing valid UTF-8 encoded text. [`String`](/core/reference/data-types/string)
**Returned value**
-Length of the string `s` in Unicode code points. [`UInt64`](/reference/data-types/int-uint)
+Length of the string `s` in Unicode code points. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1910,11 +1910,11 @@ lower(s)
**Arguments**
-- `s` — A string to convert to lowercase. [`String`](/reference/data-types/string)
+- `s` — A string to convert to lowercase. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a lowercase string from `s`. [`String`](/reference/data-types/string)
+Returns a lowercase string from `s`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1944,11 +1944,11 @@ lowerUTF8(input)
**Arguments**
-- `input` — Input string to convert to lowercase. [`String`](/reference/data-types/string)
+- `input` — Input string to convert to lowercase. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a lowercase string. [`String`](/reference/data-types/string)
+Returns a lowercase string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1978,11 +1978,11 @@ naturalSortKey(s)
**Arguments**
-- `s` — A string to convert to natural sort key. [`String`](/reference/data-types/string)
+- `s` — A string to convert to natural sort key. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a natural sort key string from `s`. [`String`](/reference/data-types/string)
+Returns a natural sort key string from `s`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2013,11 +2013,11 @@ normalizeUTF8NFC(str)
**Arguments**
-- `str` — UTF-8 encoded input string. [`String`](/reference/data-types/string)
+- `str` — UTF-8 encoded input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the NFC normalized form of the UTF-8 string. [`String`](/reference/data-types/string)
+Returns the NFC normalized form of the UTF-8 string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2051,11 +2051,11 @@ normalizeUTF8NFD(str)
**Arguments**
-- `str` — UTF-8 encoded input string. [`String`](/reference/data-types/string)
+- `str` — UTF-8 encoded input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the NFD normalized form of the UTF-8 string. [`String`](/reference/data-types/string)
+Returns the NFD normalized form of the UTF-8 string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2089,11 +2089,11 @@ normalizeUTF8NFKC(str)
**Arguments**
-- `str` — UTF-8 encoded input string. [`String`](/reference/data-types/string)
+- `str` — UTF-8 encoded input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the NFKC normalized form of the UTF-8 string. [`String`](/reference/data-types/string)
+Returns the NFKC normalized form of the UTF-8 string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2126,11 +2126,11 @@ normalizeUTF8NFKCCasefold(str)
**Arguments**
-- `str` — UTF-8 encoded input string. [`String`](/reference/data-types/string)
+- `str` — UTF-8 encoded input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the NFKC_Casefold normalized form of the UTF-8 string. [`String`](/reference/data-types/string)
+Returns the NFKC_Casefold normalized form of the UTF-8 string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2162,11 +2162,11 @@ normalizeUTF8NFKD(str)
**Arguments**
-- `str` — UTF-8 encoded input string. [`String`](/reference/data-types/string)
+- `str` — UTF-8 encoded input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the NFKD normalized form of the UTF-8 string. [`String`](/reference/data-types/string)
+Returns the NFKD normalized form of the UTF-8 string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2199,11 +2199,11 @@ punycodeDecode(s)
**Arguments**
-- `s` — Punycode-encoded string. [`String`](/reference/data-types/string)
+- `s` — Punycode-encoded string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the plaintext of the input value. [`String`](/reference/data-types/string)
+Returns the plaintext of the input value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2234,11 +2234,11 @@ punycodeEncode(s)
**Arguments**
-- `s` — Input value. [`String`](/reference/data-types/string)
+- `s` — Input value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Punycode representation of the input value. [`String`](/reference/data-types/string)
+Returns a Punycode representation of the input value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2271,13 +2271,13 @@ regexpExtract(haystack, pattern[, index])
**Arguments**
-- `haystack` — String, in which regexp pattern will be matched. [`String`](/reference/data-types/string)
-- `pattern` — String, regexp expression. `pattern` may contain multiple regexp groups, `index` indicates which regex group to extract. An index of 0 means matching the entire regular expression. [`const String`](/reference/data-types/string)
-- `index` — Optional. An integer number greater or equal 0 with default 1. It represents which regex group to extract. [`(U)Int*`](/reference/data-types/int-uint)
+- `haystack` — String, in which regexp pattern will be matched. [`String`](/core/reference/data-types/string)
+- `pattern` — String, regexp expression. `pattern` may contain multiple regexp groups, `index` indicates which regex group to extract. An index of 0 means matching the entire regular expression. [`const String`](/core/reference/data-types/string)
+- `index` — Optional. An integer number greater or equal 0 with default 1. It represents which regex group to extract. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string match [`String`](/reference/data-types/string)
+Returns a string match [`String`](/core/reference/data-types/string)
**Examples**
@@ -2322,17 +2322,17 @@ regexpPosition(haystack, pattern[, position[, occurrence[, return_option[, flags
**Arguments**
-- `haystack` — String to search in. [`String`](/reference/data-types/string)
-- `pattern` — Regular expression pattern. [`const String`](/reference/data-types/string)
-- `position` — Optional. 1-based byte position to start the search. Default: 1. [`(U)Int*`](/reference/data-types/int-uint)
-- `occurrence` — Optional. Which match to return. Default: 1. [`(U)Int*`](/reference/data-types/int-uint)
-- `return_option` — Optional. 0 returns the position of the match start, 1 returns the position right after the match. Default: 0. [`(U)Int*`](/reference/data-types/int-uint)
-- `flags` — Optional. Regex flags. Supported: `i` (case-insensitive), `c` (case-sensitive), `m`/`n` (multiline anchors), `s` (dot matches newline). Default: empty. [`const String`](/reference/data-types/string)
-- `subexpression` — Optional. Index of capture group whose position to return. 0 means whole match. Default: 0. [`(U)Int*`](/reference/data-types/int-uint)
+- `haystack` — String to search in. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expression pattern. [`const String`](/core/reference/data-types/string)
+- `position` — Optional. 1-based byte position to start the search. Default: 1. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `occurrence` — Optional. Which match to return. Default: 1. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `return_option` — Optional. 0 returns the position of the match start, 1 returns the position right after the match. Default: 0. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `flags` — Optional. Regex flags. Supported: `i` (case-insensitive), `c` (case-sensitive), `m`/`n` (multiline anchors), `s` (dot matches newline). Default: empty. [`const String`](/core/reference/data-types/string)
+- `subexpression` — Optional. Index of capture group whose position to return. 0 means whole match. Default: 0. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the byte position of the match, or 0 if not found. [`UInt64`](/reference/data-types/int-uint)
+Returns the byte position of the match, or 0 if not found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2370,11 +2370,11 @@ removeDiacriticsUTF8(str)
**Arguments**
-- `str` — UTF-8 encoded input string. [`String`](/reference/data-types/string)
+- `str` — UTF-8 encoded input string. [`String`](/core/reference/data-types/string)
**Returned value**
-UTF-8 string with diacritics removed. [`String`](/reference/data-types/string)
+UTF-8 string with diacritics removed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2405,12 +2405,12 @@ repeat(s, n)
**Arguments**
-- `s` — The string to repeat. [`String`](/reference/data-types/string)
-- `n` — The number of times to repeat the string. [`(U)Int*`](/reference/data-types/int-uint)
+- `s` — The string to repeat. [`String`](/core/reference/data-types/string)
+- `n` — The number of times to repeat the string. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-A string containing string `s` repeated `n` times. If `n` is negative, the function returns the empty string. [`String`](/reference/data-types/string)
+A string containing string `s` repeated `n` times. If `n` is negative, the function returns the empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2442,11 +2442,11 @@ reverseUTF8(s)
**Arguments**
-- `s` — String containing valid UTF-8 encoded text. [`String`](/reference/data-types/string)
+- `s` — String containing valid UTF-8 encoded text. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with the sequence of Unicode code points reversed. [`String`](/reference/data-types/string)
+Returns a string with the sequence of Unicode code points reversed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2474,8 +2474,8 @@ right(s, offset)
**Arguments**
-- `s` — The string to calculate a substring from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `offset` — The number of bytes of the offset. [`(U)Int*`](/reference/data-types/int-uint)
+- `s` — The string to calculate a substring from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `offset` — The number of bytes of the offset. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -2483,7 +2483,7 @@ Returns:
- For positive `offset`, a substring of `s` with `offset` many bytes, starting from the right of the string.
- For negative `offset`, a substring of `s` with `length(s) - |offset|` bytes, starting from the right of the string.
- An empty string if `length` is `0`.
- [`String`](/reference/data-types/string)
+ [`String`](/core/reference/data-types/string)
**Examples**
@@ -2523,13 +2523,13 @@ rightPad(string, length[, pad_string])
**Arguments**
-- `string` — Input string that should be padded. [`String`](/reference/data-types/string)
-- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/reference/data-types/int-uint)
-- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/reference/data-types/string)
+- `string` — Input string that should be padded. [`String`](/core/reference/data-types/string)
+- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a right-padded string of the given length. [`String`](/reference/data-types/string)
+Returns a right-padded string of the given length. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2560,13 +2560,13 @@ rightPadUTF8(string, length[, pad_string])
**Arguments**
-- `string` — Input string that should be padded. [`String`](/reference/data-types/string)
-- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/reference/data-types/int-uint)
-- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/reference/data-types/string)
+- `string` — Input string that should be padded. [`String`](/core/reference/data-types/string)
+- `length` — The length of the resulting string. If the value is smaller than the input string length, then the input string is shortened to `length` characters. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `pad_string` — Optional. The string to pad the input string with. If not specified, then the input string is padded with spaces. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a right-padded string of the given length. [`String`](/reference/data-types/string)
+Returns a right-padded string of the given length. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2596,8 +2596,8 @@ rightUTF8(s, offset)
**Arguments**
-- `s` — The UTF-8 encoded string to calculate a substring from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `offset` — The number of bytes of the offset. [`(U)Int*`](/reference/data-types/int-uint)
+- `s` — The UTF-8 encoded string to calculate a substring from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `offset` — The number of bytes of the offset. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
@@ -2605,7 +2605,7 @@ Returns:
- For positive `offset`, a substring of `s` with `offset` many bytes, starting from the right of the string.
- For negative `offset`, a substring of `s` with `length(s) - |offset|` bytes, starting from the right of the string.
- An empty string if `length` is `0`.
- [`String`](/reference/data-types/string)
+ [`String`](/core/reference/data-types/string)
**Examples**
@@ -2643,11 +2643,11 @@ soundex(s)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Soundex code of the input string. [`String`](/reference/data-types/string)
+Returns the Soundex code of the input string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2677,11 +2677,11 @@ space(n)
**Arguments**
-- `n` — The number of times to repeat the space. [`(U)Int*`](/reference/data-types/int-uint)
+- `n` — The number of times to repeat the space. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns astring containing a space repeated `n` times. If `n <= 0`, the function returns the empty string. [`String`](/reference/data-types/string)
+Returns astring containing a space repeated `n` times. If `n <= 0`, the function returns the empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2714,14 +2714,14 @@ sparseGrams(s[, min_ngram_length[, max_ngram_length[, min_cutoff_length]]])
**Arguments**
-- `s` — An input string. [`String`](/reference/data-types/string)
-- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/reference/data-types/int-uint)
-- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
-- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
+- `s` — An input string. [`String`](/core/reference/data-types/string)
+- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/core/reference/data-types/int-uint)
+- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
+- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected substrings. [`Array(String)`](/reference/data-types/array)
+Returns an array of selected substrings. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -2754,14 +2754,14 @@ sparseGramsHashes(s[, min_ngram_length, max_ngram_length])
**Arguments**
-- `s` — An input string. [`String`](/reference/data-types/string)
-- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/reference/data-types/int-uint)
-- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
-- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
+- `s` — An input string. [`String`](/core/reference/data-types/string)
+- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/core/reference/data-types/int-uint)
+- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
+- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected substrings CRC32 hashes. [`Array(UInt32)`](/reference/data-types/array)
+Returns an array of selected substrings CRC32 hashes. [`Array(UInt32)`](/core/reference/data-types/array)
**Examples**
@@ -2793,14 +2793,14 @@ sparseGramsHashesUTF8(s[, min_ngram_length, max_ngram_length])
**Arguments**
-- `s` — An input string. [`String`](/reference/data-types/string)
-- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/reference/data-types/int-uint)
-- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
-- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
+- `s` — An input string. [`String`](/core/reference/data-types/string)
+- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/core/reference/data-types/int-uint)
+- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
+- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected UTF-8 substrings CRC32 hashes. [`Array(UInt32)`](/reference/data-types/array)
+Returns an array of selected UTF-8 substrings CRC32 hashes. [`Array(UInt32)`](/core/reference/data-types/array)
**Examples**
@@ -2832,14 +2832,14 @@ sparseGramsUTF8(s[, min_ngram_length[, max_ngram_length[, min_cutoff_length]]])
**Arguments**
-- `s` — An input string. [`String`](/reference/data-types/string)
-- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/reference/data-types/int-uint)
-- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
-- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/reference/data-types/int-uint)
+- `s` — An input string. [`String`](/core/reference/data-types/string)
+- `min_ngram_length` — Optional. The minimum length of extracted ngram. The default and minimal value is 3. [`UInt*`](/core/reference/data-types/int-uint)
+- `max_ngram_length` — Optional. The maximum length of extracted ngram. The default value is 100. Should be not less than `min_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
+- `min_cutoff_length` — Optional. If specified, only n-grams with length greater or equal than `min_cutoff_length` are returned. The default value is the same as `min_ngram_length`. Should be not less than `min_ngram_length` and not greater than `max_ngram_length`. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of selected UTF-8 substrings. [`Array(String)`](/reference/data-types/array)
+Returns an array of selected UTF-8 substrings. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -2869,12 +2869,12 @@ startsWith(s, prefix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `prefix` — Prefix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `prefix` — Prefix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` starts with `prefix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` starts with `prefix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2904,12 +2904,12 @@ startsWithCaseInsensitive(s, prefix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `prefix` — Case-insensitive prefix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `prefix` — Case-insensitive prefix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` starts with case-insensitive `prefix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` starts with case-insensitive `prefix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2941,12 +2941,12 @@ startsWithCaseInsensitiveUTF8(s, prefix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `prefix` — Case-insensitive prefix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `prefix` — Case-insensitive prefix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` starts with case-insensitive `prefix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` starts with case-insensitive `prefix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2978,12 +2978,12 @@ startsWithUTF8(s, prefix)
**Arguments**
-- `s` — String to check. [`String`](/reference/data-types/string)
-- `prefix` — Prefix to check for. [`String`](/reference/data-types/string)
+- `s` — String to check. [`String`](/core/reference/data-types/string)
+- `prefix` — Prefix to check for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `s` starts with `prefix`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `s` starts with `prefix`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -3013,11 +3013,11 @@ stringBytesEntropy(s)
**Arguments**
-- `s` — The string to analyze. [`String`](/reference/data-types/string)
+- `s` — The string to analyze. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns Shannon's entropy of byte distribution in the string. [`Float64`](/reference/data-types/float)
+Returns Shannon's entropy of byte distribution in the string. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -3047,11 +3047,11 @@ stringBytesUniq(s)
**Arguments**
-- `s` — The string to analyze. [`String`](/reference/data-types/string)
+- `s` — The string to analyze. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of distinct bytes in the string. [`UInt16`](/reference/data-types/int-uint)
+Returns the number of distinct bytes in the string. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -3081,12 +3081,12 @@ stringJaccardIndex(s1, s2)
**Arguments**
-- `s1` — First input string. [`String`](/reference/data-types/string)
-- `s2` — Second input string. [`String`](/reference/data-types/string)
+- `s1` — First input string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Jaccard similarity index between the two strings. [`Float64`](/reference/data-types/float)
+Returns the Jaccard similarity index between the two strings. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -3116,12 +3116,12 @@ stringJaccardIndexUTF8(s1, s2)
**Arguments**
-- `s1` — First input UTF8 string. [`String`](/reference/data-types/string)
-- `s2` — Second input UTF8 string. [`String`](/reference/data-types/string)
+- `s1` — First input UTF8 string. [`String`](/core/reference/data-types/string)
+- `s2` — Second input UTF8 string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the Jaccard similarity index between the two UTF8 strings. [`Float64`](/reference/data-types/float)
+Returns the Jaccard similarity index between the two UTF8 strings. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -3158,13 +3158,13 @@ substring(s, offset[, length])
**Arguments**
-- `s` — The string to calculate a substring from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Enum`](/reference/data-types/enum)
-- `offset` — The starting position of the substring in `s`. [`(U)Int*`](/reference/data-types/int-uint)
-- `length` — Optional. The maximum length of the substring. [`(U)Int*`](/reference/data-types/int-uint)
+- `s` — The string to calculate a substring from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Enum`](/core/reference/data-types/enum)
+- `offset` — The starting position of the substring in `s`. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `length` — Optional. The maximum length of the substring. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a substring of `s` with `length` many bytes, starting at index `offset`. [`String`](/reference/data-types/string)
+Returns a substring of `s` with `length` many bytes, starting at index `offset`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3196,13 +3196,13 @@ substringIndex(s, delim, count)
**Arguments**
-- `s` — The string to extract substring from. [`String`](/reference/data-types/string)
-- `delim` — The character to split. [`String`](/reference/data-types/string)
-- `count` — The number of occurrences of the delimiter to count before extracting the substring. If count is positive, everything to the left of the final delimiter (counting from the left) is returned. If count is negative, everything to the right of the final delimiter (counting from the right) is returned. [`UInt`](/reference/data-types/int-uint) or [`Int`](/reference/data-types/int-uint)
+- `s` — The string to extract substring from. [`String`](/core/reference/data-types/string)
+- `delim` — The character to split. [`String`](/core/reference/data-types/string)
+- `count` — The number of occurrences of the delimiter to count before extracting the substring. If count is positive, everything to the left of the final delimiter (counting from the left) is returned. If count is negative, everything to the right of the final delimiter (counting from the right) is returned. [`UInt`](/core/reference/data-types/int-uint) or [`Int`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a substring of `s` before `count` occurrences of `delim`. [`String`](/reference/data-types/string)
+Returns a substring of `s` before `count` occurrences of `delim`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3234,13 +3234,13 @@ substringIndexUTF8(s, delim, count)
**Arguments**
-- `s` — The string to extract substring from. [`String`](/reference/data-types/string)
-- `delim` — The character to split. [`String`](/reference/data-types/string)
-- `count` — The number of occurrences of the delimiter to count before extracting the substring. If count is positive, everything to the left of the final delimiter (counting from the left) is returned. If count is negative, everything to the right of the final delimiter (counting from the right) is returned. [`UInt`](/reference/data-types/int-uint) or [`Int`](/reference/data-types/int-uint)
+- `s` — The string to extract substring from. [`String`](/core/reference/data-types/string)
+- `delim` — The character to split. [`String`](/core/reference/data-types/string)
+- `count` — The number of occurrences of the delimiter to count before extracting the substring. If count is positive, everything to the left of the final delimiter (counting from the left) is returned. If count is negative, everything to the right of the final delimiter (counting from the right) is returned. [`UInt`](/core/reference/data-types/int-uint) or [`Int`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a substring of `s` before `count` occurrences of `delim`. [`String`](/reference/data-types/string)
+Returns a substring of `s` before `count` occurrences of `delim`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3278,13 +3278,13 @@ substringUTF8(s, offset[, length])
**Arguments**
-- `s` — The string to calculate a substring from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Enum`](/reference/data-types/enum)
-- `offset` — The starting position of the substring in `s`. [`Int`](/reference/data-types/int-uint) or [`UInt`](/reference/data-types/int-uint)
-- `length` — The maximum length of the substring. Optional. [`Int`](/reference/data-types/int-uint) or [`UInt`](/reference/data-types/int-uint)
+- `s` — The string to calculate a substring from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Enum`](/core/reference/data-types/enum)
+- `offset` — The starting position of the substring in `s`. [`Int`](/core/reference/data-types/int-uint) or [`UInt`](/core/reference/data-types/int-uint)
+- `length` — The maximum length of the substring. Optional. [`Int`](/core/reference/data-types/int-uint) or [`UInt`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a substring of `s` with `length` many code points, starting at code point index `offset`. [`String`](/reference/data-types/string)
+Returns a substring of `s` with `length` many code points, starting at code point index `offset`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3313,11 +3313,11 @@ toValidUTF8(s)
**Arguments**
-- `s` — Any set of bytes represented as the String data type object. [`String`](/reference/data-types/string)
+- `s` — Any set of bytes represented as the String data type object. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a valid UTF-8 string. [`String`](/reference/data-types/string)
+Returns a valid UTF-8 string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3351,12 +3351,12 @@ trimBoth(s[, trim_characters])
**Arguments**
-- `s` — String to trim. [`String`](/reference/data-types/string)
-- `trim_characters` — Optional. Characters to trim. If not specified, common whitespace characters are removed. [`String`](/reference/data-types/string)
+- `s` — String to trim. [`String`](/core/reference/data-types/string)
+- `trim_characters` — Optional. Characters to trim. If not specified, common whitespace characters are removed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the string with specified characters trimmed from both ends. [`String`](/reference/data-types/string)
+Returns the string with specified characters trimmed from both ends. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3389,12 +3389,12 @@ trimLeft(input[, trim_characters])
**Arguments**
-- `input` — String to trim. [`String`](/reference/data-types/string)
-- `trim_characters` — Optional. Characters to trim. If not specified, common whitespace characters are removed. [`String`](/reference/data-types/string)
+- `input` — String to trim. [`String`](/core/reference/data-types/string)
+- `trim_characters` — Optional. Characters to trim. If not specified, common whitespace characters are removed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the string with specified characters trimmed from the left. [`String`](/reference/data-types/string)
+Returns the string with specified characters trimmed from the left. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3427,12 +3427,12 @@ trimRight(s[, trim_characters])
**Arguments**
-- `s` — String to trim. [`String`](/reference/data-types/string)
-- `trim_characters` — Optional characters to trim. If not specified, common whitespace characters are removed. [`String`](/reference/data-types/string)
+- `s` — String to trim. [`String`](/core/reference/data-types/string)
+- `trim_characters` — Optional characters to trim. If not specified, common whitespace characters are removed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the string with specified characters trimmed from the right. [`String`](/reference/data-types/string)
+Returns the string with specified characters trimmed from the right. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3462,11 +3462,11 @@ tryBase32Decode(encoded)
**Arguments**
-- `encoded` — String column or constant to decode. If the string is not valid Base32-encoded, returns an empty string in case of error. [`String`](/reference/data-types/string)
+- `encoded` — String column or constant to decode. If the string is not valid Base32-encoded, returns an empty string in case of error. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the decoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the decoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3496,12 +3496,12 @@ tryBase58Decode(encoded[, expected_size])
**Arguments**
-- `encoded` — String column or constant. If the string is not valid Base58-encoded, returns an empty string in case of error. [`String`](/reference/data-types/string)
-- `expected_size` — Optional. Expected decoded size in bytes. When 32 or 64, an optimized decoder is used; for other values, the generic decoder is used. [`UInt8, UInt16, UInt32, or UInt64`](/reference/data-types/int-uint)
+- `encoded` — String column or constant. If the string is not valid Base58-encoded, returns an empty string in case of error. [`String`](/core/reference/data-types/string)
+- `expected_size` — Optional. Expected decoded size in bytes. When 32 or 64, an optimized decoder is used; for other values, the generic decoder is used. [`UInt8, UInt16, UInt32, or UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string containing the decoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the decoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3531,11 +3531,11 @@ tryBase64Decode(encoded)
**Arguments**
-- `encoded` — String column or constant to decode. If the string is not valid Base64-encoded, returns an empty string in case of error. [`String`](/reference/data-types/string)
+- `encoded` — String column or constant to decode. If the string is not valid Base64-encoded, returns an empty string in case of error. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the decoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the decoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3565,11 +3565,11 @@ tryBase64URLDecode(encoded)
**Arguments**
-- `encoded` — String column or constant to decode. If the string is not valid Base64-encoded, returns an empty string in case of error. [`String`](/reference/data-types/string)
+- `encoded` — String column or constant to decode. If the string is not valid Base64-encoded, returns an empty string in case of error. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string containing the decoded value of the argument. [`String`](/reference/data-types/string)
+Returns a string containing the decoded value of the argument. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3600,11 +3600,11 @@ tryIdnaEncode(s)
**Arguments**
-- `s` — Input string. [`String`](/reference/data-types/string)
+- `s` — Input string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an ASCII representation of the input string according to the IDNA mechanism of the input value, or empty string if input is invalid. [`String`](/reference/data-types/string)
+Returns an ASCII representation of the input string according to the IDNA mechanism of the input value, or empty string if input is invalid. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3634,11 +3634,11 @@ tryPunycodeDecode(s)
**Arguments**
-- `s` — Punycode-encoded string. [`String`](/reference/data-types/string)
+- `s` — Punycode-encoded string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the plaintext of the input value, or empty string if input is invalid. [`String`](/reference/data-types/string)
+Returns the plaintext of the input value, or empty string if input is invalid. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3670,11 +3670,11 @@ upper(s)
**Arguments**
-- `s` — The string to convert to uppercase. [`String`](/reference/data-types/string)
+- `s` — The string to convert to uppercase. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an uppercase string from `s`. [`String`](/reference/data-types/string)
+Returns an uppercase string from `s`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -3710,11 +3710,11 @@ upperUTF8(s)
**Arguments**
-- `s` — A string type. [`String`](/reference/data-types/string)
+- `s` — A string type. [`String`](/core/reference/data-types/string)
**Returned value**
-A String data type value. [`String`](/reference/data-types/string)
+A String data type value. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/regular-functions/string-replace-functions.mdx b/core/reference/functions/regular-functions/string-replace-functions.mdx
similarity index 83%
rename from reference/functions/regular-functions/string-replace-functions.mdx
rename to core/reference/functions/regular-functions/string-replace-functions.mdx
index df68834d..ba0985bd 100644
--- a/reference/functions/regular-functions/string-replace-functions.mdx
+++ b/core/reference/functions/regular-functions/string-replace-functions.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
keywords: ['string replacement']
---
-[General strings functions](/reference/functions/regular-functions/string-functions) and [functions for searching in strings](/reference/functions/regular-functions/string-search-functions) are described separately.
+[General strings functions](/core/reference/functions/regular-functions/string-functions) and [functions for searching in strings](/core/reference/functions/regular-functions/string-search-functions) are described separately.
The documentation below is generated from the `system.functions` system table.
@@ -38,12 +38,12 @@ format(pattern, s0[, s1, ...])
**Arguments**
-- `pattern` — The format string containing placeholders. [`String`](/reference/data-types/string)
-- `s0[, s1, ...]` — One or more values to substitute into the pattern. [`Any`](/reference/data-types)
+- `pattern` — The format string containing placeholders. [`String`](/core/reference/data-types/string)
+- `s0[, s1, ...]` — One or more values to substitute into the pattern. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a formatted string. [`String`](/reference/data-types/string)
+Returns a formatted string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -85,14 +85,14 @@ overlay(s, replace, offset[, length])
**Arguments**
-- `s` — The input string. [`String`](/reference/data-types/string)
-- `replace` — The replacement string [`const String`](/reference/data-types/string)
-- `offset` — An integer type `Int` (1-based). If `offset` is negative, it is counted from the end of the string `s`. [`Int`](/reference/data-types/int-uint)
-- `length` — Optional. An integer type `Int`. `length` specifies the length of the snippet within the input string `s` to be replaced. If `length` is not specified, the number of bytes removed from `s` equals the length of `replace`; otherwise `length` bytes are removed. [`Int`](/reference/data-types/int-uint)
+- `s` — The input string. [`String`](/core/reference/data-types/string)
+- `replace` — The replacement string [`const String`](/core/reference/data-types/string)
+- `offset` — An integer type `Int` (1-based). If `offset` is negative, it is counted from the end of the string `s`. [`Int`](/core/reference/data-types/int-uint)
+- `length` — Optional. An integer type `Int`. `length` specifies the length of the snippet within the input string `s` to be replaced. If `length` is not specified, the number of bytes removed from `s` equals the length of `replace`; otherwise `length` bytes are removed. [`Int`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string with replacement. [`String`](/reference/data-types/string)
+Returns a string with replacement. [`String`](/core/reference/data-types/string)
**Examples**
@@ -136,14 +136,14 @@ overlayUTF8(s, replace, offset[, length])
**Arguments**
-- `s` — The input string. [`String`](/reference/data-types/string)
-- `replace` — The replacement string. [`const String`](/reference/data-types/string)
-- `offset` — An integer type `Int` (1-based). If `offset` is negative, it is counted from the end of the input string `s`. [`(U)Int*`](/reference/data-types/int-uint)
-- `length` — Optional. Specifies the length of the snippet within the input string `s` to be replaced. If `length` is not specified, the number of characters removed from `s` equals the length of `replace`, otherwise `length` characters are removed. [`(U)Int*`](/reference/data-types/int-uint)
+- `s` — The input string. [`String`](/core/reference/data-types/string)
+- `replace` — The replacement string. [`const String`](/core/reference/data-types/string)
+- `offset` — An integer type `Int` (1-based). If `offset` is negative, it is counted from the end of the input string `s`. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `length` — Optional. Specifies the length of the snippet within the input string `s` to be replaced. If `length` is not specified, the number of characters removed from `s` equals the length of `replace`, otherwise `length` characters are removed. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a string with replacement. [`String`](/reference/data-types/string)
+Returns a string with replacement. [`String`](/core/reference/data-types/string)
**Examples**
@@ -177,12 +177,12 @@ printf(format[, sub1, sub2, ...])
**Arguments**
-- `format` — The format string with `%` specifiers. [`String`](/reference/data-types/string)
-- `sub1, sub2, ...` — Optional. Zero or more values to substitute into the format string. [`Any`](/reference/data-types)
+- `format` — The format string with `%` specifiers. [`String`](/core/reference/data-types/string)
+- `sub1, sub2, ...` — Optional. Zero or more values to substitute into the format string. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a formatted string. [`String`](/reference/data-types/string)
+Returns a formatted string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -215,11 +215,11 @@ regexpQuoteMeta(s)
**Arguments**
-- `s` — The input string containing characters to be escaped for regex. [`String`](/reference/data-types/string)
+- `s` — The input string containing characters to be escaped for regex. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with regex special characters escaped. [`String`](/reference/data-types/string)
+Returns a string with regex special characters escaped. [`String`](/core/reference/data-types/string)
**Examples**
@@ -251,13 +251,13 @@ replaceAll(haystack, pattern, replacement)
**Arguments**
-- `haystack` — The input string to search in. [`String`](/reference/data-types/string)
-- `pattern` — The substring to find and replace. [`const String`](/reference/data-types/string)
-- `replacement` — The string to replace the pattern with. [`const String`](/reference/data-types/string)
+- `haystack` — The input string to search in. [`String`](/core/reference/data-types/string)
+- `pattern` — The substring to find and replace. [`const String`](/core/reference/data-types/string)
+- `replacement` — The string to replace the pattern with. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with all occurrences of pattern replaced. [`String`](/reference/data-types/string)
+Returns a string with all occurrences of pattern replaced. [`String`](/core/reference/data-types/string)
**Examples**
@@ -288,13 +288,13 @@ replaceOne(haystack, pattern, replacement)
**Arguments**
-- `haystack` — The input string to search in. [`String`](/reference/data-types/string)
-- `pattern` — The substring to find and replace. [`const String`](/reference/data-types/string)
-- `replacement` — The string to replace the pattern with. [`const String`](/reference/data-types/string)
+- `haystack` — The input string to search in. [`String`](/core/reference/data-types/string)
+- `pattern` — The substring to find and replace. [`const String`](/core/reference/data-types/string)
+- `replacement` — The string to replace the pattern with. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with the first occurrence of pattern replaced. [`String`](/reference/data-types/string)
+Returns a string with the first occurrence of pattern replaced. [`String`](/core/reference/data-types/string)
**Examples**
@@ -327,13 +327,13 @@ replaceRegexpAll(haystack, pattern, replacement)
**Arguments**
-- `haystack` — The input string to search in. [`String`](/reference/data-types/string)
-- `pattern` — The regular expression pattern to find. [`const String`](/reference/data-types/string)
-- `replacement` — The string to replace the pattern with, may contain substitutions. [`const String`](/reference/data-types/string)
+- `haystack` — The input string to search in. [`String`](/core/reference/data-types/string)
+- `pattern` — The regular expression pattern to find. [`const String`](/core/reference/data-types/string)
+- `replacement` — The string to replace the pattern with, may contain substitutions. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with all regex matches replaced. [`String`](/reference/data-types/string)
+Returns a string with all regex matches replaced. [`String`](/core/reference/data-types/string)
**Examples**
@@ -379,13 +379,13 @@ replaceRegexpOne(haystack, pattern, replacement)
**Arguments**
-- `haystack` — The input string to search in. [`String`](/reference/data-types/string)
-- `pattern` — The regular expression pattern to find. [`const String`](/reference/data-types/string)
-- `replacement` — The string to replace the pattern with, may contain substitutions. [`const String`](/reference/data-types/string)
+- `haystack` — The input string to search in. [`String`](/core/reference/data-types/string)
+- `pattern` — The regular expression pattern to find. [`const String`](/core/reference/data-types/string)
+- `replacement` — The string to replace the pattern with, may contain substitutions. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with the first regex match replaced. [`String`](/reference/data-types/string)
+Returns a string with the first regex match replaced. [`String`](/core/reference/data-types/string)
**Examples**
@@ -440,13 +440,13 @@ translate(s, from, to)
**Arguments**
-- `s` — The input string to translate. [`String`](/reference/data-types/string)
-- `from` — A constant ASCII string containing characters to replace. [`const String`](/reference/data-types/string)
-- `to` — A constant ASCII string containing replacement characters. [`const String`](/reference/data-types/string)
+- `s` — The input string to translate. [`String`](/core/reference/data-types/string)
+- `from` — A constant ASCII string containing characters to replace. [`const String`](/core/reference/data-types/string)
+- `to` — A constant ASCII string containing replacement characters. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a string with character translations applied. [`String`](/reference/data-types/string)
+Returns a string with character translations applied. [`String`](/core/reference/data-types/string)
**Examples**
@@ -488,13 +488,13 @@ translateUTF8(s, from, to)
**Arguments**
-- `s` — UTF-8 input string to translate. [`String`](/reference/data-types/string)
-- `from` — A constant UTF-8 string containing characters to replace. [`const String`](/reference/data-types/string)
-- `to` — A constant UTF-8 string containing replacement characters. [`const String`](/reference/data-types/string)
+- `s` — UTF-8 input string to translate. [`String`](/core/reference/data-types/string)
+- `from` — A constant UTF-8 string containing characters to replace. [`const String`](/core/reference/data-types/string)
+- `to` — A constant UTF-8 string containing replacement characters. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a `String` data type value. [`String`](/reference/data-types/string)
+Returns a `String` data type value. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/regular-functions/string-search-functions.mdx b/core/reference/functions/regular-functions/string-search-functions.mdx
similarity index 82%
rename from reference/functions/regular-functions/string-search-functions.mdx
rename to core/reference/functions/regular-functions/string-search-functions.mdx
index aa7346c6..3bf7fcc3 100644
--- a/reference/functions/regular-functions/string-search-functions.mdx
+++ b/core/reference/functions/regular-functions/string-search-functions.mdx
@@ -17,9 +17,9 @@ Functions in this section also assume that the searched string (referred to in t
violated, no exception is thrown and results are undefined. Search with UTF-8 encoded strings is usually provided by separate function
variants. Likewise, if a UTF-8 function variant is used and the input strings are not UTF-8 encoded text, no exception is thrown and the
results are undefined. Note that no automatic Unicode normalization is performed, however you can use the
-[normalizeUTF8*()](/reference/functions/regular-functions/string-functions#normalizeUTF8NFC) functions for that.
+[normalizeUTF8*()](/core/reference/functions/regular-functions/string-functions#normalizeUTF8NFC) functions for that.
-[General strings functions](/reference/functions/regular-functions/string-functions) and [functions for replacing in strings](/reference/functions/regular-functions/string-replace-functions) are described separately.
+[General strings functions](/core/reference/functions/regular-functions/string-functions) and [functions for replacing in strings](/core/reference/functions/regular-functions/string-replace-functions) are described separately.
The documentation below is generated from the `system.functions` system table.
@@ -57,12 +57,12 @@ countMatches(haystack, pattern)
**Arguments**
-- `haystack` — The string to search in. [`String`](/reference/data-types/string)
-- `pattern` — Regular expression pattern. [`String`](/reference/data-types/string)
+- `haystack` — The string to search in. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expression pattern. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of matches found. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of matches found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -93,12 +93,12 @@ countMatchesCaseInsensitive(haystack, pattern)
**Arguments**
-- `haystack` — The string to search in. [`String`](/reference/data-types/string)
-- `pattern` — Regular expression pattern. [`const String`](/reference/data-types/string)
+- `haystack` — The string to search in. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expression pattern. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the number of matches found. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of matches found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -128,11 +128,11 @@ countSubstrings(haystack, needle[, start_pos])
**Arguments**
-- `haystack` — String in which the search is performed. [String](/reference/data-types/string) or [Enum](/reference/data-types/enum). - `needle` — Substring to be searched. [String](/reference/data-types/string). - `start_pos` — Position (1-based) in `haystack` at which the search starts. [UInt](/reference/data-types/int-uint). Optional.
+- `haystack` — String in which the search is performed. [String](/core/reference/data-types/string) or [Enum](/core/reference/data-types/enum). - `needle` — Substring to be searched. [String](/core/reference/data-types/string). - `start_pos` — Position (1-based) in `haystack` at which the search starts. [UInt](/core/reference/data-types/int-uint). Optional.
**Returned value**
-The number of occurrences. [`UInt64`](/reference/data-types/int-uint)
+The number of occurrences. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -174,13 +174,13 @@ countSubstringsCaseInsensitive(haystack, needle[, start_pos])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`Enum`](/reference/data-types/enum)
-- `needle` — Substring to be searched. [`String`](/reference/data-types/string)
-- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/reference/data-types/int-uint)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`Enum`](/core/reference/data-types/enum)
+- `needle` — Substring to be searched. [`String`](/core/reference/data-types/string)
+- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the number of occurrences of the neddle in the haystack. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of occurrences of the neddle in the haystack. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -223,13 +223,13 @@ countSubstringsCaseInsensitiveUTF8(haystack, needle[, start_pos])
**Arguments**
-- `haystack` — UTF-8 string in which the search is performed. [`String`](/reference/data-types/string) or [`Enum`](/reference/data-types/enum)
-- `needle` — Substring to be searched. [`String`](/reference/data-types/string)
-- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/reference/data-types/int-uint)
+- `haystack` — UTF-8 string in which the search is performed. [`String`](/core/reference/data-types/string) or [`Enum`](/core/reference/data-types/enum)
+- `needle` — Substring to be searched. [`String`](/core/reference/data-types/string)
+- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the number of occurrences of the needle in the haystack. [`UInt64`](/reference/data-types/int-uint)
+Returns the number of occurrences of the needle in the haystack. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -277,12 +277,12 @@ extract(haystack, pattern)
**Arguments**
-- `haystack` — String from which to extract. [`String`](/reference/data-types/string)
-- `pattern` — Regular expression, typically containing a capturing group. [`const String`](/reference/data-types/string)
+- `haystack` — String from which to extract. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expression, typically containing a capturing group. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns extracted fragment as a string. [`String`](/reference/data-types/string)
+Returns extracted fragment as a string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -328,12 +328,12 @@ extractAll(haystack, pattern)
**Arguments**
-- `haystack` — String from which to extract fragments. [`String`](/reference/data-types/string)
-- `pattern` — Regular expression, optionally containing capturing groups. [`const String`](/reference/data-types/string)
+- `haystack` — String from which to extract fragments. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expression, optionally containing capturing groups. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns array of extracted fragments. [`Array(String)`](/reference/data-types/array)
+Returns array of extracted fragments. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -375,12 +375,12 @@ extractAllGroupsHorizontal(s, regexp)
**Arguments**
-- `s` — Input string to extract from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `regexp` — Regular expression to match by. [`const String`](/reference/data-types/string) or [`const FixedString`](/reference/data-types/fixedstring)
+- `s` — Input string to extract from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `regexp` — Regular expression to match by. [`const String`](/core/reference/data-types/string) or [`const FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns an array of arrays, where each inner array contains all captures from one capturing group across all matches. The first inner array contains all captures from group 1, the second from group 2, etc. If no matches are found, returns an empty array. [`Array(Array(String))`](/reference/data-types/array)
+Returns an array of arrays, where each inner array contains all captures from one capturing group across all matches. The first inner array contains all captures from group 1, the second from group 2, etc. If no matches are found, returns an empty array. [`Array(Array(String))`](/core/reference/data-types/array)
**Examples**
@@ -403,7 +403,7 @@ SELECT extractAllGroupsHorizontal(s, '< ([\\w\\-]+): ([^\\r\\n]+)');
Introduced in: v20.5.0
-Extracts the capturing groups from the first substring matched by a regular expression. To extract groups from all matches, use [`extractAllGroupsHorizontal`](#extractAllGroupsHorizontal) or [`extractAllGroupsVertical`](/reference/functions/regular-functions/splitting-merging-functions#extractAllGroupsVertical).
+Extracts the capturing groups from the first substring matched by a regular expression. To extract groups from all matches, use [`extractAllGroupsHorizontal`](#extractAllGroupsHorizontal) or [`extractAllGroupsVertical`](/core/reference/functions/regular-functions/splitting-merging-functions#extractAllGroupsVertical).
**Syntax**
@@ -414,12 +414,12 @@ extractGroups(s, regexp)
**Arguments**
-- `s` — Input string to extract from. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `regexp` — Regular expression. Must contain at least one capturing group. Constant. [`const String`](/reference/data-types/string) or [`const FixedString`](/reference/data-types/fixedstring)
+- `s` — Input string to extract from. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `regexp` — Regular expression. Must contain at least one capturing group. Constant. [`const String`](/core/reference/data-types/string) or [`const FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-If the regular expression matches, returns an array containing the captured groups (`1` to `N`, where `N` is the number of capturing groups in `regexp`) of the first match. If there is no match, returns an empty array. [`Array(String)`](/reference/data-types/array)
+If the regular expression matches, returns an array containing the captured groups (`1` to `N`, where `N` is the number of capturing groups in `regexp`) of the first match. If there is no match, returns an empty array. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -445,16 +445,16 @@ Introduced in: v25.10.0
Like [`hasAnyTokens`](#hasAnyTokens), but returns 1, if all tokens in the `needle` string or array match the `input` string, and 0 otherwise. If `input` is a column, returns all rows that satisfy this condition.
-Column `input` should have a [text index](/reference/engines/table-engines/mergetree-family/textindexes) defined for optimal performance.
+Column `input` should have a [text index](/core/reference/engines/table-engines/mergetree-family/textindexes) defined for optimal performance.
If no text index is defined, the function performs a brute-force column scan which is orders of magnitude slower than an index lookup.
Prior to searching, the function tokenizes
- the `input` argument (always), and
-- the `needle` argument (if given as a [String](/reference/data-types/string))
+- the `needle` argument (if given as a [String](/core/reference/data-types/string))
using the tokenizer specified for the text index.
If the column has no text index defined, the `splitByNonAlpha` tokenizer is used instead.
-If the `needle` argument is of type [Array(String)](/reference/data-types/array), each array element is treated as a token — no additional tokenization takes place.
+If the `needle` argument is of type [Array(String)](/core/reference/data-types/array), each array element is treated as a token — no additional tokenization takes place.
Duplicate tokens are ignored.
For example, needles = ['ClickHouse', 'ClickHouse'] is treated the same as ['ClickHouse'].
@@ -470,13 +470,13 @@ hasAllTokens(input, needles)
**Arguments**
-- `input` — The input column. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Array(String)`](/reference/data-types/array) or [`Array(FixedString)`](/reference/data-types/array)
-- `needles` — Tokens to be searched. [`String`](/reference/data-types/string) or [`Array(String)`](/reference/data-types/array)
-- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/reference/data-types/string)
+- `input` — The input column. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Array(String)`](/core/reference/data-types/array) or [`Array(FixedString)`](/core/reference/data-types/array)
+- `needles` — Tokens to be searched. [`String`](/core/reference/data-types/string) or [`Array(String)`](/core/reference/data-types/array)
+- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns 1, if all needles match. 0, otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1, if all needles match. 0, otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -604,16 +604,16 @@ Introduced in: v25.10.0
Returns 1, if at least one token in the `needle` string or array matches the `input` string, and 0 otherwise. If `input` is a column, returns all rows that satisfy this condition.
-Column `input` should have a [text index](/reference/engines/table-engines/mergetree-family/textindexes) defined for optimal performance.
+Column `input` should have a [text index](/core/reference/engines/table-engines/mergetree-family/textindexes) defined for optimal performance.
If no text index is defined, the function performs a brute-force column scan which is orders of magnitude slower than an index lookup.
Prior to searching, the function tokenizes
- the `input` argument (always), and
-- the `needle` argument (if given as a [String](/reference/data-types/string))
+- the `needle` argument (if given as a [String](/core/reference/data-types/string))
using the tokenizer specified for the text index.
If the column has no text index defined, the `splitByNonAlpha` tokenizer is used instead.
-If the `needle` argument is of type [Array(String)](/reference/data-types/array), each array element is treated as a token — no additional tokenization takes place.
+If the `needle` argument is of type [Array(String)](/core/reference/data-types/array), each array element is treated as a token — no additional tokenization takes place.
Duplicate tokens are ignored.
For example, ['ClickHouse', 'ClickHouse'] is treated the same as ['ClickHouse'].
@@ -629,13 +629,13 @@ hasAnyTokens(input, needles)
**Arguments**
-- `input` — The input column. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Nullable(String)`](/reference/data-types/nullable) or [`Nullable(FixedString)`](/reference/data-types/nullable) or [`Array(String)`](/reference/data-types/array) or [`Array(FixedString)`](/reference/data-types/array) or [`Array(Nullable(String))`](/reference/data-types/array) or [`Array(Nullable(FixedString))`](/reference/data-types/array)
-- `needles` — Tokens to be searched. [`String`](/reference/data-types/string) or [`Array(String)`](/reference/data-types/array)
-- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/reference/data-types/string)
+- `input` — The input column. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Nullable(String)`](/core/reference/data-types/nullable) or [`Nullable(FixedString)`](/core/reference/data-types/nullable) or [`Array(String)`](/core/reference/data-types/array) or [`Array(FixedString)`](/core/reference/data-types/array) or [`Array(Nullable(String))`](/core/reference/data-types/array) or [`Array(Nullable(FixedString))`](/core/reference/data-types/array)
+- `needles` — Tokens to be searched. [`String`](/core/reference/data-types/string) or [`Array(String)`](/core/reference/data-types/array)
+- `tokenizer` — The tokenizer to use. Valid arguments are `splitByNonAlpha`, `splitByString`, `asciiCJK`, `ngrams`, `sparseGrams`, and `array`. Optional, if not set explicitly, defaults to `splitByNonAlpha`. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1`, if there was at least one match. `0`, otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1`, if there was at least one match. `0`, otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -769,13 +769,13 @@ hasPhrase(input, phrase[, tokenizer])
**Arguments**
-- `input` — The input column. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `phrase` — Phrase to search for. [`const String`](/reference/data-types/string)
-- `tokenizer` — The tokenizer to use. Optional, defaults to `splitByNonAlpha`. [`const String`](/reference/data-types/string)
+- `input` — The input column. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `phrase` — Phrase to search for. [`const String`](/core/reference/data-types/string)
+- `tokenizer` — The tokenizer to use. Optional, defaults to `splitByNonAlpha`. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the phrase is found as a consecutive token sequence, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the phrase is found as a consecutive token sequence, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -819,12 +819,12 @@ hasSubsequence(haystack, needle)
**Arguments**
-- `haystack` — String in which to search for the subsequence. [`String`](/reference/data-types/string)
-- `needle` — Subsequence to be searched. [`String`](/reference/data-types/string)
+- `haystack` — String in which to search for the subsequence. [`String`](/core/reference/data-types/string)
+- `needle` — Subsequence to be searched. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if needle is a subsequence of haystack, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if needle is a subsequence of haystack, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -866,12 +866,12 @@ hasSubsequenceCaseInsensitive(haystack, needle)
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — Subsequence to be searched. [`String`](/reference/data-types/string)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — Subsequence to be searched. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns 1, if needle is a subsequence of haystack, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1, if needle is a subsequence of haystack, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -901,12 +901,12 @@ hasSubsequenceCaseInsensitiveUTF8(haystack, needle)
**Arguments**
-- `haystack` — UTF8-encoded string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — UTF8-encoded subsequence string to be searched. [`String`](/reference/data-types/string)
+- `haystack` — UTF8-encoded string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — UTF8-encoded subsequence string to be searched. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns 1, if needle is a subsequence of haystack, 0 otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns 1, if needle is a subsequence of haystack, 0 otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -926,7 +926,7 @@ SELECT hasSubsequenceCaseInsensitiveUTF8('ClickHouse - столбцовая си
Introduced in: v23.7.0
-Like [`hasSubsequence`](/reference/functions/regular-functions/string-search-functions#hasSubsequence) but assumes haystack and needle are UTF-8 encoded strings.
+Like [`hasSubsequence`](/core/reference/functions/regular-functions/string-search-functions#hasSubsequence) but assumes haystack and needle are UTF-8 encoded strings.
**Syntax**
@@ -937,12 +937,12 @@ hasSubsequenceUTF8(haystack, needle)
**Arguments**
-- `haystack` — The string in which to search. [`String`](/reference/data-types/string)
-- `needle` — The subsequence to search for. [`String`](/reference/data-types/string)
+- `haystack` — The string in which to search. [`String`](/core/reference/data-types/string)
+- `needle` — The subsequence to search for. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `needle` is a subsequence of `haystack`, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `needle` is a subsequence of `haystack`, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -976,7 +976,7 @@ Introduced in: v20.1.0
Checks if the given token is present in the haystack.
-Uses [splitByNonAlpha](/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha) as tokenizer, i.e. a token is defined as the longest possible sub-sequence of consecutive characters `[0-9A-Za-z_]` (numbers, ASCII characters and underscore).
+Uses [splitByNonAlpha](/core/reference/functions/regular-functions/splitting-merging-functions#splitByNonAlpha) as tokenizer, i.e. a token is defined as the longest possible sub-sequence of consecutive characters `[0-9A-Za-z_]` (numbers, ASCII characters and underscore).
**Syntax**
@@ -987,12 +987,12 @@ hasToken(haystack, token)
**Arguments**
-- `haystack` — String to be searched. [`String`](/reference/data-types/string)
-- `token` — Token to search for. [`const String`](/reference/data-types/string)
+- `haystack` — String to be searched. [`String`](/core/reference/data-types/string)
+- `token` — Token to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the token is found, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the token is found, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1063,12 +1063,12 @@ hasTokenOrNull(haystack, token)
**Arguments**
-- `haystack` — String to be searched. Must be constant. [`String`](/reference/data-types/string)
-- `token` — Token to search for. [`const String`](/reference/data-types/string)
+- `haystack` — String to be searched. Must be constant. [`String`](/core/reference/data-types/string)
+- `token` — Token to search for. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the token is found, `0` otherwise, null if token is ill-formed. [`Nullable(UInt8)`](/reference/data-types/nullable)
+Returns `1` if the token is found, `0` otherwise, null if token is ill-formed. [`Nullable(UInt8)`](/core/reference/data-types/nullable)
**Examples**
@@ -1101,14 +1101,14 @@ highlight(haystack, needles[, open_tag, close_tag])
**Arguments**
-- `haystack` — The text to search in. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `needles` — An array of search terms to highlight. [`const Array(String)`](/reference/data-types/array)
-- `open_tag` — The opening tag to insert before each match. Default: ``. [`const String`](/reference/data-types/string)
-- `close_tag` — The closing tag to insert after each match. Default: ``. [`const String`](/reference/data-types/string)
+- `haystack` — The text to search in. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `needles` — An array of search terms to highlight. [`const Array(String)`](/core/reference/data-types/array)
+- `open_tag` — The opening tag to insert before each match. Default: ``. [`const String`](/core/reference/data-types/string)
+- `close_tag` — The closing tag to insert after each match. Default: ``. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the input text with matched terms wrapped in the specified tags. [`String`](/reference/data-types/string)
+Returns the input text with matched terms wrapped in the specified tags. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1151,12 +1151,12 @@ ilike(haystack, pattern)
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `pattern` — LIKE pattern to match against. [`String`](/reference/data-types/string)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `pattern` — LIKE pattern to match against. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the string matches the LIKE pattern (case-insensitive), otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the string matches the LIKE pattern (case-insensitive), otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1194,7 +1194,7 @@ To match against literal `%`, `_` and `\` (which are `LIKE` metacharacters), pre
The backslash loses its special meaning (i.e. is interpreted literally) if it prepends a character different than `%`, `_` or `\`.
-ClickHouse requires backslashes in strings [to be quoted as well](/reference/syntax#string), so you would actually need to write `\\%`, `\\_` and `\\\\`.
+ClickHouse requires backslashes in strings [to be quoted as well](/core/reference/syntax#string), so you would actually need to write `\\%`, `\\_` and `\\\\`.
For `LIKE` expressions of the form `%needle%`, the function is as fast as the `position` function.
@@ -1210,12 +1210,12 @@ like(haystack, pattern)
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `pattern` — `LIKE` pattern to match against. Can contain `%` (matches any number of characters), `_` (matches single character), and `\` for escaping. [`String`](/reference/data-types/string)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `pattern` — `LIKE` pattern to match against. Can contain `%` (matches any number of characters), `_` (matches single character), and `\` for escaping. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the string matches the `LIKE` pattern, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the string matches the `LIKE` pattern, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1279,13 +1279,13 @@ locate(needle, haystack[, start_pos])
**Arguments**
-- `needle` — Substring to be searched. [`String`](/reference/data-types/string)
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`Enum`](/reference/data-types/enum)
-- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt`](/reference/data-types/int-uint)
+- `needle` — Substring to be searched. [`String`](/core/reference/data-types/string)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`Enum`](/core/reference/data-types/enum)
+- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt`](/core/reference/data-types/int-uint)
**Returned value**
-Returns starting position in bytes and counting from 1, if the substring was found, `0`, if the substring was not found. [`UInt64`](/reference/data-types/int-uint)
+Returns starting position in bytes and counting from 1, if the substring was found, `0`, if the substring was not found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1332,12 +1332,12 @@ match(haystack, pattern)
**Arguments**
-- `haystack` — String in which the pattern is searched. [`String`](/reference/data-types/string)
-- `pattern` — Regular expression pattern. [`const String`](/reference/data-types/string)
+- `haystack` — String in which the pattern is searched. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expression pattern. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the pattern matches, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the pattern matches, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1391,13 +1391,13 @@ multiFuzzyMatchAllIndices(haystack, distance, [pattern1, pattern2, ..., patternN
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `distance` — The maximum edit distance for fuzzy matching. [`UInt8`](/reference/data-types/int-uint)
-- `pattern` — Array of patterns to match against. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `distance` — The maximum edit distance for fuzzy matching. [`UInt8`](/core/reference/data-types/int-uint)
+- `pattern` — Array of patterns to match against. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns an array of all indices (starting from 1) that match the haystack within the specified edit distance in any order. Returns an empty array if no matches are found. [`Array(UInt64)`](/reference/data-types/array)
+Returns an array of all indices (starting from 1) that match the haystack within the specified edit distance in any order. Returns an empty array if no matches are found. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -1434,13 +1434,13 @@ multiFuzzyMatchAny(haystack, distance, [pattern1, pattern2, ..., patternN])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `distance` — The maximum edit distance for fuzzy matching. [`UInt8`](/reference/data-types/int-uint)
-- `pattern` — Optional. An array of patterns to match against. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `distance` — The maximum edit distance for fuzzy matching. [`UInt8`](/core/reference/data-types/int-uint)
+- `pattern` — Optional. An array of patterns to match against. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns `1` if any pattern matches the haystack within the specified edit distance, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if any pattern matches the haystack within the specified edit distance, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1470,13 +1470,13 @@ multiFuzzyMatchAnyIndex(haystack, distance, [pattern1, pattern2, ..., patternn])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `distance` — The maximum edit distance for fuzzy matching. [`UInt8`](/reference/data-types/int-uint)
-- `pattern` — Array of patterns to match against. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `distance` — The maximum edit distance for fuzzy matching. [`UInt8`](/core/reference/data-types/int-uint)
+- `pattern` — Array of patterns to match against. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the index (starting from 1) of any pattern that matches the haystack within the specified edit distance, otherwise `0`. [`UInt64`](/reference/data-types/int-uint)
+Returns the index (starting from 1) of any pattern that matches the haystack within the specified edit distance, otherwise `0`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1506,12 +1506,12 @@ multiMatchAllIndices(haystack, [pattern1, pattern2, ..., patternn])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `pattern` — Regular expressions to match against. [`String`](/reference/data-types/string)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expressions to match against. [`String`](/core/reference/data-types/string)
**Returned value**
-Array of all indices (starting from 1) that match the haystack in any order. Returns an empty array if no matches are found. [`Array(UInt64)`](/reference/data-types/array)
+Array of all indices (starting from 1) that match the haystack in any order. Returns an empty array if no matches are found. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -1544,12 +1544,12 @@ multiMatchAny(haystack, pattern1[, pattern2, ...])
**Arguments**
-- `haystack` — String in which patterns are searched. [`String`](/reference/data-types/string)
-- `pattern1[, pattern2, ...]` — An array of one or more regular expression patterns. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which patterns are searched. [`String`](/core/reference/data-types/string)
+- `pattern1[, pattern2, ...]` — An array of one or more regular expression patterns. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns `1` if any pattern matches, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if any pattern matches, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1591,12 +1591,12 @@ multiMatchAnyIndex(haystack, [pattern1, pattern2, ..., patternn])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `pattern` — Regular expressions to match against. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `pattern` — Regular expressions to match against. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the index (starting from 1) of the first pattern that matches, or 0 if no match is found. [`UInt64`](/reference/data-types/int-uint)
+Returns the index (starting from 1) of the first pattern that matches, or 0 if no match is found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1629,12 +1629,12 @@ multiSearchAllPositions(haystack, needle1[, needle2, ...])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle1[, needle2, ...]` — An array of one or more substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle1[, needle2, ...]` — An array of one or more substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns array of the starting position in bytes and counting from 1, if the substring was found, `0`, if the substring was not found. [`Array(UInt64)`](/reference/data-types/array)
+Returns array of the starting position in bytes and counting from 1, if the substring was found, `0`, if the substring was not found. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -1665,12 +1665,12 @@ multiSearchAllPositionsCaseInsensitive(haystack, needle1[, needle2, ...])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle1[, needle2, ...]` — An array of one or more substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle1[, needle2, ...]` — An array of one or more substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns array of the starting position in bytes and counting from 1 (if the substring was found), `0` if the substring was not found. [`Array(UInt64)`](/reference/data-types/array)
+Returns array of the starting position in bytes and counting from 1 (if the substring was found), `0` if the substring was not found. [`Array(UInt64)`](/core/reference/data-types/array)
**Examples**
@@ -1700,12 +1700,12 @@ multiSearchAllPositionsCaseInsensitiveUTF8(haystack, [needle1, needle2, ..., nee
**Arguments**
-- `haystack` — UTF-8 encoded string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — UTF-8 encoded substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — UTF-8 encoded string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — UTF-8 encoded substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Array of the starting position in bytes and counting from 1 (if the substring was found). Returns 0 if the substring was not found. [`Array`](/reference/data-types/array)
+Array of the starting position in bytes and counting from 1 (if the substring was found). Returns 0 if the substring was not found. [`Array`](/core/reference/data-types/array)
**Examples**
@@ -1736,12 +1736,12 @@ multiSearchAllPositionsUTF8(haystack, needle1[, needle2, ...])
**Arguments**
-- `haystack` — UTF-8 encoded string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle1[, needle2, ...]` — An array of UTF-8 encoded substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — UTF-8 encoded string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle1[, needle2, ...]` — An array of UTF-8 encoded substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns array of the starting position in bytes and counting from 1 (if the substring was found), `0` if the substring was not found. [`Array`](/reference/data-types/array)
+Returns array of the starting position in bytes and counting from 1 (if the substring was found), `0` if the substring was not found. [`Array`](/core/reference/data-types/array)
**Examples**
@@ -1774,12 +1774,12 @@ multiSearchAny(haystack, needle1[, needle2, ...])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle1[, needle2, ...]` — An array of substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle1[, needle2, ...]` — An array of substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns `1`, if there was at least one match, otherwise `0`, if there was not at least one match. [`UInt8`](/reference/data-types/int-uint)
+Returns `1`, if there was at least one match, otherwise `0`, if there was not at least one match. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1810,12 +1810,12 @@ multiSearchAnyCaseInsensitive(haystack, [needle1, needle2, ..., needleN])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — Substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — Substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns `1`, if there was at least one case-insensitive match, otherwise `0`, if there was not at least one case-insensitive match. [`UInt8`](/reference/data-types/int-uint)
+Returns `1`, if there was at least one case-insensitive match, otherwise `0`, if there was not at least one case-insensitive match. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1846,12 +1846,12 @@ multiSearchAnyCaseInsensitiveUTF8(haystack, [needle1, needle2, ..., needleN])
**Arguments**
-- `haystack` — UTF-8 string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — UTF-8 substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — UTF-8 string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — UTF-8 substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns `1`, if there was at least one case-insensitive match, otherwise `0`, if there was not at least one case-insensitive match. [`UInt8`](/reference/data-types/int-uint)
+Returns `1`, if there was at least one case-insensitive match, otherwise `0`, if there was not at least one case-insensitive match. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1882,12 +1882,12 @@ multiSearchAnyUTF8(haystack, [needle1, needle2, ..., needleN])
**Arguments**
-- `haystack` — UTF-8 string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — UTF-8 substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — UTF-8 string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — UTF-8 substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns `1`, if there was at least one match, otherwise `0`, if there was not at least one match. [`UInt8`](/reference/data-types/int-uint)
+Returns `1`, if there was at least one match, otherwise `0`, if there was not at least one match. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -1917,12 +1917,12 @@ multiSearchFirstIndex(haystack, [needle1, needle2, ..., needleN])
**Arguments**
-- `haystack` — The string to search in. [`String`](/reference/data-types/string)
-- `needles` — Array of strings to search for. [`Array(String)`](/reference/data-types/array)
+- `haystack` — The string to search in. [`String`](/core/reference/data-types/string)
+- `needles` — Array of strings to search for. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the 1-based index (position in the needles array) of the first needle found in the haystack. Returns 0 if no needles are found. The search is case-sensitive. [`UInt64`](/reference/data-types/int-uint)
+Returns the 1-based index (position in the needles array) of the first needle found in the haystack. Returns 0 if no needles are found. The search is case-sensitive. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -1978,12 +1978,12 @@ multiSearchFirstIndexCaseInsensitive(haystack, [needle1, needle2, ..., needleN]
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — Substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — Substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the index (starting from 1) of the leftmost found needle. Otherwise `0`, if there was no match. [`UInt8`](/reference/data-types/int-uint)
+Returns the index (starting from 1) of the leftmost found needle. Otherwise `0`, if there was no match. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2013,12 +2013,12 @@ multiSearchFirstIndexCaseInsensitiveUTF8(haystack, [needle1, needle2, ..., needl
**Arguments**
-- `haystack` — The string to search in. [`String`](/reference/data-types/string)
-- `needles` — Array of strings to search for. [`Array(String)`](/reference/data-types/array)
+- `haystack` — The string to search in. [`String`](/core/reference/data-types/string)
+- `needles` — Array of strings to search for. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the 1-based index (position in the needles array) of the first needle found in the haystack. Returns 0 if no needles are found. The search is case-insensitive and respects UTF-8 character encoding. [`UInt64`](/reference/data-types/int-uint)
+Returns the 1-based index (position in the needles array) of the first needle found in the haystack. Returns 0 if no needles are found. The search is case-insensitive and respects UTF-8 character encoding. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2074,12 +2074,12 @@ multiSearchFirstIndexUTF8(haystack, [needle1, needle2, ..., needleN])
**Arguments**
-- `haystack` — UTF-8 string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — Array of UTF-8 substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — UTF-8 string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — Array of UTF-8 substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the index (starting from 1) of the leftmost found needle. Otherwise 0, if there was no match. [`UInt8`](/reference/data-types/int-uint)
+Returns the index (starting from 1) of the leftmost found needle. Otherwise 0, if there was no match. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2112,12 +2112,12 @@ multiSearchFirstPosition(haystack, needle1[, needle2, ...])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle1[, needle2, ...]` — An array of one or more substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle1[, needle2, ...]` — An array of one or more substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the leftmost offset in a `haystack` string which matches any of multiple `needle` strings, otherwise `0`, if there was no match. [`UInt64`](/reference/data-types/int-uint)
+Returns the leftmost offset in a `haystack` string which matches any of multiple `needle` strings, otherwise `0`, if there was no match. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2148,12 +2148,12 @@ multiSearchFirstPositionCaseInsensitive(haystack, [needle1, needle2, ..., needle
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — Array of substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — Array of substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the leftmost offset in a `haystack` string which matches any of multiple `needle` strings. Returns `0`, if there was no match. [`UInt64`](/reference/data-types/int-uint)
+Returns the leftmost offset in a `haystack` string which matches any of multiple `needle` strings. Returns `0`, if there was no match. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2184,12 +2184,12 @@ multiSearchFirstPositionCaseInsensitiveUTF8(haystack, [needle1, needle2, ..., ne
**Arguments**
-- `haystack` — UTF-8 string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — Array of UTF-8 substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — UTF-8 string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — Array of UTF-8 substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns the leftmost offset in a `haystack` string which matches any of multiple `needle` strings, ignoring case. Returns `0`, if there was no match. [`UInt64`](/reference/data-types/int-uint)
+Returns the leftmost offset in a `haystack` string which matches any of multiple `needle` strings, ignoring case. Returns `0`, if there was no match. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2220,12 +2220,12 @@ multiSearchFirstPositionUTF8(haystack, [needle1, needle2, ..., needleN])
**Arguments**
-- `haystack` — UTF-8 string in which the search is performed. [`String`](/reference/data-types/string)
-- `needle` — Array of UTF-8 substrings to be searched. [`Array(String)`](/reference/data-types/array)
+- `haystack` — UTF-8 string in which the search is performed. [`String`](/core/reference/data-types/string)
+- `needle` — Array of UTF-8 substrings to be searched. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Leftmost offset in a `haystack` string which matches any of multiple `needle` strings. Returns `0`, if there was no match. [`UInt64`](/reference/data-types/int-uint)
+Leftmost offset in a `haystack` string which matches any of multiple `needle` strings. Returns `0`, if there was no match. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2260,12 +2260,12 @@ ngramDistance(haystack, needle)
**Arguments**
-- `haystack` — String for comparison. [`String`](/reference/data-types/string)
-- `needle` — String for comparison. [`String`](/reference/data-types/string)
+- `haystack` — String for comparison. [`String`](/core/reference/data-types/string)
+- `needle` — String for comparison. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Float32 number between `0` and `1`. The smaller the returned value, the more similar the strings are. [`Float32`](/reference/data-types/float)
+Returns a Float32 number between `0` and `1`. The smaller the returned value, the more similar the strings are. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -2298,12 +2298,12 @@ ngramDistanceCaseInsensitive(haystack, needle)
**Arguments**
-- `haystack` — First comparison string. [`String`](/reference/data-types/string)
-- `needle` — Second comparison string. [`String`](/reference/data-types/string)
+- `haystack` — First comparison string. [`String`](/core/reference/data-types/string)
+- `needle` — Second comparison string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Float32 number between `0` and `1`. [`Float32`](/reference/data-types/float)
+Returns a Float32 number between `0` and `1`. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -2337,12 +2337,12 @@ ngramDistanceCaseInsensitiveUTF8(haystack, needle)
**Arguments**
-- `haystack` — First UTF-8 encoded comparison string. [`String`](/reference/data-types/string)
-- `needle` — Second UTF-8 encoded comparison string. [`String`](/reference/data-types/string)
+- `haystack` — First UTF-8 encoded comparison string. [`String`](/core/reference/data-types/string)
+- `needle` — Second UTF-8 encoded comparison string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Float32 number between `0` and `1`. [`Float32`](/reference/data-types/float)
+Returns a Float32 number between `0` and `1`. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -2376,12 +2376,12 @@ ngramDistanceUTF8(haystack, needle)
**Arguments**
-- `haystack` — First UTF-8 encoded comparison string. [`String`](/reference/data-types/string)
-- `needle` — Second UTF-8 encoded comparison string. [`String`](/reference/data-types/string)
+- `haystack` — First UTF-8 encoded comparison string. [`String`](/core/reference/data-types/string)
+- `needle` — Second UTF-8 encoded comparison string. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Float32 number between `0` and `1`. [`Float32`](/reference/data-types/float)
+Returns a Float32 number between `0` and `1`. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -2414,12 +2414,12 @@ ngramSearch(haystack, needle)
**Arguments**
-- `haystack` — String for comparison. [`String`](/reference/data-types/string)
-- `needle` — String for comparison. [`String`](/reference/data-types/string)
+- `haystack` — String for comparison. [`String`](/core/reference/data-types/string)
+- `needle` — String for comparison. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the 4-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the 4-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2452,12 +2452,12 @@ ngramSearchCaseInsensitive(haystack, needle)
**Arguments**
-- `haystack` — String for comparison. [`String`](/reference/data-types/string)
-- `needle` — String for comparison. [`String`](/reference/data-types/string)
+- `haystack` — String for comparison. [`String`](/core/reference/data-types/string)
+- `needle` — String for comparison. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the 4-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the 4-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2490,12 +2490,12 @@ ngramSearchCaseInsensitiveUTF8(haystack, needle)
**Arguments**
-- `haystack` — UTF-8 string for comparison. [`String`](/reference/data-types/string)
-- `needle` — UTF-8 string for comparison. [`String`](/reference/data-types/string)
+- `haystack` — UTF-8 string for comparison. [`String`](/core/reference/data-types/string)
+- `needle` — UTF-8 string for comparison. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the 3-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the 3-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2528,12 +2528,12 @@ ngramSearchUTF8(haystack, needle)
**Arguments**
-- `haystack` — UTF-8 string for comparison. [`String`](/reference/data-types/string)
-- `needle` — UTF-8 string for comparison. [`String`](/reference/data-types/string)
+- `haystack` — UTF-8 string for comparison. [`String`](/core/reference/data-types/string)
+- `needle` — UTF-8 string for comparison. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the 3-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the 3-gram distance between the strings is less than or equal to a threshold (`1.0` by default), `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2563,12 +2563,12 @@ notILike(haystack, pattern)
**Arguments**
-- `haystack` — The input string to search in. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `pattern` — The SQL LIKE pattern to match against. `%` matches any number of characters (including zero), `_` matches exactly one character. [`String`](/reference/data-types/string)
+- `haystack` — The input string to search in. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `pattern` — The SQL LIKE pattern to match against. `%` matches any number of characters (including zero), `_` matches exactly one character. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the string does not match the pattern (case-insensitive), otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the string does not match the pattern (case-insensitive), otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2599,12 +2599,12 @@ notLike(haystack, pattern)
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `pattern` — LIKE pattern to match against. [`String`](/reference/data-types/string)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `pattern` — LIKE pattern to match against. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if the string does not match the `LIKE` pattern, otherwise `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the string does not match the `LIKE` pattern, otherwise `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2655,13 +2655,13 @@ position(haystack, needle[, start_pos])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`Enum`](/reference/data-types/enum)
-- `needle` — Substring to be searched. [`String`](/reference/data-types/string)
-- `start_pos` — Position (1-based) in `haystack` at which the search starts. Optional. [`UInt`](/reference/data-types/int-uint)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`Enum`](/core/reference/data-types/enum)
+- `needle` — Substring to be searched. [`String`](/core/reference/data-types/string)
+- `start_pos` — Position (1-based) in `haystack` at which the search starts. Optional. [`UInt`](/core/reference/data-types/int-uint)
**Returned value**
-Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/reference/data-types/int-uint)
+Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2730,13 +2730,13 @@ positionCaseInsensitive(haystack, needle[, start_pos])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`Enum`](/reference/data-types/enum)
-- `needle` — Substring to be searched. [`String`](/reference/data-types/string)
-- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/reference/data-types/int-uint)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`Enum`](/core/reference/data-types/enum)
+- `needle` — Substring to be searched. [`String`](/core/reference/data-types/string)
+- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/reference/data-types/int-uint)
+Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2767,13 +2767,13 @@ positionCaseInsensitiveUTF8(haystack, needle[, start_pos])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`Enum`](/reference/data-types/enum)
-- `needle` — Substring to be searched. [`String`](/reference/data-types/string)
-- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/reference/data-types/int-uint)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`Enum`](/core/reference/data-types/enum)
+- `needle` — Substring to be searched. [`String`](/core/reference/data-types/string)
+- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/reference/data-types/int-uint)
+Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2804,13 +2804,13 @@ positionUTF8(haystack, needle[, start_pos])
**Arguments**
-- `haystack` — String in which the search is performed. [`String`](/reference/data-types/string) or [`Enum`](/reference/data-types/enum)
-- `needle` — Substring to be searched. [`String`](/reference/data-types/string)
-- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/reference/data-types/int-uint)
+- `haystack` — String in which the search is performed. [`String`](/core/reference/data-types/string) or [`Enum`](/core/reference/data-types/enum)
+- `needle` — Substring to be searched. [`String`](/core/reference/data-types/string)
+- `start_pos` — Optional. Position (1-based) in `haystack` at which the search starts. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/reference/data-types/int-uint)
+Returns starting position in bytes and counting from 1, if the substring was found, otherwise `0`, if the substring was not found. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/time-series-functions.mdx b/core/reference/functions/regular-functions/time-series-functions.mdx
similarity index 78%
rename from reference/functions/regular-functions/time-series-functions.mdx
rename to core/reference/functions/regular-functions/time-series-functions.mdx
index f6f3cb4d..c40bd7dc 100644
--- a/reference/functions/regular-functions/time-series-functions.mdx
+++ b/core/reference/functions/regular-functions/time-series-functions.mdx
@@ -7,8 +7,8 @@ doc_type: 'reference'
---
The functions below are designed to be used with `timeSeries*()` aggregate functions like
-[`timeSeriesInstantRateToGrid`](/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid),
-[`timeSeriesLastToGrid`](/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness),
+[`timeSeriesInstantRateToGrid`](/core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid),
+[`timeSeriesLastToGrid`](/core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness),
and so on.
{/*
@@ -33,12 +33,12 @@ seriesDecomposeSTL(series, period)
**Arguments**
-- `series` — An array of numeric values [`Array((U)Int8/16/32/64)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `period` — A positive integer [`UInt8/16/32/64`](/reference/data-types/int-uint)
+- `series` — An array of numeric values [`Array((U)Int8/16/32/64)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `period` — A positive integer [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns an array of four arrays where the first array includes seasonal components, the second array - trend, the third array - residue component, and the fourth array - baseline(seasonal + trend) component. [`Array(Array(Float32), Array(Float32), Array(Float32), Array(Float32))`](/reference/data-types/array)
+Returns an array of four arrays where the first array includes seasonal components, the second array - trend, the third array - residue component, and the fourth array - baseline(seasonal + trend) component. [`Array(Array(Float32), Array(Float32), Array(Float32), Array(Float32))`](/core/reference/data-types/array)
**Examples**
@@ -86,14 +86,14 @@ seriesOutliersDetectTukey(series[, min_percentile, max_percentile, K])
**Arguments**
-- `series` — An array of numeric values. [`Array((UInt8/16/32/64))`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
-- `min_percentile` — Optional. The minimum percentile to be used to calculate inter-quantile range [(IQR)](https://en.wikipedia.org/wiki/Interquartile_range). The value must be in range [0.02,0.98]. The default is 0.25. [`Float*`](/reference/data-types/float)
-- `max_percentile` — Optional. The maximum percentile to be used to calculate inter-quantile range (IQR). The value must be in range [0.02,0.98]. The default is 0.75. [`Float*`](/reference/data-types/float)
-- `K` — Optional. Non-negative constant value to detect mild or stronger outliers. The default value is 1.5. [`Float*`](/reference/data-types/float)
+- `series` — An array of numeric values. [`Array((UInt8/16/32/64))`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
+- `min_percentile` — Optional. The minimum percentile to be used to calculate inter-quantile range [(IQR)](https://en.wikipedia.org/wiki/Interquartile_range). The value must be in range [0.02,0.98]. The default is 0.25. [`Float*`](/core/reference/data-types/float)
+- `max_percentile` — Optional. The maximum percentile to be used to calculate inter-quantile range (IQR). The value must be in range [0.02,0.98]. The default is 0.75. [`Float*`](/core/reference/data-types/float)
+- `K` — Optional. Non-negative constant value to detect mild or stronger outliers. The default value is 1.5. [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns an array of the same length as the input array where each value represents score of possible anomaly of corresponding element in the series. A non-zero score indicates a possible anomaly. [`Array(Float32)`](/reference/data-types/array)
+Returns an array of the same length as the input array where each value represents score of possible anomaly of corresponding element in the series. A non-zero score indicates a possible anomaly. [`Array(Float32)`](/core/reference/data-types/array)
**Examples**
@@ -136,11 +136,11 @@ seriesPeriodDetectFFT(series)
**Arguments**
-- `series` — An array of numeric values. [`Array((U)Int8/16/32/64)`](/reference/data-types/array) or [`Array(Float*)`](/reference/data-types/array)
+- `series` — An array of numeric values. [`Array((U)Int8/16/32/64)`](/core/reference/data-types/array) or [`Array(Float*)`](/core/reference/data-types/array)
**Returned value**
-Returns a real value equal to the period of series data. NaN when number of data points are less than four. [`Float64`](/reference/data-types/float)
+Returns a real value equal to the period of series data. NaN when number of data points are less than four. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -187,13 +187,13 @@ timeSeriesCopyTag(dest_group, src_group, tag_to_copy)
**Arguments**
-- `dest_group` — The destination group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `src_group` — The source group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `tag_to_copy` — The name of a tag to copy. [`String`](/reference/data-types/string)
+- `dest_group` — The destination group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `src_group` — The source group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `tag_to_copy` — The name of a tag to copy. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a group of tags containing the tags from `dest_group` along with the copied tags from `src_group`. [`UInt64`](/reference/data-types/int-uint)
+Returns a group of tags containing the tags from `dest_group` along with the copied tags from `src_group`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -231,13 +231,13 @@ timeSeriesCopyTags(dest_group, src_group, tags_to_copy)
**Arguments**
-- `dest_group` — The destination group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `src_group` — The source group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `tags_to_copy` — The names of tags to copy. [`Array(String)`](/reference/data-types/array)
+- `dest_group` — The destination group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `src_group` — The source group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `tags_to_copy` — The names of tags to copy. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns a group of tags containing the tags from `dest_group` along with the copied tags from `src_group`. [`UInt64`](/reference/data-types/int-uint)
+Returns a group of tags containing the tags from `dest_group` along with the copied tags from `src_group`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -261,7 +261,7 @@ SELECT timeSeriesTagsToGroup([('region', 'eu'), ('env', 'dev')], '__name__', 'ht
Introduced in: v26.1.0
Extracts the value of a specified tag from the group. Returns NULL if not found.
-See also function [timeSeriesGroupToTags()](/reference/functions/regular-functions/time-series-functions#timeSeriesGroupToTags).
+See also function [timeSeriesGroupToTags()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesGroupToTags).
**Syntax**
@@ -272,12 +272,12 @@ timeSeriesExtractTag(group)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `tag_to_extract` — The name of a tag to extract from the group [`String`](/reference/data-types/string)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `tag_to_extract` — The name of a tag to extract from the group [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the value of a specified tag. [`Nullable(String)`](/reference/data-types/nullable)
+Returns the value of a specified tag. [`Nullable(String)`](/core/reference/data-types/nullable)
**Examples**
@@ -318,14 +318,14 @@ timeSeriesFromGrid(start_timestamp, end_timestamp, step, values)
**Arguments**
-- `start_timestamp` — Start of the grid. [`DateTime64`](/reference/data-types/datetime64) or [`DateTime`](/reference/data-types/datetime) or [`UInt32`](/reference/data-types/int-uint)
-- `end_timestamp` — End of the grid. [`DateTime64`](/reference/data-types/datetime64) or [`DateTime`](/reference/data-types/datetime) or [`UInt32`](/reference/data-types/int-uint)
-- `step` — Step of the grid in seconds [`Decimal64`](/reference/data-types/decimal) or [`Decimal32`](/reference/data-types/decimal) or [`UInt32/64`](/reference/data-types/int-uint)
-- `values` — Array of values [`Array(Float*)`](/reference/data-types/array) or [`Array(Nullable(Float*))`](/reference/data-types/array)
+- `start_timestamp` — Start of the grid. [`DateTime64`](/core/reference/data-types/datetime64) or [`DateTime`](/core/reference/data-types/datetime) or [`UInt32`](/core/reference/data-types/int-uint)
+- `end_timestamp` — End of the grid. [`DateTime64`](/core/reference/data-types/datetime64) or [`DateTime`](/core/reference/data-types/datetime) or [`UInt32`](/core/reference/data-types/int-uint)
+- `step` — Step of the grid in seconds [`Decimal64`](/core/reference/data-types/decimal) or [`Decimal32`](/core/reference/data-types/decimal) or [`UInt32/64`](/core/reference/data-types/int-uint)
+- `values` — Array of values [`Array(Float*)`](/core/reference/data-types/array) or [`Array(Nullable(Float*))`](/core/reference/data-types/array)
**Returned value**
-Returns values from the source array of values combined with timestamps on a regular time grid described by `start_timestamp` and `step`. [`Array(Tuple(DateTime64, Float64))`](/reference/data-types/array)
+Returns values from the source array of values combined with timestamps on a regular time grid described by `start_timestamp` and `step`. [`Array(Tuple(DateTime64, Float64))`](/core/reference/data-types/array)
**Examples**
@@ -359,11 +359,11 @@ timeSeriesGroupToSamplingKey(group)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-A stable `UInt64` hash derived from the tags associated with the group. [`UInt64`](/reference/data-types/int-uint)
+A stable `UInt64` hash derived from the tags associated with the group. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -385,7 +385,7 @@ SELECT timeSeriesTagsToGroup([('region', 'eu'), ('env', 'dev')], '__name__', 'ht
Introduced in: v26.1.0
Returns the names and values of the tags associated with a specified group.
-See also function [timeSeriesTagsToGroup()](/reference/functions/regular-functions/time-series-functions#timeSeriesTagsToGroup).
+See also function [timeSeriesTagsToGroup()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesTagsToGroup).
**Syntax**
@@ -398,13 +398,13 @@ timeSeriesGroupToTags(group)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
Returns an array of pairs `(tag_name, tag_value)`.
The returned array is always sorted by `tag_name` and never contains the same `tag_name` more than once.
- [`Array(Tuple(String, String))`](/reference/data-types/array)
+ [`Array(Tuple(String, String))`](/core/reference/data-types/array)
**Examples**
@@ -428,7 +428,7 @@ SELECT timeSeriesTagsToGroup([('region', 'eu'), ('env', 'dev')], '__name__', 'ht
Introduced in: v26.1.0
Returns the names and values of the tags associated with a specified identifier of a time series.
-See also function [timeSeriesStoreTags()](/reference/functions/regular-functions/time-series-functions#timeSeriesStoreTags).
+See also function [timeSeriesStoreTags()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesStoreTags).
**Syntax**
@@ -441,11 +441,11 @@ timeSeriesIdToGroup(id)
**Arguments**
-- `id` — Identifier of a time series. [`UInt64`](/reference/data-types/int-uint) or [`UInt128`](/reference/data-types/int-uint) or [`UUID`](/reference/data-types/uuid) or [`FixedString(16)`](/reference/data-types/fixedstring)
+- `id` — Identifier of a time series. [`UInt64`](/core/reference/data-types/int-uint) or [`UInt128`](/core/reference/data-types/int-uint) or [`UUID`](/core/reference/data-types/uuid) or [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns a group of tags associated with the identifier `id` of a time series. [`UInt64`](/reference/data-types/int-uint)
+Returns a group of tags associated with the identifier `id` of a time series. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -470,7 +470,7 @@ SELECT 8374283493092 AS id,
Introduced in: v25.8.0
Returns tags associated with a specified identifier of a time series.
-See also function [timeSeriesStoreTags()](/reference/functions/regular-functions/time-series-functions#timeSeriesStoreTags).
+See also function [timeSeriesStoreTags()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesStoreTags).
**Syntax**
@@ -481,13 +481,13 @@ timeSeriesIdToTags(id)
**Arguments**
-- `id` — Identifier of a time series. [`UInt64`](/reference/data-types/int-uint) or [`UInt128`](/reference/data-types/int-uint) or [`UUID`](/reference/data-types/uuid) or [`FixedString(16)`](/reference/data-types/fixedstring)
+- `id` — Identifier of a time series. [`UInt64`](/core/reference/data-types/int-uint) or [`UInt128`](/core/reference/data-types/int-uint) or [`UUID`](/core/reference/data-types/uuid) or [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Returned value**
Returns an array of pairs `(tag_name, tag_value)`.
The returned array is always sorted by `tag_name` and never contains the same `tag_name` more than once.
- [`Array(Tuple(String, String))`](/reference/data-types/array)
+ [`Array(Tuple(String, String))`](/core/reference/data-types/array)
**Examples**
@@ -524,14 +524,14 @@ timeSeriesJoinTags(group, dest_tag, separator, src_tags)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `dest_tag` — The name of a tag with the joined result which will be added to the `group`. [`String`](/reference/data-types/string)
-- `separator` — A separator to insert between joined values. [`String`](/reference/data-types/string)
-- `src_tags` — The names of source tags with values which will be joined. [`Array(String)`](/reference/data-types/array)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `dest_tag` — The name of a tag with the joined result which will be added to the `group`. [`String`](/core/reference/data-types/string)
+- `separator` — A separator to insert between joined values. [`String`](/core/reference/data-types/string)
+- `src_tags` — The names of source tags with values which will be joined. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-Returns a new group of tags with the `dest_tag` tag set to the joined result. [`UInt64`](/reference/data-types/int-uint)
+Returns a new group of tags with the `dest_tag` tag set to the joined result. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -557,7 +557,7 @@ Generates a range of timestamps [start_timestamp, start_timestamp + step, start_
If `start_timestamp` is equal to `end_timestamp`, the function returns a 1-element array containing `[start_timestamp]`.
-Function `timeSeriesRange()` is similar to function [range](/reference/functions/regular-functions/array-functions#range).
+Function `timeSeriesRange()` is similar to function [range](/core/reference/functions/regular-functions/array-functions#range).
**Syntax**
@@ -567,13 +567,13 @@ timeSeriesRange(start_timestamp, end_timestamp, step)
**Arguments**
-- `start_timestamp` — Start of the range. [`DateTime64`](/reference/data-types/datetime64) or [`DateTime`](/reference/data-types/datetime) or [`UInt32`](/reference/data-types/int-uint)
-- `end_timestamp` — End of the range. [`DateTime64`](/reference/data-types/datetime64) or [`DateTime`](/reference/data-types/datetime) or [`UInt32`](/reference/data-types/int-uint)
-- `step` — Step of the range in seconds [`UInt32/64`](/reference/data-types/int-uint) or [`Decimal32/64`](/reference/data-types/decimal)
+- `start_timestamp` — Start of the range. [`DateTime64`](/core/reference/data-types/datetime64) or [`DateTime`](/core/reference/data-types/datetime) or [`UInt32`](/core/reference/data-types/int-uint)
+- `end_timestamp` — End of the range. [`DateTime64`](/core/reference/data-types/datetime64) or [`DateTime`](/core/reference/data-types/datetime) or [`UInt32`](/core/reference/data-types/int-uint)
+- `step` — Step of the range in seconds [`UInt32/64`](/core/reference/data-types/int-uint) or [`Decimal32/64`](/core/reference/data-types/decimal)
**Returned value**
-Returns a range of timestamps. [`Array(DateTime64)`](/reference/data-types/array)
+Returns a range of timestamps. [`Array(DateTime64)`](/core/reference/data-types/array)
**Examples**
@@ -594,8 +594,8 @@ SELECT timeSeriesRange('2025-06-01 00:00:00'::DateTime64(3), '2025-06-01 00:01:0
Introduced in: v26.1.0
Removes all tags except specified ones from a group of tags.
-See also function [timeSeriesRemoveTag()](/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTag),
-[timeSeriesRemoveTags()](/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTags).
+See also function [timeSeriesRemoveTag()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTag),
+[timeSeriesRemoveTags()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTags).
**Syntax**
@@ -605,12 +605,12 @@ timeSeriesRemoveAllTagsExcept(group, tags_to_keep)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `tags_to_keep` — The names of tags to keep in the group. [`Array(String)`](/reference/data-types/array)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `tags_to_keep` — The names of tags to keep in the group. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-A new group of tags with only the specified tags kept. [`UInt64`](/reference/data-types/int-uint)
+A new group of tags with only the specified tags kept. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -634,8 +634,8 @@ Introduced in: v26.1.0
Removes a specified tag from a group of tags.
If there is no such tag in the group then the group is returned unchanged.
-See also function [timeSeriesRemoveTags()](/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTags),
-[timeSeriesRemoveAllTagsExcept()](/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveAllTagsExcept).
+See also function [timeSeriesRemoveTags()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTags),
+[timeSeriesRemoveAllTagsExcept()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveAllTagsExcept).
**Syntax**
@@ -645,12 +645,12 @@ timeSeriesRemoveTag(group, tag_to_remove)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `tag_to_remove` — The name of a tag to remove from the group. [`String`](/reference/data-types/string)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `tag_to_remove` — The name of a tag to remove from the group. [`String`](/core/reference/data-types/string)
**Returned value**
-A new group of tags without the specified tag. [`UInt64`](/reference/data-types/int-uint)
+A new group of tags without the specified tag. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -678,8 +678,8 @@ Introduced in: v26.1.0
Removes specified tags from a group of tags.
If some of the specified tags are not in the group of tags the function ignores them.
-See also function [timeSeriesRemoveTag()](/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTag),
-[timeSeriesRemoveAllTagsExcept()](/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveAllTagsExcept).
+See also function [timeSeriesRemoveTag()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveTag),
+[timeSeriesRemoveAllTagsExcept()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesRemoveAllTagsExcept).
**Syntax**
@@ -690,12 +690,12 @@ timeSeriesRemoveTags(group, tags_to_remove)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `tags_to_remove` — The names of tags to remove from the group. [`Array(String)`](/reference/data-types/array)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `tags_to_remove` — The names of tags to remove from the group. [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-A new group of tags without the specified tags. [`UInt64`](/reference/data-types/int-uint)
+A new group of tags without the specified tags. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -734,15 +734,15 @@ timeSeriesReplaceTag(group, dest_tag, replacement, src_tag, regex)
**Arguments**
-- `group` — A group of tags. [`UInt64`](/reference/data-types/int-uint)
-- `dest_tag` — The name of a destination tag to get the result group. [`String`](/reference/data-types/string)
-- `replacement` — A replacement pattern, can contain $1, $2 or $name to refer capturing groups in the regular expression 'regex'. [`String`](/reference/data-types/string)
-- `src_tag` — The name of a tag which value is used to match the regular expression 'regex'. [`String`](/reference/data-types/string)
-- `regex` — A regular expression. [`String`](/reference/data-types/string)
+- `group` — A group of tags. [`UInt64`](/core/reference/data-types/int-uint)
+- `dest_tag` — The name of a destination tag to get the result group. [`String`](/core/reference/data-types/string)
+- `replacement` — A replacement pattern, can contain $1, $2 or $name to refer capturing groups in the regular expression 'regex'. [`String`](/core/reference/data-types/string)
+- `src_tag` — The name of a tag which value is used to match the regular expression 'regex'. [`String`](/core/reference/data-types/string)
+- `regex` — A regular expression. [`String`](/core/reference/data-types/string)
**Returned value**
-A new group of tags with maybe `dest_tag` added. [`UInt64`](/reference/data-types/int-uint)
+A new group of tags with maybe `dest_tag` added. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -765,8 +765,8 @@ SELECT timeSeriesTagsToGroup([('__name__', 'up'), ('job', 'api-server'), ('servi
Introduced in: v25.8.0
Stores in the query context a mapping between a specified identifier of a time series and a set of tags.
-Functions [timeSeriesIdToTags()](/reference/functions/regular-functions/time-series-functions#timeSeriesIdToTags)
-and [timeSeriesIdToGroup()](/reference/functions/regular-functions/time-series-functions#timeSeriesIdToGroup)
+Functions [timeSeriesIdToTags()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesIdToTags)
+and [timeSeriesIdToGroup()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesIdToGroup)
can be used to access this mapping later during the query execution.
@@ -778,10 +778,10 @@ timeSeriesStoreTags(id, tags_array, separate_tag_name_1, separate_tag_value_1, .
**Arguments**
-- `id` — Identifier of a time series. [`UInt64`](/reference/data-types/int-uint) or [`UInt128`](/reference/data-types/int-uint) or [`UUID`](/reference/data-types/uuid) or [`FixedString(16)`](/reference/data-types/fixedstring)
-- `tags_array` — Array of pairs (tag_name, tag_value). [`Array(Tuple(String, String))`](/reference/data-types/array) or [`NULL`](/reference/syntax#null)
-- `separate_tag_name_i` — The name of a tag. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `separate_tag_value_i` — The value of a tag. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Nullable(String)`](/reference/data-types/nullable)
+- `id` — Identifier of a time series. [`UInt64`](/core/reference/data-types/int-uint) or [`UInt128`](/core/reference/data-types/int-uint) or [`UUID`](/core/reference/data-types/uuid) or [`FixedString(16)`](/core/reference/data-types/fixedstring)
+- `tags_array` — Array of pairs (tag_name, tag_value). [`Array(Tuple(String, String))`](/core/reference/data-types/array) or [`NULL`](/core/reference/syntax#null)
+- `separate_tag_name_i` — The name of a tag. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `separate_tag_value_i` — The value of a tag. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Nullable(String)`](/core/reference/data-types/nullable)
**Returned value**
@@ -812,7 +812,7 @@ Introduced in: v26.1.0
Returns a group of tags associated with specified tags.
If the same group of tags is found multiple times during the query execution, the function returns the same group.
For an empty set of tags the function always returns 0.
-See also function [timeSeriesGroupToTags()](/reference/functions/regular-functions/time-series-functions#timeSeriesGroupToTags).
+See also function [timeSeriesGroupToTags()](/core/reference/functions/regular-functions/time-series-functions#timeSeriesGroupToTags).
**Syntax**
@@ -823,13 +823,13 @@ timeSeriesTagsToGroup(tags_array, tag_name_1, tag_value_1, tag_name2, tag_value2
**Arguments**
-- `tags_array` — Array of pairs (tag_name, tag_value). [`Array(Tuple(String, String))`](/reference/data-types/array) or [`NULL`](/reference/syntax#null)
-- `tag_name_i` — The name of a tag. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `tag_value_i` — The value of a tag. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Nullable(String)`](/reference/data-types/nullable)
+- `tags_array` — Array of pairs (tag_name, tag_value). [`Array(Tuple(String, String))`](/core/reference/data-types/array) or [`NULL`](/core/reference/syntax#null)
+- `tag_name_i` — The name of a tag. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `tag_value_i` — The value of a tag. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Nullable(String)`](/core/reference/data-types/nullable)
**Returned value**
-Returns a group of tags associated with the specified tags. [`UInt64`](/reference/data-types/int-uint)
+Returns a group of tags associated with the specified tags. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -857,7 +857,7 @@ Introduced in: v26.2.0
Checks the `condition` and if it's true throws an exception with the following message
`Multiple series have the same tags , duplicate series in the same result set are not allowed`.
If the `condition` is false the function returns `0`.
-This function is similar to [throwIf()](/reference/functions/regular-functions/other-functions#throwIf),
+This function is similar to [throwIf()](/core/reference/functions/regular-functions/other-functions#throwIf),
but uses a different error code and formats the error message differently.
@@ -869,12 +869,12 @@ timeSeriesThrowDuplicateSeriesIf(condition, group)
**Arguments**
-- `condition` — Condition to check, usually contains function [count()](/reference/functions/aggregate-functions/reference/count#count) [`UInt8`](/reference/data-types/int-uint)
-- `group` — Group of tags. [`UInt64`](/reference/data-types/int-uint)
+- `condition` — Condition to check, usually contains function [count()](/core/reference/functions/aggregate-functions/reference/count#count) [`UInt8`](/core/reference/data-types/int-uint)
+- `group` — Group of tags. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns `0`. [`UInt8`](/reference/data-types/int-uint)
+Returns `0`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/time-window-functions.mdx b/core/reference/functions/regular-functions/time-window-functions.mdx
similarity index 66%
rename from reference/functions/regular-functions/time-window-functions.mdx
rename to core/reference/functions/regular-functions/time-window-functions.mdx
index 8389d545..510b14cb 100644
--- a/reference/functions/regular-functions/time-window-functions.mdx
+++ b/core/reference/functions/regular-functions/time-window-functions.mdx
@@ -14,7 +14,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
Time window functions return the inclusive lower and exclusive upper bound of the corresponding window.
-The functions for working with [WindowView](/reference/statements/create/view#window-view) are listed below:
+The functions for working with [WindowView](/core/reference/statements/create/view#window-view) are listed below:
{/*
The inner content of the tags below are replaced at doc framework build time with
@@ -40,14 +40,14 @@ hop(time_attr, hop_interval, window_interval[, timezone])
**Arguments**
-- `time_attr` — Date and time. [`DateTime`](/reference/data-types/datetime)
-- `hop_interval` — Positive Hop interval. [`Interval`](/reference/data-types/int-uint)
-- `window_interval` — Positive Window interval. [`Interval`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name. [`String`](/reference/data-types/string)
+- `time_attr` — Date and time. [`DateTime`](/core/reference/data-types/datetime)
+- `hop_interval` — Positive Hop interval. [`Interval`](/core/reference/data-types/int-uint)
+- `window_interval` — Positive Window interval. [`Interval`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the inclusive lower and exclusive upper bound of the corresponding hopping window. [`Tuple(DateTime, DateTime)`](/reference/data-types/tuple)
+Returns the inclusive lower and exclusive upper bound of the corresponding hopping window. [`Tuple(DateTime, DateTime)`](/core/reference/data-types/tuple)
**Examples**
@@ -78,14 +78,14 @@ hopEnd(time_attr, hop_interval, window_interval[, timezone])
**Arguments**
-- `time_attr` — Date and time. [`DateTime`](/reference/data-types/datetime)
-- `hop_interval` — Positive Hop interval. [`Interval`](/reference/data-types/int-uint)
-- `window_interval` — Positive Window interval. [`Interval`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name. [`String`](/reference/data-types/string)
+- `time_attr` — Date and time. [`DateTime`](/core/reference/data-types/datetime)
+- `hop_interval` — Positive Hop interval. [`Interval`](/core/reference/data-types/int-uint)
+- `window_interval` — Positive Window interval. [`Interval`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the exclusive upper bound of the corresponding hopping window. [`DateTime`](/reference/data-types/datetime)
+Returns the exclusive upper bound of the corresponding hopping window. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -116,14 +116,14 @@ hopStart(time_attr, hop_interval, window_interval[, timezone])
**Arguments**
-- `time_attr` — Date and time. [`DateTime`](/reference/data-types/datetime)
-- `hop_interval` — Positive Hop interval. [`Interval`](/reference/data-types/int-uint)
-- `window_interval` — Positive Window interval. [`Interval`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name. [`String`](/reference/data-types/string)
+- `time_attr` — Date and time. [`DateTime`](/core/reference/data-types/datetime)
+- `hop_interval` — Positive Hop interval. [`Interval`](/core/reference/data-types/int-uint)
+- `window_interval` — Positive Window interval. [`Interval`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the inclusive lower bound of the corresponding hopping window. [`DateTime`](/reference/data-types/datetime)
+Returns the inclusive lower bound of the corresponding hopping window. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -152,13 +152,13 @@ tumble(time_attr, interval[, timezone])
**Arguments**
-- `time_attr` — Date and time. [`DateTime`](/reference/data-types/datetime)
-- `interval` — Window interval in Interval. [`Interval`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name. [`String`](/reference/data-types/string)
+- `time_attr` — Date and time. [`DateTime`](/core/reference/data-types/datetime)
+- `interval` — Window interval in Interval. [`Interval`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the inclusive lower and exclusive upper bound of the corresponding tumbling window. [`Tuple(DateTime, DateTime)`](/reference/data-types/tuple)
+Returns the inclusive lower and exclusive upper bound of the corresponding tumbling window. [`Tuple(DateTime, DateTime)`](/core/reference/data-types/tuple)
**Examples**
@@ -187,13 +187,13 @@ tumbleEnd(time_attr, interval[, timezone])
**Arguments**
-- `time_attr` — Date and time. [`DateTime`](/reference/data-types/datetime)
-- `interval` — Window interval in Interval. [`Interval`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name. [`String`](/reference/data-types/string)
+- `time_attr` — Date and time. [`DateTime`](/core/reference/data-types/datetime)
+- `interval` — Window interval in Interval. [`Interval`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the exclusive upper bound of the corresponding tumbling window. [`DateTime`](/reference/data-types/datetime)
+Returns the exclusive upper bound of the corresponding tumbling window. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -222,13 +222,13 @@ tumbleStart(time_attr, interval[, timezone])
**Arguments**
-- `time_attr` — Date and time. [`DateTime`](/reference/data-types/datetime)
-- `interval` — Window interval in Interval. [`Interval`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name. [`String`](/reference/data-types/string)
+- `time_attr` — Date and time. [`DateTime`](/core/reference/data-types/datetime)
+- `interval` — Window interval in Interval. [`Interval`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the inclusive lower bound of the corresponding tumbling window. [`DateTime`](/reference/data-types/datetime)
+Returns the inclusive lower bound of the corresponding tumbling window. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -258,13 +258,13 @@ windowID(time_attr, interval[, timezone])
**Arguments**
-- `time_attr` — Date and time. [`DateTime`](/reference/data-types/datetime)
-- `interval` — Window interval in Interval. [`Interval`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone name. [`String`](/reference/data-types/string)
+- `time_attr` — Date and time. [`DateTime`](/core/reference/data-types/datetime)
+- `interval` — Window interval in Interval. [`Interval`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the window identifier of the corresponding window. [`UInt32`](/reference/data-types/int-uint)
+Returns the window identifier of the corresponding window. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -282,4 +282,4 @@ SELECT windowID(now(), toIntervalDay('1'))
## Related content {#related-content}
-- [Time-series use-case guides](/guides/real-time-analytics/time-series)
+- [Time-series use-case guides](/core/guides/use-cases/real-time-analytics/time-series)
diff --git a/reference/functions/regular-functions/tuple-functions.mdx b/core/reference/functions/regular-functions/tuple-functions.mdx
similarity index 66%
rename from reference/functions/regular-functions/tuple-functions.mdx
rename to core/reference/functions/regular-functions/tuple-functions.mdx
index 7768ddf1..9251f4e0 100644
--- a/reference/functions/regular-functions/tuple-functions.mdx
+++ b/core/reference/functions/regular-functions/tuple-functions.mdx
@@ -35,12 +35,12 @@ dotProduct(vector1, vector2)
**Arguments**
-- `vector1` — First vector. [`Array(T)`](/reference/data-types/array) or [`Tuple(T)`](/reference/data-types/tuple)
-- `vector2` — Second vector. Must be the same size as the first vector. [`Array(T)`](/reference/data-types/array) or [`Tuple(T)`](/reference/data-types/tuple)
+- `vector1` — First vector. [`Array(T)`](/core/reference/data-types/array) or [`Tuple(T)`](/core/reference/data-types/tuple)
+- `vector2` — Second vector. Must be the same size as the first vector. [`Array(T)`](/core/reference/data-types/array) or [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the dot product of the two vectors. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+Returns the dot product of the two vectors. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Examples**
@@ -69,11 +69,11 @@ flattenTuple(input)
**Arguments**
-- `input` — Named and nested tuple to flatten. [`Tuple(n1 T1[, n2 T2, ... ])`](/reference/data-types/tuple)
+- `input` — Named and nested tuple to flatten. [`Tuple(n1 T1[, n2 T2, ... ])`](/core/reference/data-types/tuple)
**Returned value**
-Returns an output tuple whose elements are paths from the original input. [`Tuple(T)`](/reference/data-types/tuple)
+Returns an output tuple whose elements are paths from the original input. [`Tuple(T)`](/core/reference/data-types/tuple)
**Examples**
@@ -141,11 +141,11 @@ tupleConcat(tuple1[, tuple2, [...]])
**Arguments**
-- `tupleN` — Arbitrary number of arguments of Tuple type. [`Tuple(T)`](/reference/data-types/tuple)
+- `tupleN` — Arbitrary number of arguments of Tuple type. [`Tuple(T)`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple containing all elements from the input tuples. [`Tuple(T)`](/reference/data-types/tuple)
+Returns a tuple containing all elements from the input tuples. [`Tuple(T)`](/core/reference/data-types/tuple)
**Examples**
@@ -177,12 +177,12 @@ tupleDivide(t1, t2)
**Arguments**
-- `t1` — First tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `t2` — Second tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `t1` — First tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `t2` — Second tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns tuple with the result of division. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns tuple with the result of division. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -214,12 +214,12 @@ tupleDivideByNumber(tuple, number)
**Arguments**
-- `tuple` — Tuple to divide. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `number` — Divider. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `tuple` — Tuple to divide. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `number` — Divider. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple with divided elements. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple with divided elements. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -257,14 +257,14 @@ tupleElement(tuple, index|name[, default_value])
**Arguments**
-- `tuple` — A tuple or array of tuples. [`Tuple(T)`](/reference/data-types/tuple) or [`Array(Tuple(T))`](/reference/data-types/array)
-- `index` — Column index, starting from 1. [`const UInt8/16/32/64`](/reference/data-types/int-uint)
-- `name` — Name of the element. [`const String`](/reference/data-types/string)
-- `default_value` — Default value returned when index is out of bounds or element doesn't exist. [`Any`](/reference/data-types)
+- `tuple` — A tuple or array of tuples. [`Tuple(T)`](/core/reference/data-types/tuple) or [`Array(Tuple(T))`](/core/reference/data-types/array)
+- `index` — Column index, starting from 1. [`const UInt8/16/32/64`](/core/reference/data-types/int-uint)
+- `name` — Name of the element. [`const String`](/core/reference/data-types/string)
+- `default_value` — Default value returned when index is out of bounds or element doesn't exist. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the element at the specified index or name. [`Any`](/reference/data-types)
+Returns the element at the specified index or name. [`Any`](/core/reference/data-types)
**Examples**
@@ -327,7 +327,7 @@ Introduced in: v21.1.0
Returns the [Hamming Distance](https://en.wikipedia.org/wiki/Hamming_distance) between two tuples of the same size.
-The result type is determined the same way it is for [Arithmetic functions](/reference/functions/regular-functions/arithmetic-functions), based on the number of elements in the input tuples.
+The result type is determined the same way it is for [Arithmetic functions](/core/reference/functions/regular-functions/arithmetic-functions), based on the number of elements in the input tuples.
```sql
SELECT
@@ -353,12 +353,12 @@ tupleHammingDistance(t1, t2)
**Arguments**
-- `t1` — First tuple. [`Tuple(*)`](/reference/data-types/tuple)
-- `t2` — Second tuple. [`Tuple(*)`](/reference/data-types/tuple)
+- `t1` — First tuple. [`Tuple(*)`](/core/reference/data-types/tuple)
+- `t2` — Second tuple. [`Tuple(*)`](/core/reference/data-types/tuple)
**Returned value**
-Returns the Hamming distance. [`UInt8/16/32/64`](/reference/data-types/int-uint)
+Returns the Hamming distance. [`UInt8/16/32/64`](/core/reference/data-types/int-uint)
**Examples**
@@ -398,12 +398,12 @@ tupleIntDiv(tuple_num, tuple_div)
**Arguments**
-- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `tuple_div` — Tuple of divisor values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `tuple_div` — Tuple of divisor values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple of the quotients. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple of the quotients. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -443,12 +443,12 @@ tupleIntDivByNumber(tuple_num, div)
**Arguments**
-- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `div` — The divisor value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `div` — The divisor value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple of the quotients. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple of the quotients. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -488,12 +488,12 @@ tupleIntDivOrZero(tuple_num, tuple_div)
**Arguments**
-- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `tuple_div` — Tuple of divisor values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `tuple_div` — Tuple of divisor values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns tuple of the quotients. Returns 0 for quotients where the divisor is 0. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns tuple of the quotients. Returns 0 for quotients where the divisor is 0. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -523,12 +523,12 @@ tupleIntDivOrZeroByNumber(tuple_num, div)
**Arguments**
-- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `div` — The divisor value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `div` — The divisor value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple of the quotients with `0` for quotients where the divisor is `0`. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple of the quotients with `0` for quotients where the divisor is `0`. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -568,12 +568,12 @@ tupleMinus(t1, t2)
**Arguments**
-- `t1` — First tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `t2` — Second tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `t1` — First tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `t2` — Second tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple containing the results of the subtractions. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple containing the results of the subtractions. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -601,12 +601,12 @@ tupleModulo(tuple_num, tuple_mod)
**Arguments**
-- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `tuple_mod` — Tuple of modulus values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `tuple_mod` — Tuple of modulus values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns tuple of the remainders of division. An error is thrown for division by zero. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns tuple of the remainders of division. An error is thrown for division by zero. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -634,12 +634,12 @@ tupleModuloByNumber(tuple_num, div)
**Arguments**
-- `tuple_num` — Tuple of numerator elements. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `div` — The divisor value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `tuple_num` — Tuple of numerator elements. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `div` — The divisor value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns tuple of the remainders of division. An error is thrown for division by zero. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns tuple of the remainders of division. An error is thrown for division by zero. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -667,12 +667,12 @@ tupleMultiply(t1, t2)
**Arguments**
-- `t1` — First tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `t2` — Second tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `t1` — First tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `t2` — Second tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple with the results of the multiplications. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple with the results of the multiplications. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -700,12 +700,12 @@ tupleMultiplyByNumber(tuple, number)
**Arguments**
-- `tuple` — Tuple to multiply. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `number` — Multiplier. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `tuple` — Tuple to multiply. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `number` — Multiplier. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple with multiplied elements. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple with multiplied elements. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -763,11 +763,11 @@ tupleNegate(t)
**Arguments**
-- `t` — Tuple to negate. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `t` — Tuple to negate. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple with the result of negation. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple with the result of negation. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -797,12 +797,12 @@ tuplePlus(t1, t2)
**Arguments**
-- `t1` — First tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `t2` — Second tuple. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+- `t1` — First tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `t2` — Second tuple. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Returned value**
-Returns a tuple containing the sums of corresponding input tuple arguments. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple containing the sums of corresponding input tuple arguments. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -831,12 +831,12 @@ tuplePositiveModuloByNumber(tuple_num, div)
**Arguments**
-- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
-- `div` — The divisor value. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
+- `tuple_num` — Tuple of numerator values. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
+- `div` — The divisor value. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
**Returned value**
-Returns a tuple of the non-negative remainders. [`Tuple((U)Int*)`](/reference/data-types/tuple) or [`Tuple(Float*)`](/reference/data-types/tuple) or [`Tuple(Decimal)`](/reference/data-types/tuple)
+Returns a tuple of the non-negative remainders. [`Tuple((U)Int*)`](/core/reference/data-types/tuple) or [`Tuple(Float*)`](/core/reference/data-types/tuple) or [`Tuple(Decimal)`](/core/reference/data-types/tuple)
**Examples**
@@ -866,11 +866,11 @@ tupleToNameValuePairs(tuple)
**Arguments**
-- `tuple` — Named tuple with any types of values. [`Tuple(n1 T1[, n2 T2, ...])`](/reference/data-types/tuple)
+- `tuple` — Named tuple with any types of values. [`Tuple(n1 T1[, n2 T2, ...])`](/core/reference/data-types/tuple)
**Returned value**
-Returns an array with `(name, value)` pairs. [`Array(Tuple(String, T))`](/reference/data-types/array)
+Returns an array with `(name, value)` pairs. [`Array(Tuple(String, T))`](/core/reference/data-types/array)
**Examples**
@@ -898,7 +898,7 @@ SELECT tupleToNameValuePairs(tuple(3, 2, 1))
## untuple {#untuple}
-Performs syntactic substitution of [tuple](/reference/data-types/tuple) elements in the call location.
+Performs syntactic substitution of [tuple](/core/reference/data-types/tuple) elements in the call location.
The names of the result columns are implementation-specific and subject to change. Do not assume specific column names after `untuple`.
@@ -912,7 +912,7 @@ You can use the `EXCEPT` expression to skip columns as a result of the query.
**Arguments**
-- `x` — A `tuple` function, column, or tuple of elements. [Tuple](/reference/data-types/tuple).
+- `x` — A `tuple` function, column, or tuple of elements. [Tuple](/core/reference/data-types/tuple).
**Returned value**
@@ -966,4 +966,4 @@ SELECT untuple((* EXCEPT (v2, v3),)) FROM kv;
## Distance functions {#distance-functions}
-All supported functions are described in [distance functions documentation](/reference/functions/regular-functions/distance-functions).
+All supported functions are described in [distance functions documentation](/core/reference/functions/regular-functions/distance-functions).
diff --git a/reference/functions/regular-functions/tuple-map-functions.mdx b/core/reference/functions/regular-functions/tuple-map-functions.mdx
similarity index 79%
rename from reference/functions/regular-functions/tuple-map-functions.mdx
rename to core/reference/functions/regular-functions/tuple-map-functions.mdx
index eb20e287..447ec2ec 100644
--- a/reference/functions/regular-functions/tuple-map-functions.mdx
+++ b/core/reference/functions/regular-functions/tuple-map-functions.mdx
@@ -29,10 +29,10 @@ Extracts key-value pairs from any string. The string does not need to be 100% st
```
**Arguments**
- - `data` - String to extract key-value pairs from. [String](/reference/data-types/string) or [FixedString](/reference/data-types/fixedstring).
- - `key_value_delimiter` - Character to be used as delimiter between the key and the value. Defaults to `:`. [String](/reference/data-types/string) or [FixedString](/reference/data-types/fixedstring).
- - `pair_delimiters` - Set of character to be used as delimiters between pairs. Defaults to `\space`, `,` and `;`. [String](/reference/data-types/string) or [FixedString](/reference/data-types/fixedstring).
- - `quoting_character` - Character to be used as quoting character. Defaults to `"`. [String](/reference/data-types/string) or [FixedString](/reference/data-types/fixedstring).
+ - `data` - String to extract key-value pairs from. [String](/core/reference/data-types/string) or [FixedString](/core/reference/data-types/fixedstring).
+ - `key_value_delimiter` - Character to be used as delimiter between the key and the value. Defaults to `:`. [String](/core/reference/data-types/string) or [FixedString](/core/reference/data-types/fixedstring).
+ - `pair_delimiters` - Set of character to be used as delimiters between pairs. Defaults to `\space`, `,` and `;`. [String](/core/reference/data-types/string) or [FixedString](/core/reference/data-types/fixedstring).
+ - `quoting_character` - Character to be used as quoting character. Defaults to `"`. [String](/core/reference/data-types/string) or [FixedString](/core/reference/data-types/fixedstring).
- `unexpected_quoting_character_strategy` - Strategy to handle quoting characters in unexpected places during `read_key` and `read_value` phase. Possible values: `invalid`, `accept` and `promote`. Invalid will discard key/value and transition back to `WAITING_KEY` state. Accept will treat it as a normal character. Promote will transition to `READ_QUOTED_{KEY/VALUE}` state and start from next character. The default value is `INVALID`
**Returned values**
@@ -223,12 +223,12 @@ map(key1, value1[, key2, value2, ...])
**Arguments**
-- `key_n` — The keys of the map entries. [`Any`](/reference/data-types)
-- `value_n` — The values of the map entries. [`Any`](/reference/data-types)
+- `key_n` — The keys of the map entries. [`Any`](/core/reference/data-types)
+- `value_n` — The values of the map entries. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a map containing key:value pairs. [`Map(Any, Any)`](/reference/data-types/map)
+Returns a map containing key:value pairs. [`Map(Any, Any)`](/core/reference/data-types/map)
**Examples**
@@ -258,11 +258,11 @@ mapAdd(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — Maps or tuples of two arrays in which items in the first array represent keys, and the second array contains values for each key. [`Map(K, V)`](/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/reference/data-types/tuple)
+- `arg1[, arg2, ...]` — Maps or tuples of two arrays in which items in the first array represent keys, and the second array contains values for each key. [`Map(K, V)`](/core/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/core/reference/data-types/tuple)
**Returned value**
-Returns a map or returns a tuple, where the first array contains the sorted keys and the second array contains values. [`Map(K, V)`](/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/reference/data-types/tuple)
+Returns a map or returns a tuple, where the first array contains the sorted keys and the second array contains values. [`Map(K, V)`](/core/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/core/reference/data-types/tuple)
**Examples**
@@ -302,12 +302,12 @@ mapAll([func,] map)
**Arguments**
-- `func` — Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `map` — Map to check. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `map` — Map to check. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns `1` if all key-value pairs satisfy the condition, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if all key-value pairs satisfy the condition, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -335,12 +335,12 @@ mapApply(func, map)
**Arguments**
-- `func` — Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `map` — Map to apply function to. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `map` — Map to apply function to. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns a new map obtained from the original map by application of `func` for each element. [`Map(K, V)`](/reference/data-types/map)
+Returns a new map obtained from the original map by application of `func` for each element. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -369,11 +369,11 @@ mapConcat(maps)
**Arguments**
-- `maps` — Arbitrarily many maps. [`Map`](/reference/data-types/map)
+- `maps` — Arbitrarily many maps. [`Map`](/core/reference/data-types/map)
**Returned value**
-Returns a map with concatenated maps passed as arguments. [`Map`](/reference/data-types/map)
+Returns a map with concatenated maps passed as arguments. [`Map`](/core/reference/data-types/map)
**Examples**
@@ -403,12 +403,12 @@ mapContainsKey(map, key)
**Arguments**
-- `map` — Map to search in. [`Map(K, V)`](/reference/data-types/map)
-- `key` — Key to search for. Type must match the key type of the map. [`Any`](/reference/data-types)
+- `map` — Map to search in. [`Map(K, V)`](/core/reference/data-types/map)
+- `key` — Key to search for. Type must match the key type of the map. [`Any`](/core/reference/data-types)
**Returned value**
-Returns 1 if map contains key, 0 if not. [`UInt8`](/reference/data-types/int-uint)
+Returns 1 if map contains key, 0 if not. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -436,12 +436,12 @@ mapContainsKeyLike(map, pattern)
**Arguments**
-- `map` — Map to search in. [`Map(K, V)`](/reference/data-types/map)
-- `pattern` — Pattern to match keys against. [`const String`](/reference/data-types/string)
+- `map` — Map to search in. [`Map(K, V)`](/core/reference/data-types/map)
+- `pattern` — Pattern to match keys against. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `map` contains a key matching `pattern`, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `map` contains a key matching `pattern`, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -478,12 +478,12 @@ mapContainsValue(map, value)
**Arguments**
-- `map` — Map to search in. [`Map(K, V)`](/reference/data-types/map)
-- `value` — Value to search for. Type must match the value type of map. [`Any`](/reference/data-types)
+- `map` — Map to search in. [`Map(K, V)`](/core/reference/data-types/map)
+- `value` — Value to search for. Type must match the value type of map. [`Any`](/core/reference/data-types)
**Returned value**
-Returns `1` if the map contains the value, `0` if not. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if the map contains the value, `0` if not. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -511,12 +511,12 @@ mapContainsValueLike(map, pattern)
**Arguments**
-- `map` — Map to search in. [`Map(K, V)`](/reference/data-types/map)
-- `pattern` — Pattern to match values against. [`const String`](/reference/data-types/string)
+- `map` — Map to search in. [`Map(K, V)`](/core/reference/data-types/map)
+- `pattern` — Pattern to match values against. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns `1` if `map` contains a value matching `pattern`, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if `map` contains a value matching `pattern`, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -555,12 +555,12 @@ mapExists([func,] map)
**Arguments**
-- `func` — Optional. Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `map` — Map to check. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Optional. Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `map` — Map to check. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns `1` if at least one key-value pair satisfies the condition, `0` otherwise. [`UInt8`](/reference/data-types/int-uint)
+Returns `1` if at least one key-value pair satisfies the condition, `0` otherwise. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -588,12 +588,12 @@ mapExtractKeyLike(map, pattern)
**Arguments**
-- `map` — Map to extract from. [`Map(K, V)`](/reference/data-types/map)
-- `pattern` — Pattern to match keys against. [`const String`](/reference/data-types/string)
+- `map` — Map to extract from. [`Map(K, V)`](/core/reference/data-types/map)
+- `pattern` — Pattern to match keys against. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a map containing elements the key matching the specified pattern. If no elements match the pattern, an empty map is returned. [`Map(K, V)`](/reference/data-types/map)
+Returns a map containing elements the key matching the specified pattern. If no elements match the pattern, an empty map is returned. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -630,12 +630,12 @@ mapExtractValueLike(map, pattern)
**Arguments**
-- `map` — Map to extract from. [`Map(K, V)`](/reference/data-types/map)
-- `pattern` — Pattern to match values against. [`const String`](/reference/data-types/string)
+- `map` — Map to extract from. [`Map(K, V)`](/core/reference/data-types/map)
+- `pattern` — Pattern to match values against. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns a map containing elements the value matching the specified pattern. If no elements match the pattern, an empty map is returned. [`Map(K, V)`](/reference/data-types/map)
+Returns a map containing elements the value matching the specified pattern. If no elements match the pattern, an empty map is returned. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -672,12 +672,12 @@ mapFilter(func, map)
**Arguments**
-- `func` — Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `map` — Map to filter. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `map` — Map to filter. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns a map containing only the elements in the map for which `func` returns something other than `0`. [`Map(K, V)`](/reference/data-types/map)
+Returns a map containing only the elements in the map for which `func` returns something other than `0`. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -708,12 +708,12 @@ mapFromArrays(keys, values)
**Arguments**
-- `keys` — Array or map of keys to create the map from. [`Array`](/reference/data-types/array) or [`Map`](/reference/data-types/map)
-- `values` — Array or map of values to create the map from. [`Array`](/reference/data-types/array) or [`Map`](/reference/data-types/map)
+- `keys` — Array or map of keys to create the map from. [`Array`](/core/reference/data-types/array) or [`Map`](/core/reference/data-types/map)
+- `values` — Array or map of values to create the map from. [`Array`](/core/reference/data-types/array) or [`Map`](/core/reference/data-types/map)
**Returned value**
-Returns a map with keys and values constructed from the key array and value array/map. [`Map`](/reference/data-types/map)
+Returns a map with keys and values constructed from the key array and value array/map. [`Map`](/core/reference/data-types/map)
**Examples**
@@ -742,7 +742,7 @@ SELECT mapFromArrays([1, 2, 3], map('a', 1, 'b', 2, 'c', 3))
Introduced in: v21.2.0
Returns the keys of a given map.
-This function can be optimized by enabling setting [`optimize_functions_to_subcolumns`](/reference/settings/session-settings#optimize_functions_to_subcolumns).
+This function can be optimized by enabling setting [`optimize_functions_to_subcolumns`](/core/reference/settings/session-settings#optimize_functions_to_subcolumns).
With the setting enabled, the function only reads the `keys` subcolumn instead of the entire map.
The query `SELECT mapKeys(m) FROM table` is transformed to `SELECT m.keys FROM table`.
@@ -754,11 +754,11 @@ mapKeys(map)
**Arguments**
-- `map` — Map to extract keys from. [`Map(K, V)`](/reference/data-types/map)
+- `map` — Map to extract keys from. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns array containing all keys from the map. [`Array(T)`](/reference/data-types/array)
+Returns array containing all keys from the map. [`Array(T)`](/core/reference/data-types/array)
**Examples**
@@ -787,13 +787,13 @@ mapPartialReverseSort([func,] limit, map)
**Arguments**
-- `func` — Optional. Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `limit` — Elements in the range `[1..limit]` are sorted. [`(U)Int*`](/reference/data-types/int-uint)
-- `map` — Map to sort. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Optional. Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `limit` — Elements in the range `[1..limit]` are sorted. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `map` — Map to sort. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns a partially sorted map in descending order. [`Map(K, V)`](/reference/data-types/map)
+Returns a partially sorted map in descending order. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -822,13 +822,13 @@ mapPartialSort([func,] limit, map)
**Arguments**
-- `func` — Optional. Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `limit` — Elements in the range `[1..limit]` are sorted. [`(U)Int*`](/reference/data-types/int-uint)
-- `map` — Map to sort. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Optional. Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `limit` — Elements in the range `[1..limit]` are sorted. [`(U)Int*`](/core/reference/data-types/int-uint)
+- `map` — Map to sort. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns a partially sorted map. [`Map(K, V)`](/reference/data-types/map)
+Returns a partially sorted map. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -860,14 +860,14 @@ mapPopulateSeries(map[, max]) | mapPopulateSeries(keys, values[, max])
**Arguments**
-- `map` — Map with integer keys. [`Map((U)Int*, V)`](/reference/data-types/map)
-- `keys` — Array of keys. [`Array(T)`](/reference/data-types/array)
-- `values` — Array of values. [`Array(T)`](/reference/data-types/array)
-- `max` — Optional. Maximum key value. [`Int8`](/reference/data-types/int-uint) or [`Int16`](/reference/data-types/int-uint) or [`Int32`](/reference/data-types/int-uint) or [`Int64`](/reference/data-types/int-uint) or [`Int128`](/reference/data-types/int-uint) or [`Int256`](/reference/data-types/int-uint)
+- `map` — Map with integer keys. [`Map((U)Int*, V)`](/core/reference/data-types/map)
+- `keys` — Array of keys. [`Array(T)`](/core/reference/data-types/array)
+- `values` — Array of values. [`Array(T)`](/core/reference/data-types/array)
+- `max` — Optional. Maximum key value. [`Int8`](/core/reference/data-types/int-uint) or [`Int16`](/core/reference/data-types/int-uint) or [`Int32`](/core/reference/data-types/int-uint) or [`Int64`](/core/reference/data-types/int-uint) or [`Int128`](/core/reference/data-types/int-uint) or [`Int256`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a map or a tuple of two arrays where the first has keys in sorted order, and the second values for the corresponding keys. [`Map(K, V)`](/reference/data-types/map) or [`Tuple(Array(UInt*), Array(Any))`](/reference/data-types/tuple)
+Returns a map or a tuple of two arrays where the first has keys in sorted order, and the second values for the corresponding keys. [`Map(K, V)`](/core/reference/data-types/map) or [`Tuple(Array(UInt*), Array(Any))`](/core/reference/data-types/tuple)
**Examples**
@@ -906,12 +906,12 @@ mapReverseSort([func,] map)
**Arguments**
-- `func` — Optional. Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `map` — Map to sort. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Optional. Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `map` — Map to sort. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns a map sorted in descending order. [`Map(K, V)`](/reference/data-types/map)
+Returns a map sorted in descending order. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -940,12 +940,12 @@ mapSort([func,] map)
**Arguments**
-- `func` — Optional. Lambda function. [`Lambda function`](/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
-- `map` — Map to sort. [`Map(K, V)`](/reference/data-types/map)
+- `func` — Optional. Lambda function. [`Lambda function`](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda)
+- `map` — Map to sort. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns a map sorted in ascending order. [`Map(K, V)`](/reference/data-types/map)
+Returns a map sorted in ascending order. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -973,11 +973,11 @@ mapSubtract(arg1[, arg2, ...])
**Arguments**
-- `arg1[, arg2, ...]` — Maps or tuples of two arrays in which items in the first array represent keys, and the second array contains values for each key. [`Map(K, V)`](/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/reference/data-types/tuple)
+- `arg1[, arg2, ...]` — Maps or tuples of two arrays in which items in the first array represent keys, and the second array contains values for each key. [`Map(K, V)`](/core/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/core/reference/data-types/tuple)
**Returned value**
-Returns one map or tuple, where the first array contains the sorted keys and the second array contains values. [`Map(K, V)`](/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/reference/data-types/tuple)
+Returns one map or tuple, where the first array contains the sorted keys and the second array contains values. [`Map(K, V)`](/core/reference/data-types/map) or [`Tuple(Array(T), Array(T))`](/core/reference/data-types/tuple)
**Examples**
@@ -1015,12 +1015,12 @@ mapUpdate(map1, map2)
**Arguments**
-- `map1` — The map to update. [`Map(K, V)`](/reference/data-types/map)
-- `map2` — The map to use for updating. [`Map(K, V)`](/reference/data-types/map)
+- `map1` — The map to update. [`Map(K, V)`](/core/reference/data-types/map)
+- `map2` — The map to use for updating. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns `map1` with values updated from values for the corresponding keys in `map2`. [`Map(K, V)`](/reference/data-types/map)
+Returns `map1` with values updated from values for the corresponding keys in `map2`. [`Map(K, V)`](/core/reference/data-types/map)
**Examples**
@@ -1039,7 +1039,7 @@ SELECT mapUpdate(map('key1', 0, 'key3', 0), map('key1', 10, 'key2', 10))
Introduced in: v21.2.0
Returns the values of a given map.
-This function can be optimized by enabling setting [`optimize_functions_to_subcolumns`](/reference/settings/session-settings#optimize_functions_to_subcolumns).
+This function can be optimized by enabling setting [`optimize_functions_to_subcolumns`](/core/reference/settings/session-settings#optimize_functions_to_subcolumns).
With the setting enabled, the function only reads the `values` subcolumn instead of the entire map.
The query `SELECT mapValues(m) FROM table` is transformed to `SELECT m.values FROM table`.
@@ -1051,11 +1051,11 @@ mapValues(map)
**Arguments**
-- `map` — Map to extract values from. [`Map(K, V)`](/reference/data-types/map)
+- `map` — Map to extract values from. [`Map(K, V)`](/core/reference/data-types/map)
**Returned value**
-Returns an array containing all the values from the map. [`Array(T)`](/reference/data-types/array)
+Returns an array containing all the values from the map. [`Array(T)`](/core/reference/data-types/array)
**Examples**
diff --git a/reference/functions/regular-functions/type-conversion-functions.mdx b/core/reference/functions/regular-functions/type-conversion-functions.mdx
similarity index 75%
rename from reference/functions/regular-functions/type-conversion-functions.mdx
rename to core/reference/functions/regular-functions/type-conversion-functions.mdx
index 088c2c4f..bde9481d 100644
--- a/reference/functions/regular-functions/type-conversion-functions.mdx
+++ b/core/reference/functions/regular-functions/type-conversion-functions.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
ClickHouse generally uses the [same behavior as C++ programs](https://en.cppreference.com/w/cpp/language/implicit_conversion).
-`to` functions and [cast](#CAST) behave differently in some cases, for example in case of [LowCardinality](/reference/data-types/lowcardinality): [cast](#CAST) removes [LowCardinality](/reference/data-types/lowcardinality) trait `to` functions don't. The same with [Nullable](/reference/data-types/nullable), this behaviour is not compatible with SQL standard, and it can be changed using [cast_keep_nullable](/reference/settings/session-settings#cast_keep_nullable) setting.
+`to` functions and [cast](#CAST) behave differently in some cases, for example in case of [LowCardinality](/core/reference/data-types/lowcardinality): [cast](#CAST) removes [LowCardinality](/core/reference/data-types/lowcardinality) trait `to` functions don't. The same with [Nullable](/core/reference/data-types/nullable), this behaviour is not compatible with SQL standard, and it can be changed using [cast_keep_nullable](/core/reference/settings/session-settings#cast_keep_nullable) setting.
Be aware of potential data loss if values of a datatype are converted to a smaller datatype (for example from `Int64` to `Int32`) or between
@@ -102,7 +102,7 @@ LIMIT 10
└─────────────────────┴───────────────────┴─────────────────────┘
```
-Also see the [`toUnixTimestamp`](/reference/functions/regular-functions/date-time-functions#toUnixTimestamp) function.
+Also see the [`toUnixTimestamp`](/core/reference/functions/regular-functions/date-time-functions#toUnixTimestamp) function.
{/*
The inner content of the tags below are replaced at doc framework build time with
@@ -130,12 +130,12 @@ or x::T
**Arguments**
-- `x` — A value of any type. [`Any`](/reference/data-types)
-- `T` — The target data type. [`String`](/reference/data-types/string)
+- `x` — A value of any type. [`Any`](/core/reference/data-types)
+- `T` — The target data type. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the converted value with the target data type. [`Any`](/reference/data-types)
+Returns the converted value with the target data type. [`Any`](/core/reference/data-types)
**Examples**
@@ -190,11 +190,11 @@ DATE(expr)
**Arguments**
-- `expr` — The value to convert. [`String`](/reference/data-types/string) or [`UInt32`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `expr` — The value to convert. [`String`](/core/reference/data-types/string) or [`UInt32`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns a Date value. [`Date`](/reference/data-types/date)
+Returns a Date value. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -225,12 +225,12 @@ accurateCast(x, T)
**Arguments**
-- `x` — A value to convert. [`Any`](/reference/data-types)
-- `T` — The target data type name. [`String`](/reference/data-types/string)
+- `x` — A value to convert. [`Any`](/core/reference/data-types)
+- `T` — The target data type name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the converted value with the target data type. [`Any`](/reference/data-types)
+Returns the converted value with the target data type. [`Any`](/core/reference/data-types)
**Examples**
@@ -277,13 +277,13 @@ accurateCastOrDefault(x, T[, default_value])
**Arguments**
-- `x` — A value to convert. [`Any`](/reference/data-types)
-- `T` — The target data type name. [`const String`](/reference/data-types/string)
-- `default_value` — Optional. Default value to return if conversion fails. [`Any`](/reference/data-types)
+- `x` — A value to convert. [`Any`](/core/reference/data-types)
+- `T` — The target data type name. [`const String`](/core/reference/data-types/string)
+- `default_value` — Optional. Default value to return if conversion fails. [`Any`](/core/reference/data-types)
**Returned value**
-Returns the converted value with the target data type, or the default value if conversion is not possible. [`Any`](/reference/data-types)
+Returns the converted value with the target data type, or the default value if conversion is not possible. [`Any`](/core/reference/data-types)
**Examples**
@@ -341,12 +341,12 @@ accurateCastOrNull(x, T)
**Arguments**
-- `x` — A value to convert. [`Any`](/reference/data-types)
-- `T` — The target data type name. [`String`](/reference/data-types/string)
+- `x` — A value to convert. [`Any`](/core/reference/data-types)
+- `T` — The target data type name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the converted value with the target data type, or `NULL` if conversion is not possible. [`Any`](/reference/data-types)
+Returns the converted value with the target data type, or `NULL` if conversion is not possible. [`Any`](/core/reference/data-types)
**Examples**
@@ -394,12 +394,12 @@ formatRow(format, x, y, ...)
**Arguments**
-- `format` — Text format. For example, CSV, TSV. [`String`](/reference/data-types/string)
-- `x, y, ...` — Expressions. [`Any`](/reference/data-types)
+- `format` — Text format. For example, CSV, TSV. [`String`](/core/reference/data-types/string)
+- `x, y, ...` — Expressions. [`Any`](/core/reference/data-types)
**Returned value**
-A formatted string. (for text formats it's usually terminated with the new line character). [`String`](/reference/data-types/string)
+A formatted string. (for text formats it's usually terminated with the new line character). [`String`](/core/reference/data-types/string)
**Examples**
@@ -460,12 +460,12 @@ formatRowNoNewline(format, x, y, ...)
**Arguments**
-- `format` — Text format. For example, CSV, TSV. [`String`](/reference/data-types/string)
-- `x, y, ...` — Expressions. [`Any`](/reference/data-types)
+- `format` — Text format. For example, CSV, TSV. [`String`](/core/reference/data-types/string)
+- `x, y, ...` — Expressions. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a formatted string with newlines removed. [`String`](/reference/data-types/string)
+Returns a formatted string with newlines removed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -501,12 +501,12 @@ fromUnixTimestamp64Micro(value[, timezone])
**Arguments**
-- `value` — Unix timestamp in microseconds. [`Int64`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone for the returned value. [`String`](/reference/data-types/string)
+- `value` — Unix timestamp in microseconds. [`Int64`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime64` value with microsecond precision. [`DateTime64(6)`](/reference/data-types/datetime64)
+Returns a `DateTime64` value with microsecond precision. [`DateTime64(6)`](/core/reference/data-types/datetime64)
**Examples**
@@ -539,12 +539,12 @@ fromUnixTimestamp64Milli(value[, timezone])
**Arguments**
-- `value` — Unix timestamp in milliseconds. [`Int64`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone for the returned value. [`String`](/reference/data-types/string)
+- `value` — Unix timestamp in milliseconds. [`Int64`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-A `DateTime64` value with millisecond precision. [`DateTime64(3)`](/reference/data-types/datetime64)
+A `DateTime64` value with millisecond precision. [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -564,7 +564,7 @@ SELECT fromUnixTimestamp64Milli(1640995200123)
Introduced in: v20.5.0
-Converts a Unix timestamp in nanoseconds to a [`DateTime64`](/reference/data-types/datetime64) value with nanosecond precision.
+Converts a Unix timestamp in nanoseconds to a [`DateTime64`](/core/reference/data-types/datetime64) value with nanosecond precision.
The input value is treated as a Unix timestamp with nanosecond precision (number of nanoseconds since 1970-01-01 00:00:00 UTC).
@@ -581,12 +581,12 @@ fromUnixTimestamp64Nano(value[, timezone])
**Arguments**
-- `value` — Unix timestamp in nanoseconds. [`Int64`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone for the returned value. [`String`](/reference/data-types/string)
+- `value` — Unix timestamp in nanoseconds. [`Int64`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime64` value with nanosecond precision. [`DateTime64(9)`](/reference/data-types/datetime64)
+Returns a `DateTime64` value with nanosecond precision. [`DateTime64(9)`](/core/reference/data-types/datetime64)
**Examples**
@@ -619,12 +619,12 @@ fromUnixTimestamp64Second(value[, timezone])
**Arguments**
-- `value` — Unix timestamp in seconds. [`Int64`](/reference/data-types/int-uint)
-- `timezone` — Optional. Timezone for the returned value. [`String`](/reference/data-types/string)
+- `value` — Unix timestamp in seconds. [`Int64`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Timezone for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime64` value with second precision. [`DateTime64(0)`](/reference/data-types/datetime64)
+Returns a `DateTime64` value with second precision. [`DateTime64(0)`](/core/reference/data-types/datetime64)
**Examples**
@@ -646,7 +646,7 @@ Introduced in: v23.3.0
Parses a date and time string according to a MySQL date format string.
-This function is the inverse of [`formatDateTime`](/reference/functions/regular-functions/date-time-functions).
+This function is the inverse of [`formatDateTime`](/core/reference/functions/regular-functions/date-time-functions).
It parses a String argument using a format String. Returns a DateTime type.
@@ -660,13 +660,13 @@ parseDateTime(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime. [`String`](/reference/data-types/string)
-- `format` — Format string specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime. [`String`](/core/reference/data-types/string)
+- `format` — Format string specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a DateTime parsed from the input string according to the MySQL style format string. [`DateTime`](/reference/data-types/datetime)
+Returns a DateTime parsed from the input string according to the MySQL style format string. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -686,7 +686,7 @@ SELECT parseDateTime('2025-01-04+23:00:00', '%Y-%m-%d+%H:%i:%s')
Introduced in: v20.9.0
-Converts a string representation of a date and time to the [`DateTime`](/reference/data-types/datetime) data type.
+Converts a string representation of a date and time to the [`DateTime`](/core/reference/data-types/datetime) data type.
The function parses [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), [RFC 1123 - 5.2.14 RFC-822 Date and Time Specification](https://tools.ietf.org/html/rfc1123#page-55), ClickHouse's and some other date and time formats.
@@ -699,12 +699,12 @@ parseDateTime32BestEffort(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` as a `DateTime`. [`DateTime`](/reference/data-types/datetime)
+Returns `time_string` as a `DateTime`. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -762,12 +762,12 @@ parseDateTime32BestEffortOrNull(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime` object parsed from the string, or `NULL` if the parsing fails. [`DateTime`](/reference/data-types/datetime)
+Returns a `DateTime` object parsed from the string, or `NULL` if the parsing fails. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -800,12 +800,12 @@ parseDateTime32BestEffortOrZero(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime` object parsed from the string, or zero date (`1970-01-01 00:00:00`) if the parsing fails. [`DateTime`](/reference/data-types/datetime)
+Returns a `DateTime` object parsed from the string, or zero date (`1970-01-01 00:00:00`) if the parsing fails. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -829,7 +829,7 @@ Introduced in: v24.11.0
Parses a date and time string with sub-second precision according to a MySQL date format string.
-This function is the inverse of [`formatDateTime`](/reference/functions/regular-functions/date-time-functions) for DateTime64.
+This function is the inverse of [`formatDateTime`](/core/reference/functions/regular-functions/date-time-functions) for DateTime64.
It parses a String argument using a format String. Returns a DateTime64 type which can represent dates from 1900 to 2299 with sub-second precision.
@@ -841,13 +841,13 @@ parseDateTime64(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime64. [`String`](/reference/data-types/string)
-- `format` — Format string specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime64. [`String`](/core/reference/data-types/string)
+- `format` — Format string specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a DateTime64 parsed from the input string according to the MySQL style format string. [`DateTime64`](/reference/data-types/datetime64)
+Returns a DateTime64 parsed from the input string according to the MySQL style format string. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -867,7 +867,7 @@ SELECT parseDateTime64('2025-01-04 23:00:00.123', '%Y-%m-%d %H:%i:%s.%f')
Introduced in: v20.1.0
-Same as [`parseDateTimeBestEffort`](#parseDateTimeBestEffort) function but also parse milliseconds and microseconds and returns [`DateTime64`](/reference/data-types/datetime64) data type.
+Same as [`parseDateTimeBestEffort`](#parseDateTimeBestEffort) function but also parse milliseconds and microseconds and returns [`DateTime64`](/core/reference/data-types/datetime64) data type.
**Syntax**
@@ -878,13 +878,13 @@ parseDateTime64BestEffort(time_string[, precision[, time_zone]])
**Arguments**
-- `time_string` — String containing a date or date with time to convert. [`String`](/reference/data-types/string)
-- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/reference/data-types/int-uint)
-- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date or date with time to convert. [`String`](/core/reference/data-types/string)
+- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` converted to the [`DateTime64`](/reference/data-types/datetime64) data type. [`DateTime64`](/reference/data-types/datetime64)
+Returns `time_string` converted to the [`DateTime64`](/core/reference/data-types/datetime64) data type. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -925,13 +925,13 @@ parseDateTime64BestEffortOrNull(time_string[, precision[, time_zone]])
**Arguments**
-- `time_string` — String containing a date or date with time to convert. [`String`](/reference/data-types/string)
-- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/reference/data-types/int-uint)
-- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date or date with time to convert. [`String`](/core/reference/data-types/string)
+- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` converted to [`DateTime64`](/reference/data-types/datetime64), or `NULL` if the input cannot be parsed. [`DateTime64`](/reference/data-types/datetime64) or [`NULL`](/reference/syntax#null)
+Returns `time_string` converted to [`DateTime64`](/core/reference/data-types/datetime64), or `NULL` if the input cannot be parsed. [`DateTime64`](/core/reference/data-types/datetime64) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -963,13 +963,13 @@ parseDateTime64BestEffortOrZero(time_string[, precision[, time_zone]])
**Arguments**
-- `time_string` — String containing a date or date with time to convert. [`String`](/reference/data-types/string)
-- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/reference/data-types/int-uint)
-- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date or date with time to convert. [`String`](/core/reference/data-types/string)
+- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` converted to [`DateTime64`](/reference/data-types/datetime64), or zero date/datetime (`1970-01-01 00:00:00.000`) if the input cannot be parsed. [`DateTime64`](/reference/data-types/datetime64)
+Returns `time_string` converted to [`DateTime64`](/core/reference/data-types/datetime64), or zero date/datetime (`1970-01-01 00:00:00.000`) if the input cannot be parsed. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1001,13 +1001,13 @@ parseDateTime64BestEffortUS(time_string [, precision [, time_zone]])
**Arguments**
-- `time_string` — String containing a date or date with time to convert. [`String`](/reference/data-types/string)
-- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/reference/data-types/int-uint)
-- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date or date with time to convert. [`String`](/core/reference/data-types/string)
+- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` converted to [`DateTime64`](/reference/data-types/datetime64) using US date format preference for ambiguous cases. [`DateTime64`](/reference/data-types/datetime64)
+Returns `time_string` converted to [`DateTime64`](/core/reference/data-types/datetime64) using US date format preference for ambiguous cases. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1039,13 +1039,13 @@ parseDateTime64BestEffortUSOrNull(time_string[, precision[, time_zone]])
**Arguments**
-- `time_string` — String containing a date or date with time to convert. [`String`](/reference/data-types/string)
-- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/reference/data-types/int-uint)
-- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date or date with time to convert. [`String`](/core/reference/data-types/string)
+- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` converted to [`DateTime64`](/reference/data-types/datetime64) using US format preference, or `NULL` if the input cannot be parsed. [`DateTime64`](/reference/data-types/datetime64) or [`NULL`](/reference/syntax#null)
+Returns `time_string` converted to [`DateTime64`](/core/reference/data-types/datetime64) using US format preference, or `NULL` if the input cannot be parsed. [`DateTime64`](/core/reference/data-types/datetime64) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -1077,13 +1077,13 @@ parseDateTime64BestEffortUSOrZero(time_string [, precision [, time_zone]])
**Arguments**
-- `time_string` — String containing a date or date with time to convert. [`String`](/reference/data-types/string)
-- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/reference/data-types/int-uint)
-- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date or date with time to convert. [`String`](/core/reference/data-types/string)
+- `precision` — Optional. Required precision. `3` for milliseconds, `6` for microseconds. Default: `3`. [`UInt8`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. Timezone. The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` converted to [`DateTime64`](/reference/data-types/datetime64) using US format preference, or zero date/datetime (`1970-01-01 00:00:00.000`) if the input cannot be parsed. [`DateTime64`](/reference/data-types/datetime64)
+Returns `time_string` converted to [`DateTime64`](/core/reference/data-types/datetime64) using US format preference, or zero date/datetime (`1970-01-01 00:00:00.000`) if the input cannot be parsed. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1106,7 +1106,7 @@ Introduced in: v24.10.0
Parses a date and time string with sub-second precision according to a Joda date format string.
-This function is the inverse of [`formatDateTimeInJodaSyntax`](/reference/functions/regular-functions/date-time-functions#formatDateTimeInJodaSyntax) for DateTime64.
+This function is the inverse of [`formatDateTimeInJodaSyntax`](/core/reference/functions/regular-functions/date-time-functions#formatDateTimeInJodaSyntax) for DateTime64.
It parses a String argument using a Joda-style format String. Returns a DateTime64 type which can represent dates from 1900 to 2299 with sub-second precision.
Refer to [Joda Time documentation](https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) for the format patterns.
@@ -1120,13 +1120,13 @@ parseDateTime64InJodaSyntax(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime64. [`String`](/reference/data-types/string)
-- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime64. [`String`](/core/reference/data-types/string)
+- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a DateTime64 parsed from the input string according to the Joda style format string. [`DateTime64`](/reference/data-types/datetime64)
+Returns a DateTime64 parsed from the input string according to the Joda style format string. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1157,13 +1157,13 @@ parseDateTime64InJodaSyntaxOrNull(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime64. [`String`](/reference/data-types/string)
-- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime64. [`String`](/core/reference/data-types/string)
+- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime64 parsed from input string, or NULL if parsing fails. [`Nullable(DateTime64)`](/reference/data-types/nullable)
+Returns DateTime64 parsed from input string, or NULL if parsing fails. [`Nullable(DateTime64)`](/core/reference/data-types/nullable)
**Examples**
@@ -1194,13 +1194,13 @@ parseDateTime64InJodaSyntaxOrZero(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime64. [`String`](/reference/data-types/string)
-- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime64. [`String`](/core/reference/data-types/string)
+- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime64 parsed from input string, or zero DateTime64 if parsing fails. [`DateTime64`](/reference/data-types/datetime64)
+Returns DateTime64 parsed from input string, or zero DateTime64 if parsing fails. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1231,13 +1231,13 @@ parseDateTime64OrNull(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime64. [`String`](/reference/data-types/string)
-- `format` — Format string specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime64. [`String`](/core/reference/data-types/string)
+- `format` — Format string specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime64 parsed from input string, or NULL if parsing fails. [`Nullable(DateTime64)`](/reference/data-types/nullable)
+Returns DateTime64 parsed from input string, or NULL if parsing fails. [`Nullable(DateTime64)`](/core/reference/data-types/nullable)
**Examples**
@@ -1268,13 +1268,13 @@ parseDateTime64OrZero(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime64. [`String`](/reference/data-types/string)
-- `format` — Format string specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime64. [`String`](/core/reference/data-types/string)
+- `format` — Format string specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime64 parsed from input string, or zero DateTime64 if parsing fails. [`DateTime64`](/reference/data-types/datetime64)
+Returns DateTime64 parsed from input string, or zero DateTime64 if parsing fails. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -1317,12 +1317,12 @@ parseDateTimeBestEffort(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` as a `DateTime`. [`DateTime`](/reference/data-types/datetime)
+Returns `time_string` as a `DateTime`. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1389,12 +1389,12 @@ parseDateTimeBestEffortOrNull(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` as a DateTime, or `NULL` if the input cannot be parsed. [`DateTime`](/reference/data-types/datetime) or [`NULL`](/reference/syntax#null)
+Returns `time_string` as a DateTime, or `NULL` if the input cannot be parsed. [`DateTime`](/core/reference/data-types/datetime) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -1438,12 +1438,12 @@ parseDateTimeBestEffortOrZero(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` as a `DateTime`, or zero date/datetime (`1970-01-01` or `1970-01-01 00:00:00`) if the input cannot be parsed. [`DateTime`](/reference/data-types/datetime)
+Returns `time_string` as a `DateTime`, or zero date/datetime (`1970-01-01` or `1970-01-01 00:00:00`) if the input cannot be parsed. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1477,12 +1477,12 @@ parseDateTimeBestEffortUS(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` as a `DateTime` using US date format preference for ambiguous cases. [`DateTime`](/reference/data-types/datetime)
+Returns `time_string` as a `DateTime` using US date format preference for ambiguous cases. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1516,12 +1516,12 @@ parseDateTimeBestEffortUSOrNull(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` as a DateTime using US format preference, or `NULL` if the input cannot be parsed. [`DateTime`](/reference/data-types/datetime) or [`NULL`](/reference/syntax#null)
+Returns `time_string` as a DateTime using US format preference, or `NULL` if the input cannot be parsed. [`DateTime`](/core/reference/data-types/datetime) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -1555,12 +1555,12 @@ parseDateTimeBestEffortUSOrZero(time_string[, time_zone])
**Arguments**
-- `time_string` — String containing a date and time to convert. [`String`](/reference/data-types/string)
-- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/reference/data-types/string)
+- `time_string` — String containing a date and time to convert. [`String`](/core/reference/data-types/string)
+- `time_zone` — Optional. Time zone according to which `time_string` is parsed. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `time_string` as a `DateTime` using US format preference, or zero date/datetime (`1970-01-01` or `1970-01-01 00:00:00`) if the input cannot be parsed. [`DateTime`](/reference/data-types/datetime)
+Returns `time_string` as a `DateTime` using US format preference, or zero date/datetime (`1970-01-01` or `1970-01-01 00:00:00`) if the input cannot be parsed. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1583,7 +1583,7 @@ Introduced in: v23.3.0
Parses a date and time string according to a Joda date format string.
-This function is the inverse of [`formatDateTimeInJodaSyntax`](/reference/functions/regular-functions/date-time-functions#formatDateTimeInJodaSyntax).
+This function is the inverse of [`formatDateTimeInJodaSyntax`](/core/reference/functions/regular-functions/date-time-functions#formatDateTimeInJodaSyntax).
It parses a String argument using a Joda-style format String. Returns a DateTime type.
Refer to [Joda Time documentation](https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) for the format patterns.
@@ -1597,13 +1597,13 @@ parseDateTimeInJodaSyntax(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime. [`String`](/reference/data-types/string)
-- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime. [`String`](/core/reference/data-types/string)
+- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a DateTime parsed from the input string according to the Joda style format string. [`DateTime`](/reference/data-types/datetime)
+Returns a DateTime parsed from the input string according to the Joda style format string. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1634,13 +1634,13 @@ parseDateTimeInJodaSyntaxOrNull(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime. [`String`](/reference/data-types/string)
-- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime. [`String`](/core/reference/data-types/string)
+- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime parsed from input string, or NULL if parsing fails. [`Nullable(DateTime)`](/reference/data-types/nullable)
+Returns DateTime parsed from input string, or NULL if parsing fails. [`Nullable(DateTime)`](/core/reference/data-types/nullable)
**Examples**
@@ -1671,13 +1671,13 @@ parseDateTimeInJodaSyntaxOrZero(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime. [`String`](/reference/data-types/string)
-- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime. [`String`](/core/reference/data-types/string)
+- `format` — Format string in Joda syntax specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime parsed from input string, or zero DateTime if parsing fails. [`DateTime`](/reference/data-types/datetime)
+Returns DateTime parsed from input string, or zero DateTime if parsing fails. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1710,13 +1710,13 @@ parseDateTimeOrNull(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime. [`String`](/reference/data-types/string)
-- `format` — Format string specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime. [`String`](/core/reference/data-types/string)
+- `format` — Format string specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime parsed from input string, or NULL if parsing fails. [`Nullable(DateTime)`](/reference/data-types/nullable)
+Returns DateTime parsed from input string, or NULL if parsing fails. [`Nullable(DateTime)`](/core/reference/data-types/nullable)
**Examples**
@@ -1747,13 +1747,13 @@ parseDateTimeOrZero(time_string, format[, timezone])
**Arguments**
-- `time_string` — String to be parsed into DateTime. [`String`](/reference/data-types/string)
-- `format` — Format string specifying how to parse time_string. [`String`](/reference/data-types/string)
-- `timezone` — Optional. Timezone. [`String`](/reference/data-types/string)
+- `time_string` — String to be parsed into DateTime. [`String`](/core/reference/data-types/string)
+- `format` — Format string specifying how to parse time_string. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. Timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns DateTime parsed from input string, or zero DateTime if parsing fails. [`DateTime`](/reference/data-types/datetime)
+Returns DateTime parsed from input string, or zero DateTime if parsing fails. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1784,12 +1784,12 @@ reinterpret(x, type)
**Arguments**
-- `x` — Any type. [`Any`](/reference/data-types)
-- `type` — Destination type. If it is an array, then the array element type must be a fixed length type. [`String`](/reference/data-types/string)
+- `x` — Any type. [`Any`](/core/reference/data-types)
+- `type` — Destination type. If it is an array, then the array element type must be a fixed length type. [`String`](/core/reference/data-types/string)
**Returned value**
-Destination type value. [`Any`](/reference/data-types)
+Destination type value. [`Any`](/core/reference/data-types)
**Examples**
@@ -1834,11 +1834,11 @@ reinterpretAsDate(x)
**Arguments**
-- `x` — Number of days since the beginning of the Unix Epoch. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Number of days since the beginning of the Unix Epoch. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Date. [`Date`](/reference/data-types/date)
+Date. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -1869,11 +1869,11 @@ reinterpretAsDateTime(x)
**Arguments**
-- `x` — Number of seconds since the beginning of the Unix Epoch. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Number of seconds since the beginning of the Unix Epoch. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Date and Time. [`DateTime`](/reference/data-types/datetime)
+Date and Time. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -1905,11 +1905,11 @@ reinterpretAsFixedString(x)
**Arguments**
-- `x` — Value to reinterpret to string. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `x` — Value to reinterpret to string. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Fixed string containing bytes representing `x`. [`FixedString`](/reference/data-types/fixedstring)
+Fixed string containing bytes representing `x`. [`FixedString`](/core/reference/data-types/fixedstring)
**Examples**
@@ -1943,11 +1943,11 @@ reinterpretAsFloat32(x)
**Arguments**
-- `x` — Value to reinterpret as Float32. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Float32. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Float32`](/reference/data-types/float)
+Returns the reinterpreted value `x`. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -1979,11 +1979,11 @@ reinterpretAsFloat64(x)
**Arguments**
-- `x` — Value to reinterpret as Float64. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Float64. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Float64`](/reference/data-types/float)
+Returns the reinterpreted value `x`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -2015,11 +2015,11 @@ reinterpretAsInt128(x)
**Arguments**
-- `x` — Value to reinterpret as Int128. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Int128. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Int128`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`Int128`](/core/reference/data-types/int-uint)
**Examples**
@@ -2055,11 +2055,11 @@ reinterpretAsInt16(x)
**Arguments**
-- `x` — Value to reinterpret as Int16. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Int16. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Int16`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`Int16`](/core/reference/data-types/int-uint)
**Examples**
@@ -2095,11 +2095,11 @@ reinterpretAsInt256(x)
**Arguments**
-- `x` — Value to reinterpret as Int256. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Int256. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Int256`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`Int256`](/core/reference/data-types/int-uint)
**Examples**
@@ -2135,11 +2135,11 @@ reinterpretAsInt32(x)
**Arguments**
-- `x` — Value to reinterpret as Int32. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Int32. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Int32`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -2175,11 +2175,11 @@ reinterpretAsInt64(x)
**Arguments**
-- `x` — Value to reinterpret as Int64. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Int64. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Int64`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2215,11 +2215,11 @@ reinterpretAsInt8(x)
**Arguments**
-- `x` — Value to reinterpret as Int8. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as Int8. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`Int8`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`Int8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2255,11 +2255,11 @@ reinterpretAsString(x)
**Arguments**
-- `x` — Value to reinterpret to string. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `x` — Value to reinterpret to string. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-String containing bytes representing `x`. [`String`](/reference/data-types/string)
+String containing bytes representing `x`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -2293,11 +2293,11 @@ reinterpretAsUInt128(x)
**Arguments**
-- `x` — Value to reinterpret as UInt128. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as UInt128. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`UInt128`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`UInt128`](/core/reference/data-types/int-uint)
**Examples**
@@ -2333,11 +2333,11 @@ reinterpretAsUInt16(x)
**Arguments**
-- `x` — Value to reinterpret as UInt16. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as UInt16. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`UInt16`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -2373,11 +2373,11 @@ reinterpretAsUInt256(x)
**Arguments**
-- `x` — Value to reinterpret as UInt256. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as UInt256. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`UInt256`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`UInt256`](/core/reference/data-types/int-uint)
**Examples**
@@ -2413,11 +2413,11 @@ reinterpretAsUInt32(x)
**Arguments**
-- `x` — Value to reinterpret as UInt32. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as UInt32. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`UInt32`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -2453,11 +2453,11 @@ reinterpretAsUInt64(x)
**Arguments**
-- `x` — Value to reinterpret as UInt64. [`Int*`](/reference/data-types/int-uint) or [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as UInt64. [`Int*`](/core/reference/data-types/int-uint) or [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value of `x`. [`UInt64`](/reference/data-types/int-uint)
+Returns the reinterpreted value of `x`. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -2492,11 +2492,11 @@ reinterpretAsUInt8(x)
**Arguments**
-- `x` — Value to reinterpret as UInt8. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`UUID`](/reference/data-types/uuid) or [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `x` — Value to reinterpret as UInt8. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`UUID`](/core/reference/data-types/uuid) or [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns the reinterpreted value `x`. [`UInt8`](/reference/data-types/int-uint)
+Returns the reinterpreted value `x`. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -2531,11 +2531,11 @@ reinterpretAsUUID(fixed_string)
**Arguments**
-- `fixed_string` — Big-endian byte string. [`FixedString`](/reference/data-types/fixedstring)
+- `fixed_string` — Big-endian byte string. [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-The UUID type value. [`UUID`](/reference/data-types/uuid)
+The UUID type value. [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -2571,11 +2571,11 @@ toBFloat16(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 16-bit brain-float value. [`BFloat16`](/reference/data-types/float)
+Returns a 16-bit brain-float value. [`BFloat16`](/core/reference/data-types/float)
**Examples**
@@ -2626,11 +2626,11 @@ toBFloat16OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Reurns a 16-bit brain-float value, otherwise `NULL`. [`BFloat16`](/reference/data-types/float) or [`NULL`](/reference/syntax#null)
+Reurns a 16-bit brain-float value, otherwise `NULL`. [`BFloat16`](/core/reference/data-types/float) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -2679,11 +2679,11 @@ toBFloat16OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a 16-bit brain-float value, otherwise `0`. [`BFloat16`](/reference/data-types/float)
+Returns a 16-bit brain-float value, otherwise `0`. [`BFloat16`](/core/reference/data-types/float)
**Examples**
@@ -2716,11 +2716,11 @@ toBool(expr)
**Arguments**
-- `expr` — Expression returning a number or a string. For strings, accepts 'true' or 'false' (case-insensitive). [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string) or [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string. For strings, accepts 'true' or 'false' (case-insensitive). [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string) or [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns `true` or `false` based on evaluation of the argument. [`Bool`](/reference/data-types/boolean)
+Returns `true` or `false` based on evaluation of the argument. [`Bool`](/core/reference/data-types/boolean)
**Examples**
@@ -2750,7 +2750,7 @@ toBool('FALSE'): false
Introduced in: v1.1.0
-Converts an input value to type [`Date`](/reference/data-types/date).
+Converts an input value to type [`Date`](/core/reference/data-types/date).
Supports conversion from String, FixedString, DateTime, or numeric types.
@@ -2762,11 +2762,11 @@ toDate(x)
**Arguments**
-- `x` — Input value to convert. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`DateTime`](/reference/data-types/datetime) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — Input value to convert. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`DateTime`](/core/reference/data-types/datetime) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the converted input value. [`Date`](/reference/data-types/date)
+Returns the converted input value. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -2804,9 +2804,9 @@ SELECT toDate(20297)
Introduced in: v21.9.0
-Converts the argument to the [Date32](/reference/data-types/date32) data type.
-If the value is outside the range, `toDate32` returns the border values supported by [Date32](/reference/data-types/date32).
-If the argument is of type [`Date`](/reference/data-types/date), it's bounds are taken into account.
+Converts the argument to the [Date32](/core/reference/data-types/date32) data type.
+If the value is outside the range, `toDate32` returns the border values supported by [Date32](/core/reference/data-types/date32).
+If the argument is of type [`Date`](/core/reference/data-types/date), it's bounds are taken into account.
**Syntax**
@@ -2817,11 +2817,11 @@ toDate32(expr)
**Arguments**
-- `expr` — The value to convert. [`String`](/reference/data-types/string) or [`UInt32`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date)
+- `expr` — The value to convert. [`String`](/core/reference/data-types/string) or [`UInt32`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date)
**Returned value**
-Returns a calendar date. [`Date32`](/reference/data-types/date32)
+Returns a calendar date. [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -2857,7 +2857,7 @@ toTypeName(value): Date32
Introduced in: v21.11.0
-Converts the argument to the [Date32](/reference/data-types/date32) data type. If the value is outside the range, `toDate32OrDefault` returns the lower border value supported by [Date32](/reference/data-types/date32). If the argument has [Date](/reference/data-types/date) type, it's borders are taken into account. Returns default value if an invalid argument is received.
+Converts the argument to the [Date32](/core/reference/data-types/date32) data type. If the value is outside the range, `toDate32OrDefault` returns the lower border value supported by [Date32](/core/reference/data-types/date32). If the argument has [Date](/core/reference/data-types/date) type, it's borders are taken into account. Returns default value if an invalid argument is received.
**Syntax**
@@ -2868,12 +2868,12 @@ toDate32OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Date32`](/reference/data-types/date32)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Date32`](/core/reference/data-types/date32)
**Returned value**
-Value of type Date32 if successful, otherwise returns the default value if passed or 1900-01-01 if not. [`Date32`](/reference/data-types/date32)
+Value of type Date32 if successful, otherwise returns the default value if passed or 1900-01-01 if not. [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -2913,11 +2913,11 @@ toDate32OrNull(x)
**Arguments**
-- `x` — A string representation of a date. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Date32 value if successful, otherwise `NULL`. [`Date32`](/reference/data-types/date32) or [`NULL`](/reference/syntax#null)
+Returns a Date32 value if successful, otherwise `NULL`. [`Date32`](/core/reference/data-types/date32) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -2937,8 +2937,8 @@ SELECT toDate32OrNull('2025-01-01'), toDate32OrNull('invalid')
Introduced in: v21.9.0
-Converts an input value to a value of type [Date32](/reference/data-types/date32) but returns the lower boundary of [Date32](/reference/data-types/date32) if an invalid argument is received.
-The same as [toDate32](#toDate32) but returns lower boundary of [Date32](/reference/data-types/date32) if an invalid argument is received.
+Converts an input value to a value of type [Date32](/core/reference/data-types/date32) but returns the lower boundary of [Date32](/core/reference/data-types/date32) if an invalid argument is received.
+The same as [toDate32](#toDate32) but returns lower boundary of [Date32](/core/reference/data-types/date32) if an invalid argument is received.
See also:
- [`toDate32`](#toDate32)
@@ -2954,11 +2954,11 @@ toDate32OrZero(x)
**Arguments**
-- `x` — A string representation of a date. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Date32 value if successful, otherwise the lower boundary of Date32 (`1900-01-01`). [`Date32`](/reference/data-types/date32)
+Returns a Date32 value if successful, otherwise the lower boundary of Date32 (`1900-01-01`). [`Date32`](/core/reference/data-types/date32)
**Examples**
@@ -2978,7 +2978,7 @@ SELECT toDate32OrZero('2025-01-01'), toDate32OrZero('')
Introduced in: v21.11.0
-Like [toDate](#toDate) but if unsuccessful, returns a default value which is either the second argument (if specified), or otherwise the lower boundary of [Date](/reference/data-types/date).
+Like [toDate](#toDate) but if unsuccessful, returns a default value which is either the second argument (if specified), or otherwise the lower boundary of [Date](/core/reference/data-types/date).
**Syntax**
@@ -2989,12 +2989,12 @@ toDateOrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Date`](/reference/data-types/date)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Date`](/core/reference/data-types/date)
**Returned value**
-Value of type Date if successful, otherwise returns the default value if passed or 1970-01-01 if not. [`Date`](/reference/data-types/date)
+Value of type Date if successful, otherwise returns the default value if passed or 1970-01-01 if not. [`Date`](/core/reference/data-types/date)
**Examples**
@@ -3034,11 +3034,11 @@ toDateOrNull(x)
**Arguments**
-- `x` — A string representation of a date. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Date value if successful, otherwise `NULL`. [`Date`](/reference/data-types/date) or [`NULL`](/reference/syntax#null)
+Returns a Date value if successful, otherwise `NULL`. [`Date`](/core/reference/data-types/date) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -3058,8 +3058,8 @@ SELECT toDateOrNull('2025-12-30'), toDateOrNull('invalid')
Introduced in: v1.1.0
-Converts an input value to a value of type [`Date`](/reference/data-types/date) but returns the lower boundary of [`Date`](/reference/data-types/date) if an invalid argument is received.
-The same as [toDate](#toDate) but returns lower boundary of [`Date`](/reference/data-types/date) if an invalid argument is received.
+Converts an input value to a value of type [`Date`](/core/reference/data-types/date) but returns the lower boundary of [`Date`](/core/reference/data-types/date) if an invalid argument is received.
+The same as [toDate](#toDate) but returns lower boundary of [`Date`](/core/reference/data-types/date) if an invalid argument is received.
See also:
- [`toDate`](#toDate)
@@ -3075,11 +3075,11 @@ toDateOrZero(x)
**Arguments**
-- `x` — A string representation of a date. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Date value if successful, otherwise the lower boundary of Date (`1970-01-01`). [`Date`](/reference/data-types/date)
+Returns a Date value if successful, otherwise the lower boundary of Date (`1970-01-01`). [`Date`](/core/reference/data-types/date)
**Examples**
@@ -3099,11 +3099,11 @@ SELECT toDateOrZero('2025-12-30'), toDateOrZero('')
Introduced in: v1.1.0
-Converts an input value to type [DateTime](/reference/data-types/datetime).
+Converts an input value to type [DateTime](/core/reference/data-types/datetime).
If `expr` is a number, it is interpreted as the number of seconds since the beginning of the Unix Epoch (as Unix timestamp).
-If `expr` is a [String](/reference/data-types/string), it may be interpreted as a Unix timestamp or as a string representation of date / date with time.
+If `expr` is a [String](/core/reference/data-types/string), it may be interpreted as a Unix timestamp or as a string representation of date / date with time.
Thus, parsing of short numbers' string representations (up to 4 digits) is explicitly disabled due to ambiguity, e.g. a string `'1999'` may be both a year (an incomplete string representation of Date / DateTime) or a unix timestamp. Longer numeric strings are allowed.
@@ -3116,12 +3116,12 @@ toDateTime(expr[, time_zone])
**Arguments**
-- `expr` — The value. [`String`](/reference/data-types/string) or [`Int`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
-- `time_zone` — Time zone. [`String`](/reference/data-types/string)
+- `expr` — The value. [`String`](/core/reference/data-types/string) or [`Int`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
+- `time_zone` — Time zone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a date time. [`DateTime`](/reference/data-types/datetime)
+Returns a date time. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -3156,12 +3156,12 @@ toDateTime32(x[, timezone])
**Arguments**
-- `x` — Input value to convert. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`DateTime64`](/reference/data-types/datetime64)
-- `timezone` — Optional. Timezone for the returned `DateTime` value. [`String`](/reference/data-types/string)
+- `x` — Input value to convert. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`DateTime64`](/core/reference/data-types/datetime64)
+- `timezone` — Optional. Timezone for the returned `DateTime` value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the converted input value. [`DateTime`](/reference/data-types/datetime)
+Returns the converted input value. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -3210,7 +3210,7 @@ SELECT toDateTime64('2025-01-01 00:00:00', 3, 'Asia/Istanbul') AS value, toTypeN
Introduced in: v20.1.0
-Converts an input value to a value of type [`DateTime64`](/reference/data-types/datetime64).
+Converts an input value to a value of type [`DateTime64`](/core/reference/data-types/datetime64).
**Syntax**
@@ -3221,13 +3221,13 @@ toDateTime64(expr, scale[, timezone])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `scale` — Tick size (precision): 10^(-scale) seconds. [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Optional. Time zone for the specified `DateTime64` object. [`String`](/reference/data-types/string)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `scale` — Tick size (precision): 10^(-scale) seconds. [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Time zone for the specified `DateTime64` object. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a calendar date and time of day, with sub-second precision. [`DateTime64`](/reference/data-types/datetime64)
+Returns a calendar date and time of day, with sub-second precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -3273,8 +3273,8 @@ SELECT toDateTime64('2025-01-01 00:00:00', 3, 'Asia/Istanbul') AS value, toTypeN
Introduced in: v21.11.0
-Like [toDateTime64](#toDateTime64), this function converts an input value to a value of type [DateTime64](/reference/data-types/datetime64),
-but returns either the default value of [DateTime64](/reference/data-types/datetime64)
+Like [toDateTime64](#toDateTime64), this function converts an input value to a value of type [DateTime64](/core/reference/data-types/datetime64),
+but returns either the default value of [DateTime64](/core/reference/data-types/datetime64)
or the provided default if an invalid argument is received.
@@ -3286,14 +3286,14 @@ toDateTime64OrDefault(expr, scale[, timezone, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `scale` — Tick size (precision): 10^-precision seconds. [`UInt8`](/reference/data-types/int-uint)
-- `timezone` — Optional. Time zone. [`String`](/reference/data-types/string)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`DateTime64`](/reference/data-types/datetime64)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `scale` — Tick size (precision): 10^-precision seconds. [`UInt8`](/core/reference/data-types/int-uint)
+- `timezone` — Optional. Time zone. [`String`](/core/reference/data-types/string)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Value of type DateTime64 if successful, otherwise returns the default value if passed or 1970-01-01 00:00:00.000 if not. [`DateTime64`](/reference/data-types/datetime64)
+Value of type DateTime64 if successful, otherwise returns the default value if passed or 1970-01-01 00:00:00.000 if not. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -3333,11 +3333,11 @@ toDateTime64OrNull(x)
**Arguments**
-- `x` — A string representation of a date with time and subsecond precision. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date with time and subsecond precision. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a DateTime64 value if successful, otherwise `NULL`. [`DateTime64`](/reference/data-types/datetime64) or [`NULL`](/reference/syntax#null)
+Returns a DateTime64 value if successful, otherwise `NULL`. [`DateTime64`](/core/reference/data-types/datetime64) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -3357,8 +3357,8 @@ SELECT toDateTime64OrNull('2025-12-30 13:44:17.123'), toDateTime64OrNull('invali
Introduced in: v20.1.0
-Converts an input value to a value of type [DateTime64](/reference/data-types/datetime64) but returns the lower boundary of [DateTime64](/reference/data-types/datetime64) if an invalid argument is received.
-The same as [toDateTime64](#toDateTime64) but returns lower boundary of [DateTime64](/reference/data-types/datetime64) if an invalid argument is received.
+Converts an input value to a value of type [DateTime64](/core/reference/data-types/datetime64) but returns the lower boundary of [DateTime64](/core/reference/data-types/datetime64) if an invalid argument is received.
+The same as [toDateTime64](#toDateTime64) but returns lower boundary of [DateTime64](/core/reference/data-types/datetime64) if an invalid argument is received.
See also:
- [toDateTime64](#toDateTime64).
@@ -3374,11 +3374,11 @@ toDateTime64OrZero(x)
**Arguments**
-- `x` — A string representation of a date with time and subsecond precision. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date with time and subsecond precision. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a DateTime64 value if successful, otherwise the lower boundary of DateTime64 (`1970-01-01 00:00:00.000`). [`DateTime64`](/reference/data-types/datetime64)
+Returns a DateTime64 value if successful, otherwise the lower boundary of DateTime64 (`1970-01-01 00:00:00.000`). [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -3398,7 +3398,7 @@ SELECT toDateTime64OrZero('2025-12-30 13:44:17.123'), toDateTime64OrZero('invali
Introduced in: v21.11.0
-Like [toDateTime](#toDateTime) but if unsuccessful, returns a default value which is either the third argument (if specified), or otherwise the lower boundary of [DateTime](/reference/data-types/datetime).
+Like [toDateTime](#toDateTime) but if unsuccessful, returns a default value which is either the third argument (if specified), or otherwise the lower boundary of [DateTime](/core/reference/data-types/datetime).
**Syntax**
@@ -3409,13 +3409,13 @@ toDateTimeOrDefault(expr[, timezone, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `timezone` — Optional. Time zone. [`String`](/reference/data-types/string)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`DateTime`](/reference/data-types/datetime)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `timezone` — Optional. Time zone. [`String`](/core/reference/data-types/string)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Value of type DateTime if successful, otherwise returns the default value if passed or 1970-01-01 00:00:00 if not. [`DateTime`](/reference/data-types/datetime)
+Value of type DateTime if successful, otherwise returns the default value if passed or 1970-01-01 00:00:00 if not. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -3455,11 +3455,11 @@ toDateTimeOrNull(x)
**Arguments**
-- `x` — A string representation of a date with time. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date with time. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a `DateTime` value if successful, otherwise `NULL`. [`DateTime`](/reference/data-types/datetime) or [`NULL`](/reference/syntax#null)
+Returns a `DateTime` value if successful, otherwise `NULL`. [`DateTime`](/core/reference/data-types/datetime) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -3479,8 +3479,8 @@ SELECT toDateTimeOrNull('2025-12-30 13:44:17'), toDateTimeOrNull('invalid')
Introduced in: v1.1.0
-Converts an input value to a value of type [DateTime](/reference/data-types/datetime) but returns the lower boundary of [DateTime](/reference/data-types/datetime) if an invalid argument is received.
-The same as [toDateTime](#toDateTime) but returns lower boundary of [DateTime](/reference/data-types/datetime) if an invalid argument is received.
+Converts an input value to a value of type [DateTime](/core/reference/data-types/datetime) but returns the lower boundary of [DateTime](/core/reference/data-types/datetime) if an invalid argument is received.
+The same as [toDateTime](#toDateTime) but returns lower boundary of [DateTime](/core/reference/data-types/datetime) if an invalid argument is received.
**Syntax**
@@ -3491,11 +3491,11 @@ toDateTimeOrZero(x)
**Arguments**
-- `x` — A string representation of a date with time. [`String`](/reference/data-types/string)
+- `x` — A string representation of a date with time. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a DateTime value if successful, otherwise the lower boundary of DateTime (`1970-01-01 00:00:00`). [`DateTime`](/reference/data-types/datetime)
+Returns a DateTime value if successful, otherwise the lower boundary of DateTime (`1970-01-01 00:00:00`). [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -3515,7 +3515,7 @@ SELECT toDateTimeOrZero('2025-12-30 13:44:17'), toDateTimeOrZero('invalid')
Introduced in: v18.12.0
-Converts an input value to a value of type [`Decimal(38, S)`](/reference/data-types/decimal) with scale of `S`.
+Converts an input value to a value of type [`Decimal(38, S)`](/core/reference/data-types/decimal) with scale of `S`.
Throws an exception in case of an error.
Supported arguments:
@@ -3547,12 +3547,12 @@ toDecimal128(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type `Decimal(38, S)` [`Decimal128(S)`](/reference/data-types/decimal)
+Returns a value of type `Decimal(38, S)` [`Decimal128(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -3581,7 +3581,7 @@ type_c: Decimal(38, 3)
Introduced in: v21.11.0
-Like [`toDecimal128`](#toDecimal128), this function converts an input value to a value of type [Decimal(38, S)](/reference/data-types/decimal) but returns the default value in case of an error.
+Like [`toDecimal128`](#toDecimal128), this function converts an input value to a value of type [Decimal(38, S)](/core/reference/data-types/decimal) but returns the default value in case of an error.
**Syntax**
@@ -3592,13 +3592,13 @@ toDecimal128OrDefault(expr, S[, default])
**Arguments**
-- `expr` — A String representation of a number. [`String`](/reference/data-types/string)
-- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
-- `default` — Optional. The default value to return if parsing to type Decimal128(S) is unsuccessful. [`Decimal128(S)`](/reference/data-types/decimal)
+- `expr` — A String representation of a number. [`String`](/core/reference/data-types/string)
+- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
+- `default` — Optional. The default value to return if parsing to type Decimal128(S) is unsuccessful. [`Decimal128(S)`](/core/reference/data-types/decimal)
**Returned value**
-Value of type Decimal(38, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal128(S)`](/reference/data-types/decimal)
+Value of type Decimal(38, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal128(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -3626,7 +3626,7 @@ SELECT toDecimal128OrDefault('Inf', 0, CAST('-1', 'Decimal128(0)'))
Introduced in: v20.1.0
-Converts an input value to a value of type [`Decimal(38, S)`](/reference/data-types/decimal) but returns `NULL` in case of an error.
+Converts an input value to a value of type [`Decimal(38, S)`](/core/reference/data-types/decimal) but returns `NULL` in case of an error.
Like [`toDecimal128`](#toDecimal128) but returns `NULL` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -3652,12 +3652,12 @@ toDecimal128OrNull(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(38, S) value if successful, otherwise `NULL`. [`Decimal128(S)`](/reference/data-types/decimal) or [`NULL`](/reference/syntax#null)
+Returns a Decimal(38, S) value if successful, otherwise `NULL`. [`Decimal128(S)`](/core/reference/data-types/decimal) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -3677,7 +3677,7 @@ SELECT toDecimal128OrNull('42.7', 2), toDecimal128OrNull('invalid', 2)
Introduced in: v20.1.0
-Converts an input value to a value of type [Decimal(38, S)](/reference/data-types/decimal) but returns `0` in case of an error.
+Converts an input value to a value of type [Decimal(38, S)](/core/reference/data-types/decimal) but returns `0` in case of an error.
Like [`toDecimal128`](#toDecimal128) but returns `0` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -3701,12 +3701,12 @@ toDecimal128OrZero(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 38, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(38, S) value if successful, otherwise `0`. [`Decimal128(S)`](/reference/data-types/decimal)
+Returns a Decimal(38, S) value if successful, otherwise `0`. [`Decimal128(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -3726,7 +3726,7 @@ SELECT toDecimal128OrZero('42.7', 2), toDecimal128OrZero('invalid', 2)
Introduced in: v20.8.0
-Converts an input value to a value of type [`Decimal(76, S)`](/reference/data-types/decimal) with scale of `S`. Throws an exception in case of an error.
+Converts an input value to a value of type [`Decimal(76, S)`](/core/reference/data-types/decimal) with scale of `S`. Throws an exception in case of an error.
Supported arguments:
- Values or string representations of type (U)Int*.
@@ -3757,12 +3757,12 @@ toDecimal256(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type `Decimal(76, S)`. [`Decimal256(S)`](/reference/data-types/decimal)
+Returns a value of type `Decimal(76, S)`. [`Decimal256(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -3791,7 +3791,7 @@ type_c: Decimal(76, 3)
Introduced in: v21.11.0
-Like [`toDecimal256`](#toDecimal256), this function converts an input value to a value of type [Decimal(76, S)](/reference/data-types/decimal) but returns the default value in case of an error.
+Like [`toDecimal256`](#toDecimal256), this function converts an input value to a value of type [Decimal(76, S)](/core/reference/data-types/decimal) but returns the default value in case of an error.
**Syntax**
@@ -3802,13 +3802,13 @@ toDecimal256OrDefault(expr, S[, default])
**Arguments**
-- `expr` — A String representation of a number. [`String`](/reference/data-types/string)
-- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
-- `default` — Optional. The default value to return if parsing to type Decimal256(S) is unsuccessful. [`Decimal256(S)`](/reference/data-types/decimal)
+- `expr` — A String representation of a number. [`String`](/core/reference/data-types/string)
+- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
+- `default` — Optional. The default value to return if parsing to type Decimal256(S) is unsuccessful. [`Decimal256(S)`](/core/reference/data-types/decimal)
**Returned value**
-Value of type Decimal(76, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal256(S)`](/reference/data-types/decimal)
+Value of type Decimal(76, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal256(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -3836,7 +3836,7 @@ SELECT toDecimal256OrDefault('Inf', 0, CAST('-1', 'Decimal256(0)'))
Introduced in: v20.8.0
-Converts an input value to a value of type [`Decimal(76, S)`](/reference/data-types/decimal) but returns `NULL` in case of an error.
+Converts an input value to a value of type [`Decimal(76, S)`](/core/reference/data-types/decimal) but returns `NULL` in case of an error.
Like [`toDecimal256`](#toDecimal256) but returns `NULL` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -3862,12 +3862,12 @@ toDecimal256OrNull(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(76, S) value if successful, otherwise `NULL`. [`Decimal256(S)`](/reference/data-types/decimal) or [`NULL`](/reference/syntax#null)
+Returns a Decimal(76, S) value if successful, otherwise `NULL`. [`Decimal256(S)`](/core/reference/data-types/decimal) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -3887,7 +3887,7 @@ SELECT toDecimal256OrNull('42.7', 2), toDecimal256OrNull('invalid', 2)
Introduced in: v20.8.0
-Converts an input value to a value of type [Decimal(76, S)](/reference/data-types/decimal) but returns `0` in case of an error.
+Converts an input value to a value of type [Decimal(76, S)](/core/reference/data-types/decimal) but returns `0` in case of an error.
Like [`toDecimal256`](#toDecimal256) but returns `0` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -3916,12 +3916,12 @@ toDecimal256OrZero(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 76, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(76, S) value if successful, otherwise `0`. [`Decimal256(S)`](/reference/data-types/decimal)
+Returns a Decimal(76, S) value if successful, otherwise `0`. [`Decimal256(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -3941,7 +3941,7 @@ SELECT toDecimal256OrZero('42.7', 2), toDecimal256OrZero('invalid', 2)
Introduced in: v18.12.0
-Converts an input value to a value of type [`Decimal(9, S)`](/reference/data-types/decimal) with scale of `S`. Throws an exception in case of an error.
+Converts an input value to a value of type [`Decimal(9, S)`](/core/reference/data-types/decimal) with scale of `S`. Throws an exception in case of an error.
Supported arguments:
- Values or string representations of type (U)Int*.
@@ -3972,12 +3972,12 @@ toDecimal32(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type `Decimal(9, S)` [`Decimal32(S)`](/reference/data-types/decimal)
+Returns a value of type `Decimal(9, S)` [`Decimal32(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -4006,7 +4006,7 @@ type_c: Decimal(9, 3)
Introduced in: v21.11.0
-Like [`toDecimal32`](#toDecimal32), this function converts an input value to a value of type [Decimal(9, S)](/reference/data-types/decimal) but returns the default value in case of an error.
+Like [`toDecimal32`](#toDecimal32), this function converts an input value to a value of type [Decimal(9, S)](/core/reference/data-types/decimal) but returns the default value in case of an error.
**Syntax**
@@ -4017,13 +4017,13 @@ toDecimal32OrDefault(expr, S[, default])
**Arguments**
-- `expr` — A String representation of a number. [`String`](/reference/data-types/string)
-- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
-- `default` — Optional. The default value to return if parsing to type Decimal32(S) is unsuccessful. [`Decimal32(S)`](/reference/data-types/decimal)
+- `expr` — A String representation of a number. [`String`](/core/reference/data-types/string)
+- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
+- `default` — Optional. The default value to return if parsing to type Decimal32(S) is unsuccessful. [`Decimal32(S)`](/core/reference/data-types/decimal)
**Returned value**
-Value of type Decimal(9, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal32(S)`](/reference/data-types/decimal)
+Value of type Decimal(9, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal32(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -4051,7 +4051,7 @@ SELECT toDecimal32OrDefault('Inf', 0, CAST('-1', 'Decimal32(0)'))
Introduced in: v20.1.0
-Converts an input value to a value of type [`Decimal(9, S)`](/reference/data-types/decimal) but returns `NULL` in case of an error.
+Converts an input value to a value of type [`Decimal(9, S)`](/core/reference/data-types/decimal) but returns `NULL` in case of an error.
Like [`toDecimal32`](#toDecimal32) but returns `NULL` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -4077,12 +4077,12 @@ toDecimal32OrNull(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(9, S) value if successful, otherwise `NULL`. [`Decimal32(S)`](/reference/data-types/decimal) or [`NULL`](/reference/syntax#null)
+Returns a Decimal(9, S) value if successful, otherwise `NULL`. [`Decimal32(S)`](/core/reference/data-types/decimal) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -4102,7 +4102,7 @@ SELECT toDecimal32OrNull('42.7', 2), toDecimal32OrNull('invalid', 2)
Introduced in: v20.1.0
-Converts an input value to a value of type [Decimal(9, S)](/reference/data-types/decimal) but returns `0` in case of an error.
+Converts an input value to a value of type [Decimal(9, S)](/core/reference/data-types/decimal) but returns `0` in case of an error.
Like [`toDecimal32`](#toDecimal32) but returns `0` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -4126,12 +4126,12 @@ toDecimal32OrZero(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 9, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(9, S) value if successful, otherwise `0`. [`Decimal32(S)`](/reference/data-types/decimal)
+Returns a Decimal(9, S) value if successful, otherwise `0`. [`Decimal32(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -4151,7 +4151,7 @@ SELECT toDecimal32OrZero('42.7', 2), toDecimal32OrZero('invalid', 2)
Introduced in: v18.12.0
-Converts an input value to a value of type [`Decimal(18, S)`](/reference/data-types/decimal) with scale of `S`.
+Converts an input value to a value of type [`Decimal(18, S)`](/core/reference/data-types/decimal) with scale of `S`.
Throws an exception in case of an error.
Supported arguments:
@@ -4183,12 +4183,12 @@ toDecimal64(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a decimal value. [`Decimal(18, S)`](/reference/data-types/decimal)
+Returns a decimal value. [`Decimal(18, S)`](/core/reference/data-types/decimal)
**Examples**
@@ -4217,7 +4217,7 @@ type_c: Decimal(18, 3)
Introduced in: v21.11.0
-Like [`toDecimal64`](#toDecimal64), this function converts an input value to a value of type [Decimal(18, S)](/reference/data-types/decimal) but returns the default value in case of an error.
+Like [`toDecimal64`](#toDecimal64), this function converts an input value to a value of type [Decimal(18, S)](/core/reference/data-types/decimal) but returns the default value in case of an error.
**Syntax**
@@ -4228,13 +4228,13 @@ toDecimal64OrDefault(expr, S[, default])
**Arguments**
-- `expr` — A String representation of a number. [`String`](/reference/data-types/string)
-- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
-- `default` — Optional. The default value to return if parsing to type Decimal64(S) is unsuccessful. [`Decimal64(S)`](/reference/data-types/decimal)
+- `expr` — A String representation of a number. [`String`](/core/reference/data-types/string)
+- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
+- `default` — Optional. The default value to return if parsing to type Decimal64(S) is unsuccessful. [`Decimal64(S)`](/core/reference/data-types/decimal)
**Returned value**
-Value of type Decimal(18, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal64(S)`](/reference/data-types/decimal)
+Value of type Decimal(18, S) if successful, otherwise returns the default value if passed or 0 if not. [`Decimal64(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -4262,7 +4262,7 @@ SELECT toDecimal64OrDefault('Inf', 0, CAST('-1', 'Decimal64(0)'))
Introduced in: v20.1.0
-Converts an input value to a value of type [Decimal(18, S)](/reference/data-types/decimal) but returns `NULL` in case of an error.
+Converts an input value to a value of type [Decimal(18, S)](/core/reference/data-types/decimal) but returns `NULL` in case of an error.
Like [`toDecimal64`](#toDecimal64) but returns `NULL` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -4288,12 +4288,12 @@ toDecimal64OrNull(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(18, S) value if successful, otherwise `NULL`. [`Decimal64(S)`](/reference/data-types/decimal) or [`NULL`](/reference/syntax#null)
+Returns a Decimal(18, S) value if successful, otherwise `NULL`. [`Decimal64(S)`](/core/reference/data-types/decimal) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -4313,7 +4313,7 @@ SELECT toDecimal64OrNull('42.7', 2), toDecimal64OrNull('invalid', 2)
Introduced in: v20.1.0
-Converts an input value to a value of type [Decimal(18, S)](/reference/data-types/decimal) but returns `0` in case of an error.
+Converts an input value to a value of type [Decimal(18, S)](/core/reference/data-types/decimal) but returns `0` in case of an error.
Like [`toDecimal64`](#toDecimal64) but returns `0` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -4342,12 +4342,12 @@ toDecimal64OrZero(expr, S)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
-- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
+- `S` — Scale parameter between 0 and 18, specifying how many digits the fractional part of a number can have. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a Decimal(18, S) value if successful, otherwise `0`. [`Decimal64(S)`](/reference/data-types/decimal)
+Returns a Decimal(18, S) value if successful, otherwise `0`. [`Decimal64(S)`](/core/reference/data-types/decimal)
**Examples**
@@ -4381,12 +4381,12 @@ toDecimalString(number, scale)
**Arguments**
-- `number` — The numeric value to convert to a string. Can be any numeric type (Int, UInt, Float, Decimal). [`Int8`](/reference/data-types/int-uint) or [`Int16`](/reference/data-types/int-uint) or [`Int32`](/reference/data-types/int-uint) or [`Int64`](/reference/data-types/int-uint) or [`UInt8`](/reference/data-types/int-uint) or [`UInt16`](/reference/data-types/int-uint) or [`UInt32`](/reference/data-types/int-uint) or [`UInt64`](/reference/data-types/int-uint) or [`Float32`](/reference/data-types/float) or [`Float64`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal)
-- `scale` — The number of digits to display in the fractional part. The result will be rounded if necessary. [`UInt8`](/reference/data-types/int-uint)
+- `number` — The numeric value to convert to a string. Can be any numeric type (Int, UInt, Float, Decimal). [`Int8`](/core/reference/data-types/int-uint) or [`Int16`](/core/reference/data-types/int-uint) or [`Int32`](/core/reference/data-types/int-uint) or [`Int64`](/core/reference/data-types/int-uint) or [`UInt8`](/core/reference/data-types/int-uint) or [`UInt16`](/core/reference/data-types/int-uint) or [`UInt32`](/core/reference/data-types/int-uint) or [`UInt64`](/core/reference/data-types/int-uint) or [`Float32`](/core/reference/data-types/float) or [`Float64`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal)
+- `scale` — The number of digits to display in the fractional part. The result will be rounded if necessary. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a String representation of the number with exactly the specified number of fractional digits. [`String`](/reference/data-types/string)
+Returns a String representation of the number with exactly the specified number of fractional digits. [`String`](/core/reference/data-types/string)
**Examples**
@@ -4431,7 +4431,7 @@ SELECT toDecimalString(CAST(123.456 AS Decimal(10,3)), 2) AS decimal_val,
Introduced in: v1.1.0
-Converts a [`String`](/reference/data-types/string) argument to a [`FixedString(N)`](/reference/data-types/fixedstring) type (a string of fixed length N).
+Converts a [`String`](/core/reference/data-types/string) argument to a [`FixedString(N)`](/core/reference/data-types/fixedstring) type (a string of fixed length N).
If the string has fewer bytes than N, it is padded with null bytes to the right.
If the string has more bytes than N, an exception is thrown.
@@ -4445,12 +4445,12 @@ toFixedString(s, N)
**Arguments**
-- `s` — String to convert. [`String`](/reference/data-types/string)
-- `N` — Length of the resulting FixedString. [`const UInt*`](/reference/data-types/int-uint)
+- `s` — String to convert. [`String`](/core/reference/data-types/string)
+- `N` — Length of the resulting FixedString. [`const UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a FixedString of length N. [`FixedString(N)`](/reference/data-types/fixedstring)
+Returns a FixedString of length N. [`FixedString(N)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -4470,7 +4470,7 @@ SELECT toFixedString('foo', 8) AS s;
Introduced in: v1.1.0
-Converts an input value to a value of type [Float32](/reference/data-types/float).
+Converts an input value to a value of type [Float32](/core/reference/data-types/float).
Throws an exception in case of an error.
Supported arguments:
@@ -4496,11 +4496,11 @@ toFloat32(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 32-bit floating point value. [`Float32`](/reference/data-types/float)
+Returns a 32-bit floating point value. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -4526,7 +4526,7 @@ toFloat32('NaN'): nan
Introduced in: v21.11.0
-Like [`toFloat32`](#toFloat32), this function converts an input value to a value of type [Float32](/reference/data-types/float) but returns the default value in case of an error.
+Like [`toFloat32`](#toFloat32), this function converts an input value to a value of type [Float32](/core/reference/data-types/float) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -4538,12 +4538,12 @@ toFloat32OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Float32`](/reference/data-types/float)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Float32`](/core/reference/data-types/float)
**Returned value**
-Returns a value of type Float32 if successful, otherwise returns the default value if passed or 0 if not. [`Float32`](/reference/data-types/float)
+Returns a value of type Float32 if successful, otherwise returns the default value if passed or 0 if not. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -4571,7 +4571,7 @@ SELECT toFloat32OrDefault('abc', CAST('0', 'Float32'))
Introduced in: v1.1.0
-Converts an input value to a value of type [Float32](/reference/data-types/float) but returns `NULL` in case of an error.
+Converts an input value to a value of type [Float32](/core/reference/data-types/float) but returns `NULL` in case of an error.
Like [`toFloat32`](#toFloat32) but returns `NULL` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -4598,11 +4598,11 @@ toFloat32OrNull(x)
**Arguments**
-- `x` — A string representation of a number. [`String`](/reference/data-types/string)
+- `x` — A string representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a 32-bit Float value if successful, otherwise `NULL`. [`Float32`](/reference/data-types/float) or [`NULL`](/reference/syntax#null)
+Returns a 32-bit Float value if successful, otherwise `NULL`. [`Float32`](/core/reference/data-types/float) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -4628,7 +4628,7 @@ toFloat32OrNull('abc'): \N
Introduced in: v1.1.0
-Converts an input value to a value of type [Float32](/reference/data-types/float) but returns `0` in case of an error.
+Converts an input value to a value of type [Float32](/core/reference/data-types/float) but returns `0` in case of an error.
Like [`toFloat32`](#toFloat32) but returns `0` instead of throwing an exception on conversion errors.
See also:
@@ -4645,11 +4645,11 @@ toFloat32OrZero(x)
**Arguments**
-- `x` — A string representation of a number. [`String`](/reference/data-types/string)
+- `x` — A string representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a 32-bit Float value if successful, otherwise `0`. [`Float32`](/reference/data-types/float)
+Returns a 32-bit Float value if successful, otherwise `0`. [`Float32`](/core/reference/data-types/float)
**Examples**
@@ -4673,7 +4673,7 @@ toFloat32OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [`Float64`](/reference/data-types/float).
+Converts an input value to a value of type [`Float64`](/core/reference/data-types/float).
Throws an exception in case of an error.
Supported arguments:
@@ -4699,11 +4699,11 @@ toFloat64(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 64-bit floating point value. [`Float64`](/reference/data-types/float)
+Returns a 64-bit floating point value. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -4729,7 +4729,7 @@ toFloat64('NaN'): nan
Introduced in: v21.11.0
-Like [`toFloat64`](#toFloat64), this function converts an input value to a value of type [Float64](/reference/data-types/float) but returns the default value in case of an error.
+Like [`toFloat64`](#toFloat64), this function converts an input value to a value of type [Float64](/core/reference/data-types/float) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -4741,12 +4741,12 @@ toFloat64OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Float64`](/reference/data-types/float)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Float64`](/core/reference/data-types/float)
**Returned value**
-Returns a value of type Float64 if successful, otherwise returns the default value if passed or 0 if not. [`Float64`](/reference/data-types/float)
+Returns a value of type Float64 if successful, otherwise returns the default value if passed or 0 if not. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -4774,7 +4774,7 @@ SELECT toFloat64OrDefault('abc', CAST('0', 'Float64'))
Introduced in: v1.1.0
-Converts an input value to a value of type [Float64](/reference/data-types/float) but returns `NULL` in case of an error.
+Converts an input value to a value of type [Float64](/core/reference/data-types/float) but returns `NULL` in case of an error.
Like [`toFloat64`](#toFloat64) but returns `NULL` instead of throwing an exception on conversion errors.
Supported arguments:
@@ -4801,11 +4801,11 @@ toFloat64OrNull(x)
**Arguments**
-- `x` — A string representation of a number. [`String`](/reference/data-types/string)
+- `x` — A string representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a 64-bit Float value if successful, otherwise `NULL`. [`Float64`](/reference/data-types/float) or [`NULL`](/reference/syntax#null)
+Returns a 64-bit Float value if successful, otherwise `NULL`. [`Float64`](/core/reference/data-types/float) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -4831,7 +4831,7 @@ toFloat64OrNull('abc'): \N
Introduced in: v1.1.0
-Converts an input value to a value of type [Float64](/reference/data-types/float) but returns `0` in case of an error.
+Converts an input value to a value of type [Float64](/core/reference/data-types/float) but returns `0` in case of an error.
Like [`toFloat64`](#toFloat64) but returns `0` instead of throwing an exception on conversion errors.
See also:
@@ -4848,11 +4848,11 @@ toFloat64OrZero(x)
**Arguments**
-- `x` — A string representation of a number. [`String`](/reference/data-types/string)
+- `x` — A string representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a 64-bit Float value if successful, otherwise `0`. [`Float64`](/reference/data-types/float)
+Returns a 64-bit Float value if successful, otherwise `0`. [`Float64`](/core/reference/data-types/float)
**Examples**
@@ -4876,7 +4876,7 @@ toFloat64OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [Int128](/reference/data-types/int-uint).
+Converts an input value to a value of type [Int128](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
The function uses rounding towards zero, meaning it truncates fractional digits of numbers.
@@ -4907,11 +4907,11 @@ toInt128(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 128-bit integer value. [`Int128`](/reference/data-types/int-uint)
+Returns a 128-bit integer value. [`Int128`](/core/reference/data-types/int-uint)
**Examples**
@@ -4937,7 +4937,7 @@ toInt128('-128'): -128
Introduced in: v21.11.0
-Like [`toInt128`](#toInt128), this function converts an input value to a value of type [Int128](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toInt128`](#toInt128), this function converts an input value to a value of type [Int128](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -4949,12 +4949,12 @@ toInt128OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int128`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int128`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type Int128 if successful, otherwise returns the default value if passed, or 0 if not. [`Int128`](/reference/data-types/int-uint)
+Returns a value of type Int128 if successful, otherwise returns the default value if passed, or 0 if not. [`Int128`](/core/reference/data-types/int-uint)
**Examples**
@@ -4982,7 +4982,7 @@ SELECT toInt128OrDefault('abc', CAST('-1', 'Int128'))
Introduced in: v20.8.0
-Like [`toInt128`](#toInt128), this function converts an input value to a value of type [Int128](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toInt128`](#toInt128), this function converts an input value to a value of type [Int128](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -4992,7 +4992,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt128OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int128](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int128](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -5010,11 +5010,11 @@ toInt128OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int128, otherwise `NULL` if the conversion is unsuccessful. [`Int128`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type Int128, otherwise `NULL` if the conversion is unsuccessful. [`Int128`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -5038,7 +5038,7 @@ toInt128OrNull('abc'): \N
Introduced in: v20.8.0
-Converts an input value to type [Int128](/reference/data-types/int-uint) but returns `0` in case of an error.
+Converts an input value to type [Int128](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Like [`toInt128`](#toInt128) but returns `0` instead of throwing an exception.
See also:
@@ -5055,11 +5055,11 @@ toInt128OrZero(x)
**Arguments**
-- `x` — Input value to convert. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `x` — Input value to convert. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the converted input value, otherwise `0` if conversion fails. [`Int128`](/reference/data-types/int-uint)
+Returns the converted input value, otherwise `0` if conversion fails. [`Int128`](/core/reference/data-types/int-uint)
**Examples**
@@ -5087,7 +5087,7 @@ SELECT toInt128OrZero('abc')
Introduced in: v1.1.0
-Converts an input value to a value of type [`Int16`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`Int16`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -5099,7 +5099,7 @@ Unsupported arguments:
- String representations of binary and hexadecimal values, e.g. `SELECT toInt16('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int16](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int16](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
For example: `SELECT toInt16(32768) == -32768;`.
@@ -5122,11 +5122,11 @@ toInt16(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 16-bit integer value. [`Int16`](/reference/data-types/int-uint)
+Returns a 16-bit integer value. [`Int16`](/core/reference/data-types/int-uint)
**Examples**
@@ -5152,7 +5152,7 @@ toInt16('-16'): -16
Introduced in: v21.11.0
-Like [`toInt16`](#toInt16), this function converts an input value to a value of type [Int16](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toInt16`](#toInt16), this function converts an input value to a value of type [Int16](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -5164,12 +5164,12 @@ toInt16OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int16`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int16`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type Int16 if successful, otherwise returns the default value if passed, or 0 if not. [`Int16`](/reference/data-types/int-uint)
+Returns a value of type Int16 if successful, otherwise returns the default value if passed, or 0 if not. [`Int16`](/core/reference/data-types/int-uint)
**Examples**
@@ -5197,7 +5197,7 @@ SELECT toInt16OrDefault('abc', CAST('-1', 'Int16'))
Introduced in: v1.1.0
-Like [`toInt16`](#toInt16), this function converts an input value to a value of type [Int16](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toInt16`](#toInt16), this function converts an input value to a value of type [Int16](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -5207,7 +5207,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt16OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int16](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int16](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -5225,11 +5225,11 @@ toInt16OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type `Int16`, otherwise `NULL` if the conversion is unsuccessful. [`Int16`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type `Int16`, otherwise `NULL` if the conversion is unsuccessful. [`Int16`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -5253,7 +5253,7 @@ toInt16OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toInt16`](#toInt16), this function converts an input value to a value of type [Int16](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toInt16`](#toInt16), this function converts an input value to a value of type [Int16](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -5263,7 +5263,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt16OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int16](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int16](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -5281,11 +5281,11 @@ toInt16OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int16, otherwise `0` if the conversion is unsuccessful. [`Int16`](/reference/data-types/int-uint)
+Returns a value of type Int16, otherwise `0` if the conversion is unsuccessful. [`Int16`](/core/reference/data-types/int-uint)
**Examples**
@@ -5309,7 +5309,7 @@ toInt16OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [Int256](/reference/data-types/int-uint).
+Converts an input value to a value of type [Int256](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
The function uses rounding towards zero, meaning it truncates fractional digits of numbers.
@@ -5340,11 +5340,11 @@ toInt256(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 256-bit integer value. [`Int256`](/reference/data-types/int-uint)
+Returns a 256-bit integer value. [`Int256`](/core/reference/data-types/int-uint)
**Examples**
@@ -5370,7 +5370,7 @@ toInt256('-256'): -256
Introduced in: v21.11.0
-Like [`toInt256`](#toInt256), this function converts an input value to a value of type [Int256](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toInt256`](#toInt256), this function converts an input value to a value of type [Int256](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -5382,12 +5382,12 @@ toInt256OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int256`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int256`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type Int256 if successful, otherwise returns the default value if passed, or 0 if not. [`Int256`](/reference/data-types/int-uint)
+Returns a value of type Int256 if successful, otherwise returns the default value if passed, or 0 if not. [`Int256`](/core/reference/data-types/int-uint)
**Examples**
@@ -5415,7 +5415,7 @@ SELECT toInt256OrDefault('abc', CAST('-1', 'Int256'))
Introduced in: v20.8.0
-Like [`toInt256`](#toInt256), this function converts an input value to a value of type [Int256](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toInt256`](#toInt256), this function converts an input value to a value of type [Int256](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -5425,7 +5425,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt256OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int256](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int256](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -5443,11 +5443,11 @@ toInt256OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int256, otherwise `NULL` if the conversion is unsuccessful. [`Int256`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type Int256, otherwise `NULL` if the conversion is unsuccessful. [`Int256`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -5471,7 +5471,7 @@ toInt256OrNull('abc'): \N
Introduced in: v20.8.0
-Converts an input value to type [Int256](/reference/data-types/int-uint) but returns `0` in case of an error.
+Converts an input value to type [Int256](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Like [`toInt256`](#toInt256) but returns `0` instead of throwing an exception.
See also:
@@ -5488,11 +5488,11 @@ toInt256OrZero(x)
**Arguments**
-- `x` — Input value to convert. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `x` — Input value to convert. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the converted input value, otherwise `0` if conversion fails. [`Int256`](/reference/data-types/int-uint)
+Returns the converted input value, otherwise `0` if conversion fails. [`Int256`](/core/reference/data-types/int-uint)
**Examples**
@@ -5520,7 +5520,7 @@ SELECT toInt256OrZero('abc')
Introduced in: v1.1.0
-Converts an input value to a value of type [`Int32`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`Int32`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -5532,7 +5532,7 @@ Unsupported arguments:
- String representations of binary and hexadecimal values, e.g. `SELECT toInt32('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int32](/reference/data-types/int-uint), the result over or under flows.
+If the input value cannot be represented within the bounds of [Int32](/core/reference/data-types/int-uint), the result over or under flows.
This is not considered an error.
For example: `SELECT toInt32(2147483648) == -2147483648;`
@@ -5555,11 +5555,11 @@ toInt32(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 32-bit integer value. [`Int32`](/reference/data-types/int-uint)
+Returns a 32-bit integer value. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5585,7 +5585,7 @@ toInt32('-32'): -32
Introduced in: v21.11.0
-Like [`toInt32`](#toInt32), this function converts an input value to a value of type [Int32](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toInt32`](#toInt32), this function converts an input value to a value of type [Int32](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -5597,12 +5597,12 @@ toInt32OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int32`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type Int32 if successful, otherwise returns the default value if passed or 0 if not. [`Int32`](/reference/data-types/int-uint)
+Returns a value of type Int32 if successful, otherwise returns the default value if passed or 0 if not. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5630,7 +5630,7 @@ SELECT toInt32OrDefault('abc', CAST('-1', 'Int32'))
Introduced in: v1.1.0
-Like [`toInt32`](#toInt32), this function converts an input value to a value of type [Int32](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toInt32`](#toInt32), this function converts an input value to a value of type [Int32](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -5640,7 +5640,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt32OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int32](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int32](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -5658,11 +5658,11 @@ toInt32OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int32, otherwise `NULL` if the conversion is unsuccessful. [`Int32`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type Int32, otherwise `NULL` if the conversion is unsuccessful. [`Int32`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -5686,7 +5686,7 @@ toInt32OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toInt32`](#toInt32), this function converts an input value to a value of type [Int32](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toInt32`](#toInt32), this function converts an input value to a value of type [Int32](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -5696,7 +5696,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt32OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int32](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int32](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -5714,11 +5714,11 @@ toInt32OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int32, otherwise `0` if the conversion is unsuccessful. [`Int32`](/reference/data-types/int-uint)
+Returns a value of type Int32, otherwise `0` if the conversion is unsuccessful. [`Int32`](/core/reference/data-types/int-uint)
**Examples**
@@ -5742,7 +5742,7 @@ toInt32OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [`Int64`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`Int64`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -5754,7 +5754,7 @@ Unsupported arguments:
- String representations of binary and hexadecimal values, e.g. `SELECT toInt64('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int64](/reference/data-types/int-uint), the result over or under flows.
+If the input value cannot be represented within the bounds of [Int64](/core/reference/data-types/int-uint), the result over or under flows.
This is not considered an error.
For example: `SELECT toInt64(9223372036854775808) == -9223372036854775808;`
@@ -5777,11 +5777,11 @@ toInt64(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. Supported: values or string representations of type (U)Int*, values of type Float*. Unsupported: string representations of Float* values including NaN and Inf, string representations of binary and hexadecimal values. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. Supported: values or string representations of type (U)Int*, values of type Float*. Unsupported: string representations of Float* values including NaN and Inf, string representations of binary and hexadecimal values. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 64-bit integer value. [`Int64`](/reference/data-types/int-uint)
+Returns a 64-bit integer value. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5807,7 +5807,7 @@ toInt64('-64'): -64
Introduced in: v21.11.0
-Like [`toInt64`](#toInt64), this function converts an input value to a value of type [Int64](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toInt64`](#toInt64), this function converts an input value to a value of type [Int64](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -5819,12 +5819,12 @@ toInt64OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int64`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type Int64 if successful, otherwise returns the default value if passed, or 0 if not. [`Int64`](/reference/data-types/int-uint)
+Returns a value of type Int64 if successful, otherwise returns the default value if passed, or 0 if not. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5852,7 +5852,7 @@ SELECT toInt64OrDefault('abc', CAST('-1', 'Int64'))
Introduced in: v1.1.0
-Like [`toInt64`](#toInt64), this function converts an input value to a value of type [Int64](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toInt64`](#toInt64), this function converts an input value to a value of type [Int64](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -5862,7 +5862,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt64OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int64](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int64](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -5880,11 +5880,11 @@ toInt64OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int64, otherwise `NULL` if the conversion is unsuccessful. [`Int64`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type Int64, otherwise `NULL` if the conversion is unsuccessful. [`Int64`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -5908,7 +5908,7 @@ toInt64OrNull('abc'): \N
Introduced in: v1.1.0
-Converts an input value to type [Int64](/reference/data-types/int-uint) but returns `0` in case of an error.
+Converts an input value to type [Int64](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Like [`toInt64`](#toInt64) but returns `0` instead of throwing an exception.
See also:
@@ -5925,11 +5925,11 @@ toInt64OrZero(x)
**Arguments**
-- `x` — Input value to convert. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Float*`](/reference/data-types/float) or [`Decimal`](/reference/data-types/decimal) or [`(U)Int*`](/reference/data-types/int-uint) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime)
+- `x` — Input value to convert. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Float*`](/core/reference/data-types/float) or [`Decimal`](/core/reference/data-types/decimal) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the converted input value, otherwise `0` if conversion fails. [`Int64`](/reference/data-types/int-uint)
+Returns the converted input value, otherwise `0` if conversion fails. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -5957,7 +5957,7 @@ SELECT toInt64OrZero('abc')
Introduced in: v1.1.0
-Converts an input value to a value of type [`Int8`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`Int8`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -5969,7 +5969,7 @@ Unsupported arguments:
- String representations of binary and hexadecimal values, e.g. `SELECT toInt8('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int8](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int8](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
For example: `SELECT toInt8(128) == -128;`.
@@ -5992,11 +5992,11 @@ toInt8(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns an 8-bit integer value. [`Int8`](/reference/data-types/int-uint)
+Returns an 8-bit integer value. [`Int8`](/core/reference/data-types/int-uint)
**Examples**
@@ -6022,7 +6022,7 @@ toInt8('-8'): -8
Introduced in: v21.11.0
-Like [`toInt8`](#toInt8), this function converts an input value to a value of type [Int8](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toInt8`](#toInt8), this function converts an input value to a value of type [Int8](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -6034,12 +6034,12 @@ toInt8OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`Int8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type Int8 if successful, otherwise returns the default value if passed, or 0 if not. [`Int8`](/reference/data-types/int-uint)
+Returns a value of type Int8 if successful, otherwise returns the default value if passed, or 0 if not. [`Int8`](/core/reference/data-types/int-uint)
**Examples**
@@ -6067,7 +6067,7 @@ SELECT toInt8OrDefault('abc', CAST('-1', 'Int8'))
Introduced in: v1.1.0
-Like [`toInt8`](#toInt8), this function converts an input value to a value of type [Int8](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toInt8`](#toInt8), this function converts an input value to a value of type [Int8](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -6077,7 +6077,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt8OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int8](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int8](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -6095,11 +6095,11 @@ toInt8OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int8, otherwise `NULL` if the conversion is unsuccessful. [`Int8`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type Int8, otherwise `NULL` if the conversion is unsuccessful. [`Int8`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -6123,7 +6123,7 @@ toInt8OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toInt8`](#toInt8), this function converts an input value to a value of type [Int8](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toInt8`](#toInt8), this function converts an input value to a value of type [Int8](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -6133,7 +6133,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toInt8OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [Int8](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [Int8](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -6151,11 +6151,11 @@ toInt8OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type Int8, otherwise `0` if the conversion is unsuccessful. [`Int8`](/reference/data-types/int-uint)
+Returns a value of type Int8, otherwise `0` if the conversion is unsuccessful. [`Int8`](/core/reference/data-types/int-uint)
**Examples**
@@ -6196,12 +6196,12 @@ toInterval(value, unit)
**Arguments**
-- `value` — The numeric value representing the number of units. Can be any numeric type. [`Int8`](/reference/data-types/int-uint) or [`Int16`](/reference/data-types/int-uint) or [`Int32`](/reference/data-types/int-uint) or [`Int64`](/reference/data-types/int-uint) or [`UInt8`](/reference/data-types/int-uint) or [`UInt16`](/reference/data-types/int-uint) or [`UInt32`](/reference/data-types/int-uint) or [`UInt64`](/reference/data-types/int-uint) or [`Float32`](/reference/data-types/float) or [`Float64`](/reference/data-types/float)
-- `unit` — The unit of time. Must be a constant string. Valid values: 'nanosecond', 'microsecond', 'millisecond', 'second', 'minute', 'hour', 'day', 'week', 'month', 'quarter', 'year'. [`String`](/reference/data-types/string)
+- `value` — The numeric value representing the number of units. Can be any numeric type. [`Int8`](/core/reference/data-types/int-uint) or [`Int16`](/core/reference/data-types/int-uint) or [`Int32`](/core/reference/data-types/int-uint) or [`Int64`](/core/reference/data-types/int-uint) or [`UInt8`](/core/reference/data-types/int-uint) or [`UInt16`](/core/reference/data-types/int-uint) or [`UInt32`](/core/reference/data-types/int-uint) or [`UInt64`](/core/reference/data-types/int-uint) or [`Float32`](/core/reference/data-types/float) or [`Float64`](/core/reference/data-types/float)
+- `unit` — The unit of time. Must be a constant string. Valid values: 'nanosecond', 'microsecond', 'millisecond', 'second', 'minute', 'hour', 'day', 'week', 'month', 'quarter', 'year'. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an Interval value of the specified type. The result type depends on the unit: IntervalNanosecond, IntervalMicrosecond, IntervalMillisecond, IntervalSecond, IntervalMinute, IntervalHour, IntervalDay, IntervalWeek, IntervalMonth, IntervalQuarter, or IntervalYear. [`Interval`](/reference/data-types/int-uint)
+Returns an Interval value of the specified type. The result type depends on the unit: IntervalNanosecond, IntervalMicrosecond, IntervalMillisecond, IntervalSecond, IntervalMinute, IntervalHour, IntervalDay, IntervalWeek, IntervalMonth, IntervalQuarter, or IntervalYear. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6256,7 +6256,7 @@ FROM numbers(5)
Introduced in: v1.1.0
-Returns an interval of `n` days of data type [`IntervalDay`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` days of data type [`IntervalDay`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6267,11 +6267,11 @@ toIntervalDay(n)
**Arguments**
-- `n` — Number of days. Integer numbers or string representations thereof, and float numbers. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of days. Integer numbers or string representations thereof, and float numbers. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` days. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` days. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6294,7 +6294,7 @@ SELECT date + interval_to_days AS result
Introduced in: v1.1.0
-Returns an interval of `n` hours of data type [`IntervalHour`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` hours of data type [`IntervalHour`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6305,11 +6305,11 @@ toIntervalHour(n)
**Arguments**
-- `n` — Number of hours. Integer numbers or string representations thereof, and float numbers. [`Int*`](/reference/data-types/int-uint) or [`UInt*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of hours. Integer numbers or string representations thereof, and float numbers. [`Int*`](/core/reference/data-types/int-uint) or [`UInt*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` hours. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` hours. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6332,7 +6332,7 @@ SELECT date + interval_to_hours AS result
Introduced in: v22.6.0
-Returns an interval of `n` microseconds of data type [`IntervalMicrosecond`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` microseconds of data type [`IntervalMicrosecond`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6343,11 +6343,11 @@ toIntervalMicrosecond(n)
**Arguments**
-- `n` — Number of microseconds. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of microseconds. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` microseconds. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` microseconds. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6370,7 +6370,7 @@ SELECT date + interval_to_microseconds AS result
Introduced in: v22.6.0
-Returns an interval of `n` milliseconds of data type [IntervalMillisecond](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` milliseconds of data type [IntervalMillisecond](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6381,11 +6381,11 @@ toIntervalMillisecond(n)
**Arguments**
-- `n` — Number of milliseconds. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of milliseconds. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` milliseconds. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` milliseconds. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6408,7 +6408,7 @@ SELECT date + interval_to_milliseconds AS result
Introduced in: v1.1.0
-Returns an interval of `n` minutes of data type [`IntervalMinute`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` minutes of data type [`IntervalMinute`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6419,11 +6419,11 @@ toIntervalMinute(n)
**Arguments**
-- `n` — Number of minutes. Integer numbers or string representations thereof, and float numbers. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of minutes. Integer numbers or string representations thereof, and float numbers. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` minutes. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` minutes. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6446,7 +6446,7 @@ SELECT date + interval_to_minutes AS result
Introduced in: v1.1.0
-Returns an interval of `n` months of data type [`IntervalMonth`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` months of data type [`IntervalMonth`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6457,11 +6457,11 @@ toIntervalMonth(n)
**Arguments**
-- `n` — Number of months. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of months. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` months. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` months. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6484,7 +6484,7 @@ SELECT date + interval_to_month AS result
Introduced in: v22.6.0
-Returns an interval of `n` nanoseconds of data type [`IntervalNanosecond`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` nanoseconds of data type [`IntervalNanosecond`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6495,11 +6495,11 @@ toIntervalNanosecond(n)
**Arguments**
-- `n` — Number of nanoseconds. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of nanoseconds. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` nanoseconds. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` nanoseconds. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6522,7 +6522,7 @@ SELECT date + interval_to_nanoseconds AS result
Introduced in: v1.1.0
-Returns an interval of `n` quarters of data type [`IntervalQuarter`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` quarters of data type [`IntervalQuarter`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6533,11 +6533,11 @@ toIntervalQuarter(n)
**Arguments**
-- `n` — Number of quarters. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of quarters. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` quarters. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` quarters. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6560,7 +6560,7 @@ SELECT date + interval_to_quarter AS result
Introduced in: v1.1.0
-Returns an interval of `n` seconds of data type [`IntervalSecond`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` seconds of data type [`IntervalSecond`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6571,11 +6571,11 @@ toIntervalSecond(n)
**Arguments**
-- `n` — Number of seconds. Integer numbers or string representations thereof, and float numbers. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of seconds. Integer numbers or string representations thereof, and float numbers. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` seconds. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` seconds. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6598,7 +6598,7 @@ SELECT date + interval_to_seconds AS result
Introduced in: v1.1.0
-Returns an interval of `n` weeks of data type [`IntervalWeek`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` weeks of data type [`IntervalWeek`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6609,11 +6609,11 @@ toIntervalWeek(n)
**Arguments**
-- `n` — Number of weeks. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of weeks. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` weeks. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` weeks. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6636,7 +6636,7 @@ SELECT date + interval_to_week AS result
Introduced in: v1.1.0
-Returns an interval of `n` years of data type [`IntervalYear`](/reference/data-types/special-data-types/interval).
+Returns an interval of `n` years of data type [`IntervalYear`](/core/reference/data-types/special-data-types/interval).
**Syntax**
@@ -6647,11 +6647,11 @@ toIntervalYear(n)
**Arguments**
-- `n` — Number of years. [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float) or [`String`](/reference/data-types/string)
+- `n` — Number of years. [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float) or [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an interval of `n` years. [`Interval`](/reference/data-types/int-uint)
+Returns an interval of `n` years. [`Interval`](/core/reference/data-types/int-uint)
**Examples**
@@ -6674,7 +6674,7 @@ SELECT date + interval_to_year AS result
Introduced in: v18.12.0
-Converts the input argument to the [LowCardinality](/reference/data-types/lowcardinality) version of same data type.
+Converts the input argument to the [LowCardinality](/core/reference/data-types/lowcardinality) version of same data type.
To convert from the `LowCardinality` data type to a regular data type, use the [CAST](#CAST) function.
@@ -6690,11 +6690,11 @@ toLowCardinality(expr)
**Arguments**
-- `expr` — Expression resulting in one of the supported data types. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`Date`](/reference/data-types/date) or [`DateTime`](/reference/data-types/datetime) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `expr` — Expression resulting in one of the supported data types. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`Date`](/core/reference/data-types/date) or [`DateTime`](/core/reference/data-types/datetime) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the input value converted to the `LowCardinality` data type. [`LowCardinality`](/reference/data-types/lowcardinality)
+Returns the input value converted to the `LowCardinality` data type. [`LowCardinality`](/core/reference/data-types/lowcardinality)
**Examples**
@@ -6725,12 +6725,12 @@ toString(value[, timezone])
**Arguments**
-- `value` — Value to convert to string. [`Any`](/reference/data-types)
-- `timezone` — Optional. Timezone name for DateTime conversion. [`String`](/reference/data-types/string)
+- `value` — Value to convert to string. [`Any`](/core/reference/data-types)
+- `timezone` — Optional. Timezone name for DateTime conversion. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a string representation of the input value. [`String`](/reference/data-types/string)
+Returns a string representation of the input value. [`String`](/core/reference/data-types/string)
**Examples**
@@ -6760,7 +6760,7 @@ LIMIT 10
Introduced in: v1.1.0
-Accepts a [String](/reference/data-types/string) or [FixedString](/reference/data-types/fixedstring) argument and returns a String that contains a copy of the original string truncated at the first null byte.
+Accepts a [String](/core/reference/data-types/string) or [FixedString](/core/reference/data-types/fixedstring) argument and returns a String that contains a copy of the original string truncated at the first null byte.
Null bytes (\\0) are considered as string terminators.
This function is useful for processing C-style strings or binary data where null bytes mark the end of meaningful content.
@@ -6774,11 +6774,11 @@ toStringCutToZero(s)
**Arguments**
-- `s` — String or FixedString to process. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `s` — String or FixedString to process. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns a String containing the characters before the first null byte. [`String`](/reference/data-types/string)
+Returns a String containing the characters before the first null byte. [`String`](/core/reference/data-types/string)
**Examples**
@@ -6800,7 +6800,7 @@ SELECT
Introduced in: v1.1.0
-Converts an input value to type [Time](/reference/data-types/time).
+Converts an input value to type [Time](/core/reference/data-types/time).
Supports conversion from String, FixedString, DateTime, or numeric types representing seconds since midnight.
@@ -6812,11 +6812,11 @@ toTime(x)
**Arguments**
-- `x` — Input value to convert. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`DateTime`](/reference/data-types/datetime) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — Input value to convert. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`DateTime`](/core/reference/data-types/datetime) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the converted value. [`Time`](/reference/data-types/time)
+Returns the converted value. [`Time`](/core/reference/data-types/time)
**Examples**
@@ -6854,7 +6854,7 @@ SELECT toTime(52225)
Introduced in: v25.6.0
-Converts an input value to type [Time64](/reference/data-types/time64).
+Converts an input value to type [Time64](/core/reference/data-types/time64).
Supports conversion from String, FixedString, DateTime64, or numeric types representing microseconds since midnight.
Provides microsecond precision for time values.
@@ -6867,11 +6867,11 @@ toTime64(x)
**Arguments**
-- `x` — Input value to convert. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring) or [`DateTime64`](/reference/data-types/datetime64) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
+- `x` — Input value to convert. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring) or [`DateTime64`](/core/reference/data-types/datetime64) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
**Returned value**
-Returns the converted input value with microsecond precision. [`Time64(6)`](/reference/data-types/time64)
+Returns the converted input value with microsecond precision. [`Time64(6)`](/core/reference/data-types/time64)
**Examples**
@@ -6925,11 +6925,11 @@ toTime64OrNull(x)
**Arguments**
-- `x` — A string representation of a time with subsecond precision. [`String`](/reference/data-types/string)
+- `x` — A string representation of a time with subsecond precision. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Time64 value if successful, otherwise `NULL`. [`Time64`](/reference/data-types/time64) or [`NULL`](/reference/syntax#null)
+Returns a Time64 value if successful, otherwise `NULL`. [`Time64`](/core/reference/data-types/time64) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -6960,11 +6960,11 @@ toTime64OrZero(x)
**Arguments**
-- `x` — A string representation of a time with subsecond precision. [`String`](/reference/data-types/string)
+- `x` — A string representation of a time with subsecond precision. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Time64 value if successful, otherwise `00:00:00.000`. [`Time64`](/reference/data-types/time64)
+Returns a Time64 value if successful, otherwise `00:00:00.000`. [`Time64`](/core/reference/data-types/time64)
**Examples**
@@ -7000,11 +7000,11 @@ toTimeOrNull(x)
**Arguments**
-- `x` — A string representation of a time. [`String`](/reference/data-types/string)
+- `x` — A string representation of a time. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Time value if successful, otherwise `NULL`. [`Time`](/reference/data-types/time) or [`NULL`](/reference/syntax#null)
+Returns a Time value if successful, otherwise `NULL`. [`Time`](/core/reference/data-types/time) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -7036,11 +7036,11 @@ toTimeOrZero(x)
**Arguments**
-- `x` — A string representation of a time. [`String`](/reference/data-types/string)
+- `x` — A string representation of a time. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a Time value if successful, otherwise `00:00:00`. [`Time`](/reference/data-types/time)
+Returns a Time value if successful, otherwise `00:00:00`. [`Time`](/core/reference/data-types/time)
**Examples**
@@ -7060,7 +7060,7 @@ SELECT toTimeOrZero('12:30:45'), toTimeOrZero('invalid')
Introduced in: v1.1.0
-Converts an input value to a value of type [`UInt128`](/reference/functions/regular-functions/type-conversion-functions#toUInt128).
+Converts an input value to a value of type [`UInt128`](/core/reference/functions/regular-functions/type-conversion-functions#toUInt128).
Throws an exception in case of an error.
The function uses rounding towards zero, meaning it truncates fractional digits of numbers.
@@ -7091,11 +7091,11 @@ toUInt128(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 128-bit unsigned integer value. [`UInt128`](/reference/data-types/int-uint)
+Returns a 128-bit unsigned integer value. [`UInt128`](/core/reference/data-types/int-uint)
**Examples**
@@ -7121,7 +7121,7 @@ toUInt128('128'): 128
Introduced in: v21.11.0
-Like [`toUInt128`](#toUInt128), this function converts an input value to a value of type [`UInt128`](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toUInt128`](#toUInt128), this function converts an input value to a value of type [`UInt128`](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -7133,12 +7133,12 @@ toUInt128OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt128`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt128`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type UInt128 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt128`](/reference/data-types/int-uint)
+Returns a value of type UInt128 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt128`](/core/reference/data-types/int-uint)
**Examples**
@@ -7166,7 +7166,7 @@ SELECT toUInt128OrDefault('abc', CAST('0', 'UInt128'))
Introduced in: v21.6.0
-Like [`toUInt128`](#toUInt128), this function converts an input value to a value of type [`UInt128`](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toUInt128`](#toUInt128), this function converts an input value to a value of type [`UInt128`](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -7176,7 +7176,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt128OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt128`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt128`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7194,11 +7194,11 @@ toUInt128OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt128, otherwise `NULL` if the conversion is unsuccessful. [`UInt128`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type UInt128, otherwise `NULL` if the conversion is unsuccessful. [`UInt128`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -7222,7 +7222,7 @@ toUInt128OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toUInt128`](#toUInt128), this function converts an input value to a value of type [`UInt128`](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toUInt128`](#toUInt128), this function converts an input value to a value of type [`UInt128`](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -7232,7 +7232,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt128OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt128`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt128`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7250,11 +7250,11 @@ toUInt128OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt128, otherwise `0` if the conversion is unsuccessful. [`UInt128`](/reference/data-types/int-uint)
+Returns a value of type UInt128, otherwise `0` if the conversion is unsuccessful. [`UInt128`](/core/reference/data-types/int-uint)
**Examples**
@@ -7278,7 +7278,7 @@ toUInt128OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [`UInt16`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`UInt16`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -7290,7 +7290,7 @@ Unsupported arguments:
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt16('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt16`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt16`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
For example: `SELECT toUInt16(65536) == 0;`.
@@ -7313,11 +7313,11 @@ toUInt16(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 16-bit unsigned integer value. [`UInt16`](/reference/data-types/int-uint)
+Returns a 16-bit unsigned integer value. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -7343,7 +7343,7 @@ toUInt16('16'): 16
Introduced in: v21.11.0
-Like [`toUInt16`](#toUInt16), this function converts an input value to a value of type [UInt16](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toUInt16`](#toUInt16), this function converts an input value to a value of type [UInt16](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -7355,12 +7355,12 @@ toUInt16OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt16`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt16`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type UInt16 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt16`](/reference/data-types/int-uint)
+Returns a value of type UInt16 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -7388,7 +7388,7 @@ SELECT toUInt16OrDefault('abc', CAST('0', 'UInt16'))
Introduced in: v1.1.0
-Like [`toUInt16`](#toUInt16), this function converts an input value to a value of type [`UInt16`](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toUInt16`](#toUInt16), this function converts an input value to a value of type [`UInt16`](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int8/16/32/128/256.
@@ -7398,7 +7398,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt16OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt16`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt16`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7416,11 +7416,11 @@ toUInt16OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type `UInt16`, otherwise `NULL` if the conversion is unsuccessful. [`UInt16`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type `UInt16`, otherwise `NULL` if the conversion is unsuccessful. [`UInt16`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -7444,7 +7444,7 @@ toUInt16OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toUInt16`](#toUInt16), this function converts an input value to a value of type [`UInt16`](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toUInt16`](#toUInt16), this function converts an input value to a value of type [`UInt16`](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int8/16/32/128/256.
@@ -7454,7 +7454,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt16OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt16`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt16`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7472,11 +7472,11 @@ toUInt16OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt16, otherwise `0` if the conversion is unsuccessful. [`UInt16`](/reference/data-types/int-uint)
+Returns a value of type UInt16, otherwise `0` if the conversion is unsuccessful. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -7531,11 +7531,11 @@ toUInt256(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 256-bit unsigned integer value. [`UInt256`](/reference/data-types/int-uint)
+Returns a 256-bit unsigned integer value. [`UInt256`](/core/reference/data-types/int-uint)
**Examples**
@@ -7561,7 +7561,7 @@ toUInt256('256'): 256
Introduced in: v21.11.0
-Like [`toUInt256`](#toUInt256), this function converts an input value to a value of type [UInt256](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toUInt256`](#toUInt256), this function converts an input value to a value of type [UInt256](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -7573,12 +7573,12 @@ toUInt256OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt256`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt256`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type UInt256 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt256`](/reference/data-types/int-uint)
+Returns a value of type UInt256 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt256`](/core/reference/data-types/int-uint)
**Examples**
@@ -7606,7 +7606,7 @@ SELECT toUInt256OrDefault('abc', CAST('0', 'UInt256'))
Introduced in: v20.8.0
-Like [`toUInt256`](#toUInt256), this function converts an input value to a value of type [`UInt256`](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toUInt256`](#toUInt256), this function converts an input value to a value of type [`UInt256`](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -7616,7 +7616,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt256OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt256`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt256`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7634,11 +7634,11 @@ toUInt256OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt256, otherwise `NULL` if the conversion is unsuccessful. [`UInt256`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type UInt256, otherwise `NULL` if the conversion is unsuccessful. [`UInt256`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -7662,7 +7662,7 @@ toUInt256OrNull('abc'): \N
Introduced in: v20.8.0
-Like [`toUInt256`](#toUInt256), this function converts an input value to a value of type [`UInt256`](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toUInt256`](#toUInt256), this function converts an input value to a value of type [`UInt256`](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -7672,7 +7672,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt256OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt256`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt256`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7690,11 +7690,11 @@ toUInt256OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt256, otherwise `0` if the conversion is unsuccessful. [`UInt256`](/reference/data-types/int-uint)
+Returns a value of type UInt256, otherwise `0` if the conversion is unsuccessful. [`UInt256`](/core/reference/data-types/int-uint)
**Examples**
@@ -7718,7 +7718,7 @@ toUInt256OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [`UInt32`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`UInt32`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -7730,7 +7730,7 @@ Unsupported arguments:
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt32('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt32`](/reference/data-types/int-uint), the result over or under flows.
+If the input value cannot be represented within the bounds of [`UInt32`](/core/reference/data-types/int-uint), the result over or under flows.
This is not considered an error.
For example: `SELECT toUInt32(4294967296) == 0;`
@@ -7753,11 +7753,11 @@ toUInt32(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 32-bit unsigned integer value. [`UInt32`](/reference/data-types/int-uint)
+Returns a 32-bit unsigned integer value. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -7783,7 +7783,7 @@ toUInt32('32'): 32
Introduced in: v21.11.0
-Like [`toUInt32`](#toUInt32), this function converts an input value to a value of type [UInt32](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toUInt32`](#toUInt32), this function converts an input value to a value of type [UInt32](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -7795,12 +7795,12 @@ toUInt32OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt32`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt32`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type UInt32 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt32`](/reference/data-types/int-uint)
+Returns a value of type UInt32 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -7828,7 +7828,7 @@ SELECT toUInt32OrDefault('abc', CAST('0', 'UInt32'))
Introduced in: v1.1.0
-Like [`toUInt32`](#toUInt32), this function converts an input value to a value of type [`UInt32`](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toUInt32`](#toUInt32), this function converts an input value to a value of type [`UInt32`](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int8/16/32/128/256.
@@ -7838,7 +7838,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt32OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt32`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt32`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7856,11 +7856,11 @@ toUInt32OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type `UInt32`, otherwise `NULL` if the conversion is unsuccessful. [`UInt32`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type `UInt32`, otherwise `NULL` if the conversion is unsuccessful. [`UInt32`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -7884,7 +7884,7 @@ toUInt32OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toUInt32`](#toUInt32), this function converts an input value to a value of type [`UInt32`](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toUInt32`](#toUInt32), this function converts an input value to a value of type [`UInt32`](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int8/16/32/128/256.
@@ -7894,7 +7894,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt32OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt32`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt32`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -7912,11 +7912,11 @@ toUInt32OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt32, otherwise `0` if the conversion is unsuccessful. [`UInt32`](/reference/data-types/int-uint)
+Returns a value of type UInt32, otherwise `0` if the conversion is unsuccessful. [`UInt32`](/core/reference/data-types/int-uint)
**Examples**
@@ -7940,7 +7940,7 @@ toUInt32OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [`UInt64`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`UInt64`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -7952,7 +7952,7 @@ Unsupported types:
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt64('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt64`](/reference/data-types/int-uint), the result over or under flows.
+If the input value cannot be represented within the bounds of [`UInt64`](/core/reference/data-types/int-uint), the result over or under flows.
This is not considered an error.
For example: `SELECT toUInt64(18446744073709551616) == 0;`
@@ -7975,11 +7975,11 @@ toUInt64(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns a 64-bit unsigned integer value. [`UInt64`](/reference/data-types/int-uint)
+Returns a 64-bit unsigned integer value. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -8005,7 +8005,7 @@ toUInt64('64'): 64
Introduced in: v21.11.0
-Like [`toUInt64`](#toUInt64), this function converts an input value to a value of type [UInt64](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toUInt64`](#toUInt64), this function converts an input value to a value of type [UInt64](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -8017,12 +8017,12 @@ toUInt64OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt64`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt64`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type UInt64 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt64`](/reference/data-types/int-uint)
+Returns a value of type UInt64 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -8050,7 +8050,7 @@ SELECT toUInt64OrDefault('abc', CAST('0', 'UInt64'))
Introduced in: v1.1.0
-Like [`toUInt64`](#toUInt64), this function converts an input value to a value of type [`UInt64`](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toUInt64`](#toUInt64), this function converts an input value to a value of type [`UInt64`](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -8060,7 +8060,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt64OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt64`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt64`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -8078,11 +8078,11 @@ toUInt64OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt64, otherwise `NULL` if the conversion is unsuccessful. [`UInt64`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type UInt64, otherwise `NULL` if the conversion is unsuccessful. [`UInt64`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -8106,7 +8106,7 @@ toUInt64OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toUInt64`](#toUInt64), this function converts an input value to a value of type [`UInt64`](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toUInt64`](#toUInt64), this function converts an input value to a value of type [`UInt64`](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int*.
@@ -8116,7 +8116,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt64OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt64`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt64`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -8134,11 +8134,11 @@ toUInt64OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt64, otherwise `0` if the conversion is unsuccessful. [`UInt64`](/reference/data-types/int-uint)
+Returns a value of type UInt64, otherwise `0` if the conversion is unsuccessful. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -8162,7 +8162,7 @@ toUInt64OrZero('abc'): 0
Introduced in: v1.1.0
-Converts an input value to a value of type [`UInt8`](/reference/data-types/int-uint).
+Converts an input value to a value of type [`UInt8`](/core/reference/data-types/int-uint).
Throws an exception in case of an error.
Supported arguments:
@@ -8174,7 +8174,7 @@ Unsupported arguments:
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt8('0xc0fe');`.
-If the input value cannot be represented within the bounds of [UInt8](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [UInt8](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
For example: `SELECT toUInt8(256) == 0;`.
@@ -8197,11 +8197,11 @@ toUInt8(expr)
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/reference/data-types/special-data-types/expression)
+- `expr` — Expression returning a number or a string representation of a number. [`Expression`](/core/reference/data-types/special-data-types/expression)
**Returned value**
-Returns an 8-bit unsigned integer value. [`UInt8`](/reference/data-types/int-uint)
+Returns an 8-bit unsigned integer value. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -8227,7 +8227,7 @@ toUInt8('8'): 8
Introduced in: v21.11.0
-Like [`toUInt8`](#toUInt8), this function converts an input value to a value of type [UInt8](/reference/data-types/int-uint) but returns the default value in case of an error.
+Like [`toUInt8`](#toUInt8), this function converts an input value to a value of type [UInt8](/core/reference/data-types/int-uint) but returns the default value in case of an error.
If no `default` value is passed then `0` is returned in case of an error.
@@ -8239,12 +8239,12 @@ toUInt8OrDefault(expr[, default])
**Arguments**
-- `expr` — Expression returning a number or a string representation of a number. [`String`](/reference/data-types/string) or [`(U)Int*`](/reference/data-types/int-uint) or [`Float*`](/reference/data-types/float)
-- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt8`](/reference/data-types/int-uint)
+- `expr` — Expression returning a number or a string representation of a number. [`String`](/core/reference/data-types/string) or [`(U)Int*`](/core/reference/data-types/int-uint) or [`Float*`](/core/reference/data-types/float)
+- `default` — Optional. The default value to return if parsing is unsuccessful. [`UInt8`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a value of type UInt8 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt8`](/reference/data-types/int-uint)
+Returns a value of type UInt8 if successful, otherwise returns the default value if passed, or 0 if not. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -8272,7 +8272,7 @@ SELECT toUInt8OrDefault('abc', CAST('0', 'UInt8'))
Introduced in: v1.1.0
-Like [`toUInt8`](#toUInt8), this function converts an input value to a value of type [`UInt8`](/reference/data-types/int-uint) but returns `NULL` in case of an error.
+Like [`toUInt8`](#toUInt8), this function converts an input value to a value of type [`UInt8`](/core/reference/data-types/int-uint) but returns `NULL` in case of an error.
Supported arguments:
- String representations of (U)Int8/16/32/128/256.
@@ -8282,7 +8282,7 @@ Unsupported arguments (return `NULL`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt8OrNull('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt8`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt8`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -8300,11 +8300,11 @@ toUInt8OrNull(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt8, otherwise `NULL` if the conversion is unsuccessful. [`UInt8`](/reference/data-types/int-uint) or [`NULL`](/reference/syntax#null)
+Returns a value of type UInt8, otherwise `NULL` if the conversion is unsuccessful. [`UInt8`](/core/reference/data-types/int-uint) or [`NULL`](/core/reference/syntax#null)
**Examples**
@@ -8328,7 +8328,7 @@ toUInt8OrNull('abc'): \N
Introduced in: v1.1.0
-Like [`toUInt8`](#toUInt8), this function converts an input value to a value of type [`UInt8`](/reference/data-types/int-uint) but returns `0` in case of an error.
+Like [`toUInt8`](#toUInt8), this function converts an input value to a value of type [`UInt8`](/core/reference/data-types/int-uint) but returns `0` in case of an error.
Supported arguments:
- String representations of (U)Int8/16/32/128/256.
@@ -8338,7 +8338,7 @@ Unsupported arguments (return `0`):
- String representations of binary and hexadecimal values, e.g. `SELECT toUInt8OrZero('0xc0fe');`.
-If the input value cannot be represented within the bounds of [`UInt8`](/reference/data-types/int-uint), overflow or underflow of the result occurs.
+If the input value cannot be represented within the bounds of [`UInt8`](/core/reference/data-types/int-uint), overflow or underflow of the result occurs.
This is not considered an error.
@@ -8356,11 +8356,11 @@ toUInt8OrZero(x)
**Arguments**
-- `x` — A String representation of a number. [`String`](/reference/data-types/string)
+- `x` — A String representation of a number. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a value of type UInt8, otherwise `0` if the conversion is unsuccessful. [`UInt8`](/reference/data-types/int-uint)
+Returns a value of type UInt8, otherwise `0` if the conversion is unsuccessful. [`UInt8`](/core/reference/data-types/int-uint)
**Examples**
@@ -8395,11 +8395,11 @@ toUUID(string)
**Arguments**
-- `string` — UUID as a string. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
+- `string` — UUID as a string. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
**Returned value**
-Returns a UUID from the string representation of the UUID. [`UUID`](/reference/data-types/uuid)
+Returns a UUID from the string representation of the UUID. [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -8419,8 +8419,8 @@ SELECT toUUID('61f0c404-5cb3-11e7-907b-a6006ad3dba0') AS uuid
Introduced in: v20.12.0
-Converts an input value to a value of type [UUID](/reference/data-types/uuid) but returns zero UUID in case of an error.
-Like [`toUUID`](/reference/functions/regular-functions/type-conversion-functions#toUUID) but returns zero UUID (`00000000-0000-0000-0000-000000000000`) instead of throwing an exception on conversion errors.
+Converts an input value to a value of type [UUID](/core/reference/data-types/uuid) but returns zero UUID in case of an error.
+Like [`toUUID`](/core/reference/functions/regular-functions/type-conversion-functions#toUUID) but returns zero UUID (`00000000-0000-0000-0000-000000000000`) instead of throwing an exception on conversion errors.
Supported arguments:
- String representations of UUID in standard format (8-4-4-4-12 hexadecimal digits).
@@ -8439,11 +8439,11 @@ toUUIDOrZero(x)
**Arguments**
-- `x` — A string representation of a UUID. [`String`](/reference/data-types/string)
+- `x` — A string representation of a UUID. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a UUID value if successful, otherwise zero UUID (`00000000-0000-0000-0000-000000000000`). [`UUID`](/reference/data-types/uuid)
+Returns a UUID value if successful, otherwise zero UUID (`00000000-0000-0000-0000-000000000000`). [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -8465,7 +8465,7 @@ SELECT
Introduced in: v20.5.0
-Converts a [`DateTime64`](/reference/data-types/datetime64) to a [`Int64`](/reference/data-types/int-uint) value with fixed microsecond precision.
+Converts a [`DateTime64`](/core/reference/data-types/datetime64) to a [`Int64`](/core/reference/data-types/int-uint) value with fixed microsecond precision.
The input value is scaled up or down appropriately depending on its precision.
@@ -8481,11 +8481,11 @@ toUnixTimestamp64Micro(value)
**Arguments**
-- `value` — DateTime64 value with any precision. [`DateTime64`](/reference/data-types/datetime64)
+- `value` — DateTime64 value with any precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns a Unix timestamp in microseconds. [`Int64`](/reference/data-types/int-uint)
+Returns a Unix timestamp in microseconds. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -8506,7 +8506,7 @@ SELECT toUnixTimestamp64Micro(dt64);
Introduced in: v20.5.0
-Converts a [`DateTime64`](/reference/data-types/datetime64) to a [`Int64`](/reference/data-types/int-uint) value with fixed millisecond precision.
+Converts a [`DateTime64`](/core/reference/data-types/datetime64) to a [`Int64`](/core/reference/data-types/int-uint) value with fixed millisecond precision.
The input value is scaled up or down appropriately depending on its precision.
@@ -8522,11 +8522,11 @@ toUnixTimestamp64Milli(value)
**Arguments**
-- `value` — DateTime64 value with any precision. [`DateTime64`](/reference/data-types/datetime64)
+- `value` — DateTime64 value with any precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns a Unix timestamp in milliseconds. [`Int64`](/reference/data-types/int-uint)
+Returns a Unix timestamp in milliseconds. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -8547,7 +8547,7 @@ SELECT toUnixTimestamp64Milli(dt64);
Introduced in: v20.5.0
-Converts a [`DateTime64`](/reference/data-types/datetime64) to a [`Int64`](/reference/functions/regular-functions/type-conversion-functions#toInt64) value with fixed nanosecond precision.
+Converts a [`DateTime64`](/core/reference/data-types/datetime64) to a [`Int64`](/core/reference/functions/regular-functions/type-conversion-functions#toInt64) value with fixed nanosecond precision.
The input value is scaled up or down appropriately depending on its precision.
@@ -8563,11 +8563,11 @@ toUnixTimestamp64Nano(value)
**Arguments**
-- `value` — DateTime64 value with any precision. [`DateTime64`](/reference/data-types/datetime64)
+- `value` — DateTime64 value with any precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns a Unix timestamp in nanoseconds. [`Int64`](/reference/data-types/int-uint)
+Returns a Unix timestamp in nanoseconds. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -8588,7 +8588,7 @@ SELECT toUnixTimestamp64Nano(dt64);
Introduced in: v24.12.0
-Converts a [`DateTime64`](/reference/data-types/datetime64) to a [`Int64`](/reference/data-types/int-uint) value with fixed second precision.
+Converts a [`DateTime64`](/core/reference/data-types/datetime64) to a [`Int64`](/core/reference/data-types/int-uint) value with fixed second precision.
The input value is scaled up or down appropriately depending on its precision.
@@ -8604,11 +8604,11 @@ toUnixTimestamp64Second(value)
**Arguments**
-- `value` — DateTime64 value with any precision. [`DateTime64`](/reference/data-types/datetime64)
+- `value` — DateTime64 value with any precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns a Unix timestamp in seconds. [`Int64`](/reference/data-types/int-uint)
+Returns a Unix timestamp in seconds. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
diff --git a/reference/functions/regular-functions/udf.mdx b/core/reference/functions/regular-functions/udf.mdx
similarity index 93%
rename from reference/functions/regular-functions/udf.mdx
rename to core/reference/functions/regular-functions/udf.mdx
index cc663fe7..d6b4bb96 100644
--- a/reference/functions/regular-functions/udf.mdx
+++ b/core/reference/functions/regular-functions/udf.mdx
@@ -31,7 +31,7 @@ Please contact ClickHouse Support at https://clickhouse.cloud/support to access.
ClickHouse can call any external executable program or script to process data.
The configuration of executable user defined functions can be located in one or more xml-files.
-The path to the configuration is specified in the [`user_defined_executable_functions_config`](/reference/settings/server-settings/settings#user_defined_executable_functions_config) parameter.
+The path to the configuration is specified in the [`user_defined_executable_functions_config`](/core/reference/settings/server-settings/settings#user_defined_executable_functions_config) parameter.
A function configuration contains the following settings:
@@ -39,10 +39,10 @@ A function configuration contains the following settings:
|-------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------|-----------------------|
| `name` | A function name | Yes | - |
| `command` | Script name to execute or command if `execute_direct` is false | Yes | - |
-| `argument` | Argument description with the `type`, and optional `name` of an argument. Each argument is described in a separate setting. Specifying name is necessary if argument names are part of serialization for user defined function format like [Native](/reference/formats/Native) or [JSONEachRow](/reference/formats/JSON/JSONEachRow) | Yes | `c` + argument_number |
-| `format` | A [format](/reference/formats) in which arguments are passed to the command. The command output is expected to use the same format too | Yes | - |
+| `argument` | Argument description with the `type`, and optional `name` of an argument. Each argument is described in a separate setting. Specifying name is necessary if argument names are part of serialization for user defined function format like [Native](/core/reference/formats/Native) or [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) | Yes | `c` + argument_number |
+| `format` | A [format](/core/reference/formats) in which arguments are passed to the command. The command output is expected to use the same format too | Yes | - |
| `return_type` | The type of a returned value | Yes | - |
-| `return_name` | Name of returned value. Specifying return name is necessary if return name is part of serialization for user defined function format like [Native](/reference/formats/Native) or [JSONEachRow](/reference/formats/JSON/JSONEachRow) | Optional | `result` |
+| `return_name` | Name of returned value. Specifying return name is necessary if return name is part of serialization for user defined function format like [Native](/core/reference/formats/Native) or [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) | Optional | `result` |
| `type` | An executable type. If `type` is set to `executable` then single command is started. If it is set to `executable_pool` then a pool of commands is created | Yes | - |
| `max_command_execution_time` | Maximum execution time in seconds for processing block of data. This setting is valid for `executable_pool` commands only | Optional | `10` |
| `command_termination_timeout` | Time in seconds during which a command should finish after its pipe is closed. After that time `SIGTERM` is sent to the process executing the command | Optional | `10` |
@@ -50,7 +50,7 @@ A function configuration contains the following settings:
| `command_write_timeout` | Timeout for writing data to command stdin in milliseconds | Optional | `10000` |
| `pool_size` | The size of a command pool | Optional | `16` |
| `send_chunk_header` | Controls whether to send row count before sending a chunk of data to process | Optional | `false` |
-| `execute_direct` | If `execute_direct` = `1`, then `command` will be searched inside user_scripts folder specified by [user_scripts_path](/reference/settings/server-settings/settings#user_scripts_path). Additional script arguments can be specified using whitespace separator. Example: `script_name arg1 arg2`. If `execute_direct` = `0`, `command` is passed as argument for `bin/sh -c` | Optional | `1` |
+| `execute_direct` | If `execute_direct` = `1`, then `command` will be searched inside user_scripts folder specified by [user_scripts_path](/core/reference/settings/server-settings/settings#user_scripts_path). Additional script arguments can be specified using whitespace separator. Example: `script_name arg1 arg2`. If `execute_direct` = `0`, `command` is passed as argument for `bin/sh -c` | Optional | `1` |
| `lifetime` | The reload interval of a function in seconds. If it is set to `0` then the function is not reloaded | Optional | `0` |
| `deterministic` | If the function is deterministic (returns the same result for the same input) | Optional | `false` |
| `stderr_reaction` | How to handle the command's stderr output. Values: `none` (ignore), `log` (log all stderr immediately), `log_first` (log first 4 KiB after exit), `log_last` (log last 4 KiB after exit), `throw` (throw exception immediately on any stderr output). When using `log_first` or `log_last` with a non-zero exit code, the stderr content is included in the exception message | Optional | `log_last` |
@@ -194,7 +194,7 @@ SELECT test_function_python(toUInt64(2));
### Read two values from `STDIN` and return their sum as a JSON object {#udf-stdin}
-Create `test_function_sum_json` with named arguments and format [JSONEachRow](/reference/formats/JSON/JSONEachRow) using either XML or YAML configuration.
+Create `test_function_sum_json` with named arguments and format [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) using either XML or YAML configuration.
@@ -435,7 +435,7 @@ If a function in a query is performed on the requestor server, but you need to p
## SQL User Defined Functions {#sql-user-defined-functions}
-Custom functions from lambda expressions can be created using the [CREATE FUNCTION](/reference/statements/create/function) statement. To delete these functions use the [DROP FUNCTION](/reference/statements/drop#drop-function) statement.
+Custom functions from lambda expressions can be created using the [CREATE FUNCTION](/core/reference/statements/create/function) statement. To delete these functions use the [DROP FUNCTION](/core/reference/statements/drop#drop-function) statement.
## WebAssembly User Defined Functions {#webassembly-user-defined-functions}
@@ -480,7 +480,7 @@ SELECT my_function(10, 20);
### More Information
-Refer to the documentation on [WebAssembly User Defined Functions](/reference/functions/regular-functions/wasm_udf) for more details.
+Refer to the documentation on [WebAssembly User Defined Functions](/core/reference/functions/regular-functions/wasm_udf) for more details.
## Related Content {#related-content}
- [User-defined functions in ClickHouse Cloud](https://clickhouse.com/blog/user-defined-functions-clickhouse-udfs)
diff --git a/reference/functions/regular-functions/ulid-functions.mdx b/core/reference/functions/regular-functions/ulid-functions.mdx
similarity index 81%
rename from reference/functions/regular-functions/ulid-functions.mdx
rename to core/reference/functions/regular-functions/ulid-functions.mdx
index c7313bdd..90f015df 100644
--- a/reference/functions/regular-functions/ulid-functions.mdx
+++ b/core/reference/functions/regular-functions/ulid-functions.mdx
@@ -32,12 +32,12 @@ ULIDStringToDateTime(ulid[, timezone])
**Arguments**
-- `ulid` — Input ULID. [`String`](/reference/data-types/string) or [`FixedString(26)`](/reference/data-types/fixedstring)
-- `timezone` — Optional. Timezone name for the returned value. [`String`](/reference/data-types/string)
+- `ulid` — Input ULID. [`String`](/core/reference/data-types/string) or [`FixedString(26)`](/core/reference/data-types/fixedstring)
+- `timezone` — Optional. Timezone name for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Timestamp with milliseconds precision. [`DateTime64(3)`](/reference/data-types/datetime64)
+Timestamp with milliseconds precision. [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -68,11 +68,11 @@ generateULID([x])
**Arguments**
-- `x` — Optional. An expression resulting in any of the supported data types. The resulting value is discarded, but the expression itself if used for bypassing [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in one query. [`Any`](/reference/data-types)
+- `x` — Optional. An expression resulting in any of the supported data types. The resulting value is discarded, but the expression itself if used for bypassing [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in one query. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a ULID. [`FixedString(26)`](/reference/data-types/fixedstring)
+Returns a ULID. [`FixedString(26)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -104,5 +104,5 @@ SELECT generateULID(1), generateULID(2)
## See also {#see-also}
-- [UUID](/reference/functions/regular-functions/uuid-functions)
+- [UUID](/core/reference/functions/regular-functions/uuid-functions)
diff --git a/reference/functions/regular-functions/uniqtheta-functions.mdx b/core/reference/functions/regular-functions/uniqtheta-functions.mdx
similarity index 97%
rename from reference/functions/regular-functions/uniqtheta-functions.mdx
rename to core/reference/functions/regular-functions/uniqtheta-functions.mdx
index ce76d3e9..0aba3c5a 100644
--- a/reference/functions/regular-functions/uniqtheta-functions.mdx
+++ b/core/reference/functions/regular-functions/uniqtheta-functions.mdx
@@ -93,7 +93,7 @@ FROM
**See Also**
-- [uniqThetaSketch](/reference/functions/aggregate-functions/reference/uniqthetasketch)
+- [uniqThetaSketch](/core/reference/functions/aggregate-functions/reference/uniqthetasketch)
{/*
The inner content of the tags below are replaced at doc framework build time with
diff --git a/reference/functions/regular-functions/url-functions.mdx b/core/reference/functions/regular-functions/url-functions.mdx
similarity index 87%
rename from reference/functions/regular-functions/url-functions.mdx
rename to core/reference/functions/regular-functions/url-functions.mdx
index ea3b2d85..325b8cfd 100644
--- a/reference/functions/regular-functions/url-functions.mdx
+++ b/core/reference/functions/regular-functions/url-functions.mdx
@@ -67,11 +67,11 @@ URLHierarchy(url)
**Arguments**
-- `url` — The URL to process. [`String`](/reference/data-types/string)
+- `url` — The URL to process. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of progressively longer URLs forming a hierarchy. [`Array(String)`](/reference/data-types/array)
+Returns an array of progressively longer URLs forming a hierarchy. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -100,11 +100,11 @@ URLPathHierarchy(url)
**Arguments**
-- `url` — The URL to process. [`String`](/reference/data-types/string)
+- `url` — The URL to process. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of progressively longer URL path components forming a hierarchy. [`Array(String)`](/reference/data-types/array)
+Returns an array of progressively longer URL path components forming a hierarchy. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -133,11 +133,11 @@ cutFragment(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the URL with fragment identifier removed. [`String`](/reference/data-types/string)
+Returns the URL with fragment identifier removed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -168,11 +168,11 @@ cutQueryString(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the URL with query string removed. [`String`](/reference/data-types/string)
+Returns the URL with query string removed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -203,11 +203,11 @@ cutQueryStringAndFragment(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the URL with query string and fragment identifier removed. [`String`](/reference/data-types/string)
+Returns the URL with query string and fragment identifier removed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -227,7 +227,7 @@ SELECT cutQueryStringAndFragment('http://example.com/path?query=value¶m=123#
Introduced in: v1.1.0
-Returns the part of the domain that includes top-level subdomains up to the [first significant subdomain](/reference/functions/regular-functions/url-functions#firstSignificantSubdomain).
+Returns the part of the domain that includes top-level subdomains up to the [first significant subdomain](/core/reference/functions/regular-functions/url-functions#firstSignificantSubdomain).
@@ -239,11 +239,11 @@ cutToFirstSignificantSubdomain(url)
**Arguments**
-- `url` — URL or domain string to process. [`String`](/reference/data-types/string)
+- `url` — URL or domain string to process. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the part of the domain that includes top-level subdomains up to the first significant subdomain if possible, otherwise returns an empty string. [`String`](/reference/data-types/string)
+Returns the part of the domain that includes top-level subdomains up to the first significant subdomain if possible, otherwise returns an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -288,12 +288,12 @@ cutToFirstSignificantSubdomainCustom(url, tld_list_name)
**Arguments**
-- `url` — URL or domain string to process. [`String`](/reference/data-types/string)
-- `tld_list_name` — Name of the custom TLD list configured in ClickHouse. [`const String`](/reference/data-types/string)
+- `url` — URL or domain string to process. [`String`](/core/reference/data-types/string)
+- `tld_list_name` — Name of the custom TLD list configured in ClickHouse. [`const String`](/core/reference/data-types/string)
**Returned value**
-Returns the part of the domain that includes top-level subdomains up to the first significant subdomain. [`String`](/reference/data-types/string)
+Returns the part of the domain that includes top-level subdomains up to the first significant subdomain. [`String`](/core/reference/data-types/string)
**Examples**
@@ -340,7 +340,7 @@ cutToFirstSignificantSubdomainCustomRFC(url, tld_list_name)
**Returned value**
-Returns the part of the domain that includes top-level subdomains up to the first significant subdomain. [`String`](/reference/data-types/string)
+Returns the part of the domain that includes top-level subdomains up to the first significant subdomain. [`String`](/core/reference/data-types/string)
**Examples**
@@ -385,7 +385,7 @@ cutToFirstSignificantSubdomainCustomWithWWW(url, tld_list_name)
**Returned value**
-Part of the domain that includes top-level subdomains up to the first significant subdomain without stripping 'www'. [`String`](/reference/data-types/string)
+Part of the domain that includes top-level subdomains up to the first significant subdomain without stripping 'www'. [`String`](/core/reference/data-types/string)
**Examples**
@@ -433,7 +433,7 @@ cutToFirstSignificantSubdomainCustomWithWWWRFC(url, tld_list_name)
**Returned value**
-Returns the part of the domain that includes top-level subdomains up to the first significant subdomain without stripping `www`. [`String`](/reference/data-types/string)
+Returns the part of the domain that includes top-level subdomains up to the first significant subdomain without stripping `www`. [`String`](/core/reference/data-types/string)
**Examples**
@@ -451,7 +451,7 @@ www.example.custom
Introduced in: v22.10.0
-Returns the part of the domain that includes top-level subdomains up to the ["first significant subdomain"](/reference/functions/regular-functions/url-functions#firstSignificantSubdomain). Similar to [`cutToFirstSignificantSubdomain`](#cutToFirstSignificantSubdomain) but conforms to [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986).
+Returns the part of the domain that includes top-level subdomains up to the ["first significant subdomain"](/core/reference/functions/regular-functions/url-functions#firstSignificantSubdomain). Similar to [`cutToFirstSignificantSubdomain`](#cutToFirstSignificantSubdomain) but conforms to [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986).
**Syntax**
@@ -462,11 +462,11 @@ cutToFirstSignificantSubdomainRFC(url)
**Arguments**
-- `url` — URL or domain string to process according to RFC 3986. [`String`](/reference/data-types/string)
+- `url` — URL or domain string to process according to RFC 3986. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the part of the domain that includes top-level subdomains up to the first significant subdomain if possible, otherwise returns an empty string. [`String`](/reference/data-types/string)
+Returns the part of the domain that includes top-level subdomains up to the first significant subdomain if possible, otherwise returns an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -501,11 +501,11 @@ cutToFirstSignificantSubdomainWithWWW(url)
**Arguments**
-- `url` — URL or domain string to process. [`String`](/reference/data-types/string)
+- `url` — URL or domain string to process. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the part of the domain that includes top-level subdomains up to the first significant subdomain (with www) if possible, otherwise returns an empty string. [`String`](/reference/data-types/string)
+Returns the part of the domain that includes top-level subdomains up to the first significant subdomain (with www) if possible, otherwise returns an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -543,7 +543,7 @@ cutToFirstSignificantSubdomainWithWWWRFC(url)
**Returned value**
-Returns the part of the domain that includes top-level subdomains up to the first significant subdomain (with 'www') if possible, otherwise returns an empty string [`String`](/reference/data-types/string)
+Returns the part of the domain that includes top-level subdomains up to the first significant subdomain (with 'www') if possible, otherwise returns an empty string [`String`](/core/reference/data-types/string)
**Examples**
@@ -577,12 +577,12 @@ cutURLParameter(url, name)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
-- `name` — Name of URL parameter. [`String`](/reference/data-types/string) or [`Array(String)`](/reference/data-types/array)
+- `url` — URL. [`String`](/core/reference/data-types/string)
+- `name` — Name of URL parameter. [`String`](/core/reference/data-types/string) or [`Array(String)`](/core/reference/data-types/array)
**Returned value**
-URL with `name` URL parameter removed. [`String`](/reference/data-types/string)
+URL with `name` URL parameter removed. [`String`](/core/reference/data-types/string)
**Examples**
@@ -615,11 +615,11 @@ cutWWW(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the URL with leading `www.` removed from the domain. [`String`](/reference/data-types/string)
+Returns the URL with leading `www.` removed from the domain. [`String`](/core/reference/data-types/string)
**Examples**
@@ -650,11 +650,11 @@ decodeURLComponent(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the decoded URL. [`String`](/reference/data-types/string)
+Returns the decoded URL. [`String`](/core/reference/data-types/string)
**Examples**
@@ -685,11 +685,11 @@ decodeURLFormComponent(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the decoded URL. [`String`](/reference/data-types/string)
+Returns the decoded URL. [`String`](/core/reference/data-types/string)
**Examples**
@@ -722,11 +722,11 @@ domain(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the host name if the input string can be parsed as a URL, otherwise an empty string. [`String`](/reference/data-types/string)
+Returns the host name if the input string can be parsed as a URL, otherwise an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -758,11 +758,11 @@ domainRFC(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the host name if the input string can be parsed as a URL, otherwise an empty string. [`String`](/reference/data-types/string)
+Returns the host name if the input string can be parsed as a URL, otherwise an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -795,11 +795,11 @@ domainWithoutWWW(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the domain name if the input string can be parsed as a URL (without leading `www.`), otherwise an empty string. [`String`](/reference/data-types/string)
+Returns the domain name if the input string can be parsed as a URL (without leading `www.`), otherwise an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -830,11 +830,11 @@ domainWithoutWWWRFC(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the domain name if the input string can be parsed as a URL (without leading `www.`), otherwise an empty string. [`String`](/reference/data-types/string)
+Returns the domain name if the input string can be parsed as a URL (without leading `www.`), otherwise an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -867,11 +867,11 @@ encodeURLComponent(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the encoded URL. [`String`](/reference/data-types/string)
+Returns the encoded URL. [`String`](/core/reference/data-types/string)
**Examples**
@@ -902,11 +902,11 @@ encodeURLFormComponent(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the encoded URL. [`String`](/reference/data-types/string)
+Returns the encoded URL. [`String`](/core/reference/data-types/string)
**Examples**
@@ -939,12 +939,12 @@ extractURLParameter(url, name)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
-- `name` — Parameter name. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
+- `name` — Parameter name. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the value of the URL parameter with the specified name. [`String`](/reference/data-types/string)
+Returns the value of the URL parameter with the specified name. [`String`](/core/reference/data-types/string)
**Examples**
@@ -976,11 +976,11 @@ extractURLParameterNames(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of name strings corresponding to the names of URL parameters. [`Array(String)`](/reference/data-types/array)
+Returns an array of name strings corresponding to the names of URL parameters. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1012,11 +1012,11 @@ extractURLParameters(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns an array of `name=value` strings corresponding to the URL parameters. [`Array(String)`](/reference/data-types/array)
+Returns an array of `name=value` strings corresponding to the URL parameters. [`Array(String)`](/core/reference/data-types/array)
**Examples**
@@ -1085,12 +1085,12 @@ firstSignificantSubdomainCustom(url, tld_list_name)
**Arguments**
-- `url` — The URL to extract the subdomain from. [`String`](/reference/data-types/string)
-- `tld_list_name` — Name of the custom TLD list from the configuration. [`String`](/reference/data-types/string)
+- `url` — The URL to extract the subdomain from. [`String`](/core/reference/data-types/string)
+- `tld_list_name` — Name of the custom TLD list from the configuration. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the first significant subdomain. [`String`](/reference/data-types/string)
+Returns the first significant subdomain. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1119,12 +1119,12 @@ firstSignificantSubdomainCustomRFC(url, tld_list_name)
**Arguments**
-- `url` — The URL to extract the subdomain from. [`String`](/reference/data-types/string)
-- `tld_list_name` — Name of the custom TLD list from the configuration. [`String`](/reference/data-types/string)
+- `url` — The URL to extract the subdomain from. [`String`](/core/reference/data-types/string)
+- `tld_list_name` — Name of the custom TLD list from the configuration. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the first significant subdomain. [`String`](/reference/data-types/string)
+Returns the first significant subdomain. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1173,11 +1173,11 @@ fragment(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the fragment identifier without the initial hash symbol. [`String`](/reference/data-types/string)
+Returns the fragment identifier without the initial hash symbol. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1208,11 +1208,11 @@ netloc(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns `username:password@host:port` from a given URL. [`String`](/reference/data-types/string)
+Returns `username:password@host:port` from a given URL. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1243,11 +1243,11 @@ path(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the path of the URL without query string. [`String`](/reference/data-types/string)
+Returns the path of the URL without query string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1278,11 +1278,11 @@ pathFull(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the path of the URL including query string and fragment. [`String`](/reference/data-types/string)
+Returns the path of the URL including query string and fragment. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1313,12 +1313,12 @@ port(url[, default_port])
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
-- `default_port` — Optional. The default port number to be returned. `0` by default. [`UInt16`](/reference/data-types/int-uint)
+- `url` — URL. [`String`](/core/reference/data-types/string)
+- `default_port` — Optional. The default port number to be returned. `0` by default. [`UInt16`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the port of the URL, or the default port if there is no port in the URL or in case of a validation error. [`UInt16`](/reference/data-types/int-uint)
+Returns the port of the URL, or the default port if there is no port in the URL or in case of a validation error. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -1350,12 +1350,12 @@ portRFC(url[, default_port])
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
-- `default_port` — Optional. The default port number to be returned. `0` by default. [`UInt16`](/reference/data-types/int-uint)
+- `url` — URL. [`String`](/core/reference/data-types/string)
+- `default_port` — Optional. The default port number to be returned. `0` by default. [`UInt16`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the port or the default port if there is no port in the URL or in case of a validation error. [`UInt16`](/reference/data-types/int-uint)
+Returns the port or the default port if there is no port in the URL or in case of a validation error. [`UInt16`](/core/reference/data-types/int-uint)
**Examples**
@@ -1388,11 +1388,11 @@ protocol(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the protocol of the URL, or an empty string if it cannot be determined. [`String`](/reference/data-types/string)
+Returns the protocol of the URL, or an empty string if it cannot be determined. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1423,11 +1423,11 @@ queryString(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the query string of the URL without the initial question mark and fragment. [`String`](/reference/data-types/string)
+Returns the query string of the URL without the initial question mark and fragment. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1458,11 +1458,11 @@ queryStringAndFragment(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the query string and fragment identifier of the URL. [`String`](/reference/data-types/string)
+Returns the query string and fragment identifier of the URL. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1504,11 +1504,11 @@ topLevelDomain(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the domain name if the input string can be parsed as a URL. Otherwise, an empty string. [`String`](/reference/data-types/string)
+Returns the domain name if the input string can be parsed as a URL. Otherwise, an empty string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -1540,11 +1540,11 @@ topLevelDomainRFC(url)
**Arguments**
-- `url` — URL. [`String`](/reference/data-types/string)
+- `url` — URL. [`String`](/core/reference/data-types/string)
**Returned value**
-Domain name if the input string can be parsed as a URL. Otherwise, an empty string. [`String`](/reference/data-types/string)
+Domain name if the input string can be parsed as a URL. Otherwise, an empty string. [`String`](/core/reference/data-types/string)
**Examples**
diff --git a/reference/functions/regular-functions/uuid-functions.mdx b/core/reference/functions/regular-functions/uuid-functions.mdx
similarity index 78%
rename from reference/functions/regular-functions/uuid-functions.mdx
rename to core/reference/functions/regular-functions/uuid-functions.mdx
index 5e5f45f5..b8099a90 100644
--- a/reference/functions/regular-functions/uuid-functions.mdx
+++ b/core/reference/functions/regular-functions/uuid-functions.mdx
@@ -70,12 +70,12 @@ UUIDNumToString(binary[, variant])
**Arguments**
-- `binary` — Binary representation of a UUID. [`FixedString(16)`](/reference/data-types/fixedstring)
-- `variant` — Variant as specified by [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.1). 1 = `Big-endian` (default), 2 = `Microsoft`. [`(U)Int*`](/reference/data-types/int-uint)
+- `binary` — Binary representation of a UUID. [`FixedString(16)`](/core/reference/data-types/fixedstring)
+- `variant` — Variant as specified by [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.1). 1 = `Big-endian` (default), 2 = `Microsoft`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the UUID as a string. [`String`](/reference/data-types/string)
+Returns the UUID as a string. [`String`](/core/reference/data-types/string)
**Examples**
@@ -111,7 +111,7 @@ SELECT
Introduced in: v1.1.0
-Accepts a string containing 36 characters in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`, and returns a [FixedString(16)](/reference/data-types/fixedstring) as its binary representation, with its format optionally specified by `variant` (`Big-endian` by default).
+Accepts a string containing 36 characters in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`, and returns a [FixedString(16)](/core/reference/data-types/fixedstring) as its binary representation, with its format optionally specified by `variant` (`Big-endian` by default).
**Syntax**
@@ -122,12 +122,12 @@ UUIDStringToNum(string[, variant = 1])
**Arguments**
-- `string` — A string or fixed-string of 36 characters) [`String`](/reference/data-types/string) or [`FixedString(36)`](/reference/data-types/fixedstring)
-- `variant` — Variant as specified by [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.1). 1 = `Big-endian` (default), 2 = `Microsoft`. [`(U)Int*`](/reference/data-types/int-uint)
+- `string` — A string or fixed-string of 36 characters) [`String`](/core/reference/data-types/string) or [`FixedString(36)`](/core/reference/data-types/fixedstring)
+- `variant` — Variant as specified by [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.1). 1 = `Big-endian` (default), 2 = `Microsoft`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns the binary representation of `string`. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns the binary representation of `string`. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -163,7 +163,7 @@ SELECT
Introduced in: v24.5.0
-Accepts a [UUID](/reference/data-types/uuid) and returns its binary representation as a [FixedString(16)](/reference/data-types/fixedstring), with its format optionally specified by `variant` (`Big-endian` by default).
+Accepts a [UUID](/core/reference/data-types/uuid) and returns its binary representation as a [FixedString(16)](/core/reference/data-types/fixedstring), with its format optionally specified by `variant` (`Big-endian` by default).
This function replaces calls to two separate functions `UUIDStringToNum(toString(uuid))` so no intermediate conversion from UUID to string is required to extract bytes from a UUID.
@@ -175,12 +175,12 @@ UUIDToNum(uuid[, variant = 1])
**Arguments**
-- `uuid` — UUID. [`String`](/reference/data-types/string) or [`FixedString`](/reference/data-types/fixedstring)
-- `variant` — Variant as specified by [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.1). 1 = `Big-endian` (default), 2 = `Microsoft`. [`(U)Int*`](/reference/data-types/int-uint)
+- `uuid` — UUID. [`String`](/core/reference/data-types/string) or [`FixedString`](/core/reference/data-types/fixedstring)
+- `variant` — Variant as specified by [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122#section-4.1.1). 1 = `Big-endian` (default), 2 = `Microsoft`. [`(U)Int*`](/core/reference/data-types/int-uint)
**Returned value**
-Returns a binary representation of the UUID. [`FixedString(16)`](/reference/data-types/fixedstring)
+Returns a binary representation of the UUID. [`FixedString(16)`](/core/reference/data-types/fixedstring)
**Examples**
@@ -227,12 +227,12 @@ UUIDv7ToDateTime(uuid[, timezone])
**Arguments**
-- `uuid` — A UUID version 7. [`String`](/reference/data-types/string)
-- `timezone` — Optional. [Timezone name](/reference/settings/server-settings/settings#timezone) for the returned value. [`String`](/reference/data-types/string)
+- `uuid` — A UUID version 7. [`String`](/core/reference/data-types/string)
+- `timezone` — Optional. [Timezone name](/core/reference/settings/server-settings/settings#timezone) for the returned value. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a timestamp with milliseconds precision. If the UUID is not a valid version 7 UUID, it returns `1970-01-01 00:00:00.000`. [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns a timestamp with milliseconds precision. If the UUID is not a valid version 7 UUID, it returns `1970-01-01 00:00:00.000`. [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -267,13 +267,13 @@ Introduced in: v21.10.0
-This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
+This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/core/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
The function will be removed at some point in future.
Please use function [dateTime64ToSnowflakeID](#dateTime64ToSnowflakeID) instead.
-Converts a [DateTime64](/reference/data-types/datetime64) to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
+Converts a [DateTime64](/core/reference/data-types/datetime64) to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
**Syntax**
@@ -284,11 +284,11 @@ dateTime64ToSnowflake(value)
**Arguments**
-- `value` — Date with time. [`DateTime64`](/reference/data-types/datetime64)
+- `value` — Date with time. [`DateTime64`](/core/reference/data-types/datetime64)
**Returned value**
-Returns the input value converted as the first Snowflake ID at that time. [`Int64`](/reference/data-types/int-uint)
+Returns the input value converted as the first Snowflake ID at that time. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -308,7 +308,7 @@ WITH toDateTime64('2021-08-15 18:57:56.492', 3, 'Asia/Shanghai') AS dt64 SELECT
Introduced in: v24.6.0
-Converts a [DateTime64](/reference/data-types/datetime64) value to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
+Converts a [DateTime64](/core/reference/data-types/datetime64) value to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
**Syntax**
@@ -318,12 +318,12 @@ dateTime64ToSnowflakeID(value[, epoch])
**Arguments**
-- `value` — Date with time. [`DateTime64`](/reference/data-types/datetime64)
-- `epoch` — Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/reference/data-types/int-uint)
+- `value` — Date with time. [`DateTime64`](/core/reference/data-types/datetime64)
+- `epoch` — Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Input value converted to [`UInt64`](/reference/data-types/int-uint)
+Input value converted to [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -344,13 +344,13 @@ Introduced in: v21.10.0
-This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
+This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/core/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
The function will be removed at some point in future.
Please use function [dateTimeToSnowflakeID](#dateTimeToSnowflakeID) instead.
-Converts a [DateTime](/reference/data-types/datetime) value to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
+Converts a [DateTime](/core/reference/data-types/datetime) value to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
**Syntax**
@@ -361,11 +361,11 @@ dateTimeToSnowflake(value)
**Arguments**
-- `value` — Date with time. [`DateTime`](/reference/data-types/datetime)
+- `value` — Date with time. [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns the input value as the first Snowflake ID at that time. [`Int64`](/reference/data-types/int-uint)
+Returns the input value as the first Snowflake ID at that time. [`Int64`](/core/reference/data-types/int-uint)
**Examples**
@@ -385,7 +385,7 @@ WITH toDateTime('2021-08-15 18:57:56', 'Asia/Shanghai') AS dt SELECT dateTimeToS
Introduced in: v24.6.0
-Converts a [DateTime](/reference/data-types/datetime) value to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
+Converts a [DateTime](/core/reference/data-types/datetime) value to the first [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) at the giving time.
**Syntax**
@@ -395,12 +395,12 @@ dateTimeToSnowflakeID(value[, epoch])
**Arguments**
-- `value` — Date with time. [`DateTime`](/reference/data-types/datetime)
-- `epoch` — Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/reference/data-types/int-uint)
+- `value` — Date with time. [`DateTime`](/core/reference/data-types/datetime)
+- `epoch` — Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/core/reference/data-types/int-uint)
**Returned value**
-Input value converted to [`UInt64`](/reference/data-types/int-uint)
+Input value converted to [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -418,7 +418,7 @@ SELECT dateTimeToSnowflakeID(toDateTime('2021-08-15 18:57:56', 'Asia/Shanghai'))
Introduced in: v25.8.0
-Converts a [DateTime](/reference/data-types/datetime) value to a [UUIDv7](https://en.wikipedia.org/wiki/UUID#Version_7) at the given time.
+Converts a [DateTime](/core/reference/data-types/datetime) value to a [UUIDv7](https://en.wikipedia.org/wiki/UUID#Version_7) at the given time.
See section ["UUIDv7 generation"](#uuidv7-generation) for details on UUID structure, counter management, and concurrency guarantees.
@@ -435,11 +435,11 @@ dateTimeToUUIDv7(value)
**Arguments**
-- `value` — Date with time. [`DateTime`](/reference/data-types/datetime)
+- `value` — Date with time. [`DateTime`](/core/reference/data-types/datetime)
**Returned value**
-Returns a UUIDv7. [`UUID`](/reference/data-types/uuid)
+Returns a UUIDv7. [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -490,11 +490,11 @@ generateSnowflakeID([expr, [machine_id]])
**Arguments**
-- `expr` — An arbitrary [expression](/reference/syntax#expressions) used to bypass [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in a query. The value of the expression has no effect on the returned Snowflake ID. Optional. - `machine_id` — A machine ID, the lowest 10 bits are used. [Int64](/reference/data-types/int-uint). Optional.
+- `expr` — An arbitrary [expression](/core/reference/syntax#expressions) used to bypass [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in a query. The value of the expression has no effect on the returned Snowflake ID. Optional. - `machine_id` — A machine ID, the lowest 10 bits are used. [Int64](/core/reference/data-types/int-uint). Optional.
**Returned value**
-Returns the Snowflake ID. [`UInt64`](/reference/data-types/int-uint)
+Returns the Snowflake ID. [`UInt64`](/core/reference/data-types/int-uint)
**Examples**
@@ -544,7 +544,7 @@ SELECT generateSnowflakeID('expr', 1);
Introduced in: v1.1.0
-Generates a [version 4](https://tools.ietf.org/html/rfc4122#section-4.4) [UUID](/reference/data-types/uuid).
+Generates a [version 4](https://tools.ietf.org/html/rfc4122#section-4.4) [UUID](/core/reference/data-types/uuid).
**Syntax**
@@ -554,11 +554,11 @@ generateUUIDv4([expr])
**Arguments**
-- `expr` — Optional. An arbitrary expression used to bypass [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in a query. The value of the expression has no effect on the returned UUID.
+- `expr` — Optional. An arbitrary expression used to bypass [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in a query. The value of the expression has no effect on the returned UUID.
**Returned value**
-Returns a UUIDv4. [`UUID`](/reference/data-types/uuid)
+Returns a UUIDv4. [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -592,7 +592,7 @@ SELECT generateUUIDv4(1), generateUUIDv4(1);
Introduced in: v24.5.0
-Generates a [version 7](https://datatracker.ietf.org/doc/html/draft-peabody-dispatch-new-uuid-format-04) [UUID](/reference/data-types/uuid).
+Generates a [version 7](https://datatracker.ietf.org/doc/html/draft-peabody-dispatch-new-uuid-format-04) [UUID](/core/reference/data-types/uuid).
See section ["UUIDv7 generation"](#uuidv7-generation) for details on UUID structure, counter management, and concurrency guarantees.
@@ -609,11 +609,11 @@ generateUUIDv7([expr])
**Arguments**
-- `expr` — Optional. An arbitrary expression used to bypass [common subexpression elimination](/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in a query. The value of the expression has no effect on the returned UUID. [`Any`](/reference/data-types)
+- `expr` — Optional. An arbitrary expression used to bypass [common subexpression elimination](/core/reference/functions/regular-functions/overview#common-subexpression-elimination) if the function is called multiple times in a query. The value of the expression has no effect on the returned UUID. [`Any`](/core/reference/data-types)
**Returned value**
-Returns a UUIDv7. [`UUID`](/reference/data-types/uuid)
+Returns a UUIDv7. [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -647,7 +647,7 @@ SELECT generateUUIDv7(1), generateUUIDv7(1);
Introduced in: v24.6.0
-Returns the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) as a value of type [DateTime](/reference/data-types/datetime).
+Returns the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) as a value of type [DateTime](/core/reference/data-types/datetime).
**Syntax**
@@ -658,13 +658,13 @@ snowflakeIDToDateTime(value[, epoch[, time_zone]])
**Arguments**
-- `value` — Snowflake ID. [`UInt64`](/reference/data-types/int-uint)
-- `epoch` — Optional. Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/reference/data-types/int-uint)
-- `time_zone` — Optional. [Timezone](/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `value` — Snowflake ID. [`UInt64`](/core/reference/data-types/int-uint)
+- `epoch` — Optional. Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. [Timezone](/core/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the timestamp component of `value`. [`DateTime`](/reference/data-types/datetime)
+Returns the timestamp component of `value`. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -684,7 +684,7 @@ SELECT snowflakeIDToDateTime(7204436857747984384) AS res
Introduced in: v24.6.0
-Returns the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) as a value of type [DateTime64](/reference/data-types/datetime64).
+Returns the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) as a value of type [DateTime64](/core/reference/data-types/datetime64).
**Syntax**
@@ -695,13 +695,13 @@ snowflakeIDToDateTime64(value[, epoch[, time_zone]])
**Arguments**
-- `value` — Snowflake ID. [`UInt64`](/reference/data-types/int-uint)
-- `epoch` — Optional. Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/reference/data-types/int-uint)
-- `time_zone` — Optional. [Timezone](/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `value` — Snowflake ID. [`UInt64`](/core/reference/data-types/int-uint)
+- `epoch` — Optional. Epoch of the Snowflake ID in milliseconds since 1970-01-01. Defaults to 0 (1970-01-01). For the Twitter/X epoch (2015-01-01), provide 1288834974657. [`UInt*`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. [Timezone](/core/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the timestamp component of `value` as a `DateTime64` with scale = 3, i.e. millisecond precision. [`DateTime64`](/reference/data-types/datetime64)
+Returns the timestamp component of `value` as a `DateTime64` with scale = 3, i.e. millisecond precision. [`DateTime64`](/core/reference/data-types/datetime64)
**Examples**
@@ -724,13 +724,13 @@ Introduced in: v21.10.0
-This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
+This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/core/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
The function will be removed at some point in future.
Please use function [`snowflakeIDToDateTime`](#snowflakeIDToDateTime) instead.
-Extracts the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) in [DateTime](/reference/data-types/datetime) format.
+Extracts the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) in [DateTime](/core/reference/data-types/datetime) format.
**Syntax**
@@ -741,12 +741,12 @@ snowflakeToDateTime(value[, time_zone])
**Arguments**
-- `value` — Snowflake ID. [`Int64`](/reference/data-types/int-uint)
-- `time_zone` — Optional. [Timezone](/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `value` — Snowflake ID. [`Int64`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. [Timezone](/core/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the timestamp component of `value`. [`DateTime`](/reference/data-types/datetime)
+Returns the timestamp component of `value`. [`DateTime`](/core/reference/data-types/datetime)
**Examples**
@@ -769,13 +769,13 @@ Introduced in: v21.10.0
-This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
+This function is deprecated and can only be used if setting [`allow_deprecated_snowflake_conversion_functions`](/core/reference/settings/session-settings#allow_deprecated_snowflake_conversion_functions) is enabled.
The function will be removed at some point in future.
Please use function [`snowflakeIDToDateTime64`](#snowflakeIDToDateTime64) instead.
-Extracts the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) in [DateTime64](/reference/data-types/datetime64) format.
+Extracts the timestamp component of a [Snowflake ID](https://en.wikipedia.org/wiki/Snowflake_ID) in [DateTime64](/core/reference/data-types/datetime64) format.
@@ -787,12 +787,12 @@ snowflakeToDateTime64(value[, time_zone])
**Arguments**
-- `value` — Snowflake ID. [`Int64`](/reference/data-types/int-uint)
-- `time_zone` — Optional. [Timezone](/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/reference/data-types/string)
+- `value` — Snowflake ID. [`Int64`](/core/reference/data-types/int-uint)
+- `time_zone` — Optional. [Timezone](/core/reference/settings/server-settings/settings#timezone). The function parses `time_string` according to the timezone. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns the timestamp component of `value`. [`DateTime64(3)`](/reference/data-types/datetime64)
+Returns the timestamp component of `value`. [`DateTime64(3)`](/core/reference/data-types/datetime64)
**Examples**
@@ -830,7 +830,7 @@ toUUIDOrDefault(string, default)
**Returned value**
-Returns the converted UUID if successful, or the default UUID if conversion fails. [`UUID`](/reference/data-types/uuid)
+Returns the converted UUID if successful, or the default UUID if conversion fails. [`UUID`](/core/reference/data-types/uuid)
**Examples**
@@ -864,7 +864,7 @@ Introduced in: v20.12.0
Converts an input value to a value of type `UUID` but returns `NULL` in case of an error.
-Like [`toUUID`](/reference/functions/regular-functions/type-conversion-functions#toUUID) but returns `NULL` instead of throwing an exception on conversion errors.
+Like [`toUUID`](/core/reference/functions/regular-functions/type-conversion-functions#toUUID) but returns `NULL` instead of throwing an exception on conversion errors.
Supported arguments:
- String representations of UUID in standard format (8-4-4-4-12 hexadecimal digits).
@@ -884,11 +884,11 @@ toUUIDOrNull(x)
**Arguments**
-- `x` — A string representation of a UUID. [`String`](/reference/data-types/string)
+- `x` — A string representation of a UUID. [`String`](/core/reference/data-types/string)
**Returned value**
-Returns a UUID value if successful, otherwise `NULL`. [`UUID`](/reference/data-types/uuid) or [`NULL`](/reference/syntax#null)
+Returns a UUID value if successful, otherwise `NULL`. [`UUID`](/core/reference/data-types/uuid) or [`NULL`](/core/reference/syntax#null)
**Examples**
diff --git a/reference/functions/regular-functions/wasm_udf.mdx b/core/reference/functions/regular-functions/wasm_udf.mdx
similarity index 99%
rename from reference/functions/regular-functions/wasm_udf.mdx
rename to core/reference/functions/regular-functions/wasm_udf.mdx
index 3dcc940f..2c9b8ea7 100644
--- a/reference/functions/regular-functions/wasm_udf.mdx
+++ b/core/reference/functions/regular-functions/wasm_udf.mdx
@@ -315,4 +315,4 @@ SELECT my_wasm_udf(column) FROM table;
## See also
-- [ClickHouse UDF overview](/reference/functions/regular-functions/udf)
+- [ClickHouse UDF overview](/core/reference/functions/regular-functions/udf)
diff --git a/reference/functions/table-functions/arrowflight.mdx b/core/reference/functions/table-functions/arrowflight.mdx
similarity index 83%
rename from reference/functions/table-functions/arrowflight.mdx
rename to core/reference/functions/table-functions/arrowflight.mdx
index dbbbce49..04a126b3 100644
--- a/reference/functions/table-functions/arrowflight.mdx
+++ b/core/reference/functions/table-functions/arrowflight.mdx
@@ -6,7 +6,7 @@ title: 'arrowFlight'
doc_type: 'reference'
---
-Allows to perform queries on data exposed via an [Apache Arrow Flight](/integrations/connectors/data-integrations/drivers-and-interfaces/arrowflight) server.
+Allows to perform queries on data exposed via an [Apache Arrow Flight](/core/concepts/features/interfaces/arrowflight) server.
**Syntax**
@@ -16,8 +16,8 @@ arrowFlight('host:port', 'dataset_name' [, 'username', 'password'])
**Arguments**
-* `host:port` — Address of the Arrow Flight server. [String](/reference/data-types/string).
-* `dataset_name` — Name of the dataset or descriptor available on the Arrow Flight server. [String](/reference/data-types/string).
+* `host:port` — Address of the Arrow Flight server. [String](/core/reference/data-types/string).
+* `dataset_name` — Name of the dataset or descriptor available on the Arrow Flight server. [String](/core/reference/data-types/string).
* `username` - Username to use with basic HTTP style authentication.
* `password` - Password to use with basic HTTP style authentication.
If `username` and `password` are not specified, it means that authentication is not used
@@ -43,5 +43,5 @@ SELECT * FROM arrowFlight('127.0.0.1:9005', 'sample_dataset') ORDER BY id;
**See Also**
-* [Arrow Flight](/reference/engines/table-engines/integrations/arrowflight) table engine
+* [Arrow Flight](/core/reference/engines/table-engines/integrations/arrowflight) table engine
* [Apache Arrow Flight SQL](https://arrow.apache.org/docs/format/FlightSql.html)
diff --git a/reference/functions/table-functions/azureBlobStorage.mdx b/core/reference/functions/table-functions/azureBlobStorage.mdx
similarity index 96%
rename from reference/functions/table-functions/azureBlobStorage.mdx
rename to core/reference/functions/table-functions/azureBlobStorage.mdx
index 1b7a182f..22868ee6 100644
--- a/reference/functions/table-functions/azureBlobStorage.mdx
+++ b/core/reference/functions/table-functions/azureBlobStorage.mdx
@@ -13,7 +13,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
# azureBlobStorage Table Function
-Provides a table-like interface to select/insert files in [Azure Blob Storage](https://azure.microsoft.com/en-us/products/storage/blobs). This table function is similar to the [s3 function](/reference/functions/table-functions/s3).
+Provides a table-like interface to select/insert files in [Azure Blob Storage](https://azure.microsoft.com/en-us/products/storage/blobs). This table function is similar to the [s3 function](/core/reference/functions/table-functions/s3).
## Syntax {#syntax}
@@ -57,7 +57,7 @@ azureBlobStorage(named_collection[, option=value [,..]])
| `blobpath` | File path. Supports the following wildcards in read-only mode: `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. |
| `account_name` | Storage account name. **Required** when using `storage_account_url` without SAS; must **not** be passed when using `connection_string`. |
| `account_key` | Storage account key. **Required** when using `storage_account_url` without SAS; must **not** be passed when using `connection_string`. |
-| `format` | The [format](/reference/formats) of the file. |
+| `format` | The [format](/core/reference/formats) of the file. |
| `compression` | Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. By default, it will autodetect compression by file extension (same as setting to `auto`). |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
| `partition_strategy` | Optional. Supported values: `WILDCARD` or `HIVE`. `WILDCARD` requires a `{_partition_id}` in the path, which is replaced with the partition key. `HIVE` does not allow wildcards, assumes the path is the table root, and generates Hive-style partitioned directories with Snowflake IDs as filenames and the file format as the extension. Defaults to `WILDCARD`. |
@@ -66,7 +66,7 @@ azureBlobStorage(named_collection[, option=value [,..]])
## Named Collections {#named-collections}
-Arguments can also be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case the following keys are supported:
+Arguments can also be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case the following keys are supported:
| Key | Required | Description |
|----------------------------------|----------|--------------------------------------------------------------------------------------------------------|
@@ -272,4 +272,4 @@ FROM azureBlobStorage('https://clickhousedocstest.blob.core.windows.net/?sp=r&st
```
## Related {#related}
-- [AzureBlobStorage Table Engine](/reference/engines/table-engines/integrations/azureBlobStorage)
+- [AzureBlobStorage Table Engine](/core/reference/engines/table-engines/integrations/azureBlobStorage)
diff --git a/reference/functions/table-functions/azureBlobStorageCluster.mdx b/core/reference/functions/table-functions/azureBlobStorageCluster.mdx
similarity index 88%
rename from reference/functions/table-functions/azureBlobStorageCluster.mdx
rename to core/reference/functions/table-functions/azureBlobStorageCluster.mdx
index d3d000b2..9f4a6fc4 100644
--- a/reference/functions/table-functions/azureBlobStorageCluster.mdx
+++ b/core/reference/functions/table-functions/azureBlobStorageCluster.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
---
Allows processing files from [Azure Blob Storage](https://azure.microsoft.com/en-us/products/storage/blobs) in parallel with many nodes in a specified cluster. On initiator it creates a connection to all nodes in the cluster, discloses asterisks in S3 file path, and dispatches each file dynamically. On the worker node it asks the initiator about the next task to process and processes it. This is repeated until all tasks are finished.
-This table function is similar to the [s3Cluster function](/reference/functions/table-functions/s3Cluster).
+This table function is similar to the [s3Cluster function](/core/reference/functions/table-functions/s3Cluster).
## Syntax {#syntax}
@@ -26,7 +26,7 @@ azureBlobStorageCluster(cluster_name, connection_string|storage_account_url, con
| `blobpath` | file path. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. |
| `account_name` | if storage_account_url is used, then account name can be specified here |
| `account_key` | if storage_account_url is used, then account key can be specified here |
-| `format` | The [format](/reference/formats) of the file. |
+| `format` | The [format](/core/reference/formats) of the file. |
| `compression` | Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. By default, it will autodetect compression by file extension. (same as setting to `auto`). |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
@@ -36,7 +36,7 @@ A table with the specified structure for reading or writing data in the specifie
## Examples {#examples}
-Similar to the [AzureBlobStorage](/reference/engines/table-engines/integrations/azureBlobStorage) table engine, users can use Azurite emulator for local Azure Storage development. Further details [here](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azurite?tabs=docker-hub%2Cblob-storage). Below we assume Azurite is available at the hostname `azurite1`.
+Similar to the [AzureBlobStorage](/core/reference/engines/table-engines/integrations/azureBlobStorage) table engine, users can use Azurite emulator for local Azure Storage development. Further details [here](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azurite?tabs=docker-hub%2Cblob-storage). Below we assume Azurite is available at the hostname `azurite1`.
Select the count for the file `test_cluster_*.csv`, using all the nodes in the `cluster_simple` cluster:
@@ -49,9 +49,9 @@ SELECT count(*) FROM azureBlobStorageCluster(
## Using Shared Access Signatures (SAS) {#using-shared-access-signatures-sas-sas-tokens}
-See [azureBlobStorage](/reference/functions/table-functions/azureBlobStorage#using-shared-access-signatures-sas-sas-tokens) for examples.
+See [azureBlobStorage](/core/reference/functions/table-functions/azureBlobStorage#using-shared-access-signatures-sas-sas-tokens) for examples.
## Related {#related}
-- [AzureBlobStorage engine](/reference/engines/table-engines/integrations/azureBlobStorage)
-- [azureBlobStorage table function](/reference/functions/table-functions/azureBlobStorage)
+- [AzureBlobStorage engine](/core/reference/engines/table-engines/integrations/azureBlobStorage)
+- [azureBlobStorage table function](/core/reference/functions/table-functions/azureBlobStorage)
diff --git a/reference/functions/table-functions/cluster.mdx b/core/reference/functions/table-functions/cluster.mdx
similarity index 80%
rename from reference/functions/table-functions/cluster.mdx
rename to core/reference/functions/table-functions/cluster.mdx
index 135eff64..2a9deb7b 100644
--- a/reference/functions/table-functions/cluster.mdx
+++ b/core/reference/functions/table-functions/cluster.mdx
@@ -7,12 +7,12 @@ title: 'clusterAllReplicas'
doc_type: 'reference'
---
-Allows accessing all shards (configured in the `remote_servers` section) of a cluster without creating a [Distributed](/reference/engines/table-engines/special/distributed) table. Only one replica of each shard is queried.
+Allows accessing all shards (configured in the `remote_servers` section) of a cluster without creating a [Distributed](/core/reference/engines/table-engines/special/distributed) table. Only one replica of each shard is queried.
`clusterAllReplicas` function — same as `cluster`, but all replicas are queried. Each replica in a cluster is used as a separate shard/connection.
-All available clusters are listed in the [system.clusters](/reference/system-tables/clusters) table.
+All available clusters are listed in the [system.clusters](/core/reference/system-tables/clusters) table.
## Syntax {#syntax}
@@ -37,7 +37,7 @@ The dataset from clusters.
## Using macros {#using_macros}
-`cluster_name` can contain macros — substitution in `{}`. The substituted value is taken from the [macros](/reference/settings/server-settings/settings#macros) section of the server configuration file.
+`cluster_name` can contain macros — substitution in `{}`. The substituted value is taken from the [macros](/core/reference/settings/server-settings/settings#macros) section of the server configuration file.
Example:
@@ -55,9 +55,9 @@ The `cluster` and `clusterAllReplicas` table functions can be useful in the foll
- Queries to various ClickHouse clusters and replicas for research purposes.
- Infrequent distributed requests that are made manually.
-Connection settings like `host`, `port`, `user`, `password`, `compression`, `secure` are taken from `` config section. See details in [Distributed engine](/reference/engines/table-engines/special/distributed).
+Connection settings like `host`, `port`, `user`, `password`, `compression`, `secure` are taken from `` config section. See details in [Distributed engine](/core/reference/engines/table-engines/special/distributed).
## Related {#related}
-- [skip_unavailable_shards](/reference/settings/session-settings#skip_unavailable_shards)
-- [load_balancing](/reference/settings/session-settings#load_balancing)
+- [skip_unavailable_shards](/core/reference/settings/session-settings#skip_unavailable_shards)
+- [load_balancing](/core/reference/settings/session-settings#load_balancing)
diff --git a/reference/functions/table-functions/deltalake.mdx b/core/reference/functions/table-functions/deltalake.mdx
similarity index 96%
rename from reference/functions/table-functions/deltalake.mdx
rename to core/reference/functions/table-functions/deltalake.mdx
index e31a9e06..e986d6e5 100644
--- a/reference/functions/table-functions/deltalake.mdx
+++ b/core/reference/functions/table-functions/deltalake.mdx
@@ -106,5 +106,5 @@ Query id: 65032944-bed6-4d45-86b3-a71205a2b659
## Related {#related}
-- [DeltaLake engine](/reference/engines/table-engines/integrations/deltalake)
-- [DeltaLake cluster table function](/reference/functions/table-functions/deltalakeCluster)
+- [DeltaLake engine](/core/reference/engines/table-engines/integrations/deltalake)
+- [DeltaLake cluster table function](/core/reference/functions/table-functions/deltalakeCluster)
diff --git a/reference/functions/table-functions/deltalakeCluster.mdx b/core/reference/functions/table-functions/deltalakeCluster.mdx
similarity index 86%
rename from reference/functions/table-functions/deltalakeCluster.mdx
rename to core/reference/functions/table-functions/deltalakeCluster.mdx
index 137a522a..27127ba5 100644
--- a/reference/functions/table-functions/deltalakeCluster.mdx
+++ b/core/reference/functions/table-functions/deltalakeCluster.mdx
@@ -6,7 +6,7 @@ title: 'deltaLakeCluster'
doc_type: 'reference'
---
-This is an extension to the [deltaLake](/reference/functions/table-functions/deltalake) table function.
+This is an extension to the [deltaLake](/core/reference/functions/table-functions/deltalake) table function.
Allows processing files from [Delta Lake](https://github.com/delta-io/delta) tables in Amazon S3 in parallel from many nodes in a specified cluster. On initiator it creates a connection to all nodes in the cluster and dispatches each file dynamically. On the worker node it asks the initiator about the next task to process and processes it. This is repeated until all tasks are finished.
@@ -27,7 +27,7 @@ deltaLakeAzureCluster(cluster_name, named_collection[, option=value [,..]])
## Arguments {#arguments}
- `cluster_name` — Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers.
-- Description of all other arguments coincides with description of arguments in equivalent [deltaLake](/reference/functions/table-functions/deltalake) table function.
+- Description of all other arguments coincides with description of arguments in equivalent [deltaLake](/core/reference/functions/table-functions/deltalake) table function.
- An optional `extra_credentials` parameter can be used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps.
## Returned value {#returned_value}
@@ -44,5 +44,5 @@ A table with the specified structure for reading data from cluster in the specif
## Related {#related}
-- [deltaLake engine](/reference/engines/table-engines/integrations/deltalake)
-- [deltaLake table function](/reference/functions/table-functions/deltalake)
+- [deltaLake engine](/core/reference/engines/table-engines/integrations/deltalake)
+- [deltaLake table function](/core/reference/functions/table-functions/deltalake)
diff --git a/reference/functions/table-functions/dictionary.mdx b/core/reference/functions/table-functions/dictionary.mdx
similarity index 74%
rename from reference/functions/table-functions/dictionary.mdx
rename to core/reference/functions/table-functions/dictionary.mdx
index c45e0b03..56dbc9c4 100644
--- a/reference/functions/table-functions/dictionary.mdx
+++ b/core/reference/functions/table-functions/dictionary.mdx
@@ -7,7 +7,7 @@ title: 'dictionary'
doc_type: 'reference'
---
-Displays the [dictionary](/reference/statements/create/dictionary) data as a ClickHouse table. Works the same way as [Dictionary](/reference/engines/table-engines/special/dictionary) engine.
+Displays the [dictionary](/core/reference/statements/create/dictionary) data as a ClickHouse table. Works the same way as [Dictionary](/core/reference/engines/table-engines/special/dictionary) engine.
## Syntax {#syntax}
@@ -17,7 +17,7 @@ dictionary('dict')
## Arguments {#arguments}
-- `dict` — A dictionary name. [String](/reference/data-types/string).
+- `dict` — A dictionary name. [String](/core/reference/data-types/string).
## Returned value {#returned_value}
@@ -54,4 +54,4 @@ SELECT * FROM dictionary('new_dictionary');
## Related {#related}
-- [Dictionary engine](/reference/engines/table-engines/special/dictionary)
+- [Dictionary engine](/core/reference/engines/table-engines/special/dictionary)
diff --git a/reference/functions/table-functions/executable.mdx b/core/reference/functions/table-functions/executable.mdx
similarity index 94%
rename from reference/functions/table-functions/executable.mdx
rename to core/reference/functions/table-functions/executable.mdx
index 1422a84b..c6745b46 100644
--- a/reference/functions/table-functions/executable.mdx
+++ b/core/reference/functions/table-functions/executable.mdx
@@ -31,7 +31,7 @@ executable(script_name, format, structure, [input_query...] [,SETTINGS ...])
- `input_query`: an optional query (or collection or queries) whose results are passed to the script via **stdin**
-If you are going to invoke the same script repeatedly with the same input queries, consider using the [`Executable` table engine](/reference/engines/table-engines/special/executable).
+If you are going to invoke the same script repeatedly with the same input queries, consider using the [`Executable` table engine](/core/reference/engines/table-engines/special/executable).
The following Python script is named `generate_random.py` and is saved in the `user_scripts` folder. It reads in a number `i` and prints `i` random strings, with each string preceded by a number that is separated by a tab:
@@ -96,7 +96,7 @@ The response looks like:
## Passing Query Results to a Script {#passing-query-results-to-a-script}
-Be sure to check out the example in the `Executable` table engine on [how to pass query results to a script](/reference/engines/table-engines/special/executable#passing-query-results-to-a-script). Here is how you execute the same script in that example using the `executable` table function:
+Be sure to check out the example in the `Executable` table engine on [how to pass query results to a script](/core/reference/engines/table-engines/special/executable#passing-query-results-to-a-script). Here is how you execute the same script in that example using the `executable` table function:
```sql
SELECT * FROM executable(
diff --git a/reference/functions/table-functions/file.mdx b/core/reference/functions/table-functions/file.mdx
similarity index 79%
rename from reference/functions/table-functions/file.mdx
rename to core/reference/functions/table-functions/file.mdx
index f1244708..06e9c5cd 100644
--- a/reference/functions/table-functions/file.mdx
+++ b/core/reference/functions/table-functions/file.mdx
@@ -14,7 +14,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
# file Table Function
-A table engine which provides a table-like interface to SELECT from and INSERT into files, similar to the [s3](/reference/functions/table-functions/url) table function. Use `file()` when working with local files, and `s3()` when working with buckets in object storage such as S3, GCS, or MinIO.
+A table engine which provides a table-like interface to SELECT from and INSERT into files, similar to the [s3](/core/reference/functions/table-functions/url) table function. Use `file()` when working with local files, and `s3()` when working with buckets in object storage such as S3, GCS, or MinIO.
The `file` function can be used in `SELECT` and `INSERT` queries to read from or write to files.
@@ -34,16 +34,16 @@ file(['file1.csv', 'file2.csv'], 'CSV', 'column1 UInt32, column2 UInt32')
| Parameter | Description |
|-------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `path` | The relative path to the file from [user_files_path](/reference/settings/server-settings/settings#user_files_path), or an `Array(String)` of paths in `SELECT` queries. Supports in read-only mode the following [globs](#globs-in-path): `*`, `?`, `{abc,def}` (with `'abc'` and `'def'` being strings) and `{N..M}` (with `N` and `M` being numbers). |
+| `path` | The relative path to the file from [user_files_path](/core/reference/settings/server-settings/settings#user_files_path), or an `Array(String)` of paths in `SELECT` queries. Supports in read-only mode the following [globs](#globs-in-path): `*`, `?`, `{abc,def}` (with `'abc'` and `'def'` being strings) and `{N..M}` (with `N` and `M` being numbers). |
| `path_to_archive` | The relative path to a zip/tar/7z archive. Supports the same globs as `path`. |
-| `format` | The [format](/reference/formats) of the file. |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure` | Structure of the table. Format: `'column1_name column1_type, column2_name column2_type, ...'`. |
| `compression` | The existing compression type when used in a `SELECT` query, or the desired compression type when used in an `INSERT` query. Supported compression types are `gz`, `br`, `xz`, `zst`, `lz4`, and `bz2`. |
When the `structure` argument is omitted, ClickHouse infers the schema from the format itself.
Different formats produce different default column names and types.
-To see the schema for a specific format, use [`DESC`](/reference/statements/describe-table) with the [`format`](/reference/functions/table-functions/format) table function.
+To see the schema for a specific format, use [`DESC`](/core/reference/statements/describe-table) with the [`format`](/core/reference/functions/table-functions/format) table function.
For example:
@@ -173,7 +173,7 @@ all the files in the directory are selected.
- `{N..M}` — Represents any number `>= N` and `<= M`.
- `**` - Represents all files inside a folder recursively.
-Constructions with `{}` are similar to the [remote](/reference/functions/table-functions/remote) and [hdfs](/reference/functions/table-functions/hdfs) table functions.
+Constructions with `{}` are similar to the [remote](/core/reference/functions/table-functions/remote) and [hdfs](/core/reference/functions/table-functions/hdfs) table functions.
## Examples {#examples}
@@ -257,13 +257,13 @@ SELECT * FROM file('data/path/date=*/country=*/code=*/*.parquet') WHERE date > '
| Setting | Description |
|--------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [engine_file_empty_if_not_exists](/reference/settings/session-settings#engine_file_empty_if_not_exists) | allows to select empty data from a file that doesn't exist. Disabled by default. |
-| [engine_file_truncate_on_insert](/reference/settings/session-settings#engine_file_truncate_on_insert) | allows to truncate file before insert into it. Disabled by default. |
-| [engine_file_allow_create_multiple_files](/reference/settings/session-settings#engine_file_allow_create_multiple_files) | allows to create a new file on each insert if format has suffix. Disabled by default. |
-| [engine_file_skip_empty_files](/reference/settings/session-settings#engine_file_skip_empty_files) | allows to skip empty files while reading. Disabled by default. |
-| [storage_file_read_method](/reference/settings/session-settings#engine_file_empty_if_not_exists) | method of reading data from storage file, one of: read, pread, mmap (only for clickhouse-local). Default value: `pread` for clickhouse-server, `mmap` for clickhouse-local. |
+| [engine_file_empty_if_not_exists](/core/reference/settings/session-settings#engine_file_empty_if_not_exists) | allows to select empty data from a file that doesn't exist. Disabled by default. |
+| [engine_file_truncate_on_insert](/core/reference/settings/session-settings#engine_file_truncate_on_insert) | allows to truncate file before insert into it. Disabled by default. |
+| [engine_file_allow_create_multiple_files](/core/reference/settings/session-settings#engine_file_allow_create_multiple_files) | allows to create a new file on each insert if format has suffix. Disabled by default. |
+| [engine_file_skip_empty_files](/core/reference/settings/session-settings#engine_file_skip_empty_files) | allows to skip empty files while reading. Disabled by default. |
+| [storage_file_read_method](/core/reference/settings/session-settings#engine_file_empty_if_not_exists) | method of reading data from storage file, one of: read, pread, mmap (only for clickhouse-local). Default value: `pread` for clickhouse-server, `mmap` for clickhouse-local. |
## Related {#related}
-- [Virtual columns](/reference/engines/table-engines#table_engines-virtual_columns)
-- [Rename files after processing](/reference/settings/session-settings#rename_files_after_processing)
+- [Virtual columns](/core/reference/engines/table-engines#table_engines-virtual_columns)
+- [Rename files after processing](/core/reference/settings/session-settings#rename_files_after_processing)
diff --git a/reference/functions/table-functions/fileCluster.mdx b/core/reference/functions/table-functions/fileCluster.mdx
similarity index 86%
rename from reference/functions/table-functions/fileCluster.mdx
rename to core/reference/functions/table-functions/fileCluster.mdx
index cf2c8246..d9a425cf 100644
--- a/reference/functions/table-functions/fileCluster.mdx
+++ b/core/reference/functions/table-functions/fileCluster.mdx
@@ -30,9 +30,9 @@ fileCluster(cluster_name, path[, format, structure, compression_method])
| Argument | Description |
|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `cluster_name` | Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers. |
-| `path` | The relative path to the file from [user_files_path](/reference/settings/server-settings/settings#user_files_path). Path to file also supports [globs](#globs-in-path). |
-| `format` | [Format](/reference/formats) of the files. Type: [String](/reference/data-types/string). |
-| `structure` | Table structure in `'UserID UInt64, Name String'` format. Determines column names and types. Type: [String](/reference/data-types/string). |
+| `path` | The relative path to the file from [user_files_path](/core/reference/settings/server-settings/settings#user_files_path). Path to file also supports [globs](#globs-in-path). |
+| `format` | [Format](/core/reference/formats) of the files. Type: [String](/core/reference/data-types/string). |
+| `structure` | Table structure in `'UserID UInt64, Name String'` format. Determines column names and types. Type: [String](/core/reference/data-types/string). |
| `compression_method` | Compression method. Supported compression types are `gz`, `br`, `xz`, `zst`, `lz4`, and `bz2`. |
## Returned value {#returned_value}
@@ -83,8 +83,8 @@ SELECT * FROM fileCluster('my_cluster', 'file{1,2}.csv', 'CSV', 'i UInt32, s Str
## Globs in Path {#globs-in-path}
-All patterns supported by [File](/reference/functions/table-functions/file#globs-in-path) table function are supported by FileCluster.
+All patterns supported by [File](/core/reference/functions/table-functions/file#globs-in-path) table function are supported by FileCluster.
## Related {#related}
-- [File table function](/reference/functions/table-functions/file)
+- [File table function](/core/reference/functions/table-functions/file)
diff --git a/reference/functions/table-functions/filesystem.mdx b/core/reference/functions/table-functions/filesystem.mdx
similarity index 94%
rename from reference/functions/table-functions/filesystem.mdx
rename to core/reference/functions/table-functions/filesystem.mdx
index 92c3e196..f0df609f 100644
--- a/reference/functions/table-functions/filesystem.mdx
+++ b/core/reference/functions/table-functions/filesystem.mdx
@@ -14,7 +14,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
Recursively iterates a directory and returns a table with file metadata (paths, sizes, types, permissions, modification times) and, optionally, file contents.
-In `clickhouse-server` mode, the path must be within the [user_files_path](/reference/settings/server-settings/settings#user_files_path) directory. Symlinks inside `user_files_path` that point outside of it are followed, but only entries whose path (through the symlink) starts with `user_files_path` are returned.
+In `clickhouse-server` mode, the path must be within the [user_files_path](/core/reference/settings/server-settings/settings#user_files_path) directory. Symlinks inside `user_files_path` that point outside of it are followed, but only entries whose path (through the symlink) starts with `user_files_path` are returned.
In `clickhouse-local` mode, there are no path restrictions.
diff --git a/reference/functions/table-functions/format.mdx b/core/reference/functions/table-functions/format.mdx
similarity index 96%
rename from reference/functions/table-functions/format.mdx
rename to core/reference/functions/table-functions/format.mdx
index 25720c74..65dc602c 100644
--- a/reference/functions/table-functions/format.mdx
+++ b/core/reference/functions/table-functions/format.mdx
@@ -16,7 +16,7 @@ format(format_name, [structure], data)
## Arguments {#arguments}
-- `format_name` — The [format](/reference/formats) of the data.
+- `format_name` — The [format](/core/reference/formats) of the data.
- `structure` - Structure of the table. Optional. Format 'column1_name column1_type, column2_name column2_type, ...'.
- `data` — String literal or constant expression that returns a string containing data in specified format
@@ -87,4 +87,4 @@ $$)
## Related {#related}
-- [Formats](/reference/formats)
+- [Formats](/core/reference/formats)
diff --git a/reference/functions/table-functions/fuzzJSON.mdx b/core/reference/functions/table-functions/fuzzJSON.mdx
similarity index 96%
rename from reference/functions/table-functions/fuzzJSON.mdx
rename to core/reference/functions/table-functions/fuzzJSON.mdx
index db5a21ba..8f9dfc17 100644
--- a/reference/functions/table-functions/fuzzJSON.mdx
+++ b/core/reference/functions/table-functions/fuzzJSON.mdx
@@ -18,7 +18,7 @@ fuzzJSON({ named_collection [, option=value [,..]] | json_str[, random_seed] })
| Argument | Description |
|------------------------------------|---------------------------------------------------------------------------------------------|
-| `named_collection` | A [NAMED COLLECTION](/reference/statements/create/named-collection). |
+| `named_collection` | A [NAMED COLLECTION](/core/reference/statements/create/named-collection). |
| `option=value` | Named collection optional parameters and their values. |
| `json_str` (String) | The source string representing structured data in JSON format. |
| `random_seed` (UInt64) | Manual random seed for producing stable results. |
diff --git a/reference/functions/table-functions/fuzzQuery.mdx b/core/reference/functions/table-functions/fuzzQuery.mdx
similarity index 100%
rename from reference/functions/table-functions/fuzzQuery.mdx
rename to core/reference/functions/table-functions/fuzzQuery.mdx
diff --git a/reference/functions/table-functions/gcs.mdx b/core/reference/functions/table-functions/gcs.mdx
similarity index 92%
rename from reference/functions/table-functions/gcs.mdx
rename to core/reference/functions/table-functions/gcs.mdx
index a6e0c1d4..71a93ab0 100644
--- a/reference/functions/table-functions/gcs.mdx
+++ b/core/reference/functions/table-functions/gcs.mdx
@@ -10,9 +10,9 @@ doc_type: 'reference'
Provides a table-like interface to `SELECT` and `INSERT` data from [Google Cloud Storage](https://cloud.google.com/storage/). Requires the [`Storage Object User` IAM role](https://cloud.google.com/storage/docs/access-control/iam-roles).
-This is an alias of the [s3 table function](/reference/functions/table-functions/s3).
+This is an alias of the [s3 table function](/core/reference/functions/table-functions/s3).
-If you have multiple replicas in your cluster, you can use the [s3Cluster function](/reference/functions/table-functions/s3Cluster) (which works with GCS) instead to parallelize inserts.
+If you have multiple replicas in your cluster, you can use the [s3Cluster function](/core/reference/functions/table-functions/s3Cluster) (which works with GCS) instead to parallelize inserts.
## Syntax {#syntax}
@@ -35,7 +35,7 @@ See the [Google interoperability docs](https://cloud.google.com/storage/docs/int
| `url` | Bucket path to file. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. |
| `NOSIGN` | If this keyword is provided in place of credentials, all the requests will not be signed. |
| `hmac_key` and `hmac_secret` | Keys that specify credentials to use with given endpoint. Optional. |
-| `format` | The [format](/reference/formats) of the file. |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
| `compression_method` | Parameter is optional. Supported values: `none`, `gzip` or `gz`, `brotli` or `br`, `xz` or `LZMA`, `zstd` or `zst`. By default, it will autodetect compression method by file extension. |
@@ -51,7 +51,7 @@ The GCS path is in this format as the endpoint for the Google XML API is differe
and not ~~https://storage.cloud.google.com~~.
-Arguments can also be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case `url`, `format`, `structure`, `compression_method` work in the same way, and some extra parameters are supported:
+Arguments can also be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case `url`, `format`, `structure`, `compression_method` work in the same way, and some extra parameters are supported:
| Parameter | Description |
|-------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
@@ -180,7 +180,7 @@ The below get data from all `test-data.csv.gz` files from any folder inside `my-
SELECT * FROM gcs('https://storage.googleapis.com/my-test-bucket-768/**/test-data.csv.gz', 'CSV', 'name String, value UInt32', 'gzip');
```
-For production use cases it is recommended to use [named collections](/concepts/features/configuration/server-config/named-collections). Here is the example:
+For production use cases it is recommended to use [named collections](/core/concepts/features/configuration/server-config/named-collections). Here is the example:
```sql
CREATE NAMED COLLECTION creds AS
@@ -215,5 +215,5 @@ INSERT INTO TABLE FUNCTION
As a result, the data is written into three files in different buckets: `my_bucket_1/file.csv`, `my_bucket_10/file.csv`, and `my_bucket_20/file.csv`.
## Related {#related}
-- [S3 table function](/reference/functions/table-functions/s3)
-- [S3 engine](/reference/engines/table-engines/integrations/s3)
+- [S3 table function](/core/reference/functions/table-functions/s3)
+- [S3 engine](/core/reference/engines/table-engines/integrations/s3)
diff --git a/reference/functions/table-functions/generate.mdx b/core/reference/functions/table-functions/generate.mdx
similarity index 99%
rename from reference/functions/table-functions/generate.mdx
rename to core/reference/functions/table-functions/generate.mdx
index f9b0bde7..08b8ac54 100644
--- a/reference/functions/table-functions/generate.mdx
+++ b/core/reference/functions/table-functions/generate.mdx
@@ -58,7 +58,7 @@ SELECT * FROM random;
└──────────────────────────────┴──────────────┴────────────────────────────────────────────────────────────────────┘
```
-In combination with [generateRandomStructure](/reference/functions/regular-functions/other-functions#generateRandomStructure):
+In combination with [generateRandomStructure](/core/reference/functions/regular-functions/other-functions#generateRandomStructure):
```sql
SELECT * FROM generateRandom(generateRandomStructure(4, 101), 101) LIMIT 3;
diff --git a/reference/functions/table-functions/generate_series.mdx b/core/reference/functions/table-functions/generate_series.mdx
similarity index 100%
rename from reference/functions/table-functions/generate_series.mdx
rename to core/reference/functions/table-functions/generate_series.mdx
diff --git a/reference/functions/table-functions/hdfs.mdx b/core/reference/functions/table-functions/hdfs.mdx
similarity index 81%
rename from reference/functions/table-functions/hdfs.mdx
rename to core/reference/functions/table-functions/hdfs.mdx
index c1b7bc88..89973668 100644
--- a/reference/functions/table-functions/hdfs.mdx
+++ b/core/reference/functions/table-functions/hdfs.mdx
@@ -12,7 +12,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
# hdfs Table Function
-Creates a table from files in HDFS. This table function is similar to the [url](/reference/functions/table-functions/url) and [file](/reference/functions/table-functions/file) table functions.
+Creates a table from files in HDFS. This table function is similar to the [url](/core/reference/functions/table-functions/url) and [file](/core/reference/functions/table-functions/file) table functions.
## Syntax {#syntax}
@@ -25,7 +25,7 @@ hdfs(URI, format, structure)
| Argument | Description |
|-----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `URI` | The relative URI to the file in HDFS. Path to file support following globs in readonly mode: `*`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc', 'def'` — strings. |
-| `format` | The [format](/reference/formats) of the file. |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure`| Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
## Returned value {#returned_value}
@@ -59,7 +59,7 @@ Paths may use globbing. Files must match the whole path pattern, not only the su
- `{some_string,another_string,yet_another_one}` — Substitutes any of strings `'some_string', 'another_string', 'yet_another_one'`. The strings can contain the `/` symbol.
- `{N..M}` — Represents any number `>= N` and `<= M`.
-Constructions with `{}` are similar to the [remote](/reference/functions/table-functions/remote) and [file](/reference/functions/table-functions/file) table functions.
+Constructions with `{}` are similar to the [remote](/core/reference/functions/table-functions/remote) and [file](/core/reference/functions/table-functions/file) table functions.
**Example**
@@ -124,10 +124,10 @@ SELECT * FROM HDFS('hdfs://hdfs1:9000/data/path/date=*/country=*/code=*/*.parque
## Storage Settings {#storage-settings}
-- [hdfs_truncate_on_insert](/reference/settings/session-settings#hdfs_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
-- [hdfs_create_new_file_on_insert](/reference/settings/session-settings#hdfs_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
-- [hdfs_skip_empty_files](/reference/settings/session-settings#hdfs_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
+- [hdfs_truncate_on_insert](/core/reference/settings/session-settings#hdfs_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
+- [hdfs_create_new_file_on_insert](/core/reference/settings/session-settings#hdfs_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
+- [hdfs_skip_empty_files](/core/reference/settings/session-settings#hdfs_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
## Related {#related}
-- [Virtual columns](/reference/engines/table-engines#table_engines-virtual_columns)
+- [Virtual columns](/core/reference/engines/table-engines#table_engines-virtual_columns)
diff --git a/reference/functions/table-functions/hdfsCluster.mdx b/core/reference/functions/table-functions/hdfsCluster.mdx
similarity index 88%
rename from reference/functions/table-functions/hdfsCluster.mdx
rename to core/reference/functions/table-functions/hdfsCluster.mdx
index fb28c2d5..f4719818 100644
--- a/reference/functions/table-functions/hdfsCluster.mdx
+++ b/core/reference/functions/table-functions/hdfsCluster.mdx
@@ -20,8 +20,8 @@ hdfsCluster(cluster_name, URI, format, structure)
| Argument | Description |
|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `cluster_name` | Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers. |
-| `URI` | URI to a file or a bunch of files. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{'abc','def'}` and `{N..M}` where `N`, `M` — numbers, `abc`, `def` — strings. For more information see [Wildcards In Path](/reference/engines/table-engines/integrations/s3#wildcards-in-path). |
-| `format` | The [format](/reference/formats) of the file. |
+| `URI` | URI to a file or a bunch of files. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{'abc','def'}` and `{N..M}` where `N`, `M` — numbers, `abc`, `def` — strings. For more information see [Wildcards In Path](/core/reference/engines/table-engines/integrations/s3#wildcards-in-path). |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
## Returned value {#returned_value}
@@ -59,5 +59,5 @@ If your listing of files contains number ranges with leading zeros, use the cons
## Related {#related}
-- [HDFS engine](/reference/engines/table-engines/integrations/hdfs)
-- [HDFS table function](/reference/functions/table-functions/hdfs)
+- [HDFS engine](/core/reference/engines/table-engines/integrations/hdfs)
+- [HDFS table function](/core/reference/functions/table-functions/hdfs)
diff --git a/reference/functions/table-functions/hudi.mdx b/core/reference/functions/table-functions/hudi.mdx
similarity index 90%
rename from reference/functions/table-functions/hudi.mdx
rename to core/reference/functions/table-functions/hudi.mdx
index 34aa6071..07321ad6 100644
--- a/reference/functions/table-functions/hudi.mdx
+++ b/core/reference/functions/table-functions/hudi.mdx
@@ -20,8 +20,8 @@ hudi(url [,aws_access_key_id, aws_secret_access_key] [,format] [,structure] [,co
| Argument | Description |
|----------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `url` | Bucket url with the path to an existing Hudi table in S3. |
-| `aws_access_key_id`, `aws_secret_access_key` | Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. These parameters are optional. If credentials are not specified, they are used from the ClickHouse configuration. For more information see [Using S3 for Data Storage](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3). |
-| `format` | The [format](/reference/formats) of the file. |
+| `aws_access_key_id`, `aws_secret_access_key` | Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. These parameters are optional. If credentials are not specified, they are used from the ClickHouse configuration. For more information see [Using S3 for Data Storage](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3). |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
| `compression` | Parameter is optional. Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. By default, compression will be autodetected by the file extension. |
| `extra_credentials` | Parameter is optional. Used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps. |
@@ -40,5 +40,5 @@ A table with the specified structure for reading data in the specified Hudi tabl
## Related {#related}
-- [Hudi engine](/reference/engines/table-engines/integrations/hudi)
-- [Hudi cluster table function](/reference/functions/table-functions/hudiCluster)
+- [Hudi engine](/core/reference/engines/table-engines/integrations/hudi)
+- [Hudi cluster table function](/core/reference/functions/table-functions/hudiCluster)
diff --git a/reference/functions/table-functions/hudiCluster.mdx b/core/reference/functions/table-functions/hudiCluster.mdx
similarity index 90%
rename from reference/functions/table-functions/hudiCluster.mdx
rename to core/reference/functions/table-functions/hudiCluster.mdx
index 9339ea6e..c0b33e0c 100644
--- a/reference/functions/table-functions/hudiCluster.mdx
+++ b/core/reference/functions/table-functions/hudiCluster.mdx
@@ -7,7 +7,7 @@ title: 'hudiCluster Table Function'
doc_type: 'reference'
---
-This is an extension to the [hudi](/reference/functions/table-functions/hudi) table function.
+This is an extension to the [hudi](/core/reference/functions/table-functions/hudi) table function.
Allows processing files from Apache [Hudi](https://hudi.apache.org/) tables in Amazon S3 in parallel with many nodes in a specified cluster. On initiator it creates a connection to all nodes in the cluster and dispatches each file dynamically. On the worker node it asks the initiator about the next task to process and processes it. This is repeated until all tasks are finished.
@@ -23,8 +23,8 @@ hudiCluster(cluster_name, url [,aws_access_key_id, aws_secret_access_key] [,form
|----------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `cluster_name` | Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers. |
| `url` | Bucket url with the path to an existing Hudi table in S3. |
-| `aws_access_key_id`, `aws_secret_access_key` | Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. These parameters are optional. If credentials are not specified, they are used from the ClickHouse configuration. For more information see [Using S3 for Data Storage](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3). |
-| `format` | The [format](/reference/formats) of the file. |
+| `aws_access_key_id`, `aws_secret_access_key` | Long-term credentials for the [AWS](https://aws.amazon.com/) account user. You can use these to authenticate your requests. These parameters are optional. If credentials are not specified, they are used from the ClickHouse configuration. For more information see [Using S3 for Data Storage](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3). |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
| `compression` | Parameter is optional. Supported values: `none`, `gzip/gz`, `brotli/br`, `xz/LZMA`, `zstd/zst`. By default, compression will be autodetected by the file extension. |
| `extra_credentials` | Parameter is optional. Used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps. |
@@ -43,5 +43,5 @@ A table with the specified structure for reading data from cluster in the specif
## Related {#related}
-- [Hudi engine](/reference/engines/table-engines/integrations/hudi)
-- [Hudi table function](/reference/functions/table-functions/hudi)
+- [Hudi engine](/core/reference/engines/table-engines/integrations/hudi)
+- [Hudi table function](/core/reference/functions/table-functions/hudi)
diff --git a/reference/functions/table-functions/iceberg.mdx b/core/reference/functions/table-functions/iceberg.mdx
similarity index 99%
rename from reference/functions/table-functions/iceberg.mdx
rename to core/reference/functions/table-functions/iceberg.mdx
index 3658f252..c3d30056 100644
--- a/reference/functions/table-functions/iceberg.mdx
+++ b/core/reference/functions/table-functions/iceberg.mdx
@@ -716,5 +716,5 @@ The command returns a table with `metric_name` and `metric_value` columns showin
## See Also {#see-also}
-* [Iceberg engine](/reference/engines/table-engines/integrations/iceberg)
-* [Iceberg cluster table function](/reference/functions/table-functions/icebergCluster)
+* [Iceberg engine](/core/reference/engines/table-engines/integrations/iceberg)
+* [Iceberg cluster table function](/core/reference/functions/table-functions/icebergCluster)
diff --git a/reference/functions/table-functions/icebergCluster.mdx b/core/reference/functions/table-functions/icebergCluster.mdx
similarity index 87%
rename from reference/functions/table-functions/icebergCluster.mdx
rename to core/reference/functions/table-functions/icebergCluster.mdx
index 98888565..338c92f3 100644
--- a/reference/functions/table-functions/icebergCluster.mdx
+++ b/core/reference/functions/table-functions/icebergCluster.mdx
@@ -7,7 +7,7 @@ title: 'icebergCluster'
doc_type: 'reference'
---
-This is an extension to the [iceberg](/reference/functions/table-functions/iceberg) table function.
+This is an extension to the [iceberg](/core/reference/functions/table-functions/iceberg) table function.
Allows processing files from Apache [Iceberg](https://iceberg.apache.org/) in parallel from many nodes in a specified cluster. On initiator it creates a connection to all nodes in the cluster and dispatches each file dynamically. On the worker node it asks the initiator about the next task to process and processes it. This is repeated until all tasks are finished.
@@ -27,7 +27,7 @@ icebergHDFSCluster(cluster_name, named_collection[, option=value [,..]])
## Arguments {#arguments}
- `cluster_name` — Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers.
-- Description of all other arguments coincides with description of arguments in equivalent [iceberg](/reference/functions/table-functions/iceberg) table function.
+- Description of all other arguments coincides with description of arguments in equivalent [iceberg](/core/reference/functions/table-functions/iceberg) table function.
- An optional `extra_credentials` parameter can be used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps.
**Returned value**
@@ -50,5 +50,5 @@ SELECT * FROM icebergS3Cluster('cluster_simple', 'http://test.s3.amazonaws.com/c
**See Also**
-- [Iceberg engine](/reference/engines/table-engines/integrations/iceberg)
-- [Iceberg table function](/reference/functions/table-functions/iceberg)
+- [Iceberg engine](/core/reference/engines/table-engines/integrations/iceberg)
+- [Iceberg table function](/core/reference/functions/table-functions/iceberg)
diff --git a/core/reference/functions/table-functions/index.mdx b/core/reference/functions/table-functions/index.mdx
new file mode 100644
index 00000000..7b138c1c
--- /dev/null
+++ b/core/reference/functions/table-functions/index.mdx
@@ -0,0 +1,149 @@
+---
+description: 'Documentation for Table Functions'
+sidebarTitle: 'Table Functions'
+slug: /sql-reference/table-functions/
+title: 'Table Functions'
+doc_type: 'reference'
+---
+
+Table functions are methods for constructing tables.
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [azureBlobStorage](/core/reference/functions/table-functions/azureBlobStorage) | Provides a table-like interface to select/insert files in Azure Blob Storage. Similar to the s3 function. |
+| [azureBlobStorageCluster](/core/reference/functions/table-functions/azureBlobStorageCluster) | Allows processing files from Azure Blob storage in parallel with many nodes in a specified cluster. |
+| [clusterAllReplicas](/core/reference/functions/table-functions/cluster) | Allows accessing all shards (configured in the `remote_servers` section) of a cluster without creating a Distributed table. |
+| [deltaLake](/core/reference/functions/table-functions/deltalake) | Provides a read-only table-like interface to the Delta Lake tables in Amazon S3. |
+| [deltaLakeCluster](/core/reference/functions/table-functions/deltalakeCluster) | This is an extension to the deltaLake table function. |
+| [dictionary](/core/reference/functions/table-functions/dictionary) | Displays the dictionary data as a ClickHouse table. Works the same way as the Dictionary engine. |
+| [executable](/core/reference/functions/table-functions/executable) | The `executable` table function creates a table based on the output of a user-defined function (UDF) that you define in a script that outputs rows to **stdout**. |
+| [file](/core/reference/functions/table-functions/file) | A table engine which provides a table-like interface to SELECT from and INSERT into files, similar to the s3 table function. Use `file()` when working with local files, and `s3()` when working with buckets in object storage such as S3, GCS, or MinIO. |
+| [fileCluster](/core/reference/functions/table-functions/fileCluster) | Enables simultaneous processing of files matching a specified path across multiple nodes within a cluster. The initiator establishes connections to worker nodes, expands globs in the file path, and delegates file-reading tasks to worker nodes. Each worker node is querying the initiator for the next file to process, repeating until all tasks are completed (all files are read). |
+| [filesystem](/core/reference/functions/table-functions/filesystem) | Provides access to the file system to list files and return their metadata and contents. |
+| [format](/core/reference/functions/table-functions/format) | Parses data from arguments according to specified input format. If structure argument is not specified, it's extracted from the data. |
+| [gcs](/core/reference/functions/table-functions/gcs) | Provides a table-like interface to `SELECT` and `INSERT` data from Google Cloud Storage. Requires the `Storage Object User` IAM role. |
+| [fuzzQuery](/core/reference/functions/table-functions/fuzzQuery) | Perturbs the given query string with random variations. |
+| [fuzzJSON](/core/reference/functions/table-functions/fuzzJSON) | Perturbs a JSON string with random variations. |
+| [generateRandom](/core/reference/functions/table-functions/generate) | Generates random data with a given schema. Allows populating test tables with that data. Not all types are supported. |
+| [mergeTreeTextIndex](/core/reference/functions/table-functions/mergeTreeTextIndex) | Represents the dictionary of a text index in a MergeTree table. It can be used for introspection. |
+| [mergeTreeProjection](/core/reference/functions/table-functions/mergeTreeProjection) | Represents the contents of some projection in MergeTree tables. It can be used for introspection. |
+| [mergeTreeIndex](/core/reference/functions/table-functions/mergeTreeIndex) | Represents the contents of index and marks files of MergeTree tables. It can be used for introspection. |
+| [hdfs](/core/reference/functions/table-functions/hdfs) | Creates a table from files in HDFS. This table function is similar to the url and file table functions. |
+| [hdfsCluster](/core/reference/functions/table-functions/hdfsCluster) | Allows processing files from HDFS in parallel from many nodes in a specified cluster. |
+| [hudi](/core/reference/functions/table-functions/hudi) | Provides a read-only table-like interface to Apache Hudi tables in Amazon S3. |
+| [ytsaurus](/core/reference/functions/table-functions/ytsaurus) | The table function allows to read data from the YTsaurus cluster. |
+| [hudiCluster Table Function](/core/reference/functions/table-functions/hudiCluster) | An extension to the hudi table function. Allows processing files from Apache Hudi tables in Amazon S3 in parallel with many nodes in a specified cluster. |
+| [iceberg](/core/reference/functions/table-functions/iceberg) | Provides a read-only table-like interface to Apache Iceberg tables in Amazon S3, Azure, HDFS or locally stored. |
+| [paimon](/core/reference/functions/table-functions/paimon) | Provides a read-only table-like interface to Apache Paimon tables in Amazon S3, Azure, HDFS or locally stored. |
+| [icebergCluster](/core/reference/functions/table-functions/icebergCluster) | An extension to the iceberg table function which allows processing files from Apache Iceberg in parallel from many nodes in a specified cluster. |
+| [paimonCluster](/core/reference/functions/table-functions/paimonCluster) | An extension to the paimon table function which allows processing files from Apache Paimon in parallel from many nodes in a specified cluster. |
+| [input](/core/reference/functions/table-functions/input) | Table function that allows effectively converting and inserting data sent to the server with a given structure to a table with another structure. |
+| [jdbc](/core/reference/functions/table-functions/jdbc) | Returns a table that is connected via JDBC driver. |
+| [merge](/core/reference/functions/table-functions/merge) | Creates a temporary Merge table. The structure will be derived from underlying tables by using a union of their columns and by deriving common types. |
+| [mongodb](/core/reference/functions/table-functions/mongodb) | Allows `SELECT` queries to be performed on data that is stored on a remote MongoDB server. |
+| [mysql](/core/reference/functions/table-functions/mysql) | Allows `SELECT` and `INSERT` queries to be performed on data that are stored on a remote MySQL server. |
+| [null](/core/reference/functions/table-functions/null) | Creates a temporary table of the specified structure with the Null table engine. The function is used for the convenience of test writing and demonstrations. |
+| [timeSeriesMetrics](/core/reference/functions/table-functions/timeSeriesMetrics) | timeSeriesMetrics returns the metrics table used by table `db_name.time_series_table` whose table engine is the TimeSeries engine. |
+| [timeSeriesSelector](/core/reference/functions/table-functions/timeSeriesSelector) | Reads time series from a TimeSeries table filtered by a selector and with timestamps in a specified interval. |
+| [timeSeriesTags](/core/reference/functions/table-functions/timeSeriesTags) | timeSeriesTags table function returns the tags table use by table `db_name.time_series_table` whose table engine is the TimeSeries engine. |
+| [prometheusQueryRange](/core/reference/functions/table-functions/prometheusQueryRange) | Evaluates a prometheus query using data from a TimeSeries table. |
+| [zeros](/core/reference/functions/table-functions/zeros) | Used for test purposes as the fastest method to generate many rows. Similar to the `system.zeros` and `system.zeros_mt` system tables. |
+| [primes](/core/reference/functions/table-functions/primes) | Returns a table with a single `prime` column that contains prime numbers. |
+| [timeSeriesData](/core/reference/functions/table-functions/timeSeriesData) | timeSeriesData returns the data table used by table `db_name.time_series_table` whose table engine is TimeSeries. |
+| [numbers](/core/reference/functions/table-functions/numbers) | Returns a table with a single `number` column that contains a sequence of integers. |
+| [prometheusQuery](/core/reference/functions/table-functions/prometheusQuery) | Evaluates a prometheus query using data from a TimeSeries table. |
+| [generate_series (generateSeries)](/core/reference/functions/table-functions/generate_series) | Returns a table with the single `generate_series` column (UInt64) that contains integers from start to stop inclusively. |
+| [odbc](/core/reference/functions/table-functions/odbc) | Returns the table that is connected via ODBC. |
+| [postgresql](/core/reference/functions/table-functions/postgresql) | Allows `SELECT` and `INSERT` queries to be performed on data that is stored on a remote PostgreSQL server. |
+| [redis](/core/reference/functions/table-functions/redis) | This table function allows integrating ClickHouse with Redis. |
+| [remote, remoteSecure](/core/reference/functions/table-functions/remote) | Table function `remote` allows to access remote servers on-the-fly, i.e. without creating a distributed table. Table function `remoteSecure` is same as `remote` but over a secure connection. |
+| [s3 Table Function](/core/reference/functions/table-functions/s3) | Provides a table-like interface to select/insert files in Amazon S3 and Google Cloud Storage. This table function is similar to the hdfs function, but provides S3-specific features. |
+| [s3Cluster](/core/reference/functions/table-functions/s3Cluster) | An extension to the s3 table function, which allows processing files from Amazon S3 and Google Cloud Storage in parallel with many nodes in a specified cluster. |
+| [sqlite](/core/reference/functions/table-functions/sqlite) | Allows to perform queries on data stored in a SQLite database. |
+| [arrowFlight](/core/reference/functions/table-functions/arrowflight) | Allows to perform queries on data exposed via an Apache Arrow Flight server. |
+| [url](/core/reference/functions/table-functions/url) | Creates a table from the `URL` with given `format` and `structure` |
+| [urlCluster](/core/reference/functions/table-functions/urlCluster) | Allows processing files from URL in parallel from many nodes in a specified cluster. |
+| [view](/core/reference/functions/table-functions/view) | Turns a subquery into a table. The function implements views. |
+| [values](/core/reference/functions/table-functions/values) | creates a temporary storage which fills columns with values. |
+| [loop](/core/reference/functions/table-functions/loop) | The loop table function in ClickHouse is used to return query results in an infinite loop. |
+{/*AUTOGENERATED_END*/}
+
+## Usage {#usage}
+
+Table functions can be used in the [`FROM`](/core/reference/statements/select/from)
+clause of a `SELECT` query. For example, you can `SELECT` data from a file on your local
+machine using the `file` table function.
+
+```bash title="Query"
+echo "1, 2, 3" > example.csv
+```
+```text title="Response"
+./clickhouse client
+:) SELECT * FROM file('example.csv')
+┌─c1─┬─c2─┬─c3─┐
+│ 1 │ 2 │ 3 │
+└────┴────┴────┘
+```
+
+You can also use table functions for creating a temporary table that is available
+only in the current query. For example:
+
+```sql title="Query"
+SELECT * FROM generateSeries(1,5);
+```
+```response title="Response"
+┌─generate_series─┐
+│ 1 │
+│ 2 │
+│ 3 │
+│ 4 │
+│ 5 │
+└─────────────────┘
+```
+
+The table is deleted when the query finishes.
+
+Table functions can be used as a way to create tables, using the following syntax:
+
+```sql title="Query"
+CREATE TABLE [IF NOT EXISTS] [db.]table_name AS table_function()
+```
+
+For example:
+
+```sql title="Query"
+CREATE TABLE series AS generateSeries(1, 5);
+SELECT * FROM series;
+```
+
+```response title="Response"
+┌─generate_series─┐
+│ 1 │
+│ 2 │
+│ 3 │
+│ 4 │
+│ 5 │
+└─────────────────┘
+```
+
+Finally, table functions can be used to `INSERT` data into a table. For example,
+we could write out the contents of the table we created in the previous example
+to a file on disk using the `file` table function again:
+
+```sql title="Query"
+INSERT INTO FUNCTION file('numbers.csv', 'CSV') SELECT * FROM series;
+```
+
+```bash title="Query"
+cat numbers.csv
+1
+2
+3
+4
+5
+```
+
+
+You can't use table functions if the [allow_ddl](/core/reference/settings/session-settings#allow_ddl) setting is disabled.
+
\ No newline at end of file
diff --git a/reference/functions/table-functions/input.mdx b/core/reference/functions/table-functions/input.mdx
similarity index 97%
rename from reference/functions/table-functions/input.mdx
rename to core/reference/functions/table-functions/input.mdx
index 64f6c332..3656af57 100644
--- a/reference/functions/table-functions/input.mdx
+++ b/core/reference/functions/table-functions/input.mdx
@@ -16,7 +16,7 @@ For example, `'id UInt32, name String'`.
This function can be used only in `INSERT SELECT` query and only once but otherwise behaves like ordinary table function
(for example, it can be used in subquery, etc.).
-Data can be sent in any way like for ordinary `INSERT` query and passed in any available [format](/reference/formats)
+Data can be sent in any way like for ordinary `INSERT` query and passed in any available [format](/core/reference/formats)
that must be specified in the end of query (unlike ordinary `INSERT SELECT`).
The main feature of this function is that when server receives data from client it simultaneously converts it
diff --git a/reference/functions/table-functions/jdbc.mdx b/core/reference/functions/table-functions/jdbc.mdx
similarity index 100%
rename from reference/functions/table-functions/jdbc.mdx
rename to core/reference/functions/table-functions/jdbc.mdx
diff --git a/reference/functions/table-functions/loop.mdx b/core/reference/functions/table-functions/loop.mdx
similarity index 100%
rename from reference/functions/table-functions/loop.mdx
rename to core/reference/functions/table-functions/loop.mdx
diff --git a/reference/functions/table-functions/merge.mdx b/core/reference/functions/table-functions/merge.mdx
similarity index 85%
rename from reference/functions/table-functions/merge.mdx
rename to core/reference/functions/table-functions/merge.mdx
index e06cd69c..57182032 100644
--- a/reference/functions/table-functions/merge.mdx
+++ b/core/reference/functions/table-functions/merge.mdx
@@ -6,9 +6,9 @@ title: 'merge'
doc_type: 'reference'
---
-Creates a temporary [Merge](/reference/engines/table-engines/special/merge) table.
+Creates a temporary [Merge](/core/reference/engines/table-engines/special/merge) table.
The table schema is derived from underlying tables by using a union of their columns and by deriving common types.
-The same virtual columns are available as for the [Merge](/reference/engines/table-engines/special/merge) table engine.
+The same virtual columns are available as for the [Merge](/core/reference/engines/table-engines/special/merge) table engine.
## Syntax {#syntax}
@@ -24,4 +24,4 @@ merge(['db_name',] 'tables_regexp')
## Related {#related}
-- [Merge](/reference/engines/table-engines/special/merge) table engine
+- [Merge](/core/reference/engines/table-engines/special/merge) table engine
diff --git a/reference/functions/table-functions/mergeTreeIndex.mdx b/core/reference/functions/table-functions/mergeTreeIndex.mdx
similarity index 100%
rename from reference/functions/table-functions/mergeTreeIndex.mdx
rename to core/reference/functions/table-functions/mergeTreeIndex.mdx
diff --git a/reference/functions/table-functions/mergeTreeProjection.mdx b/core/reference/functions/table-functions/mergeTreeProjection.mdx
similarity index 100%
rename from reference/functions/table-functions/mergeTreeProjection.mdx
rename to core/reference/functions/table-functions/mergeTreeProjection.mdx
diff --git a/reference/functions/table-functions/mergeTreeTextIndex.mdx b/core/reference/functions/table-functions/mergeTreeTextIndex.mdx
similarity index 100%
rename from reference/functions/table-functions/mergeTreeTextIndex.mdx
rename to core/reference/functions/table-functions/mergeTreeTextIndex.mdx
diff --git a/reference/functions/table-functions/mongodb.mdx b/core/reference/functions/table-functions/mongodb.mdx
similarity index 95%
rename from reference/functions/table-functions/mongodb.mdx
rename to core/reference/functions/table-functions/mongodb.mdx
index 7ca0549e..679b4937 100644
--- a/reference/functions/table-functions/mongodb.mdx
+++ b/core/reference/functions/table-functions/mongodb.mdx
@@ -122,5 +122,5 @@ SELECT * FROM mongodb(
## Related {#related}
-- [The `MongoDB` table engine](/reference/engines/table-engines/integrations/mongodb)
-- [Using MongoDB as a dictionary source](/reference/statements/create/dictionary/sources/mongodb)
+- [The `MongoDB` table engine](/core/reference/engines/table-engines/integrations/mongodb)
+- [Using MongoDB as a dictionary source](/core/reference/statements/create/dictionary/sources/mongodb)
diff --git a/reference/functions/table-functions/mysql.mdx b/core/reference/functions/table-functions/mysql.mdx
similarity index 85%
rename from reference/functions/table-functions/mysql.mdx
rename to core/reference/functions/table-functions/mysql.mdx
index e66dd699..0d38f43e 100644
--- a/reference/functions/table-functions/mysql.mdx
+++ b/core/reference/functions/table-functions/mysql.mdx
@@ -27,7 +27,7 @@ mysql({host:port, database, table, user, password[, replace_query, on_duplicate_
| `replace_query` | Flag that converts `INSERT INTO` queries to `REPLACE INTO`. Possible values: - `0` - The query is executed as `INSERT INTO`. - `1` - The query is executed as `REPLACE INTO`. |
| `on_duplicate_clause` | The `ON DUPLICATE KEY on_duplicate_clause` expression that is added to the `INSERT` query. Can be specified only with `replace_query = 0` (if you simultaneously pass `replace_query = 1` and `on_duplicate_clause`, ClickHouse generates an exception). Example: `INSERT INTO t (c1,c2) VALUES ('a', 2) ON DUPLICATE KEY UPDATE c2 = c2 + 1;` `on_duplicate_clause` here is `UPDATE c2 = c2 + 1`. See the MySQL documentation to find which `on_duplicate_clause` you can use with the `ON DUPLICATE KEY` clause. |
-Arguments also can be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment.
+Arguments also can be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment.
Simple `WHERE` clauses such as `=, !=, >, >=, <, <=` are currently executed on the MySQL server.
@@ -50,7 +50,7 @@ SELECT name FROM mysql(`mysql1:3306|mysql2:3306|mysql3:3306`, 'mysql_database',
A table object with the same columns as the original MySQL table.
-Some data types of MySQL can be mapped to different ClickHouse types - this is addressed by query-level setting [mysql_datatypes_support_level](/reference/settings/session-settings#mysql_datatypes_support_level)
+Some data types of MySQL can be mapped to different ClickHouse types - this is addressed by query-level setting [mysql_datatypes_support_level](/core/reference/settings/session-settings#mysql_datatypes_support_level)
@@ -83,7 +83,7 @@ Selecting data from ClickHouse:
SELECT * FROM mysql('localhost:3306', 'test', 'test', 'bayonet', '123');
```
-Or using [named collections](/concepts/features/configuration/server-config/named-collections):
+Or using [named collections](/core/concepts/features/configuration/server-config/named-collections):
```sql
CREATE NAMED COLLECTION creds AS
@@ -142,9 +142,9 @@ WHERE id > (SELECT max(id) FROM mysql_copy);
## Related {#related}
-- [The 'MySQL' table engine](/reference/engines/table-engines/integrations/mysql)
-- [Using MySQL as a dictionary source](/reference/statements/create/dictionary/sources/mysql)
-- [mysql_datatypes_support_level](/reference/settings/session-settings#mysql_datatypes_support_level)
-- [mysql_map_fixed_string_to_text_in_show_columns](/reference/settings/session-settings#mysql_map_fixed_string_to_text_in_show_columns)
-- [mysql_map_string_to_text_in_show_columns](/reference/settings/session-settings#mysql_map_string_to_text_in_show_columns)
-- [mysql_max_rows_to_insert](/reference/settings/session-settings#mysql_max_rows_to_insert)
+- [The 'MySQL' table engine](/core/reference/engines/table-engines/integrations/mysql)
+- [Using MySQL as a dictionary source](/core/reference/statements/create/dictionary/sources/mysql)
+- [mysql_datatypes_support_level](/core/reference/settings/session-settings#mysql_datatypes_support_level)
+- [mysql_map_fixed_string_to_text_in_show_columns](/core/reference/settings/session-settings#mysql_map_fixed_string_to_text_in_show_columns)
+- [mysql_map_string_to_text_in_show_columns](/core/reference/settings/session-settings#mysql_map_string_to_text_in_show_columns)
+- [mysql_max_rows_to_insert](/core/reference/settings/session-settings#mysql_max_rows_to_insert)
diff --git a/reference/functions/table-functions/null.mdx b/core/reference/functions/table-functions/null.mdx
similarity index 69%
rename from reference/functions/table-functions/null.mdx
rename to core/reference/functions/table-functions/null.mdx
index 77448da9..6c261f77 100644
--- a/reference/functions/table-functions/null.mdx
+++ b/core/reference/functions/table-functions/null.mdx
@@ -7,7 +7,7 @@ title: 'null'
doc_type: 'reference'
---
-Creates a temporary table of the specified structure with the [Null](/reference/engines/table-engines/special/null) table engine. According to the `Null`-engine properties, the table data is ignored and the table itself is immediately dropped right after the query execution. The function is used for the convenience of test writing and demonstrations.
+Creates a temporary table of the specified structure with the [Null](/core/reference/engines/table-engines/special/null) table engine. According to the `Null`-engine properties, the table data is ignored and the table itself is immediately dropped right after the query execution. The function is used for the convenience of test writing and demonstrations.
## Syntax {#syntax}
@@ -17,7 +17,7 @@ null('structure')
## Argument {#argument}
-- `structure` — A list of columns and column types. [String](/reference/data-types/string).
+- `structure` — A list of columns and column types. [String](/core/reference/data-types/string).
## Returned value {#returned_value}
@@ -40,4 +40,4 @@ DROP TABLE IF EXISTS t;
## Related {#related}
-- [Null table engine](/reference/engines/table-engines/special/null)
+- [Null table engine](/core/reference/engines/table-engines/special/null)
diff --git a/reference/functions/table-functions/numbers.mdx b/core/reference/functions/table-functions/numbers.mdx
similarity index 90%
rename from reference/functions/table-functions/numbers.mdx
rename to core/reference/functions/table-functions/numbers.mdx
index 0af971f2..174ba923 100644
--- a/reference/functions/table-functions/numbers.mdx
+++ b/core/reference/functions/table-functions/numbers.mdx
@@ -14,7 +14,7 @@ doc_type: 'reference'
- `numbers(N, M, S)` – Returns a table with a single `number` column (UInt64) that contains values in `[N, N + M)` with step `S` (about `M / S` rows, rounded up). `S` must be `>= 1`.
-This is similar to the [`system.numbers`](/reference/system-tables/numbers) system table. It can be used for testing and generating successive values.
+This is similar to the [`system.numbers`](/core/reference/system-tables/numbers) system table. It can be used for testing and generating successive values.
The following queries are equivalent:
@@ -89,4 +89,4 @@ LIMIT 1;
### Notes {#notes}
- For performance reasons, if you know how many rows you need, prefer bounded forms (`numbers(N)`, `numbers(N, M[, S])`) over unbounded `numbers()` / `system.numbers`.
-- For parallel generation, use `numbers_mt(...)` or the [`system.numbers_mt`](/reference/system-tables/numbers_mt) table. Note that results may be returned in any order.
+- For parallel generation, use `numbers_mt(...)` or the [`system.numbers_mt`](/core/reference/system-tables/numbers_mt) table. Note that results may be returned in any order.
diff --git a/reference/functions/table-functions/odbc.mdx b/core/reference/functions/table-functions/odbc.mdx
similarity index 94%
rename from reference/functions/table-functions/odbc.mdx
rename to core/reference/functions/table-functions/odbc.mdx
index 4d12db96..0fbc1deb 100644
--- a/reference/functions/table-functions/odbc.mdx
+++ b/core/reference/functions/table-functions/odbc.mdx
@@ -24,7 +24,7 @@ odbc(named_collection)
| `external_database` | Name of a database in an external DBMS. |
| `external_table` | Name of a table in the `external_database`. |
-These parameters can also be passed using [named collections](/concepts/features/configuration/server-config/named-collections).
+These parameters can also be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections).
To safely implement ODBC connections, ClickHouse uses a separate program `clickhouse-odbc-bridge`. If the ODBC driver is loaded directly from `clickhouse-server`, driver problems can crash the ClickHouse server. ClickHouse automatically starts `clickhouse-odbc-bridge` when it is required. The ODBC bridge program is installed from the same package as the `clickhouse-server`.
@@ -109,5 +109,5 @@ SELECT * FROM odbc('DSN=mysqlconn', 'test', 'test')
## Related {#see-also}
-- [ODBC dictionaries](/reference/statements/create/dictionary/sources/odbc)
-- [ODBC table engine](/reference/engines/table-engines/integrations/odbc).
+- [ODBC dictionaries](/core/reference/statements/create/dictionary/sources/odbc)
+- [ODBC table engine](/core/reference/engines/table-engines/integrations/odbc).
diff --git a/reference/functions/table-functions/paimon.mdx b/core/reference/functions/table-functions/paimon.mdx
similarity index 97%
rename from reference/functions/table-functions/paimon.mdx
rename to core/reference/functions/table-functions/paimon.mdx
index 5da150e5..d3372e3b 100644
--- a/reference/functions/table-functions/paimon.mdx
+++ b/core/reference/functions/table-functions/paimon.mdx
@@ -116,4 +116,4 @@ Data types supported in Paimon partition keys:
## See Also {#see-also}
-* [Paimon cluster table function](/reference/functions/table-functions/paimonCluster)
+* [Paimon cluster table function](/core/reference/functions/table-functions/paimonCluster)
diff --git a/reference/functions/table-functions/paimonCluster.mdx b/core/reference/functions/table-functions/paimonCluster.mdx
similarity index 89%
rename from reference/functions/table-functions/paimonCluster.mdx
rename to core/reference/functions/table-functions/paimonCluster.mdx
index df5b32b6..5dabe06d 100644
--- a/reference/functions/table-functions/paimonCluster.mdx
+++ b/core/reference/functions/table-functions/paimonCluster.mdx
@@ -13,7 +13,7 @@ import ExperimentalBadge from "/snippets/components/ExperimentalBadge/Experiment
-This is an extension to the [paimon](/reference/functions/table-functions/paimon) table function.
+This is an extension to the [paimon](/core/reference/functions/table-functions/paimon) table function.
Allows processing files from Apache [Paimon](https://paimon.apache.org/) in parallel from many nodes in a specified cluster. On initiator it creates a connection to all nodes in the cluster and dispatches each file dynamically. On the worker node it asks the initiator about the next task to process and processes it. This is repeated until all tasks are finished.
@@ -30,7 +30,7 @@ paimonHDFSCluster(cluster_name, path_to_table, [,format] [,compression_method])
## Arguments {#arguments}
- `cluster_name` — Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers.
-- Description of all other arguments coincides with description of arguments in equivalent [paimon](/reference/functions/table-functions/paimon) table function.
+- Description of all other arguments coincides with description of arguments in equivalent [paimon](/core/reference/functions/table-functions/paimon) table function.
- An optional `extra_credentials` parameter can be used to pass a `role_arn` for role-based access in ClickHouse Cloud. See [Secure S3](/products/cloud/guides/data-sources/accessing-s3-data-securely) for configuration steps.
**Returned value**
@@ -47,4 +47,4 @@ A table with the specified structure for reading data from cluster in the specif
**See Also**
-- [Paimon table function](/reference/functions/table-functions/paimon)
+- [Paimon table function](/core/reference/functions/table-functions/paimon)
diff --git a/reference/functions/table-functions/postgresql.mdx b/core/reference/functions/table-functions/postgresql.mdx
similarity index 91%
rename from reference/functions/table-functions/postgresql.mdx
rename to core/reference/functions/table-functions/postgresql.mdx
index ff24295a..0f21d797 100644
--- a/reference/functions/table-functions/postgresql.mdx
+++ b/core/reference/functions/table-functions/postgresql.mdx
@@ -27,7 +27,7 @@ postgresql({host:port, database, table, user, password[, schema, [, on_conflict]
| `schema` | Non-default table schema. Optional. |
| `on_conflict` | Conflict resolution strategy. Example: `ON CONFLICT DO NOTHING`. Optional. |
-Arguments also can be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment.
+Arguments also can be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case `host` and `port` should be specified separately. This approach is recommended for production environment.
## Returned value {#returned_value}
@@ -98,7 +98,7 @@ Selecting data from ClickHouse using plain arguments:
SELECT * FROM postgresql('localhost:5432', 'test', 'test', 'postgresql_user', 'password') WHERE str IN ('test');
```
-Or using [named collections](/concepts/features/configuration/server-config/named-collections):
+Or using [named collections](/core/concepts/features/configuration/server-config/named-collections):
```sql
CREATE NAMED COLLECTION mypg AS
@@ -147,8 +147,8 @@ CREATE TABLE pg_table_schema_with_dots (a UInt32)
## Related {#related}
-- [The PostgreSQL table engine](/reference/engines/table-engines/integrations/postgresql)
-- [Using PostgreSQL as a dictionary source](/reference/statements/create/dictionary/sources/postgresql)
+- [The PostgreSQL table engine](/core/reference/engines/table-engines/integrations/postgresql)
+- [Using PostgreSQL as a dictionary source](/core/reference/statements/create/dictionary/sources/postgresql)
### Replicating or migrating Postgres data with with PeerDB {#replicating-or-migrating-postgres-data-with-with-peerdb}
diff --git a/reference/functions/table-functions/primes.mdx b/core/reference/functions/table-functions/primes.mdx
similarity index 97%
rename from reference/functions/table-functions/primes.mdx
rename to core/reference/functions/table-functions/primes.mdx
index 4c9e2d69..3ec33986 100644
--- a/reference/functions/table-functions/primes.mdx
+++ b/core/reference/functions/table-functions/primes.mdx
@@ -14,7 +14,7 @@ doc_type: 'reference'
- `primes(N, M, S)` – Returns a table with the single `prime` column (UInt64) that contains `M` prime numbers starting from the `N`-th prime (0-based) with step `S` by prime index. The returned primes correspond to indices `N, N + S, N + 2S, ..., N + (M - 1)S`. `S` must be `>= 1`.
-This is similar to the [`system.primes`](/reference/system-tables/primes) system table.
+This is similar to the [`system.primes`](/core/reference/system-tables/primes) system table.
The following queries are equivalent:
diff --git a/reference/functions/table-functions/prometheusQuery.mdx b/core/reference/functions/table-functions/prometheusQuery.mdx
similarity index 100%
rename from reference/functions/table-functions/prometheusQuery.mdx
rename to core/reference/functions/table-functions/prometheusQuery.mdx
diff --git a/reference/functions/table-functions/prometheusQueryRange.mdx b/core/reference/functions/table-functions/prometheusQueryRange.mdx
similarity index 100%
rename from reference/functions/table-functions/prometheusQueryRange.mdx
rename to core/reference/functions/table-functions/prometheusQueryRange.mdx
diff --git a/reference/functions/table-functions/redis.mdx b/core/reference/functions/table-functions/redis.mdx
similarity index 87%
rename from reference/functions/table-functions/redis.mdx
rename to core/reference/functions/table-functions/redis.mdx
index dfc04868..ee95a2f5 100644
--- a/reference/functions/table-functions/redis.mdx
+++ b/core/reference/functions/table-functions/redis.mdx
@@ -29,7 +29,7 @@ redis(host:port, key, structure[, db_index[, password[, pool_size]]])
- columns other than the primary key will be serialized in binary as Redis value in corresponding order.
- queries with key equals or in filtering will be optimized to multi keys lookup from Redis. If queries without filtering key full table scan will happen which is a heavy operation.
-[Named collections](/concepts/features/configuration/server-config/named-collections) are not supported for `redis` table function at the moment.
+[Named collections](/core/concepts/features/configuration/server-config/named-collections) are not supported for `redis` table function at the moment.
## Returned value {#returned_value}
@@ -58,5 +58,5 @@ INSERT INTO TABLE FUNCTION redis(
## Related {#related}
-- [The `Redis` table engine](/reference/engines/table-engines/integrations/redis)
-- [Using redis as a dictionary source](/reference/statements/create/dictionary/sources/redis)
+- [The `Redis` table engine](/core/reference/engines/table-engines/integrations/redis)
+- [Using redis as a dictionary source](/core/reference/statements/create/dictionary/sources/redis)
diff --git a/reference/functions/table-functions/remote.mdx b/core/reference/functions/table-functions/remote.mdx
similarity index 80%
rename from reference/functions/table-functions/remote.mdx
rename to core/reference/functions/table-functions/remote.mdx
index 3fcee753..68c24530 100644
--- a/reference/functions/table-functions/remote.mdx
+++ b/core/reference/functions/table-functions/remote.mdx
@@ -8,7 +8,7 @@ title: 'remote, remoteSecure'
doc_type: 'reference'
---
-Table function `remote` allows to access remote servers on-the-fly, i.e. without creating a [Distributed](/reference/engines/table-engines/special/distributed) table. Table function `remoteSecure` is same as `remote` but over a secure connection.
+Table function `remote` allows to access remote servers on-the-fly, i.e. without creating a [Distributed](/core/reference/engines/table-engines/special/distributed) table. Table function `remoteSecure` is same as `remote` but over a secure connection.
Both functions can be used in `SELECT` and `INSERT` queries.
@@ -27,14 +27,14 @@ remoteSecure(named_collection[, option=value [,..]])
| Argument | Description |
|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `addresses_expr` | A remote server address or an expression that generates multiple addresses of remote servers. Format: `host` or `host:port`.
The `host` can be specified as a server name, or as a IPv4 or IPv6 address. An IPv6 address must be specified in `[]`.
The `port` is the TCP port on the remote server. If the port is omitted, it uses [tcp_port](/reference/settings/server-settings/settings#tcp_port) from the server config file for table function `remote` (by default, 9000) and [tcp_port_secure](/reference/settings/server-settings/settings#tcp_port_secure) for table function `remoteSecure` (by default, 9440).
For IPv6 addresses, a port is required.
If only parameter `addresses_expr` is specified, `db` and `table` will use `system.one` by default.
Type: [String](/reference/data-types/string). |
-| `db` | Database name. Type: [String](/reference/data-types/string). |
-| `table` | Table name. Type: [String](/reference/data-types/string). |
-| `user` | User name. If not specified, `default` is used. Type: [String](/reference/data-types/string). |
-| `password` | User password. If not specified, an empty password is used. Type: [String](/reference/data-types/string). |
-| `sharding_key` | Sharding key to support distributing data across nodes. For example: `insert into remote('127.0.0.1:9000,127.0.0.2', db, table, 'default', rand())`. Type: [UInt32](/reference/data-types/int-uint). |
+| `addresses_expr` | A remote server address or an expression that generates multiple addresses of remote servers. Format: `host` or `host:port`.
The `host` can be specified as a server name, or as a IPv4 or IPv6 address. An IPv6 address must be specified in `[]`.
The `port` is the TCP port on the remote server. If the port is omitted, it uses [tcp_port](/core/reference/settings/server-settings/settings#tcp_port) from the server config file for table function `remote` (by default, 9000) and [tcp_port_secure](/core/reference/settings/server-settings/settings#tcp_port_secure) for table function `remoteSecure` (by default, 9440).
For IPv6 addresses, a port is required.
If only parameter `addresses_expr` is specified, `db` and `table` will use `system.one` by default.
Type: [String](/core/reference/data-types/string). |
+| `db` | Database name. Type: [String](/core/reference/data-types/string). |
+| `table` | Table name. Type: [String](/core/reference/data-types/string). |
+| `user` | User name. If not specified, `default` is used. Type: [String](/core/reference/data-types/string). |
+| `password` | User password. If not specified, an empty password is used. Type: [String](/core/reference/data-types/string). |
+| `sharding_key` | Sharding key to support distributing data across nodes. For example: `insert into remote('127.0.0.1:9000,127.0.0.2', db, table, 'default', rand())`. Type: [UInt32](/core/reference/data-types/int-uint). |
-Arguments also can be passed using [named collections](/concepts/features/configuration/server-config/named-collections).
+Arguments also can be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections).
## Returned value {#returned-value}
@@ -79,7 +79,7 @@ example01-01-1,example01-02-1
SELECT * FROM remote('127.0.0.1', db.remote_engine_table) LIMIT 3;
```
-Or using [named collections](/concepts/features/configuration/server-config/named-collections):
+Or using [named collections](/core/concepts/features/configuration/server-config/named-collections):
```sql
CREATE NAMED COLLECTION creds AS
@@ -171,5 +171,5 @@ The following pattern types are supported.
- `{0n..0m}` - A range of numbers with leading zeroes. This pattern preserves leading zeroes in indices. For instance, `example{01..03}-1` generates `example01-1`, `example02-1` and `example03-1`.
- `{a|b}` - Any number of variants separated by a `|`. The pattern specifies replicas. For instance, `example01-{1|2}` generates replicas `example01-1` and `example01-2`.
-The query will be sent to the first healthy replica. However, for `remote` the replicas are iterated in the order currently set in the [load_balancing](/reference/settings/session-settings#load_balancing) setting.
-The number of generated addresses is limited by [table_function_remote_max_addresses](/reference/settings/session-settings#table_function_remote_max_addresses) setting.
+The query will be sent to the first healthy replica. However, for `remote` the replicas are iterated in the order currently set in the [load_balancing](/core/reference/settings/session-settings#load_balancing) setting.
+The number of generated addresses is limited by [table_function_remote_max_addresses](/core/reference/settings/session-settings#table_function_remote_max_addresses) setting.
diff --git a/reference/functions/table-functions/s3.mdx b/core/reference/functions/table-functions/s3.mdx
similarity index 92%
rename from reference/functions/table-functions/s3.mdx
rename to core/reference/functions/table-functions/s3.mdx
index be860672..57dedbec 100644
--- a/reference/functions/table-functions/s3.mdx
+++ b/core/reference/functions/table-functions/s3.mdx
@@ -12,11 +12,11 @@ doc_type: 'reference'
import ExperimentalBadge from "/snippets/components/ExperimentalBadge/ExperimentalBadge.jsx";
import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/CloudNotSupportedBadge.jsx";
-Provides a table-like interface to select/insert files in [Amazon S3](https://aws.amazon.com/s3/) and [Google Cloud Storage](https://cloud.google.com/storage/). This table function is similar to the [hdfs function](/reference/functions/table-functions/hdfs), but provides S3-specific features.
+Provides a table-like interface to select/insert files in [Amazon S3](https://aws.amazon.com/s3/) and [Google Cloud Storage](https://cloud.google.com/storage/). This table function is similar to the [hdfs function](/core/reference/functions/table-functions/hdfs), but provides S3-specific features.
-If you have multiple replicas in your cluster, you can use the [s3Cluster function](/reference/functions/table-functions/s3Cluster) instead to parallelize inserts.
+If you have multiple replicas in your cluster, you can use the [s3Cluster function](/core/reference/functions/table-functions/s3Cluster) instead to parallelize inserts.
-When using the `s3 table function` with [`INSERT INTO...SELECT`](/reference/statements/insert-into#inserting-the-results-of-select), data is read and inserted in a streaming fashion. Only a few blocks of data reside in memory while the blocks are continuously read from S3 and pushed into the destination table.
+When using the `s3 table function` with [`INSERT INTO...SELECT`](/core/reference/statements/insert-into#inserting-the-results-of-select), data is read and inserted in a streaming fashion. Only a few blocks of data reside in memory while the blocks are continuously read from S3 and pushed into the destination table.
## Syntax {#syntax}
@@ -39,11 +39,11 @@ For GCS, substitute your HMAC key and HMAC secret where you see `access_key_id`
| Parameter | Description |
|-----------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `url` | Bucket url with path to file. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. For more information see [here](/reference/engines/table-engines/integrations/s3#wildcards-in-path). |
+| `url` | Bucket url with path to file. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{abc,def}` and `{N..M}` where `N`, `M` — numbers, `'abc'`, `'def'` — strings. For more information see [here](/core/reference/engines/table-engines/integrations/s3#wildcards-in-path). |
| `NOSIGN` | If this keyword is provided in place of credentials, all the requests will not be signed. |
| `access_key_id` and `secret_access_key` | Keys that specify credentials to use with given endpoint. Optional. |
| `session_token` | Session token to use with the given keys. Optional when passing keys. |
-| `format` | The [format](/reference/formats) of the file. |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
| `compression_method` | Parameter is optional. Supported values: `none`, `gzip` or `gz`, `brotli` or `br`, `xz` or `LZMA`, `zstd` or `zst`. By default, it will autodetect compression method by file extension. |
| `headers` | Parameter is optional. Allows headers to be passed in the S3 request. Pass in the format `headers(key=value)` e.g. `headers('x-amz-request-payer' = 'requester')`. |
@@ -64,7 +64,7 @@ The GCS url is in this format as the endpoint for the Google XML API is differen
and not ~~https://storage.cloud.google.com~~.
-Arguments can also be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case `url`, `access_key_id`, `secret_access_key`, `format`, `structure`, `compression_method` work in the same way, and some extra parameters are supported:
+Arguments can also be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case `url`, `access_key_id`, `secret_access_key`, `format`, `structure`, `compression_method` work in the same way, and some extra parameters are supported:
| Argument | Description |
|-------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
@@ -233,7 +233,7 @@ Custom mapper can be added into `config.xml`:
```
-For production use cases it is recommended to use [named collections](/concepts/features/configuration/server-config/named-collections). Here is the example:
+For production use cases it is recommended to use [named collections](/core/concepts/features/configuration/server-config/named-collections). Here is the example:
```sql
CREATE NAMED COLLECTION creds AS
@@ -391,9 +391,9 @@ Peak memory usage: 192.27 KiB.
## Storage Settings {#storage-settings}
-- [s3_truncate_on_insert](/reference/settings/session-settings#s3_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
-- [s3_create_new_file_on_insert](/reference/settings/session-settings#s3_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
-- [s3_skip_empty_files](/reference/settings/session-settings#s3_skip_empty_files) - allows to skip empty files while reading. Enabled by default.
+- [s3_truncate_on_insert](/core/reference/settings/session-settings#s3_truncate_on_insert) - allows to truncate file before insert into it. Disabled by default.
+- [s3_create_new_file_on_insert](/core/reference/settings/session-settings#s3_create_new_file_on_insert) - allows to create a new file on each insert if format has suffix. Disabled by default.
+- [s3_skip_empty_files](/core/reference/settings/session-settings#s3_skip_empty_files) - allows to skip empty files while reading. Enabled by default.
## Nested Avro Schemas {#nested-avro-schemas}
@@ -425,5 +425,5 @@ SETTINGS schema_inference_mode='union';
## Related {#related}
-- [S3 engine](/reference/engines/table-engines/integrations/s3)
+- [S3 engine](/core/reference/engines/table-engines/integrations/s3)
- [Integrating S3 with ClickHouse](/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse)
diff --git a/reference/functions/table-functions/s3Cluster.mdx b/core/reference/functions/table-functions/s3Cluster.mdx
similarity index 86%
rename from reference/functions/table-functions/s3Cluster.mdx
rename to core/reference/functions/table-functions/s3Cluster.mdx
index 3a80d3bc..0fd865d2 100644
--- a/reference/functions/table-functions/s3Cluster.mdx
+++ b/core/reference/functions/table-functions/s3Cluster.mdx
@@ -8,7 +8,7 @@ title: 's3Cluster'
doc_type: 'reference'
---
-This is an extension to the [s3](/reference/functions/table-functions/s3) table function.
+This is an extension to the [s3](/core/reference/functions/table-functions/s3) table function.
Allows processing files from [Amazon S3](https://aws.amazon.com/s3/) and Google Cloud Storage [Google Cloud Storage](https://cloud.google.com/storage/) in parallel with many nodes in a specified cluster. On initiator it creates a connection to all nodes in the cluster, discloses asterisks in S3 file path, and dispatches each file dynamically. On the worker node it asks the initiator about the next task to process and processes it. This is repeated until all tasks are finished.
@@ -24,17 +24,17 @@ s3Cluster(cluster_name, named_collection[, option=value [,..]])
| Argument | Description |
|---------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `cluster_name` | Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers. |
-| `url` | path to a file or a bunch of files. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{'abc','def'}` and `{N..M}` where `N`, `M` — numbers, `abc`, `def` — strings. For more information see [Wildcards In Path](/reference/engines/table-engines/integrations/s3#wildcards-in-path). |
+| `url` | path to a file or a bunch of files. Supports following wildcards in readonly mode: `*`, `**`, `?`, `{'abc','def'}` and `{N..M}` where `N`, `M` — numbers, `abc`, `def` — strings. For more information see [Wildcards In Path](/core/reference/engines/table-engines/integrations/s3#wildcards-in-path). |
| `NOSIGN` | If this keyword is provided in place of credentials, all the requests will not be signed. |
| `access_key_id` and `secret_access_key` | Keys that specify credentials to use with given endpoint. Optional. |
| `session_token` | Session token to use with the given keys. Optional when passing keys. |
-| `format` | The [format](/reference/formats) of the file. |
+| `format` | The [format](/core/reference/formats) of the file. |
| `structure` | Structure of the table. Format `'column1_name column1_type, column2_name column2_type, ...'`. |
| `compression_method` | Parameter is optional. Supported values: `none`, `gzip` or `gz`, `brotli` or `br`, `xz` or `LZMA`, `zstd` or `zst`. By default, it will autodetect compression method by file extension. |
-| `headers` | Parameter is optional. Allows headers to be passed in the S3 request. Pass in the format `headers(key=value)` e.g. `headers('x-amz-request-payer' = 'requester')`. See [here](/reference/functions/table-functions/s3#accessing-requester-pays-buckets) for example of use. |
+| `headers` | Parameter is optional. Allows headers to be passed in the S3 request. Pass in the format `headers(key=value)` e.g. `headers('x-amz-request-payer' = 'requester')`. See [here](/core/reference/functions/table-functions/s3#accessing-requester-pays-buckets) for example of use. |
| `extra_credentials` | Optional. `roleARN` can be passed via this parameter. See [here](/products/cloud/guides/data-sources/accessing-s3-data-securely#access-your-s3-bucket-with-the-clickhouseaccess-role) for an example. |
-Arguments can also be passed using [named collections](/concepts/features/configuration/server-config/named-collections). In this case `url`, `access_key_id`, `secret_access_key`, `format`, `structure`, `compression_method` work in the same way, and some extra parameters are supported:
+Arguments can also be passed using [named collections](/core/concepts/features/configuration/server-config/named-collections). In this case `url`, `access_key_id`, `secret_access_key`, `format`, `structure`, `compression_method` work in the same way, and some extra parameters are supported:
| Argument | Description |
|--------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
@@ -68,7 +68,7 @@ Count the total amount of rows in all files in the cluster `cluster_simple`:
If your listing of files contains number ranges with leading zeros, use the construction with braces for each digit separately or use `?`.
-For production use cases, it is recommended to use [named collections](/concepts/features/configuration/server-config/named-collections). Here is the example:
+For production use cases, it is recommended to use [named collections](/core/concepts/features/configuration/server-config/named-collections). Here is the example:
```sql
CREATE NAMED COLLECTION creds AS
@@ -82,7 +82,7 @@ SELECT count(*) FROM s3Cluster(
## Accessing private and public buckets {#accessing-private-and-public-buckets}
-Users can use the same approaches as document for the s3 function [here](/reference/functions/table-functions/s3#accessing-public-buckets).
+Users can use the same approaches as document for the s3 function [here](/core/reference/functions/table-functions/s3#accessing-public-buckets).
## Optimizing performance {#optimizing-performance}
@@ -90,5 +90,5 @@ For details on optimizing the performance of the s3 function see [our detailed g
## Related {#related}
-- [S3 engine](/reference/engines/table-engines/integrations/s3)
-- [s3 table function](/reference/functions/table-functions/s3)
+- [S3 engine](/core/reference/engines/table-engines/integrations/s3)
+- [s3 table function](/core/reference/functions/table-functions/s3)
diff --git a/reference/functions/table-functions/sqlite.mdx b/core/reference/functions/table-functions/sqlite.mdx
similarity index 68%
rename from reference/functions/table-functions/sqlite.mdx
rename to core/reference/functions/table-functions/sqlite.mdx
index 08997793..4c5c89df 100644
--- a/reference/functions/table-functions/sqlite.mdx
+++ b/core/reference/functions/table-functions/sqlite.mdx
@@ -6,7 +6,7 @@ title: 'sqlite'
doc_type: 'reference'
---
-Allows to perform queries on data stored in a [SQLite](/reference/engines/database-engines/sqlite) database.
+Allows to perform queries on data stored in a [SQLite](/core/reference/engines/database-engines/sqlite) database.
## Syntax {#syntax}
@@ -16,8 +16,8 @@ sqlite('db_path', 'table_name')
## Arguments {#arguments}
-- `db_path` — Path to a file with an SQLite database. [String](/reference/data-types/string).
-- `table_name` — Name of a table in the SQLite database. [String](/reference/data-types/string).
+- `db_path` — Path to a file with an SQLite database. [String](/core/reference/data-types/string).
+- `table_name` — Name of a table in the SQLite database. [String](/core/reference/data-types/string).
## Returned value {#returned_value}
@@ -39,5 +39,5 @@ SELECT * FROM sqlite('sqlite.db', 'table1') ORDER BY col2;
## Related {#related}
-- [SQLite](/reference/engines/table-engines/integrations/sqlite) table engine
-- [SQLite database engine](/reference/engines/database-engines/sqlite) — Data types support section
+- [SQLite](/core/reference/engines/table-engines/integrations/sqlite) table engine
+- [SQLite database engine](/core/reference/engines/database-engines/sqlite) — Data types support section
diff --git a/reference/functions/table-functions/timeSeriesData.mdx b/core/reference/functions/table-functions/timeSeriesData.mdx
similarity index 84%
rename from reference/functions/table-functions/timeSeriesData.mdx
rename to core/reference/functions/table-functions/timeSeriesData.mdx
index d825056a..7b382a52 100644
--- a/reference/functions/table-functions/timeSeriesData.mdx
+++ b/core/reference/functions/table-functions/timeSeriesData.mdx
@@ -7,8 +7,8 @@ title: 'timeSeriesData'
doc_type: 'reference'
---
-`timeSeriesData(db_name.time_series_table)` - Returns the [data](/reference/engines/table-engines/integrations/time-series#data-table) table
-used by table `db_name.time_series_table` whose table engine is [TimeSeries](/reference/engines/table-engines/integrations/time-series):
+`timeSeriesData(db_name.time_series_table)` - Returns the [data](/core/reference/engines/table-engines/integrations/time-series#data-table) table
+used by table `db_name.time_series_table` whose table engine is [TimeSeries](/core/reference/engines/table-engines/integrations/time-series):
```sql
CREATE TABLE db_name.time_series_table ENGINE=TimeSeries DATA data_table
diff --git a/reference/functions/table-functions/timeSeriesMetrics.mdx b/core/reference/functions/table-functions/timeSeriesMetrics.mdx
similarity index 83%
rename from reference/functions/table-functions/timeSeriesMetrics.mdx
rename to core/reference/functions/table-functions/timeSeriesMetrics.mdx
index 53fdbf3e..d43cf131 100644
--- a/reference/functions/table-functions/timeSeriesMetrics.mdx
+++ b/core/reference/functions/table-functions/timeSeriesMetrics.mdx
@@ -7,8 +7,8 @@ title: 'timeSeriesMetrics'
doc_type: 'reference'
---
-`timeSeriesMetrics(db_name.time_series_table)` - Returns the [metrics](/reference/engines/table-engines/integrations/time-series#metrics-table) table
-used by table `db_name.time_series_table` whose table engine is the [TimeSeries](/reference/engines/table-engines/integrations/time-series) engine:
+`timeSeriesMetrics(db_name.time_series_table)` - Returns the [metrics](/core/reference/engines/table-engines/integrations/time-series#metrics-table) table
+used by table `db_name.time_series_table` whose table engine is the [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) engine:
```sql
CREATE TABLE db_name.time_series_table ENGINE=TimeSeries METRICS metrics_table
diff --git a/reference/functions/table-functions/timeSeriesSelector.mdx b/core/reference/functions/table-functions/timeSeriesSelector.mdx
similarity index 100%
rename from reference/functions/table-functions/timeSeriesSelector.mdx
rename to core/reference/functions/table-functions/timeSeriesSelector.mdx
diff --git a/reference/functions/table-functions/timeSeriesTags.mdx b/core/reference/functions/table-functions/timeSeriesTags.mdx
similarity index 84%
rename from reference/functions/table-functions/timeSeriesTags.mdx
rename to core/reference/functions/table-functions/timeSeriesTags.mdx
index 29df42cd..44b8a953 100644
--- a/reference/functions/table-functions/timeSeriesTags.mdx
+++ b/core/reference/functions/table-functions/timeSeriesTags.mdx
@@ -7,8 +7,8 @@ title: 'timeSeriesTags'
doc_type: 'reference'
---
-`timeSeriesTags(db_name.time_series_table)` - Returns the [tags](/reference/engines/table-engines/integrations/time-series#tags-table) table
-used by table `db_name.time_series_table` whose table engine is the [TimeSeries](/reference/engines/table-engines/integrations/time-series) engine:
+`timeSeriesTags(db_name.time_series_table)` - Returns the [tags](/core/reference/engines/table-engines/integrations/time-series#tags-table) table
+used by table `db_name.time_series_table` whose table engine is the [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) engine:
```sql
CREATE TABLE db_name.time_series_table ENGINE=TimeSeries TAGS tags_table
diff --git a/reference/functions/table-functions/url.mdx b/core/reference/functions/table-functions/url.mdx
similarity index 72%
rename from reference/functions/table-functions/url.mdx
rename to core/reference/functions/table-functions/url.mdx
index 9741040e..5a2d5351 100644
--- a/reference/functions/table-functions/url.mdx
+++ b/core/reference/functions/table-functions/url.mdx
@@ -13,7 +13,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
`url` function creates a table from the `URL` with given `format` and `structure`.
-`url` function may be used in `SELECT` and `INSERT` queries on data in [URL](/reference/engines/table-engines/special/url) tables.
+`url` function may be used in `SELECT` and `INSERT` queries on data in [URL](/core/reference/engines/table-engines/special/url) tables.
## Syntax {#syntax}
@@ -25,9 +25,9 @@ url(URL [,format] [,structure] [,headers])
| Parameter | Description |
|-------------|--------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `URL` | Single quoted HTTP or HTTPS server address, which can accept `GET` or `POST` requests (for `SELECT` or `INSERT` queries correspondingly). Type: [String](/reference/data-types/string). |
-| `format` | [Format](/reference/formats) of the data. Type: [String](/reference/data-types/string). |
-| `structure` | Table structure in `'UserID UInt64, Name String'` format. Determines column names and types. Type: [String](/reference/data-types/string). |
+| `URL` | Single quoted HTTP or HTTPS server address, which can accept `GET` or `POST` requests (for `SELECT` or `INSERT` queries correspondingly). Type: [String](/core/reference/data-types/string). |
+| `format` | [Format](/core/reference/formats) of the data. Type: [String](/core/reference/data-types/string). |
+| `structure` | Table structure in `'UserID UInt64, Name String'` format. Determines column names and types. Type: [String](/core/reference/data-types/string). |
| `headers` | Headers in `'headers('key1'='value1', 'key2'='value2')'` format. You can set headers for HTTP call. |
## Returned value {#returned_value}
@@ -36,7 +36,7 @@ A table with the specified format and structure and with data from the defined `
## Examples {#examples}
-Getting the first 3 lines of a table that contains columns of `String` and [UInt32](/reference/data-types/int-uint) type from HTTP-server which answers in [CSV](/reference/formats/CSV/CSV) format.
+Getting the first 3 lines of a table that contains columns of `String` and [UInt32](/core/reference/data-types/int-uint) type from HTTP-server which answers in [CSV](/core/reference/formats/CSV/CSV) format.
```sql
SELECT * FROM url('http://127.0.0.1:12345/', CSV, 'column1 String, column2 UInt32', headers('Accept'='text/csv; charset=utf-8')) LIMIT 3;
@@ -52,8 +52,8 @@ SELECT * FROM test_table;
## Globs in URL {#globs-in-url}
-Patterns in `{ }` are used to generate a set of shards or to specify failover addresses. Supported pattern types and examples see in the description of the [remote](/reference/functions/table-functions/remote#globs-in-addresses) function.
-Character `|` inside patterns is used to specify failover addresses. They are iterated in the same order as listed in the pattern. The number of generated addresses is limited by [glob_expansion_max_elements](/reference/settings/session-settings#glob_expansion_max_elements) setting.
+Patterns in `{ }` are used to generate a set of shards or to specify failover addresses. Supported pattern types and examples see in the description of the [remote](/core/reference/functions/table-functions/remote#globs-in-addresses) function.
+Character `|` inside patterns is used to specify failover addresses. They are iterated in the same order as listed in the pattern. The number of generated addresses is limited by [glob_expansion_max_elements](/core/reference/settings/session-settings#glob_expansion_max_elements) setting.
## Virtual Columns {#virtual-columns}
@@ -77,7 +77,7 @@ SELECT * FROM url('http://data/path/date=*/country=*/code=*/*.parquet') WHERE da
## Resolving relative URLs {#resolving-relative-urls}
-The [url_base](/reference/settings/session-settings#url_base) setting allows passing a relative URL to the `url` function. When `url_base` is set and the function argument is a relative reference, it is resolved against the base URL per [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986).
+The [url_base](/core/reference/settings/session-settings#url_base) setting allows passing a relative URL to the `url` function. When `url_base` is set and the function argument is a relative reference, it is resolved against the base URL per [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986).
The resolution rules are:
@@ -98,14 +98,14 @@ SELECT * FROM url('tests/queries/0_stateless/data_csv/data.csv', CSV) LIMIT 3;
## Storage Settings {#storage-settings}
-- [engine_url_skip_empty_files](/reference/settings/session-settings#engine_url_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
-- [enable_url_encoding](/reference/settings/session-settings#enable_url_encoding) - allows to enable/disable decoding/encoding path in uri. Enabled by default.
-- [url_base](/reference/settings/session-settings#url_base) - base URL for resolving relative URLs passed to the `url` function.
+- [engine_url_skip_empty_files](/core/reference/settings/session-settings#engine_url_skip_empty_files) - allows to skip empty files while reading. Disabled by default.
+- [enable_url_encoding](/core/reference/settings/session-settings#enable_url_encoding) - allows to enable/disable decoding/encoding path in uri. Enabled by default.
+- [url_base](/core/reference/settings/session-settings#url_base) - base URL for resolving relative URLs passed to the `url` function.
## Permissions {#permissions}
-`url` function requires `CREATE TEMPORARY TABLE` permission. As such - it'll not work for users with [readonly](/concepts/features/configuration/settings/permissions-for-queries#readonly) = 1 setting. At least readonly = 2 is required.
+`url` function requires `CREATE TEMPORARY TABLE` permission. As such - it'll not work for users with [readonly](/core/concepts/features/configuration/settings/permissions-for-queries#readonly) = 1 setting. At least readonly = 2 is required.
## Related {#related}
-- [Virtual columns](/reference/engines/table-engines#table_engines-virtual_columns)
+- [Virtual columns](/core/reference/engines/table-engines#table_engines-virtual_columns)
diff --git a/reference/functions/table-functions/urlCluster.mdx b/core/reference/functions/table-functions/urlCluster.mdx
similarity index 76%
rename from reference/functions/table-functions/urlCluster.mdx
rename to core/reference/functions/table-functions/urlCluster.mdx
index b35c2a28..9b66b8c1 100644
--- a/reference/functions/table-functions/urlCluster.mdx
+++ b/core/reference/functions/table-functions/urlCluster.mdx
@@ -20,9 +20,9 @@ urlCluster(cluster_name, URL, format, structure)
| Argument | Description |
|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------|
| `cluster_name` | Name of a cluster that is used to build a set of addresses and connection parameters to remote and local servers. |
-| `URL` | HTTP or HTTPS server address, which can accept `GET` requests. Type: [String](/reference/data-types/string). |
-| `format` | [Format](/reference/formats) of the data. Type: [String](/reference/data-types/string). |
-| `structure` | Table structure in `'UserID UInt64, Name String'` format. Determines column names and types. Type: [String](/reference/data-types/string). |
+| `URL` | HTTP or HTTPS server address, which can accept `GET` requests. Type: [String](/core/reference/data-types/string). |
+| `format` | [Format](/core/reference/formats) of the data. Type: [String](/core/reference/data-types/string). |
+| `structure` | Table structure in `'UserID UInt64, Name String'` format. Determines column names and types. Type: [String](/core/reference/data-types/string). |
## Returned value {#returned_value}
@@ -30,7 +30,7 @@ A table with the specified format and structure and with data from the defined `
## Examples {#examples}
-Getting the first 3 lines of a table that contains columns of `String` and [UInt32](/reference/data-types/int-uint) type from HTTP-server which answers in [CSV](/reference/formats/CSV/CSV) format.
+Getting the first 3 lines of a table that contains columns of `String` and [UInt32](/core/reference/data-types/int-uint) type from HTTP-server which answers in [CSV](/core/reference/formats/CSV/CSV) format.
1. Create a basic HTTP server using the standard Python 3 tools and start it:
@@ -56,10 +56,10 @@ SELECT * FROM urlCluster('cluster_simple','http://127.0.0.1:12345', CSV, 'column
## Globs in URL {#globs-in-url}
-Patterns in `{ }` are used to generate a set of shards or to specify failover addresses. Supported pattern types and examples see in the description of the [remote](/reference/functions/table-functions/remote#globs-in-addresses) function.
-Character `|` inside patterns is used to specify failover addresses. They are iterated in the same order as listed in the pattern. The number of generated addresses is limited by [glob_expansion_max_elements](/reference/settings/session-settings#glob_expansion_max_elements) setting.
+Patterns in `{ }` are used to generate a set of shards or to specify failover addresses. Supported pattern types and examples see in the description of the [remote](/core/reference/functions/table-functions/remote#globs-in-addresses) function.
+Character `|` inside patterns is used to specify failover addresses. They are iterated in the same order as listed in the pattern. The number of generated addresses is limited by [glob_expansion_max_elements](/core/reference/settings/session-settings#glob_expansion_max_elements) setting.
## Related {#related}
-- [HDFS engine](/reference/engines/table-engines/integrations/hdfs)
-- [URL table function](/reference/engines/table-engines/special/url)
+- [HDFS engine](/core/reference/engines/table-engines/integrations/hdfs)
+- [URL table function](/core/reference/engines/table-engines/special/url)
diff --git a/reference/functions/table-functions/values.mdx b/core/reference/functions/table-functions/values.mdx
similarity index 96%
rename from reference/functions/table-functions/values.mdx
rename to core/reference/functions/table-functions/values.mdx
index 3f37e4ac..96f5becf 100644
--- a/reference/functions/table-functions/values.mdx
+++ b/core/reference/functions/table-functions/values.mdx
@@ -35,10 +35,10 @@ VALUES(
## Arguments {#arguments}
-- `column1_name Type1, ...` (optional). [String](/reference/data-types/string)
+- `column1_name Type1, ...` (optional). [String](/core/reference/data-types/string)
specifying the column names and types. If this argument is omitted columns will
be named as `c1`, `c2`, etc.
-- `(value1_row1, value2_row1)`. [Tuples](/reference/data-types/tuple)
+- `(value1_row1, value2_row1)`. [Tuples](/core/reference/data-types/tuple)
containing values of any type.
@@ -228,4 +228,4 @@ naming columns of derived tables. If omitted, columns are named `c1`, `c2`, etc.
## See also {#see-also}
-- [Values format](/reference/formats/Values)
+- [Values format](/core/reference/formats/Values)
diff --git a/reference/functions/table-functions/view.mdx b/core/reference/functions/table-functions/view.mdx
similarity index 72%
rename from reference/functions/table-functions/view.mdx
rename to core/reference/functions/table-functions/view.mdx
index 5ec196e6..30031bf4 100644
--- a/reference/functions/table-functions/view.mdx
+++ b/core/reference/functions/table-functions/view.mdx
@@ -6,7 +6,7 @@ title: 'view'
doc_type: 'reference'
---
-Turns a subquery into a table. The function implements views (see [CREATE VIEW](/reference/statements/create/view)). The resulting table does not store data, but only stores the specified `SELECT` query. When reading from the table, ClickHouse executes the query and deletes all unnecessary columns from the result.
+Turns a subquery into a table. The function implements views (see [CREATE VIEW](/core/reference/statements/create/view)). The resulting table does not store data, but only stores the specified `SELECT` query. When reading from the table, ClickHouse executes the query and deletes all unnecessary columns from the result.
## Syntax {#syntax}
@@ -48,7 +48,7 @@ SELECT * FROM view(SELECT name FROM months);
└──────────┘
```
-You can use the `view` function as a parameter of the [remote](/reference/functions/table-functions/remote) and [cluster](/reference/functions/table-functions/cluster) table functions:
+You can use the `view` function as a parameter of the [remote](/core/reference/functions/table-functions/remote) and [cluster](/core/reference/functions/table-functions/cluster) table functions:
```sql title="Query"
SELECT * FROM remote(`127.0.0.1`, view(SELECT a, b, c FROM table_name));
@@ -60,4 +60,4 @@ SELECT * FROM cluster(`cluster_name`, view(SELECT a, b, c FROM table_name));
## Related {#related}
-- [View Table Engine](/reference/engines/table-engines/special/view)
+- [View Table Engine](/core/reference/engines/table-engines/special/view)
diff --git a/reference/functions/table-functions/ytsaurus.mdx b/core/reference/functions/table-functions/ytsaurus.mdx
similarity index 78%
rename from reference/functions/table-functions/ytsaurus.mdx
rename to core/reference/functions/table-functions/ytsaurus.mdx
index 33f58cbd..8e432268 100644
--- a/reference/functions/table-functions/ytsaurus.mdx
+++ b/core/reference/functions/table-functions/ytsaurus.mdx
@@ -23,7 +23,7 @@ ytsaurus(http_proxy_url, cypress_path, oauth_token, format)
This is an experimental feature that may change in backwards-incompatible ways in the future releases.
Enable usage of the YTsaurus table function
-with [allow_experimental_ytsaurus_table_function](/reference/settings/session-settings#allow_experimental_ytsaurus_table_engine) setting.
+with [allow_experimental_ytsaurus_table_function](/core/reference/settings/session-settings#allow_experimental_ytsaurus_table_engine) setting.
Input the command `set allow_experimental_ytsaurus_table_function = 1`.
@@ -32,7 +32,7 @@ Input the command `set allow_experimental_ytsaurus_table_function = 1`.
- `http_proxy_url` — URL to the YTsaurus http proxy.
- `cypress_path` — Cypress path to the data source.
- `oauth_token` — OAuth token.
-- `format` — The [format](/reference/formats) of the data source.
+- `format` — The [format](/core/reference/formats) of the data source.
**Returned value**
@@ -40,4 +40,4 @@ A table with the specified structure for reading data in the specified ytsaurus
**See Also**
-- [ytsaurus engine](/reference/engines/table-engines/integrations/ytsaurus)
+- [ytsaurus engine](/core/reference/engines/table-engines/integrations/ytsaurus)
diff --git a/reference/functions/table-functions/zeros.mdx b/core/reference/functions/table-functions/zeros.mdx
similarity index 100%
rename from reference/functions/table-functions/zeros.mdx
rename to core/reference/functions/table-functions/zeros.mdx
diff --git a/reference/functions/window-functions/cume_dist.mdx b/core/reference/functions/window-functions/cume_dist.mdx
similarity index 95%
rename from reference/functions/window-functions/cume_dist.mdx
rename to core/reference/functions/window-functions/cume_dist.mdx
index de67130c..dca457b0 100644
--- a/reference/functions/window-functions/cume_dist.mdx
+++ b/core/reference/functions/window-functions/cume_dist.mdx
@@ -20,11 +20,11 @@ WINDOW window_name as ([PARTITION BY grouping_column] [ORDER BY sorting_column]
The default and required window frame definition is `RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING`.
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Returned value**
-- The relative rank of the current row. The return type is Float64 in the range [0, 1]. [Float64](/reference/data-types/float).
+- The relative rank of the current row. The return type is Float64 in the range [0, 1]. [Float64](/core/reference/data-types/float).
**Example**
diff --git a/reference/functions/window-functions/dense_rank.mdx b/core/reference/functions/window-functions/dense_rank.mdx
similarity index 90%
rename from reference/functions/window-functions/dense_rank.mdx
rename to core/reference/functions/window-functions/dense_rank.mdx
index 938885e1..aab58819 100644
--- a/reference/functions/window-functions/dense_rank.mdx
+++ b/core/reference/functions/window-functions/dense_rank.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
Ranks the current row within its partition without gaps. In other words, if the value of any new row encountered is equal to the value of one of the previous rows then it will receive the next successive rank without any gaps in ranking.
-The [rank](/reference/functions/window-functions/rank) function provides the same behaviour, but with gaps in ranking.
+The [rank](/core/reference/functions/window-functions/rank) function provides the same behaviour, but with gaps in ranking.
**Syntax**
@@ -22,11 +22,11 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Returned value**
-- A number for the current row within its partition, without gaps in ranking. [UInt64](/reference/data-types/int-uint).
+- A number for the current row within its partition, without gaps in ranking. [UInt64](/core/reference/data-types/int-uint).
**Example**
diff --git a/reference/functions/window-functions/first_value.mdx b/core/reference/functions/window-functions/first_value.mdx
similarity index 94%
rename from reference/functions/window-functions/first_value.mdx
rename to core/reference/functions/window-functions/first_value.mdx
index 47d4b753..057b41b2 100644
--- a/reference/functions/window-functions/first_value.mdx
+++ b/core/reference/functions/window-functions/first_value.mdx
@@ -22,12 +22,12 @@ Alias: `any`.
Using the optional modifier `RESPECT NULLS` after `first_value(column_name)` will ensure that `NULL` arguments are not skipped.
-See [NULL processing](/reference/functions/aggregate-functions#null-processing) for more information.
+See [NULL processing](/core/reference/functions/aggregate-functions#null-processing) for more information.
Alias: `firstValueRespectNulls`
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Returned value**
diff --git a/reference/functions/window-functions/index.mdx b/core/reference/functions/window-functions/index.mdx
similarity index 96%
rename from reference/functions/window-functions/index.mdx
rename to core/reference/functions/window-functions/index.mdx
index a7d50ac9..5579528e 100644
--- a/reference/functions/window-functions/index.mdx
+++ b/core/reference/functions/window-functions/index.mdx
@@ -81,14 +81,14 @@ WINDOW window_name as ([
These functions can be used only as a window function.
-- [`row_number()`](/reference/functions/window-functions/row_number) - Number the current row within its partition starting from 1.
-- [`first_value(x)`](/reference/functions/window-functions/first_value) - Return the first value evaluated within its ordered frame.
-- [`last_value(x)`](/reference/functions/window-functions/last_value) - Return the last value evaluated within its ordered frame.
-- [`nth_value(x, offset)`](/reference/functions/window-functions/nth_value) - Return the first non-NULL value evaluated against the nth row (offset) in its ordered frame.
-- [`rank()`](/reference/functions/window-functions/rank) - Rank the current row within its partition with gaps.
-- [`dense_rank()`](/reference/functions/window-functions/dense_rank) - Rank the current row within its partition without gaps.
-- [`lagInFrame(x)`](/reference/functions/window-functions/lagInFrame) - Return a value evaluated at the row that is at a specified physical offset row before the current row within the ordered frame.
-- [`leadInFrame(x)`](/reference/functions/window-functions/leadInFrame) - Return a value evaluated at the row that is offset rows after the current row within the ordered frame.
+- [`row_number()`](/core/reference/functions/window-functions/row_number) - Number the current row within its partition starting from 1.
+- [`first_value(x)`](/core/reference/functions/window-functions/first_value) - Return the first value evaluated within its ordered frame.
+- [`last_value(x)`](/core/reference/functions/window-functions/last_value) - Return the last value evaluated within its ordered frame.
+- [`nth_value(x, offset)`](/core/reference/functions/window-functions/nth_value) - Return the first non-NULL value evaluated against the nth row (offset) in its ordered frame.
+- [`rank()`](/core/reference/functions/window-functions/rank) - Rank the current row within its partition with gaps.
+- [`dense_rank()`](/core/reference/functions/window-functions/dense_rank) - Rank the current row within its partition without gaps.
+- [`lagInFrame(x)`](/core/reference/functions/window-functions/lagInFrame) - Return a value evaluated at the row that is at a specified physical offset row before the current row within the ordered frame.
+- [`leadInFrame(x)`](/core/reference/functions/window-functions/leadInFrame) - Return a value evaluated at the row that is offset rows after the current row within the ordered frame.
## Examples {#examples}
diff --git a/reference/functions/window-functions/lag.mdx b/core/reference/functions/window-functions/lag.mdx
similarity index 88%
rename from reference/functions/window-functions/lag.mdx
rename to core/reference/functions/window-functions/lag.mdx
index 2605a920..1e461f5f 100644
--- a/reference/functions/window-functions/lag.mdx
+++ b/core/reference/functions/window-functions/lag.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
---
Returns a value evaluated at the row that is at a specified physical offset before the current row within the ordered frame.
-This function is similar to [`lagInFrame`](/reference/functions/window-functions/lagInFrame), but always uses the `ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING` frame.
+This function is similar to [`lagInFrame`](/core/reference/functions/window-functions/lagInFrame), but always uses the `ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING` frame.
**Syntax**
@@ -18,12 +18,12 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Parameters**
- `x` — Column name.
-- `offset` — Offset to apply. [(U)Int*](/reference/data-types/int-uint). (Optional - `1` by default).
+- `offset` — Offset to apply. [(U)Int*](/core/reference/data-types/int-uint). (Optional - `1` by default).
- `default` — Value to return if calculated row exceeds the boundaries of the window frame. (Optional - default value of column type when omitted).
**Returned value**
diff --git a/reference/functions/window-functions/lagInFrame.mdx b/core/reference/functions/window-functions/lagInFrame.mdx
similarity index 95%
rename from reference/functions/window-functions/lagInFrame.mdx
rename to core/reference/functions/window-functions/lagInFrame.mdx
index 4e274f0e..d1b40607 100644
--- a/reference/functions/window-functions/lagInFrame.mdx
+++ b/core/reference/functions/window-functions/lagInFrame.mdx
@@ -24,11 +24,11 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Parameters**
- `x` — Column name.
-- `offset` — Offset to apply. [(U)Int*](/reference/data-types/int-uint). (Optional - `1` by default).
+- `offset` — Offset to apply. [(U)Int*](/core/reference/data-types/int-uint). (Optional - `1` by default).
- `default` — Value to return if calculated row exceeds the boundaries of the window frame. (Optional - default value of column type when omitted).
**Returned value**
diff --git a/reference/functions/window-functions/last_value.mdx b/core/reference/functions/window-functions/last_value.mdx
similarity index 94%
rename from reference/functions/window-functions/last_value.mdx
rename to core/reference/functions/window-functions/last_value.mdx
index a6821bcf..545a5138 100644
--- a/reference/functions/window-functions/last_value.mdx
+++ b/core/reference/functions/window-functions/last_value.mdx
@@ -22,12 +22,12 @@ Alias: `anyLast`.
Using the optional modifier `RESPECT NULLS` after `first_value(column_name)` will ensure that `NULL` arguments are not skipped.
-See [NULL processing](/reference/functions/aggregate-functions#null-processing) for more information.
+See [NULL processing](/core/reference/functions/aggregate-functions#null-processing) for more information.
Alias: `lastValueRespectNulls`
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Returned value**
diff --git a/reference/functions/window-functions/lead.mdx b/core/reference/functions/window-functions/lead.mdx
similarity index 92%
rename from reference/functions/window-functions/lead.mdx
rename to core/reference/functions/window-functions/lead.mdx
index 446a5189..18865054 100644
--- a/reference/functions/window-functions/lead.mdx
+++ b/core/reference/functions/window-functions/lead.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
---
Returns a value evaluated at the row that is offset rows after the current row within the ordered frame.
-This function is similar to [`leadInFrame`](/reference/functions/window-functions/leadInFrame), but always uses the `ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING` frame.
+This function is similar to [`leadInFrame`](/core/reference/functions/window-functions/leadInFrame), but always uses the `ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING` frame.
**Syntax**
@@ -18,12 +18,12 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Parameters**
- `x` — Column name.
-- `offset` — Offset to apply. [(U)Int*](/reference/data-types/int-uint). (Optional - `1` by default).
+- `offset` — Offset to apply. [(U)Int*](/core/reference/data-types/int-uint). (Optional - `1` by default).
- `default` — Value to return if calculated row exceeds the boundaries of the window frame. (Optional - default value of column type when omitted).
**Returned value**
diff --git a/reference/functions/window-functions/leadInFrame.mdx b/core/reference/functions/window-functions/leadInFrame.mdx
similarity index 96%
rename from reference/functions/window-functions/leadInFrame.mdx
rename to core/reference/functions/window-functions/leadInFrame.mdx
index ea1909e5..c58e0f57 100644
--- a/reference/functions/window-functions/leadInFrame.mdx
+++ b/core/reference/functions/window-functions/leadInFrame.mdx
@@ -24,11 +24,11 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Parameters**
- `x` — Column name.
-- `offset` — Offset to apply. [(U)Int*](/reference/data-types/int-uint). (Optional - `1` by default).
+- `offset` — Offset to apply. [(U)Int*](/core/reference/data-types/int-uint). (Optional - `1` by default).
- `default` — Value to return if calculated row exceeds the boundaries of the window frame. (Optional - default value of column type when omitted).
**Returned value**
diff --git a/reference/functions/window-functions/nth_value.mdx b/core/reference/functions/window-functions/nth_value.mdx
similarity index 97%
rename from reference/functions/window-functions/nth_value.mdx
rename to core/reference/functions/window-functions/nth_value.mdx
index a6b47cc9..79fc3000 100644
--- a/reference/functions/window-functions/nth_value.mdx
+++ b/core/reference/functions/window-functions/nth_value.mdx
@@ -18,7 +18,7 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Parameters**
diff --git a/reference/functions/window-functions/percent_rank.mdx b/core/reference/functions/window-functions/percent_rank.mdx
similarity index 97%
rename from reference/functions/window-functions/percent_rank.mdx
rename to core/reference/functions/window-functions/percent_rank.mdx
index ce82fbe2..c59d9fde 100644
--- a/reference/functions/window-functions/percent_rank.mdx
+++ b/core/reference/functions/window-functions/percent_rank.mdx
@@ -22,7 +22,7 @@ WINDOW window_name as ([PARTITION BY grouping_column] [ORDER BY sorting_column]
The default and required window frame definition is `RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING`.
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Example**
diff --git a/reference/functions/window-functions/rank.mdx b/core/reference/functions/window-functions/rank.mdx
similarity index 90%
rename from reference/functions/window-functions/rank.mdx
rename to core/reference/functions/window-functions/rank.mdx
index 596eba29..2b12caaa 100644
--- a/reference/functions/window-functions/rank.mdx
+++ b/core/reference/functions/window-functions/rank.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
Ranks the current row within its partition with gaps. In other words, if the value of any row it encounters is equal to the value of a previous row then it will receive the same rank as that previous row.
The rank of the next row is then equal to the rank of the previous row plus a gap equal to the number of times the previous rank was given.
-The [dense_rank](/reference/functions/window-functions/dense_rank) function provides the same behaviour but without gaps in ranking.
+The [dense_rank](/core/reference/functions/window-functions/dense_rank) function provides the same behaviour but without gaps in ranking.
**Syntax**
@@ -21,11 +21,11 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Returned value**
-- A number for the current row within its partition, including gaps. [UInt64](/reference/data-types/int-uint).
+- A number for the current row within its partition, including gaps. [UInt64](/core/reference/data-types/int-uint).
**Example**
diff --git a/reference/functions/window-functions/row_number.mdx b/core/reference/functions/window-functions/row_number.mdx
similarity index 92%
rename from reference/functions/window-functions/row_number.mdx
rename to core/reference/functions/window-functions/row_number.mdx
index e226552b..8d70ffc5 100644
--- a/reference/functions/window-functions/row_number.mdx
+++ b/core/reference/functions/window-functions/row_number.mdx
@@ -18,11 +18,11 @@ FROM table_name
WINDOW window_name as ([[PARTITION BY grouping_column] [ORDER BY sorting_column])
```
-For more detail on window function syntax see: [Window Functions - Syntax](/reference/functions/window-functions#syntax).
+For more detail on window function syntax see: [Window Functions - Syntax](/core/reference/functions/window-functions#syntax).
**Returned value**
-- A number for the current row within its partition. [UInt64](/reference/data-types/int-uint).
+- A number for the current row within its partition. [UInt64](/core/reference/data-types/int-uint).
**Example**
diff --git a/core/reference/home.mdx b/core/reference/home.mdx
new file mode 100644
index 00000000..986a59e9
--- /dev/null
+++ b/core/reference/home.mdx
@@ -0,0 +1,35 @@
+---
+slug: /sql-reference
+title: 'Reference'
+sidebarTitle: 'Home'
+description: 'Reference documentation for ClickHouse — SQL statements, data types, engines, functions, formats, settings, and system tables.'
+keywords: ['clickhouse', 'reference', 'sql', 'data types', 'engines', 'functions', 'formats', 'settings']
+doc_type: 'landing-page'
+---
+
+
+
+ SQL statements, clauses, operators, and syntax reference.
+
+
+ All supported data types including numeric, string, date/time, arrays, maps, and more.
+
+
+ Table and database engine reference — MergeTree family, Log, Integration, and Special engines.
+
+
+ Regular, aggregate, table, and window functions.
+
+
+ Input and output format reference for all supported data formats.
+
+
+ Server, session, and MergeTree settings reference.
+
+
+ System tables for monitoring, diagnostics, and introspection.
+
+
+ Data lake integration reference — Iceberg, Delta Lake, and Hudi.
+
+
diff --git a/core/reference/navigation.json b/core/reference/navigation.json
new file mode 100644
index 00000000..9547afaa
--- /dev/null
+++ b/core/reference/navigation.json
@@ -0,0 +1,1099 @@
+{
+ "item": "Reference",
+ "icon": "/images/icons/icon-reference.svg",
+ "pages": [
+ "core/reference/home",
+ {
+ "group": "SQL Reference",
+ "expandable": true,
+ "expanded": true,
+ "pages": [
+ "core/reference/syntax",
+ {
+ "group": "Statements",
+ "expandable": true,
+ "expanded": false,
+ "root": "core/reference/statements/index",
+ "pages": [
+ {
+ "group": "ALTER",
+ "expanded": false,
+ "pages": [
+ "core/reference/statements/alter/index",
+ "core/reference/statements/alter/apply-deleted-mask",
+ "core/reference/statements/alter/apply-patches",
+ "core/reference/statements/alter/column",
+ "core/reference/statements/alter/comment",
+ "core/reference/statements/alter/constraint",
+ "core/reference/statements/alter/database-comment",
+ "core/reference/statements/alter/delete",
+ "core/reference/statements/alter/named-collection",
+ "core/reference/statements/alter/order-by",
+ "core/reference/statements/alter/partition",
+ "core/reference/statements/alter/projection",
+ "core/reference/statements/alter/quota",
+ "core/reference/statements/alter/role",
+ "core/reference/statements/alter/row-policy",
+ "core/reference/statements/alter/sample-by",
+ "core/reference/statements/alter/setting",
+ "core/reference/statements/alter/settings-profile",
+ "core/reference/statements/alter/skipping-index",
+ "core/reference/statements/alter/statistics",
+ "core/reference/statements/alter/ttl",
+ "core/reference/statements/alter/update",
+ "core/reference/statements/alter/user",
+ "core/reference/statements/alter/masking-policy",
+ "core/reference/statements/alter/view"
+ ]
+ },
+ "core/reference/statements/attach",
+ "core/reference/statements/check-grant",
+ "core/reference/statements/check-table",
+ {
+ "group": "CREATE",
+ "expanded": false,
+ "pages": [
+ "core/reference/statements/create/index",
+ "core/reference/statements/create/database",
+ {
+ "group": "DICTIONARY",
+ "expanded": false,
+ "root": "core/reference/statements/create/dictionary",
+ "pages": [
+ "core/reference/statements/create/dictionary/attributes",
+ "core/reference/statements/create/dictionary/embedded",
+ "core/reference/statements/create/dictionary/lifetime",
+ {
+ "group": "Layouts",
+ "expanded": false,
+ "root": "core/reference/statements/create/dictionary/layouts/overview",
+ "pages": [
+ "core/reference/statements/create/dictionary/layouts/flat",
+ "core/reference/statements/create/dictionary/layouts/hashed",
+ "core/reference/statements/create/dictionary/layouts/hashed-array",
+ "core/reference/statements/create/dictionary/layouts/cache",
+ "core/reference/statements/create/dictionary/layouts/ssd-cache",
+ "core/reference/statements/create/dictionary/layouts/direct",
+ "core/reference/statements/create/dictionary/layouts/range-hashed",
+ "core/reference/statements/create/dictionary/layouts/hierarchical",
+ "core/reference/statements/create/dictionary/layouts/polygon",
+ "core/reference/statements/create/dictionary/layouts/ip-trie",
+ "core/reference/statements/create/dictionary/layouts/regexp-tree"
+ ]
+ },
+ {
+ "group": "Sources",
+ "expanded": false,
+ "root": "core/reference/statements/create/dictionary/sources/overview",
+ "pages": [
+ "core/reference/statements/create/dictionary/sources/local-file",
+ "core/reference/statements/create/dictionary/sources/executable-file",
+ "core/reference/statements/create/dictionary/sources/executable-pool",
+ "core/reference/statements/create/dictionary/sources/http",
+ "core/reference/statements/create/dictionary/sources/clickhouse",
+ "core/reference/statements/create/dictionary/sources/mysql",
+ "core/reference/statements/create/dictionary/sources/postgresql",
+ "core/reference/statements/create/dictionary/sources/mongodb",
+ "core/reference/statements/create/dictionary/sources/redis",
+ "core/reference/statements/create/dictionary/sources/cassandra",
+ "core/reference/statements/create/dictionary/sources/odbc",
+ "core/reference/statements/create/dictionary/sources/null",
+ "core/reference/statements/create/dictionary/sources/yamlregexptree",
+ "core/reference/statements/create/dictionary/sources/ytsaurus"
+ ]
+ }
+ ]
+ },
+ "core/reference/statements/create/masking-policy",
+ "core/reference/statements/create/function",
+ "core/reference/statements/create/named-collection",
+ "core/reference/statements/create/quota",
+ "core/reference/statements/create/role",
+ "core/reference/statements/create/row-policy",
+ "core/reference/statements/create/settings-profile",
+ "core/reference/statements/create/table",
+ "core/reference/statements/create/user",
+ "core/reference/statements/create/view"
+ ]
+ },
+ "core/reference/statements/delete",
+ "core/reference/statements/describe-table",
+ "core/reference/statements/detach",
+ "core/reference/statements/distributed-ddl",
+ "core/reference/statements/drop",
+ "core/reference/statements/exchange",
+ "core/reference/statements/execute_as",
+ "core/reference/statements/exists",
+ "core/reference/statements/explain",
+ "core/reference/statements/grant",
+ "core/reference/statements/in",
+ "core/reference/statements/insert-into",
+ "core/reference/statements/kill",
+ "core/reference/statements/move",
+ "core/reference/statements/optimize",
+ "core/reference/statements/parallel_with",
+ "core/reference/statements/rename",
+ "core/reference/statements/revoke",
+ {
+ "group": "SELECT",
+ "expanded": false,
+ "pages": [
+ "core/reference/statements/select/index",
+ "core/reference/statements/select/all",
+ "core/reference/statements/select/apply_modifier",
+ "core/reference/statements/select/array-join",
+ "core/reference/statements/select/distinct",
+ "core/reference/statements/select/except",
+ "core/reference/statements/select/except_modifier",
+ "core/reference/statements/select/format",
+ "core/reference/statements/select/from",
+ "core/reference/statements/select/group-by",
+ "core/reference/statements/select/having",
+ "core/reference/statements/select/intersect",
+ "core/reference/statements/select/into-outfile",
+ "core/reference/statements/select/join",
+ "core/reference/statements/select/limit-by",
+ "core/reference/statements/select/limit",
+ "core/reference/statements/select/offset",
+ "core/reference/statements/select/order-by",
+ "core/reference/statements/select/prewhere",
+ "core/reference/statements/select/qualify",
+ "core/reference/statements/select/replace_modifier",
+ "core/reference/statements/select/sample",
+ "core/reference/statements/select/union",
+ "core/reference/statements/select/where",
+ "core/reference/statements/select/with"
+ ]
+ },
+ "core/reference/statements/set-role",
+ "core/reference/statements/set",
+ "core/reference/statements/show",
+ "core/reference/statements/system",
+ "core/reference/statements/truncate",
+ "core/reference/statements/undrop",
+ "core/reference/statements/update",
+ "core/reference/statements/use",
+ "core/reference/statements/watch"
+ ]
+ },
+ {
+ "group": "Operators",
+ "expandable": true,
+ "expanded": false,
+ "root": "core/reference/operators/index",
+ "pages": [
+ "core/reference/operators/exists",
+ "core/reference/operators/distributed-ddl"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Data Types",
+ "expandable": true,
+ "expanded": false,
+ "root": "core/reference/data-types/index",
+ "pages": [
+ {
+ "group": "Numeric types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/int-uint",
+ "core/reference/data-types/float",
+ "core/reference/data-types/decimal",
+ "core/reference/data-types/boolean"
+ ]
+ },
+ {
+ "group": "String types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/string",
+ "core/reference/data-types/fixedstring"
+ ]
+ },
+ {
+ "group": "Date and time types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/date",
+ "core/reference/data-types/date32",
+ "core/reference/data-types/datetime",
+ "core/reference/data-types/datetime64",
+ "core/reference/data-types/time",
+ "core/reference/data-types/time64"
+ ]
+ },
+ {
+ "group": "Network types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/ipv4",
+ "core/reference/data-types/ipv6"
+ ]
+ },
+ {
+ "group": "Composite types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/array",
+ "core/reference/data-types/tuple",
+ "core/reference/data-types/map",
+ "core/reference/data-types/nested-data-structures/index"
+ ]
+ },
+ {
+ "group": "Semi-structured types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/newjson",
+ "core/reference/data-types/dynamic",
+ "core/reference/data-types/variant"
+ ]
+ },
+ {
+ "group": "Nullable and optional types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/nullable",
+ "core/reference/data-types/lowcardinality"
+ ]
+ },
+ {
+ "group": "Specialized types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/uuid",
+ "core/reference/data-types/enum",
+ "core/reference/data-types/geo",
+ "core/reference/data-types/qbit",
+ "core/reference/data-types/domains/index"
+ ]
+ },
+ {
+ "group": "Aggregate function types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/aggregatefunction",
+ "core/reference/data-types/simpleaggregatefunction"
+ ]
+ },
+ {
+ "group": "Special Data Types",
+ "expanded": false,
+ "pages": [
+ "core/reference/data-types/special-data-types/index",
+ "core/reference/data-types/special-data-types/expression",
+ "core/reference/data-types/special-data-types/interval",
+ "core/reference/data-types/special-data-types/nothing",
+ "core/reference/data-types/special-data-types/set"
+ ]
+ },
+ {
+ "group": "Binary encoding",
+ "pages": [
+ "core/reference/data-types/data-types-binary-encoding"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Engines",
+ "expandable": true,
+ "expanded": false,
+ "root": "core/reference/engines/engines",
+ "pages": [
+ {
+ "group": "Table Engines",
+ "expanded": false,
+ "pages": [
+ "core/reference/engines/table-engines/index",
+ {
+ "group": "Integrations",
+ "expanded": false,
+ "pages": [
+ "core/reference/engines/table-engines/integrations/index",
+ "core/reference/engines/table-engines/integrations/ExternalDistributed",
+ "core/reference/engines/table-engines/integrations/arrowflight",
+ "core/reference/engines/table-engines/integrations/azure-queue",
+ "core/reference/engines/table-engines/integrations/azureBlobStorage",
+ "core/reference/engines/table-engines/integrations/deltalake",
+ "core/reference/engines/table-engines/integrations/embedded-rocksdb",
+ "core/reference/engines/table-engines/integrations/hdfs",
+ "core/reference/engines/table-engines/integrations/hive",
+ "core/reference/engines/table-engines/integrations/hudi",
+ "core/reference/engines/table-engines/integrations/iceberg",
+ "core/reference/engines/table-engines/integrations/jdbc",
+ "core/reference/engines/table-engines/integrations/kafka",
+ "core/reference/engines/table-engines/integrations/materialized-postgresql",
+ "core/reference/engines/table-engines/integrations/mongodb",
+ "core/reference/engines/table-engines/integrations/mysql",
+ "core/reference/engines/table-engines/integrations/nats",
+ "core/reference/engines/table-engines/integrations/odbc",
+ "core/reference/engines/table-engines/integrations/paimon",
+ "core/reference/engines/table-engines/integrations/postgresql",
+ "core/reference/engines/table-engines/integrations/rabbitmq",
+ "core/reference/engines/table-engines/integrations/redis",
+ "core/reference/engines/table-engines/integrations/s3",
+ "core/reference/engines/table-engines/integrations/s3queue",
+ "core/reference/engines/table-engines/integrations/sqlite",
+ "core/reference/engines/table-engines/integrations/time-series",
+ "core/reference/engines/table-engines/integrations/ytsaurus"
+ ]
+ },
+ {
+ "group": "Log Family",
+ "expanded": false,
+ "pages": [
+ "core/reference/engines/table-engines/log-family/index",
+ "core/reference/engines/table-engines/log-family/log",
+ "core/reference/engines/table-engines/log-family/stripelog",
+ "core/reference/engines/table-engines/log-family/tinylog"
+ ]
+ },
+ {
+ "group": "MergeTree Family",
+ "expanded": false,
+ "pages": [
+ "core/reference/engines/table-engines/mergetree-family/index",
+ "core/reference/engines/table-engines/mergetree-family/mergetree",
+ "core/reference/engines/table-engines/mergetree-family/aggregatingmergetree",
+ "core/reference/engines/table-engines/mergetree-family/annindexes",
+ "core/reference/engines/table-engines/mergetree-family/coalescingmergetree",
+ "core/reference/engines/table-engines/mergetree-family/collapsingmergetree",
+ "core/reference/engines/table-engines/mergetree-family/custom-partitioning-key",
+ "core/reference/engines/table-engines/mergetree-family/graphitemergetree",
+ "core/reference/engines/table-engines/mergetree-family/invertedindexes",
+ "core/reference/engines/table-engines/mergetree-family/replacingmergetree",
+ "core/reference/engines/table-engines/mergetree-family/replication",
+ "core/reference/engines/table-engines/mergetree-family/summingmergetree",
+ "core/reference/engines/table-engines/mergetree-family/textindexes",
+ "core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree"
+ ]
+ },
+ {
+ "group": "Special",
+ "expanded": false,
+ "pages": [
+ "core/reference/engines/table-engines/special/index",
+ "core/reference/engines/table-engines/special/alias",
+ "core/reference/engines/table-engines/special/buffer",
+ "core/reference/engines/table-engines/special/dictionary",
+ "core/reference/engines/table-engines/special/distributed",
+ "core/reference/engines/table-engines/special/executable",
+ "core/reference/engines/table-engines/special/external-data",
+ "core/reference/engines/table-engines/special/file",
+ "core/reference/engines/table-engines/special/filelog",
+ "core/reference/engines/table-engines/special/generate",
+ "core/reference/engines/table-engines/special/join",
+ "core/reference/engines/table-engines/special/keepermap",
+ "core/reference/engines/table-engines/special/memory",
+ "core/reference/engines/table-engines/special/merge",
+ "core/reference/engines/table-engines/special/null",
+ "core/reference/engines/table-engines/special/set",
+ "core/reference/engines/table-engines/special/url",
+ "core/reference/engines/table-engines/special/view"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Database Engines",
+ "expanded": false,
+ "pages": [
+ "core/reference/engines/database-engines/index",
+ "core/reference/engines/database-engines/atomic",
+ "core/reference/engines/database-engines/backup",
+ "core/reference/engines/database-engines/datalake",
+ "core/reference/engines/database-engines/materialized-postgresql",
+ "core/reference/engines/database-engines/mysql",
+ "core/reference/engines/database-engines/postgresql",
+ "core/reference/engines/database-engines/replicated",
+ "core/reference/engines/database-engines/shared",
+ "core/reference/engines/database-engines/sqlite"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Functions",
+ "expandable": true,
+ "expanded": false,
+ "root": "core/reference/functions/index",
+ "pages": [
+ {
+ "group": "Regular functions",
+ "expanded": false,
+ "pages": [
+ "core/reference/functions/regular-functions/overview",
+ "core/reference/functions/regular-functions/ai-functions",
+ "core/reference/functions/regular-functions/arithmetic-functions",
+ "core/reference/functions/regular-functions/array-functions",
+ "core/reference/functions/regular-functions/array-join",
+ "core/reference/functions/regular-functions/bit-functions",
+ "core/reference/functions/regular-functions/bitmap-functions",
+ "core/reference/functions/regular-functions/comparison-functions",
+ "core/reference/functions/regular-functions/conditional-functions",
+ "core/reference/functions/regular-functions/date-time-functions",
+ "core/reference/functions/regular-functions/distance-functions",
+ "core/reference/functions/regular-functions/embedded-dict-functions",
+ "core/reference/functions/regular-functions/encoding-functions",
+ "core/reference/functions/regular-functions/encryption-functions",
+ "core/reference/functions/regular-functions/ext-dict-functions",
+ "core/reference/functions/regular-functions/files",
+ "core/reference/functions/regular-functions/financial-functions",
+ "core/reference/functions/regular-functions/functions-for-nulls",
+ {
+ "group": "Geo",
+ "expanded": false,
+ "pages": [
+ "core/reference/functions/regular-functions/geo/index",
+ "core/reference/functions/regular-functions/geo/coordinates",
+ "core/reference/functions/regular-functions/geo/flipCoordinates",
+ "core/reference/functions/regular-functions/geo/geometry",
+ "core/reference/functions/regular-functions/geo/geohash",
+ "core/reference/functions/regular-functions/geo/h3",
+ "core/reference/functions/regular-functions/geo/polygon",
+ "core/reference/functions/regular-functions/geo/s2",
+ "core/reference/functions/regular-functions/geo/svg"
+ ]
+ },
+ "core/reference/functions/regular-functions/hash-functions",
+ "core/reference/functions/regular-functions/in-functions",
+ "core/reference/functions/regular-functions/introspection",
+ "core/reference/functions/regular-functions/ip-address-functions",
+ "core/reference/functions/regular-functions/json-functions",
+ "core/reference/functions/regular-functions/logical-functions",
+ "core/reference/functions/regular-functions/machine-learning-functions",
+ "core/reference/functions/regular-functions/math-functions",
+ "core/reference/functions/regular-functions/nlp-functions",
+ "core/reference/functions/regular-functions/numeric-indexed-vector-functions",
+ "core/reference/functions/regular-functions/other-functions",
+ "core/reference/functions/regular-functions/random-functions",
+ "core/reference/functions/regular-functions/regular-functions-index",
+ "core/reference/functions/regular-functions/rounding-functions",
+ "core/reference/functions/regular-functions/splitting-merging-functions",
+ "core/reference/functions/regular-functions/string-functions",
+ "core/reference/functions/regular-functions/string-replace-functions",
+ "core/reference/functions/regular-functions/string-search-functions",
+ "core/reference/functions/regular-functions/time-series-functions",
+ "core/reference/functions/regular-functions/time-window-functions",
+ "core/reference/functions/regular-functions/tuple-functions",
+ "core/reference/functions/regular-functions/tuple-map-functions",
+ "core/reference/functions/regular-functions/type-conversion-functions",
+ "core/reference/functions/regular-functions/ulid-functions",
+ "core/reference/functions/regular-functions/uniqtheta-functions",
+ "core/reference/functions/regular-functions/url-functions",
+ "core/reference/functions/regular-functions/uuid-functions"
+ ]
+ },
+ {
+ "group": "Aggregate Functions",
+ "expanded": false,
+ "pages": [
+ "core/reference/functions/aggregate-functions/index",
+ "core/reference/functions/aggregate-functions/combinators",
+ "core/reference/functions/aggregate-functions/grouping_function",
+ "core/reference/functions/aggregate-functions/parametric-functions",
+ {
+ "group": "Reference",
+ "expanded": false,
+ "pages": [
+ "core/reference/functions/aggregate-functions/reference/index",
+ "core/reference/functions/aggregate-functions/reference/aggThrow",
+ "core/reference/functions/aggregate-functions/reference/analysis_of_variance",
+ "core/reference/functions/aggregate-functions/reference/any",
+ "core/reference/functions/aggregate-functions/reference/anyHeavy",
+ "core/reference/functions/aggregate-functions/reference/anyLast",
+ "core/reference/functions/aggregate-functions/reference/approxtopk",
+ "core/reference/functions/aggregate-functions/reference/approxtopsum",
+ "core/reference/functions/aggregate-functions/reference/argMax",
+ "core/reference/functions/aggregate-functions/reference/argAndMax",
+ "core/reference/functions/aggregate-functions/reference/argMin",
+ "core/reference/functions/aggregate-functions/reference/argAndMin",
+ "core/reference/functions/aggregate-functions/reference/avg",
+ "core/reference/functions/aggregate-functions/reference/avgWeighted",
+ "core/reference/functions/aggregate-functions/reference/boundrat",
+ "core/reference/functions/aggregate-functions/reference/categoricalInformationValue",
+ "core/reference/functions/aggregate-functions/reference/contingency",
+ "core/reference/functions/aggregate-functions/reference/corr",
+ "core/reference/functions/aggregate-functions/reference/corrMatrix",
+ "core/reference/functions/aggregate-functions/reference/corrStable",
+ "core/reference/functions/aggregate-functions/reference/count",
+ "core/reference/functions/aggregate-functions/reference/covarPop",
+ "core/reference/functions/aggregate-functions/reference/covarPopMatrix",
+ "core/reference/functions/aggregate-functions/reference/covarPopStable",
+ "core/reference/functions/aggregate-functions/reference/covarSamp",
+ "core/reference/functions/aggregate-functions/reference/covarSampMatrix",
+ "core/reference/functions/aggregate-functions/reference/covarSampStable",
+ "core/reference/functions/aggregate-functions/reference/cramersV",
+ "core/reference/functions/aggregate-functions/reference/cramersVBiasCorrected",
+ "core/reference/functions/aggregate-functions/reference/deltaSum",
+ "core/reference/functions/aggregate-functions/reference/deltaSumTimestamp",
+ "core/reference/functions/aggregate-functions/reference/distinctDynamicTypes",
+ "core/reference/functions/aggregate-functions/reference/distinctJSONPaths",
+ "core/reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes",
+ "core/reference/functions/aggregate-functions/reference/entropy",
+ "core/reference/functions/aggregate-functions/reference/estimateCompressionRatio",
+ "core/reference/functions/aggregate-functions/reference/exponentialMovingAverage",
+ "core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg",
+ "core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount",
+ "core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax",
+ "core/reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum",
+ "core/reference/functions/aggregate-functions/reference/first_value",
+ "core/reference/functions/aggregate-functions/reference/flame_graph",
+ "core/reference/functions/aggregate-functions/reference/groupArray",
+ "core/reference/functions/aggregate-functions/reference/groupArrayArray",
+ "core/reference/functions/aggregate-functions/reference/groupArrayInsertAt",
+ "core/reference/functions/aggregate-functions/reference/groupArrayIntersect",
+ "core/reference/functions/aggregate-functions/reference/groupArrayLast",
+ "core/reference/functions/aggregate-functions/reference/groupArrayMovingAvg",
+ "core/reference/functions/aggregate-functions/reference/groupArrayMovingSum",
+ "core/reference/functions/aggregate-functions/reference/groupArraySample",
+ "core/reference/functions/aggregate-functions/reference/groupArraySorted",
+ "core/reference/functions/aggregate-functions/reference/groupBitAnd",
+ "core/reference/functions/aggregate-functions/reference/groupBitmap",
+ "core/reference/functions/aggregate-functions/reference/groupBitmapAnd",
+ "core/reference/functions/aggregate-functions/reference/groupBitmapOr",
+ "core/reference/functions/aggregate-functions/reference/groupBitmapXor",
+ "core/reference/functions/aggregate-functions/reference/groupBitOr",
+ "core/reference/functions/aggregate-functions/reference/groupBitXor",
+ "core/reference/functions/aggregate-functions/reference/groupConcat",
+ "core/reference/functions/aggregate-functions/reference/groupUniqArray",
+ "core/reference/functions/aggregate-functions/reference/intervalLengthSum",
+ "core/reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest",
+ "core/reference/functions/aggregate-functions/reference/kurtPop",
+ "core/reference/functions/aggregate-functions/reference/kurtSamp",
+ "core/reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets",
+ "core/reference/functions/aggregate-functions/reference/last_value",
+ "core/reference/functions/aggregate-functions/reference/mannWhitneyUTest",
+ "core/reference/functions/aggregate-functions/reference/max",
+ "core/reference/functions/aggregate-functions/reference/maxIntersections",
+ "core/reference/functions/aggregate-functions/reference/maxIntersectionsPosition",
+ "core/reference/functions/aggregate-functions/reference/maxMap",
+ "core/reference/functions/aggregate-functions/reference/meanZTest",
+ "core/reference/functions/aggregate-functions/reference/median",
+ "core/reference/functions/aggregate-functions/reference/min",
+ "core/reference/functions/aggregate-functions/reference/minMap",
+ "core/reference/functions/aggregate-functions/reference/quantile",
+ "core/reference/functions/aggregate-functions/reference/quantileGK",
+ "core/reference/functions/aggregate-functions/reference/quantileBFloat16",
+ "core/reference/functions/aggregate-functions/reference/quantileddsketch",
+ "core/reference/functions/aggregate-functions/reference/quantileDeterministic",
+ "core/reference/functions/aggregate-functions/reference/quantileExact",
+ "core/reference/functions/aggregate-functions/reference/quantileExactExclusive",
+ "core/reference/functions/aggregate-functions/reference/quantileExactHigh",
+ "core/reference/functions/aggregate-functions/reference/quantileExactInclusive",
+ "core/reference/functions/aggregate-functions/reference/quantileExactLow",
+ "core/reference/functions/aggregate-functions/reference/quantileExactWeighted",
+ "core/reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated",
+ "core/reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted",
+ "core/reference/functions/aggregate-functions/reference/quantilePrometheusHistogram",
+ "core/reference/functions/aggregate-functions/reference/quantiles",
+ "core/reference/functions/aggregate-functions/reference/quantilesExactExclusive",
+ "core/reference/functions/aggregate-functions/reference/quantilesExactInclusive",
+ "core/reference/functions/aggregate-functions/reference/quantilesGK",
+ "core/reference/functions/aggregate-functions/reference/quantileTDigest",
+ "core/reference/functions/aggregate-functions/reference/quantileTDigestWeighted",
+ "core/reference/functions/aggregate-functions/reference/quantileTiming",
+ "core/reference/functions/aggregate-functions/reference/quantileTimingWeighted",
+ "core/reference/functions/aggregate-functions/reference/quantilesTimingWeighted",
+ "core/reference/functions/aggregate-functions/reference/rankCorr",
+ "core/reference/functions/aggregate-functions/reference/simpleLinearRegression",
+ "core/reference/functions/aggregate-functions/reference/singleValueOrNull",
+ "core/reference/functions/aggregate-functions/reference/skewPop",
+ "core/reference/functions/aggregate-functions/reference/skewSamp",
+ "core/reference/functions/aggregate-functions/reference/sparkbar",
+ "core/reference/functions/aggregate-functions/reference/stddevPop",
+ "core/reference/functions/aggregate-functions/reference/stddevPopStable",
+ "core/reference/functions/aggregate-functions/reference/stddevSamp",
+ "core/reference/functions/aggregate-functions/reference/stddevSampStable",
+ "core/reference/functions/aggregate-functions/reference/stochasticLinearRegression",
+ "core/reference/functions/aggregate-functions/reference/stochasticLogisticRegression",
+ "core/reference/functions/aggregate-functions/reference/studentTTest",
+ "core/reference/functions/aggregate-functions/reference/studentTTestOneSample",
+ "core/reference/functions/aggregate-functions/reference/sum",
+ "core/reference/functions/aggregate-functions/reference/sumCount",
+ "core/reference/functions/aggregate-functions/reference/sumKahan",
+ "core/reference/functions/aggregate-functions/reference/sumMap",
+ "core/reference/functions/aggregate-functions/reference/sumMapWithOverflow",
+ "core/reference/functions/aggregate-functions/reference/sumWithOverflow",
+ "core/reference/functions/aggregate-functions/reference/theilsU",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesGroupArray",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesRateToGrid",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness",
+ "core/reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid",
+ "core/reference/functions/aggregate-functions/reference/topK",
+ "core/reference/functions/aggregate-functions/reference/topKWeighted",
+ "core/reference/functions/aggregate-functions/reference/uniq",
+ "core/reference/functions/aggregate-functions/reference/uniqCombined",
+ "core/reference/functions/aggregate-functions/reference/uniqCombined64",
+ "core/reference/functions/aggregate-functions/reference/uniqExact",
+ "core/reference/functions/aggregate-functions/reference/uniqHLL12",
+ "core/reference/functions/aggregate-functions/reference/uniqthetasketch",
+ "core/reference/functions/aggregate-functions/reference/varPop",
+ "core/reference/functions/aggregate-functions/reference/varPopStable",
+ "core/reference/functions/aggregate-functions/reference/varSamp",
+ "core/reference/functions/aggregate-functions/reference/varSampStable",
+ "core/reference/functions/aggregate-functions/reference/welchTTest"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Table functions",
+ "expanded": false,
+ "pages": [
+ "core/reference/functions/table-functions/index",
+ "core/reference/functions/table-functions/arrowflight",
+ "core/reference/functions/table-functions/azureBlobStorage",
+ "core/reference/functions/table-functions/azureBlobStorageCluster",
+ "core/reference/functions/table-functions/cluster",
+ "core/reference/functions/table-functions/deltalake",
+ "core/reference/functions/table-functions/deltalakeCluster",
+ "core/reference/functions/table-functions/dictionary",
+ "core/reference/functions/table-functions/executable",
+ "core/reference/functions/table-functions/file",
+ "core/reference/functions/table-functions/fileCluster",
+ "core/reference/functions/table-functions/filesystem",
+ "core/reference/functions/table-functions/format",
+ "core/reference/functions/table-functions/fuzzJSON",
+ "core/reference/functions/table-functions/fuzzQuery",
+ "core/reference/functions/table-functions/gcs",
+ "core/reference/functions/table-functions/generate",
+ "core/reference/functions/table-functions/generate_series",
+ "core/reference/functions/table-functions/hdfs",
+ "core/reference/functions/table-functions/hdfsCluster",
+ "core/reference/functions/table-functions/hudi",
+ "core/reference/functions/table-functions/hudiCluster",
+ "core/reference/functions/table-functions/iceberg",
+ "core/reference/functions/table-functions/icebergCluster",
+ "core/reference/functions/table-functions/input",
+ "core/reference/functions/table-functions/jdbc",
+ "core/reference/functions/table-functions/loop",
+ "core/reference/functions/table-functions/merge",
+ "core/reference/functions/table-functions/mergeTreeIndex",
+ "core/reference/functions/table-functions/mergeTreeProjection",
+ "core/reference/functions/table-functions/mergeTreeTextIndex",
+ "core/reference/functions/table-functions/mongodb",
+ "core/reference/functions/table-functions/mysql",
+ "core/reference/functions/table-functions/null",
+ "core/reference/functions/table-functions/numbers",
+ "core/reference/functions/table-functions/odbc",
+ "core/reference/functions/table-functions/paimon",
+ "core/reference/functions/table-functions/paimonCluster",
+ "core/reference/functions/table-functions/postgresql",
+ "core/reference/functions/table-functions/primes",
+ "core/reference/functions/table-functions/prometheusQuery",
+ "core/reference/functions/table-functions/prometheusQueryRange",
+ "core/reference/functions/table-functions/redis",
+ "core/reference/functions/table-functions/remote",
+ "core/reference/functions/table-functions/s3",
+ "core/reference/functions/table-functions/s3Cluster",
+ "core/reference/functions/table-functions/sqlite",
+ "core/reference/functions/table-functions/timeSeriesData",
+ "core/reference/functions/table-functions/timeSeriesMetrics",
+ "core/reference/functions/table-functions/timeSeriesSelector",
+ "core/reference/functions/table-functions/timeSeriesTags",
+ "core/reference/functions/table-functions/url",
+ "core/reference/functions/table-functions/urlCluster",
+ "core/reference/functions/table-functions/values",
+ "core/reference/functions/table-functions/view",
+ "core/reference/functions/table-functions/ytsaurus",
+ "core/reference/functions/table-functions/zeros"
+ ]
+ },
+ {
+ "group": "Window functions",
+ "expanded": false,
+ "pages": [
+ "core/reference/functions/window-functions/index",
+ "core/reference/functions/window-functions/cume_dist",
+ "core/reference/functions/window-functions/dense_rank",
+ "core/reference/functions/window-functions/first_value",
+ "core/reference/functions/window-functions/lag",
+ "core/reference/functions/window-functions/lagInFrame",
+ "core/reference/functions/window-functions/last_value",
+ "core/reference/functions/window-functions/lead",
+ "core/reference/functions/window-functions/leadInFrame",
+ "core/reference/functions/window-functions/nth_value",
+ "core/reference/functions/window-functions/percent_rank",
+ "core/reference/functions/window-functions/rank",
+ "core/reference/functions/window-functions/row_number"
+ ]
+ },
+ {
+ "group": "User Defined Functions",
+ "pages": [
+ "core/reference/functions/regular-functions/udf",
+ "core/reference/functions/regular-functions/wasm_udf"
+ ]
+ }
+ ]
+ },
+ {
+ "group": "Formats",
+ "expandable": true,
+ "root": "core/reference/formats/index",
+ "expanded": false,
+ "pages": [
+ {
+ "group": "Arrow",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/Arrow/Arrow",
+ "core/reference/formats/Arrow/ArrowStream"
+ ]
+ },
+ {
+ "group": "Avro",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/Avro/Avro",
+ "core/reference/formats/Avro/AvroConfluent"
+ ]
+ },
+ "core/reference/formats/BSONEachRow",
+ "core/reference/formats/Buffers",
+ {
+ "group": "CSV",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/CSV/CSV",
+ "core/reference/formats/CSV/CSVWithNames",
+ "core/reference/formats/CSV/CSVWithNamesAndTypes"
+ ]
+ },
+ "core/reference/formats/CapnProto",
+ {
+ "group": "CustomSeparated",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/CustomSeparated/CustomSeparated",
+ "core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces",
+ "core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames",
+ "core/reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes",
+ "core/reference/formats/CustomSeparated/CustomSeparatedWithNames",
+ "core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes"
+ ]
+ },
+ "core/reference/formats/DWARF",
+ "core/reference/formats/Form",
+ "core/reference/formats/Hash",
+ "core/reference/formats/HiveText",
+ {
+ "group": "JSON",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/JSON/JSON",
+ "core/reference/formats/JSON/JSONAsObject",
+ "core/reference/formats/JSON/JSONAsString",
+ "core/reference/formats/JSON/JSONColumns",
+ "core/reference/formats/JSON/JSONColumnsWithMetadata",
+ "core/reference/formats/JSON/JSONCompact",
+ "core/reference/formats/JSON/JSONCompactColumns",
+ "core/reference/formats/JSON/JSONCompactEachRow",
+ "core/reference/formats/JSON/JSONCompactEachRowWithNames",
+ "core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes",
+ "core/reference/formats/JSON/JSONCompactEachRowWithProgress",
+ "core/reference/formats/JSON/JSONCompactStrings",
+ "core/reference/formats/JSON/JSONCompactStringsEachRow",
+ "core/reference/formats/JSON/JSONCompactStringsEachRowWithNames",
+ "core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes",
+ "core/reference/formats/JSON/JSONCompactStringsEachRowWithProgress",
+ "core/reference/formats/JSON/JSONEachRow",
+ "core/reference/formats/JSON/JSONEachRowWithProgress",
+ "core/reference/formats/JSON/JSONLines",
+ "core/reference/formats/JSON/JSONObjectEachRow",
+ "core/reference/formats/JSON/JSONStrings",
+ "core/reference/formats/JSON/JSONStringsEachRow",
+ "core/reference/formats/JSON/JSONStringsEachRowWithProgress",
+ "core/reference/formats/JSON/PrettyJSONEachRow",
+ "core/reference/formats/JSON/format-settings"
+ ]
+ },
+ {
+ "group": "LineAsString",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/LineAsString/LineAsString",
+ "core/reference/formats/LineAsString/LineAsStringWithNames",
+ "core/reference/formats/LineAsString/LineAsStringWithNamesAndTypes"
+ ]
+ },
+ "core/reference/formats/Markdown",
+ "core/reference/formats/MsgPack",
+ "core/reference/formats/MySQLDump",
+ "core/reference/formats/MySQLWire",
+ "core/reference/formats/Native",
+ "core/reference/formats/Npy",
+ "core/reference/formats/Null",
+ "core/reference/formats/ODBCDriver2",
+ "core/reference/formats/ORC",
+ "core/reference/formats/One",
+ {
+ "group": "Parquet",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/Parquet/Parquet",
+ "core/reference/formats/Parquet/ParquetMetadata"
+ ]
+ },
+ "core/reference/formats/PostgreSQLWire",
+ {
+ "group": "Pretty",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/Pretty/Pretty",
+ "core/reference/formats/Pretty/PrettyCompact",
+ "core/reference/formats/Pretty/PrettyCompactMonoBlock",
+ "core/reference/formats/Pretty/PrettyCompactNoEscapes",
+ "core/reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock",
+ "core/reference/formats/Pretty/PrettyMonoBlock",
+ "core/reference/formats/Pretty/PrettyNoEscapes",
+ "core/reference/formats/Pretty/PrettyNoEscapesMonoBlock",
+ "core/reference/formats/Pretty/PrettySpace",
+ "core/reference/formats/Pretty/PrettySpaceMonoBlock",
+ "core/reference/formats/Pretty/PrettySpaceNoEscapes",
+ "core/reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock"
+ ]
+ },
+ "core/reference/formats/Prometheus",
+ {
+ "group": "Protobuf",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/Protobuf/Protobuf",
+ "core/reference/formats/Protobuf/ProtobufList",
+ "core/reference/formats/Protobuf/ProtobufSingle"
+ ]
+ },
+ "core/reference/formats/RawBLOB",
+ "core/reference/formats/Regexp",
+ {
+ "group": "RowBinary",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/RowBinary/RowBinary",
+ "core/reference/formats/RowBinary/RowBinaryWithDefaults",
+ "core/reference/formats/RowBinary/RowBinaryWithNames",
+ "core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes"
+ ]
+ },
+ "core/reference/formats/SQLInsert",
+ {
+ "group": "TabSeparated",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/TabSeparated/TSKV",
+ "core/reference/formats/TabSeparated/TabSeparated",
+ "core/reference/formats/TabSeparated/TabSeparatedRaw",
+ "core/reference/formats/TabSeparated/TabSeparatedRawWithNames",
+ "core/reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes",
+ "core/reference/formats/TabSeparated/TabSeparatedWithNames",
+ "core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes"
+ ]
+ },
+ {
+ "group": "Template",
+ "expanded": false,
+ "pages": [
+ "core/reference/formats/Template/Template",
+ "core/reference/formats/Template/TemplateIgnoreSpaces"
+ ]
+ },
+ "core/reference/formats/Values",
+ "core/reference/formats/Vertical",
+ "core/reference/formats/XML"
+ ]
+ },
+ {
+ "group": "Settings",
+ "expandable": true,
+ "expanded": false,
+ "root": "core/reference/settings/index",
+ "pages": [
+ "core/reference/settings/server-settings/settings",
+ "core/reference/settings/session-settings",
+ "core/reference/settings/merge-tree-settings",
+ "core/reference/settings/formats",
+ "core/reference/settings/beta-and-experimental-features"
+ ]
+ },
+ {
+ "group": "System Tables",
+ "expandable": true,
+ "expanded": false,
+ "root": "core/reference/system-tables/index",
+ "pages": [
+ "core/reference/system-tables/overview",
+ "core/reference/system-tables/aggregate_function_combinators",
+ "core/reference/system-tables/aggregated_zookeeper_log",
+ "core/reference/system-tables/asynchronous_insert_log",
+ "core/reference/system-tables/asynchronous_inserts",
+ "core/reference/system-tables/asynchronous_loader",
+ "core/reference/system-tables/asynchronous_metric_log",
+ "core/reference/system-tables/asynchronous_metrics",
+ "core/reference/system-tables/azure_queue_log",
+ "core/reference/system-tables/azure_queue_metadata_cache",
+ "core/reference/system-tables/azure_queue_settings",
+ "core/reference/system-tables/backup_log",
+ "core/reference/system-tables/backups",
+ "core/reference/system-tables/background_schedule_pool",
+ "core/reference/system-tables/background_schedule_pool_log",
+ "core/reference/system-tables/blob_storage_log",
+ "core/reference/system-tables/build_options",
+ "core/reference/system-tables/certificates",
+ "core/reference/system-tables/clusters",
+ "core/reference/system-tables/codecs",
+ "core/reference/system-tables/collations",
+ "core/reference/system-tables/columns",
+ "core/reference/system-tables/completions",
+ "core/reference/system-tables/contributors",
+ "core/reference/system-tables/crash_log",
+ "core/reference/system-tables/current_roles",
+ "core/reference/system-tables/dashboards",
+ "core/reference/system-tables/data_skipping_indices",
+ "core/reference/system-tables/data_type_families",
+ "core/reference/system-tables/database_engines",
+ "core/reference/system-tables/database_replicas",
+ "core/reference/system-tables/databases",
+ "core/reference/system-tables/dead_letter_queue",
+ "core/reference/system-tables/delta_metadata_log",
+ "core/reference/system-tables/detached_parts",
+ "core/reference/system-tables/detached_tables",
+ "core/reference/system-tables/dictionaries",
+ "core/reference/system-tables/dimensional_metrics",
+ "core/reference/system-tables/disks",
+ "core/reference/system-tables/distributed_ddl_queue",
+ "core/reference/system-tables/distribution_queue",
+ "core/reference/system-tables/dns_cache",
+ "core/reference/system-tables/dropped_tables",
+ "core/reference/system-tables/dropped_tables_parts",
+ "core/reference/system-tables/enabled_roles",
+ "core/reference/system-tables/error_log",
+ "core/reference/system-tables/errors",
+ "core/reference/system-tables/events",
+ "core/reference/system-tables/fail_points",
+ "core/reference/system-tables/formats",
+ "core/reference/system-tables/filesystem_cache_log",
+ "core/reference/system-tables/filesystem_cache_settings",
+ "core/reference/system-tables/filesystem_cache",
+ "core/reference/system-tables/filesystem_read_prefetches_log",
+ "core/reference/system-tables/functions",
+ "core/reference/system-tables/grants",
+ "core/reference/system-tables/graphite_retentions",
+ "core/reference/system-tables/histogram_metric_log",
+ "core/reference/system-tables/histogram_metrics",
+ "core/reference/system-tables/iceberg_history",
+ "core/reference/system-tables/iceberg_metadata_log",
+ "core/reference/system-tables/information_schema",
+ "core/reference/system-tables/instrumentation",
+ "core/reference/system-tables/jemalloc_bins",
+ "core/reference/system-tables/jemalloc_stats",
+ "core/reference/system-tables/jemalloc_profile_text",
+ "core/reference/system-tables/kafka_consumers",
+ "core/reference/system-tables/keywords",
+ "core/reference/system-tables/licenses",
+ "core/reference/system-tables/macros",
+ "core/reference/system-tables/masking_policies",
+ "core/reference/system-tables/merge_tree_settings",
+ "core/reference/system-tables/merges",
+ "core/reference/system-tables/metric_log",
+ "core/reference/system-tables/metrics",
+ "core/reference/system-tables/models",
+ "core/reference/system-tables/moves",
+ "core/reference/system-tables/mutations",
+ "core/reference/system-tables/named_collections",
+ "core/reference/system-tables/numbers",
+ "core/reference/system-tables/numbers_mt",
+ "core/reference/system-tables/one",
+ "core/reference/system-tables/opentelemetry_span_log",
+ "core/reference/system-tables/part_log",
+ "core/reference/system-tables/part_moves_between_shards",
+ "core/reference/system-tables/parts",
+ "core/reference/system-tables/parts_columns",
+ "core/reference/system-tables/predicate_statistics_log",
+ "core/reference/system-tables/primes",
+ "core/reference/system-tables/privileges",
+ "core/reference/system-tables/processes",
+ "core/reference/system-tables/processors_profile_log",
+ "core/reference/system-tables/projection_parts",
+ "core/reference/system-tables/projection_parts_columns",
+ "core/reference/system-tables/projections",
+ "core/reference/system-tables/query_cache",
+ "core/reference/system-tables/query_condition_cache",
+ "core/reference/system-tables/query_log",
+ "core/reference/system-tables/query_metric_log",
+ "core/reference/system-tables/query_thread_log",
+ "core/reference/system-tables/query_views_log",
+ "core/reference/system-tables/quota_limits",
+ "core/reference/system-tables/quota_usage",
+ "core/reference/system-tables/quotas",
+ "core/reference/system-tables/quotas_usage",
+ "core/reference/system-tables/remote_data_paths",
+ "core/reference/system-tables/replicas",
+ "core/reference/system-tables/replicated_fetches",
+ "core/reference/system-tables/replicated_merge_tree_settings",
+ "core/reference/system-tables/replication_queue",
+ "core/reference/system-tables/resources",
+ "core/reference/system-tables/rocksdb",
+ "core/reference/system-tables/role_grants",
+ "core/reference/system-tables/roles",
+ "core/reference/system-tables/row_policies",
+ "core/reference/system-tables/s3_queue_settings",
+ "core/reference/system-tables/s3queue_log",
+ "core/reference/system-tables/s3queue_metadata_cache",
+ "core/reference/system-tables/scheduler",
+ "core/reference/system-tables/schema_inference_cache",
+ "core/reference/system-tables/server_settings",
+ "core/reference/system-tables/session_log",
+ "core/reference/system-tables/settings",
+ "core/reference/system-tables/settings_changes",
+ "core/reference/system-tables/settings_profile_elements",
+ "core/reference/system-tables/settings_profiles",
+ "core/reference/system-tables/stack_trace",
+ "core/reference/system-tables/storage_policies",
+ "core/reference/system-tables/symbols",
+ "core/reference/system-tables/system_warnings",
+ "core/reference/system-tables/table_engines",
+ "core/reference/system-tables/table_functions",
+ "core/reference/system-tables/tables",
+ "core/reference/system-tables/text_log",
+ "core/reference/system-tables/time_zones",
+ "core/reference/system-tables/tokenizers",
+ "core/reference/system-tables/trace_log",
+ "core/reference/system-tables/transactions",
+ "core/reference/system-tables/transactions_info_log",
+ "core/reference/system-tables/unicode",
+ "core/reference/system-tables/user_defined_functions",
+ "core/reference/system-tables/user_directories",
+ "core/reference/system-tables/user_processes",
+ "core/reference/system-tables/users",
+ "core/reference/system-tables/view_refreshes",
+ "core/reference/system-tables/warnings",
+ "core/reference/system-tables/workloads",
+ "core/reference/system-tables/zeros",
+ "core/reference/system-tables/zeros_mt",
+ "core/reference/system-tables/zookeeper",
+ "core/reference/system-tables/zookeeper_info",
+ "core/reference/system-tables/zookeeper_connection",
+ "core/reference/system-tables/zookeeper_connection_log",
+ "core/reference/system-tables/zookeeper_log",
+ "core/reference/system-tables/zookeeper_watches"
+ ]
+ },
+ {
+ "group": "Data Lakes",
+ "root": "core/reference/datalakes",
+ "pages": []
+ }
+ ]
+}
diff --git a/reference/operators/distributed-ddl.mdx b/core/reference/operators/distributed-ddl.mdx
similarity index 100%
rename from reference/operators/distributed-ddl.mdx
rename to core/reference/operators/distributed-ddl.mdx
diff --git a/reference/operators/exists.mdx b/core/reference/operators/exists.mdx
similarity index 94%
rename from reference/operators/exists.mdx
rename to core/reference/operators/exists.mdx
index fba68aad..518c0ce8 100644
--- a/reference/operators/exists.mdx
+++ b/core/reference/operators/exists.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
The `EXISTS` operator checks how many records are in the result of a subquery. If it is empty, then the operator returns `0`. Otherwise, it returns `1`.
-`EXISTS` can also be used in a [WHERE](/reference/statements/select/where) clause.
+`EXISTS` can also be used in a [WHERE](/core/reference/statements/select/where) clause.
****
diff --git a/reference/operators/index.mdx b/core/reference/operators/index.mdx
similarity index 81%
rename from reference/operators/index.mdx
rename to core/reference/operators/index.mdx
index 4d58aeff..88781ee5 100644
--- a/reference/operators/index.mdx
+++ b/core/reference/operators/index.mdx
@@ -18,17 +18,17 @@ ClickHouse transforms operators to their corresponding functions at the query pa
`-a` – The `negate (a)` function.
-For tuple negation: [tupleNegate](/reference/functions/regular-functions/tuple-functions#tupleNegate).
+For tuple negation: [tupleNegate](/core/reference/functions/regular-functions/tuple-functions#tupleNegate).
## Multiplication and Division Operators {#multiplication-and-division-operators}
`a * b` – The `multiply (a, b)` function.
-For multiplying tuple by number: [tupleMultiplyByNumber](/reference/functions/regular-functions/tuple-functions#tupleMultiplyByNumber), for scalar product: [dotProduct](/reference/functions/regular-functions/array-functions#arrayDotProduct).
+For multiplying tuple by number: [tupleMultiplyByNumber](/core/reference/functions/regular-functions/tuple-functions#tupleMultiplyByNumber), for scalar product: [dotProduct](/core/reference/functions/regular-functions/array-functions#arrayDotProduct).
`a / b` – The `divide(a, b)` function.
-For dividing tuple by number: [tupleDivideByNumber](/reference/functions/regular-functions/tuple-functions#tupleDivideByNumber).
+For dividing tuple by number: [tupleDivideByNumber](/core/reference/functions/regular-functions/tuple-functions#tupleDivideByNumber).
`a % b` – The `modulo(a, b)` function.
@@ -36,11 +36,11 @@ For dividing tuple by number: [tupleDivideByNumber](/reference/functions/regular
`a + b` – The `plus(a, b)` function.
-For tuple addiction: [tuplePlus](/reference/functions/regular-functions/tuple-functions#tuplePlus).
+For tuple addiction: [tuplePlus](/core/reference/functions/regular-functions/tuple-functions#tuplePlus).
`a - b` – The `minus(a, b)` function.
-For tuple subtraction: [tupleMinus](/reference/functions/regular-functions/tuple-functions#tupleMinus).
+For tuple subtraction: [tupleMinus](/core/reference/functions/regular-functions/tuple-functions#tupleMinus).
## Comparison Operators {#comparison-operators}
@@ -125,7 +125,7 @@ SELECT
## Operators for Working with Data Sets {#operators-for-working-with-data-sets}
-See [IN operators](/reference/statements/in) and [EXISTS](/reference/operators/exists) operator.
+See [IN operators](/core/reference/statements/in) and [EXISTS](/core/reference/operators/exists) operator.
### in function {#in-function}
`a IN ...` – The `in(a, b)` function.
@@ -216,7 +216,7 @@ The `part` parameter specifies which part of the date to retrieve. The following
The `part` parameter is case-insensitive.
-The `date` parameter specifies the date or the time to process. The [Date](/reference/data-types/date), [Date32](/reference/data-types/date32), [DateTime](/reference/data-types/datetime), and [DateTime64](/reference/data-types/datetime64) types are supported.
+The `date` parameter specifies the date or the time to process. The [Date](/core/reference/data-types/date), [Date32](/core/reference/data-types/date32), [DateTime](/core/reference/data-types/datetime), and [DateTime64](/core/reference/data-types/datetime64) types are supported.
Examples:
@@ -266,7 +266,7 @@ You can see more examples in [tests](https://github.com/ClickHouse/ClickHouse/bl
### INTERVAL {#interval}
-Creates an [Interval](/reference/data-types/special-data-types/interval)-type value that should be used in arithmetical operations with [Date](/reference/data-types/date) and [DateTime](/reference/data-types/datetime)-type values.
+Creates an [Interval](/core/reference/data-types/special-data-types/interval)-type value that should be used in arithmetical operations with [Date](/core/reference/data-types/date) and [DateTime](/core/reference/data-types/datetime)-type values.
Types of intervals:
- `SECOND`
@@ -334,12 +334,12 @@ SELECT toDateTime('2014-10-26 00:00:00', 'Asia/Istanbul') AS time, time + 60 * 6
**See Also**
-- [Interval](/reference/data-types/special-data-types/interval) data type
-- [toInterval](/reference/functions/regular-functions/type-conversion-functions#toIntervalYear) type conversion functions
+- [Interval](/core/reference/data-types/special-data-types/interval) data type
+- [toInterval](/core/reference/functions/regular-functions/type-conversion-functions#toIntervalYear) type conversion functions
### Date and Time Addition {#date-time-addition}
-A [Date](/reference/data-types/date) or [Date32](/reference/data-types/date32) value can be added to a [Time](/reference/data-types/time) or [Time64](/reference/data-types/time64) value using the `+` operator. The result is a [DateTime](/reference/data-types/datetime) or [DateTime64](/reference/data-types/datetime64) representing the date at the given time of day. The operation is commutative.
+A [Date](/core/reference/data-types/date) or [Date32](/core/reference/data-types/date32) value can be added to a [Time](/core/reference/data-types/time) or [Time64](/core/reference/data-types/time64) value using the `+` operator. The result is a [DateTime](/core/reference/data-types/datetime) or [DateTime64](/core/reference/data-types/datetime64) representing the date at the given time of day. The operation is commutative.
The result type depends on the operand types:
@@ -351,7 +351,7 @@ The result type depends on the operand types:
| `Date32` | `Time64(s)` | `DateTime64(s)` |
-The result uses the [session timezone](/reference/settings/session-settings#session_timezone) (or server default timezone if no session timezone is set). The [`date_time_overflow_behavior`](/reference/settings/formats#date_time_overflow_behavior) setting controls what happens when the result is outside the representable range.
+The result uses the [session timezone](/core/reference/settings/session-settings#session_timezone) (or server default timezone if no session timezone is set). The [`date_time_overflow_behavior`](/core/reference/settings/formats#date_time_overflow_behavior) setting controls what happens when the result is outside the representable range.
Examples:
@@ -389,15 +389,15 @@ SELECT toTime64('23:59:59.999', 3) + toDate32('2024-07-15') AS dt, toTypeName(dt
## Logical AND Operator {#logical-and-operator}
-Syntax `SELECT a AND b` — calculates logical conjunction of `a` and `b` with the function [and](/reference/functions/regular-functions/logical-functions#and).
+Syntax `SELECT a AND b` — calculates logical conjunction of `a` and `b` with the function [and](/core/reference/functions/regular-functions/logical-functions#and).
## Logical OR Operator {#logical-or-operator}
-Syntax `SELECT a OR b` — calculates logical disjunction of `a` and `b` with the function [or](/reference/functions/regular-functions/logical-functions#or).
+Syntax `SELECT a OR b` — calculates logical disjunction of `a` and `b` with the function [or](/core/reference/functions/regular-functions/logical-functions#or).
## Logical Negation Operator {#logical-negation-operator}
-Syntax `SELECT NOT a` — calculates logical negation of `a` with the function [not](/reference/functions/regular-functions/logical-functions#not).
+Syntax `SELECT NOT a` — calculates logical negation of `a` with the function [not](/core/reference/functions/regular-functions/logical-functions#not).
## Conditional Operator {#conditional-operator}
@@ -405,7 +405,7 @@ Syntax `SELECT NOT a` — calculates logical negation of `a` with the function [
Note:
-The conditional operator calculates the values of b and c, then checks whether condition a is met, and then returns the corresponding value. If `b` or `C` is an [arrayJoin()](/reference/functions/regular-functions/array-join) function, each row will be replicated regardless of the "a" condition.
+The conditional operator calculates the values of b and c, then checks whether condition a is met, and then returns the corresponding value. If `b` or `C` is an [arrayJoin()](/core/reference/functions/regular-functions/array-join) function, each row will be replicated regardless of the "a" condition.
## Conditional Expression {#conditional-expression}
@@ -454,12 +454,12 @@ ClickHouse supports the `IS NULL` and `IS NOT NULL` operators.
### IS NULL {#is_null}
-- For [Nullable](/reference/data-types/nullable) type values, the `IS NULL` operator returns:
+- For [Nullable](/core/reference/data-types/nullable) type values, the `IS NULL` operator returns:
- `1`, if the value is `NULL`.
- `0` otherwise.
- For other values, the `IS NULL` operator always returns `0`.
-Can be optimized by enabling the [optimize_functions_to_subcolumns](/reference/settings/session-settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [null](/reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data. The query `SELECT n IS NULL FROM table` transforms to `SELECT n.null FROM TABLE`.
+Can be optimized by enabling the [optimize_functions_to_subcolumns](/core/reference/settings/session-settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [null](/core/reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data. The query `SELECT n IS NULL FROM table` transforms to `SELECT n.null FROM TABLE`.
{/* */}
@@ -475,7 +475,7 @@ SELECT x+100 FROM t_null WHERE y IS NULL
### IS NOT NULL {#is_not_null}
-- For [Nullable](/reference/data-types/nullable) type values, the `IS NOT NULL` operator returns:
+- For [Nullable](/core/reference/data-types/nullable) type values, the `IS NOT NULL` operator returns:
- `0`, if the value is `NULL`.
- `1` otherwise.
- For other values, the `IS NOT NULL` operator always returns `1`.
@@ -492,4 +492,4 @@ SELECT * FROM t_null WHERE y IS NOT NULL
└───┴───┘
```
-Can be optimized by enabling the [optimize_functions_to_subcolumns](/reference/settings/session-settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [null](/reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data. The query `SELECT n IS NOT NULL FROM table` transforms to `SELECT NOT n.null FROM TABLE`.
+Can be optimized by enabling the [optimize_functions_to_subcolumns](/core/reference/settings/session-settings#optimize_functions_to_subcolumns) setting. With `optimize_functions_to_subcolumns = 1` the function reads only [null](/core/reference/data-types/nullable#finding-null) subcolumn instead of reading and processing the whole column data. The query `SELECT n IS NOT NULL FROM table` transforms to `SELECT NOT n.null FROM TABLE`.
diff --git a/core/reference/settings/beta-and-experimental-features.mdx b/core/reference/settings/beta-and-experimental-features.mdx
new file mode 100644
index 00000000..a112b0c6
--- /dev/null
+++ b/core/reference/settings/beta-and-experimental-features.mdx
@@ -0,0 +1,184 @@
+---
+sidebarTitle: 'Beta and experimental features'
+title: 'Beta and experimental features'
+description: 'ClickHouse has beta and experimental features. This documentation page discusses definition.'
+slug: /beta-and-experimental-features
+doc_type: 'reference'
+---
+
+Because ClickHouse is open-source, it receives many contributions not only from ClickHouse employees but also from the community. These contributions are often developed at different speeds; certain features may require a lengthy prototyping phase or more time for sufficient community feedback and iteration to be considered generally available (GA).
+
+Due to the uncertainty of when features are classified as generally available, we delineate features into two categories: **Beta** and **Experimental**.
+
+**Beta** features are officially supported by the ClickHouse team. **Experimental** features are early prototypes driven by either the ClickHouse team or the community and aren't officially supported.
+
+The sections below explicitly describe the properties of **Beta** and **Experimental** features:
+
+## Beta features {#beta-features}
+
+- Under active development to make them generally available (GA)
+- Main known issues can be tracked on GitHub
+- Functionality may change in the future
+- Possibly enabled in ClickHouse Cloud
+- The ClickHouse team supports beta features
+
+You can find below the features considered Beta in ClickHouse Cloud and are available for use in your ClickHouse Cloud Services.
+
+Note: please be sure to be using a current version of the ClickHouse [compatibility](/core/reference/settings/session-settings#compatibility) setting to be using a recently introduced feature.
+
+## Experimental features {#experimental-features}
+
+- May never become GA
+- May be removed
+- Can introduce breaking changes
+- Functionality may change in the feature
+- Need to be deliberately enabled
+- The ClickHouse team **doesn't support** experimental features
+- May lack important functionality and documentation
+- Can't be enabled in the cloud
+
+Please note: no additional experimental features are allowed to be enabled in ClickHouse Cloud other than those listed above as Beta.
+
+{/* The inner content of the tags below are replaced at build time with a table generated from source
+ Please don't modify or remove the tags
+*/}
+
+{/*AUTOGENERATED_START*/}
+## Beta settings {#beta-settings}
+
+| Name | Default |
+|------|--------|
+| [geotoh3_argument_order](/core/reference/settings/session-settings#geotoh3_argument_order) | `lat_lon` |
+| [enable_lightweight_update](/core/reference/settings/session-settings#enable_lightweight_update) | `1` |
+| [allow_experimental_correlated_subqueries](/core/reference/settings/session-settings#allow_experimental_correlated_subqueries) | `1` |
+| [parallel_replicas_count](/core/reference/settings/session-settings#parallel_replicas_count) | `0` |
+| [parallel_replica_offset](/core/reference/settings/session-settings#parallel_replica_offset) | `0` |
+| [parallel_replicas_custom_key](/core/reference/settings/session-settings#parallel_replicas_custom_key) | `` |
+| [parallel_replicas_custom_key_range_lower](/core/reference/settings/session-settings#parallel_replicas_custom_key_range_lower) | `0` |
+| [parallel_replicas_custom_key_range_upper](/core/reference/settings/session-settings#parallel_replicas_custom_key_range_upper) | `0` |
+| [parallel_replicas_filter_pushdown](/core/reference/settings/session-settings#parallel_replicas_filter_pushdown) | `0` |
+| [parallel_replicas_allow_view_over_mergetree](/core/reference/settings/session-settings#parallel_replicas_allow_view_over_mergetree) | `0` |
+| [allow_experimental_database_iceberg](/core/reference/settings/session-settings#allow_experimental_database_iceberg) | `0` |
+| [allow_experimental_database_unity_catalog](/core/reference/settings/session-settings#allow_experimental_database_unity_catalog) | `0` |
+| [allow_experimental_database_glue_catalog](/core/reference/settings/session-settings#allow_experimental_database_glue_catalog) | `0` |
+| [session_timezone](/core/reference/settings/session-settings#session_timezone) | `` |
+| [low_priority_query_wait_time_ms](/core/reference/settings/session-settings#low_priority_query_wait_time_ms) | `1000` |
+| [allow_experimental_delta_kernel_rs](/core/reference/settings/session-settings#allow_experimental_delta_kernel_rs) | `1` |
+| [allow_insert_into_iceberg](/core/reference/settings/session-settings#allow_insert_into_iceberg) | `0` |
+| [enable_join_runtime_filters](/core/reference/settings/session-settings#enable_join_runtime_filters) | `1` |
+
+## Experimental settings {#experimental-settings}
+
+| Name | Default |
+|------|--------|
+| [allow_commit_order_projection](/core/reference/settings/merge-tree-settings#allow_commit_order_projection) | `0` |
+| [allow_experimental_replacing_merge_with_cleanup](/core/reference/settings/merge-tree-settings#allow_experimental_replacing_merge_with_cleanup) | `0` |
+| [allow_experimental_reverse_key](/core/reference/settings/merge-tree-settings#allow_experimental_reverse_key) | `0` |
+| [allow_remote_fs_zero_copy_replication](/core/reference/settings/merge-tree-settings#allow_remote_fs_zero_copy_replication) | `0` |
+| [distributed_index_analysis_min_indexes_bytes_to_activate](/core/reference/settings/merge-tree-settings#distributed_index_analysis_min_indexes_bytes_to_activate) | `1073741824` |
+| [distributed_index_analysis_min_parts_to_activate](/core/reference/settings/merge-tree-settings#distributed_index_analysis_min_parts_to_activate) | `10` |
+| [enable_replacing_merge_with_cleanup_for_min_age_to_force_merge](/core/reference/settings/merge-tree-settings#enable_replacing_merge_with_cleanup_for_min_age_to_force_merge) | `0` |
+| [force_read_through_cache_for_merges](/core/reference/settings/merge-tree-settings#force_read_through_cache_for_merges) | `0` |
+| [merge_selector_algorithm](/core/reference/settings/merge-tree-settings#merge_selector_algorithm) | `Simple` |
+| [merge_selector_enable_heuristic_to_lower_max_parts_to_merge_at_once](/core/reference/settings/merge-tree-settings#merge_selector_enable_heuristic_to_lower_max_parts_to_merge_at_once) | `0` |
+| [merge_selector_heuristic_to_lower_max_parts_to_merge_at_once_exponent](/core/reference/settings/merge-tree-settings#merge_selector_heuristic_to_lower_max_parts_to_merge_at_once_exponent) | `5` |
+| [notify_newest_block_number](/core/reference/settings/merge-tree-settings#notify_newest_block_number) | `0` |
+| [part_moves_between_shards_delay_seconds](/core/reference/settings/merge-tree-settings#part_moves_between_shards_delay_seconds) | `30` |
+| [part_moves_between_shards_enable](/core/reference/settings/merge-tree-settings#part_moves_between_shards_enable) | `0` |
+| [remote_fs_zero_copy_path_compatible_mode](/core/reference/settings/merge-tree-settings#remote_fs_zero_copy_path_compatible_mode) | `0` |
+| [remote_fs_zero_copy_zookeeper_path](/core/reference/settings/merge-tree-settings#remote_fs_zero_copy_zookeeper_path) | `/clickhouse/zero_copy` |
+| [remove_rolled_back_parts_immediately](/core/reference/settings/merge-tree-settings#remove_rolled_back_parts_immediately) | `1` |
+| [shared_merge_tree_virtual_parts_discovery_batch](/core/reference/settings/merge-tree-settings#shared_merge_tree_virtual_parts_discovery_batch) | `1` |
+| [query_plan_optimize_join_order_randomize](/core/reference/settings/session-settings#query_plan_optimize_join_order_randomize) | `0` |
+| [enable_join_transitive_predicates](/core/reference/settings/session-settings#enable_join_transitive_predicates) | `0` |
+| [ast_fuzzer_runs](/core/reference/settings/session-settings#ast_fuzzer_runs) | `0` |
+| [ast_fuzzer_any_query](/core/reference/settings/session-settings#ast_fuzzer_any_query) | `0` |
+| [allow_fuzz_query_functions](/core/reference/settings/session-settings#allow_fuzz_query_functions) | `0` |
+| [enable_materialized_cte](/core/reference/settings/session-settings#enable_materialized_cte) | `0` |
+| [analyzer_inline_views](/core/reference/settings/session-settings#analyzer_inline_views) | `0` |
+| [allow_experimental_kafka_offsets_storage_in_keeper](/core/reference/settings/session-settings#allow_experimental_kafka_offsets_storage_in_keeper) | `0` |
+| [allow_experimental_delta_lake_writes](/core/reference/settings/session-settings#allow_experimental_delta_lake_writes) | `0` |
+| [automatic_parallel_replicas_mode](/core/reference/settings/session-settings#automatic_parallel_replicas_mode) | `0` |
+| [automatic_parallel_replicas_min_bytes_per_replica](/core/reference/settings/session-settings#automatic_parallel_replicas_min_bytes_per_replica) | `1048576` |
+| [distributed_index_analysis](/core/reference/settings/session-settings#distributed_index_analysis) | `0` |
+| [allow_experimental_materialized_postgresql_table](/core/reference/settings/session-settings#allow_experimental_materialized_postgresql_table) | `0` |
+| [allow_experimental_funnel_functions](/core/reference/settings/session-settings#allow_experimental_funnel_functions) | `0` |
+| [allow_experimental_nlp_functions](/core/reference/settings/session-settings#allow_experimental_nlp_functions) | `0` |
+| [allow_experimental_hash_functions](/core/reference/settings/session-settings#allow_experimental_hash_functions) | `0` |
+| [allow_experimental_time_series_table](/core/reference/settings/session-settings#allow_experimental_time_series_table) | `0` |
+| [allow_experimental_unique_key](/core/reference/settings/session-settings#allow_experimental_unique_key) | `0` |
+| [allow_experimental_codecs](/core/reference/settings/session-settings#allow_experimental_codecs) | `0` |
+| [throw_on_unsupported_query_inside_transaction](/core/reference/settings/session-settings#throw_on_unsupported_query_inside_transaction) | `1` |
+| [wait_changes_become_visible_after_commit_mode](/core/reference/settings/session-settings#wait_changes_become_visible_after_commit_mode) | `wait_unknown` |
+| [implicit_transaction](/core/reference/settings/session-settings#implicit_transaction) | `0` |
+| [grace_hash_join_initial_buckets](/core/reference/settings/session-settings#grace_hash_join_initial_buckets) | `1` |
+| [grace_hash_join_max_buckets](/core/reference/settings/session-settings#grace_hash_join_max_buckets) | `1024` |
+| [join_to_sort_minimum_perkey_rows](/core/reference/settings/session-settings#join_to_sort_minimum_perkey_rows) | `40` |
+| [join_to_sort_maximum_table_rows](/core/reference/settings/session-settings#join_to_sort_maximum_table_rows) | `10000` |
+| [allow_experimental_join_right_table_sorting](/core/reference/settings/session-settings#allow_experimental_join_right_table_sorting) | `0` |
+| [allow_experimental_json_lazy_type_hints](/core/reference/settings/session-settings#allow_experimental_json_lazy_type_hints) | `0` |
+| [allow_experimental_window_view](/core/reference/settings/session-settings#allow_experimental_window_view) | `0` |
+| [window_view_clean_interval](/core/reference/settings/session-settings#window_view_clean_interval) | `60` |
+| [window_view_heartbeat_interval](/core/reference/settings/session-settings#window_view_heartbeat_interval) | `15` |
+| [wait_for_window_view_fire_signal_timeout](/core/reference/settings/session-settings#wait_for_window_view_fire_signal_timeout) | `10` |
+| [stop_refreshable_materialized_views_on_startup](/core/reference/settings/session-settings#stop_refreshable_materialized_views_on_startup) | `0` |
+| [allow_experimental_database_materialized_postgresql](/core/reference/settings/session-settings#allow_experimental_database_materialized_postgresql) | `0` |
+| [allow_experimental_nullable_tuple_type](/core/reference/settings/session-settings#allow_experimental_nullable_tuple_type) | `0` |
+| [allow_experimental_query_deduplication](/core/reference/settings/session-settings#allow_experimental_query_deduplication) | `0` |
+| [allow_experimental_database_hms_catalog](/core/reference/settings/session-settings#allow_experimental_database_hms_catalog) | `0` |
+| [allow_experimental_kusto_dialect](/core/reference/settings/session-settings#allow_experimental_kusto_dialect) | `0` |
+| [allow_experimental_prql_dialect](/core/reference/settings/session-settings#allow_experimental_prql_dialect) | `0` |
+| [allow_experimental_polyglot_dialect](/core/reference/settings/session-settings#allow_experimental_polyglot_dialect) | `0` |
+| [polyglot_dialect](/core/reference/settings/session-settings#polyglot_dialect) | `` |
+| [enable_adaptive_memory_spill_scheduler](/core/reference/settings/session-settings#enable_adaptive_memory_spill_scheduler) | `0` |
+| [allow_experimental_cleanup_old_data_files_compaction](/core/reference/settings/session-settings#allow_experimental_cleanup_old_data_files_compaction) | `0` |
+| [allow_experimental_iceberg_compaction](/core/reference/settings/session-settings#allow_experimental_iceberg_compaction) | `0` |
+| [allow_iceberg_remove_orphan_files](/core/reference/settings/session-settings#allow_iceberg_remove_orphan_files) | `0` |
+| [iceberg_orphan_files_older_than_seconds](/core/reference/settings/session-settings#iceberg_orphan_files_older_than_seconds) | `259200` |
+| [allow_experimental_expire_snapshots](/core/reference/settings/session-settings#allow_experimental_expire_snapshots) | `0` |
+| [write_full_path_in_iceberg_metadata](/core/reference/settings/session-settings#write_full_path_in_iceberg_metadata) | `0` |
+| [iceberg_metadata_compression_method](/core/reference/settings/session-settings#iceberg_metadata_compression_method) | `` |
+| [make_distributed_plan](/core/reference/settings/session-settings#make_distributed_plan) | `0` |
+| [distributed_plan_execute_locally](/core/reference/settings/session-settings#distributed_plan_execute_locally) | `0` |
+| [distributed_plan_default_shuffle_join_bucket_count](/core/reference/settings/session-settings#distributed_plan_default_shuffle_join_bucket_count) | `8` |
+| [distributed_plan_default_reader_bucket_count](/core/reference/settings/session-settings#distributed_plan_default_reader_bucket_count) | `8` |
+| [distributed_plan_force_exchange_kind](/core/reference/settings/session-settings#distributed_plan_force_exchange_kind) | `` |
+| [distributed_plan_max_rows_to_broadcast](/core/reference/settings/session-settings#distributed_plan_max_rows_to_broadcast) | `20000` |
+| [distributed_plan_prefer_replicas_over_workers](/core/reference/settings/session-settings#distributed_plan_prefer_replicas_over_workers) | `0` |
+| [allow_experimental_ytsaurus_table_engine](/core/reference/settings/session-settings#allow_experimental_ytsaurus_table_engine) | `0` |
+| [allow_experimental_ytsaurus_table_function](/core/reference/settings/session-settings#allow_experimental_ytsaurus_table_function) | `0` |
+| [allow_experimental_ytsaurus_dictionary_source](/core/reference/settings/session-settings#allow_experimental_ytsaurus_dictionary_source) | `0` |
+| [distributed_plan_force_shuffle_aggregation](/core/reference/settings/session-settings#distributed_plan_force_shuffle_aggregation) | `0` |
+| [join_runtime_filter_exact_values_limit](/core/reference/settings/session-settings#join_runtime_filter_exact_values_limit) | `10000` |
+| [join_runtime_bloom_filter_bytes](/core/reference/settings/session-settings#join_runtime_bloom_filter_bytes) | `524288` |
+| [join_runtime_bloom_filter_hash_functions](/core/reference/settings/session-settings#join_runtime_bloom_filter_hash_functions) | `3` |
+| [join_runtime_filter_pass_ratio_threshold_for_disabling](/core/reference/settings/session-settings#join_runtime_filter_pass_ratio_threshold_for_disabling) | `0.7` |
+| [join_runtime_filter_blocks_to_skip_before_reenabling](/core/reference/settings/session-settings#join_runtime_filter_blocks_to_skip_before_reenabling) | `30` |
+| [join_runtime_bloom_filter_max_ratio_of_set_bits](/core/reference/settings/session-settings#join_runtime_bloom_filter_max_ratio_of_set_bits) | `0.7` |
+| [rewrite_in_to_join](/core/reference/settings/session-settings#rewrite_in_to_join) | `0` |
+| [allow_experimental_time_series_aggregate_functions](/core/reference/settings/session-settings#allow_experimental_time_series_aggregate_functions) | `0` |
+| [promql_database](/core/reference/settings/session-settings#promql_database) | `` |
+| [promql_table](/core/reference/settings/session-settings#promql_table) | `` |
+| [promql_evaluation_time](/core/reference/settings/session-settings#promql_evaluation_time) | `auto` |
+| [allow_experimental_alias_table_engine](/core/reference/settings/session-settings#allow_experimental_alias_table_engine) | `0` |
+| [allow_experimental_paimon_storage_engine](/core/reference/settings/session-settings) | `0` |
+| [paimon_target_snapshot_id](/core/reference/settings/session-settings) | `-1` |
+| [max_consume_snapshots](/core/reference/settings/session-settings) | `0` |
+| [use_paimon_partition_pruning](/core/reference/settings/session-settings#use_paimon_partition_pruning) | `0` |
+| [allow_experimental_object_storage_queue_hive_partitioning](/core/reference/settings/session-settings#allow_experimental_object_storage_queue_hive_partitioning) | `0` |
+| [query_plan_optimize_join_order_algorithm](/core/reference/settings/session-settings#query_plan_optimize_join_order_algorithm) | `greedy` |
+| [allow_experimental_database_paimon_rest_catalog](/core/reference/settings/session-settings#allow_experimental_database_paimon_rest_catalog) | `0` |
+| [webassembly_udf_max_fuel](/core/reference/settings/session-settings#webassembly_udf_max_fuel) | `100000` |
+| [webassembly_udf_max_memory](/core/reference/settings/session-settings#webassembly_udf_max_memory) | `134217728` |
+| [webassembly_udf_max_input_block_size](/core/reference/settings/session-settings#webassembly_udf_max_input_block_size) | `0` |
+| [webassembly_udf_max_instances](/core/reference/settings/session-settings#webassembly_udf_max_instances) | `32` |
+| [allow_experimental_ai_functions](/core/reference/settings/session-settings#allow_experimental_ai_functions) | `0` |
+| [ai_function_request_timeout_sec](/core/reference/settings/session-settings#ai_function_request_timeout_sec) | `60` |
+| [ai_function_max_retries](/core/reference/settings/session-settings#ai_function_max_retries) | `0` |
+| [ai_function_retry_initial_delay_ms](/core/reference/settings/session-settings#ai_function_retry_initial_delay_ms) | `1000` |
+| [ai_function_throw_on_error](/core/reference/settings/session-settings#ai_function_throw_on_error) | `1` |
+| [ai_function_max_input_tokens_per_query](/core/reference/settings/session-settings#ai_function_max_input_tokens_per_query) | `1000000` |
+| [ai_function_max_output_tokens_per_query](/core/reference/settings/session-settings#ai_function_max_output_tokens_per_query) | `500000` |
+| [ai_function_max_api_calls_per_query](/core/reference/settings/session-settings#ai_function_max_api_calls_per_query) | `0` |
+| [ai_function_throw_on_quota_exceeded](/core/reference/settings/session-settings#ai_function_throw_on_quota_exceeded) | `1` |
+{/*AUTOGENERATED_END*/}
diff --git a/reference/settings/formats.mdx b/core/reference/settings/formats.mdx
similarity index 94%
rename from reference/settings/formats.mdx
rename to core/reference/settings/formats.mdx
index 3c95725e..a1fced71 100644
--- a/reference/settings/formats.mdx
+++ b/core/reference/settings/formats.mdx
@@ -73,7 +73,7 @@ corresponding to 'seconds', 'milliseconds', and 'microseconds'
Allows choosing a parser of the text representation of date and time.
-The setting does not apply to [date and time functions](/reference/functions/regular-functions/date-time-functions).
+The setting does not apply to [date and time functions](/core/reference/functions/regular-functions/date-time-functions).
Possible values:
@@ -81,7 +81,7 @@ Possible values:
ClickHouse can parse the basic `YYYY-MM-DD HH:MM:SS` format and all [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time formats. For example, `'2018-06-08T01:02:03.000Z'`.
-- `'best_effort_us'` — Similar to `best_effort` (see the difference in [parseDateTimeBestEffortUS](/reference/functions/regular-functions/type-conversion-functions#parseDateTimeBestEffortUS)
+- `'best_effort_us'` — Similar to `best_effort` (see the difference in [parseDateTimeBestEffortUS](/core/reference/functions/regular-functions/type-conversion-functions#parseDateTimeBestEffortUS)
- `'basic'` — Use basic parser.
@@ -89,8 +89,8 @@ Possible values:
See also:
-- [DateTime data type.](/reference/data-types/datetime)
-- [Functions for working with dates and times.](/reference/functions/regular-functions/date-time-functions)
+- [DateTime data type.](/core/reference/data-types/datetime)
+- [Functions for working with dates and times.](/core/reference/functions/regular-functions/date-time-functions)
## date_time_output_format {#date_time_output_format}
@@ -114,14 +114,14 @@ Possible values:
See also:
-- [DateTime data type.](/reference/data-types/datetime)
-- [Functions for working with dates and times.](/reference/functions/regular-functions/date-time-functions)
+- [DateTime data type.](/core/reference/data-types/datetime)
+- [Functions for working with dates and times.](/core/reference/functions/regular-functions/date-time-functions)
## date_time_overflow_behavior {#date_time_overflow_behavior}
-Defines the behavior when [Date](/reference/data-types/date), [Date32](/reference/data-types/date32), [DateTime](/reference/data-types/datetime), [DateTime64](/reference/data-types/datetime64) or integers are converted into Date, Date32, DateTime or DateTime64 but the value cannot be represented in the result type.
+Defines the behavior when [Date](/core/reference/data-types/date), [Date32](/core/reference/data-types/date32), [DateTime](/core/reference/data-types/datetime), [DateTime64](/core/reference/data-types/datetime64) or integers are converted into Date, Date32, DateTime or DateTime64 but the value cannot be represented in the result type.
Possible values:
@@ -276,9 +276,9 @@ Enables or disables showing secrets in `SHOW` and `SELECT` queries for tables, d
table functions, and dictionaries.
User wishing to see secrets must also have
-[`display_secrets_in_show_and_select` server setting](/reference/settings/server-settings/settings#display_secrets_in_show_and_select)
+[`display_secrets_in_show_and_select` server setting](/core/reference/settings/server-settings/settings#display_secrets_in_show_and_select)
turned on and a
-[`displaySecretsInShowAndSelect`](/reference/statements/grant#displaysecretsinshowandselect) privilege.
+[`displaySecretsInShowAndSelect`](/core/reference/statements/grant#displaysecretsinshowandselect) privilege.
Possible values:
@@ -287,7 +287,7 @@ Possible values:
## format_json_object_each_row_column_for_object_name {#format_json_object_each_row_column_for_object_name}
-The name of column that will be used for storing/writing object names in [JSONObjectEachRow](/reference/formats/JSON/JSONObjectEachRow) format.
+The name of column that will be used for storing/writing object names in [JSONObjectEachRow](/core/reference/formats/JSON/JSONObjectEachRow) format.
Column type should be String. If value is empty, default names `row_{i}`will be used for object names.
## format_protobuf_use_autogenerated_schema {#format_protobuf_use_autogenerated_schema}
@@ -474,7 +474,7 @@ Max type nodes when decoding binary types (not depth, but total count). `Map(Str
-Read values of [JSON](/reference/data-types/newjson) data type as JSON [String](/reference/data-types/string) values in RowBinary input format.
+Read values of [JSON](/core/reference/data-types/newjson) data type as JSON [String](/core/reference/data-types/string) values in RowBinary input format.
## input_format_bson_skip_fields_with_unsupported_types_in_schema_inference {#input_format_bson_skip_fields_with_unsupported_types_in_schema_inference}
@@ -637,7 +637,7 @@ Skip trailing empty lines in CustomSeparated format
-When performing `INSERT` queries, replace omitted input column values with default values of the respective columns. This option applies to [JSONEachRow](/reference/formats/JSON/JSONEachRow) (and other JSON formats), [CSV](/reference/formats/CSV/CSV), [TabSeparated](/reference/formats/TabSeparated/TabSeparated), [TSKV](/reference/formats/TabSeparated/TSKV), [Parquet](/reference/formats/Parquet/Parquet), [Arrow](/reference/formats/Arrow/Arrow), [Avro](/reference/formats/Avro/Avro), [ORC](/reference/formats/ORC), [Native](/reference/formats/Native) formats and formats with `WithNames`/`WithNamesAndTypes` suffixes.
+When performing `INSERT` queries, replace omitted input column values with default values of the respective columns. This option applies to [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) (and other JSON formats), [CSV](/core/reference/formats/CSV/CSV), [TabSeparated](/core/reference/formats/TabSeparated/TabSeparated), [TSKV](/core/reference/formats/TabSeparated/TSKV), [Parquet](/core/reference/formats/Parquet/Parquet), [Arrow](/core/reference/formats/Arrow/Arrow), [Avro](/core/reference/formats/Avro/Avro), [ORC](/core/reference/formats/ORC), [Native](/core/reference/formats/Native) formats and formats with `WithNames`/`WithNamesAndTypes` suffixes.
When this option is enabled, extended table metadata are sent from server to client. It consumes additional computing resources on the server and can reduce performance.
@@ -690,7 +690,7 @@ Enables or disables the insertion of JSON data with nested objects.
Supported formats:
-- [JSONEachRow](/reference/formats/JSON/JSONEachRow)
+- [JSONEachRow](/core/reference/formats/JSON/JSONEachRow)
Possible values:
@@ -699,7 +699,7 @@ Possible values:
See also:
-- [Usage of Nested Structures](/integrations/connectors/data-ingestion/data-formats/json/formats#accessing-nested-json-objects) with the `JSONEachRow` format.
+- [Usage of Nested Structures](/core/guides/clickhouse/data-formats/json/formats#accessing-nested-json-objects) with the `JSONEachRow` format.
## input_format_ipv4_default_on_conversion_error {#input_format_ipv4_default_on_conversion_error}
@@ -1092,7 +1092,7 @@ Read data types in binary format instead of type names in Native input format
-Enables or disables the initialization of [NULL](/reference/syntax#literals) fields with [default values](/reference/statements/create/table#default_values), if data type of these fields is not [nullable](/reference/data-types/nullable).
+Enables or disables the initialization of [NULL](/core/reference/syntax#literals) fields with [default values](/core/reference/statements/create/table#default_values), if data type of these fields is not [nullable](/core/reference/data-types/nullable).
If column type is not nullable and this setting is disabled, then inserting `NULL` causes an exception. If column type is nullable, then `NULL` values are inserted as is, regardless of this setting.
This setting is applicable for most input formats.
@@ -1162,7 +1162,7 @@ Use a faster ORC decoder implementation.
-Enables or disables order-preserving parallel parsing of data formats. Supported only for [TabSeparated (TSV)](/reference/formats/TabSeparated/TabSeparated), [TSKV](/reference/formats/TabSeparated/TSKV), [CSV](/reference/formats/CSV/CSV) and [JSONEachRow](/reference/formats/JSON/JSONEachRow) formats.
+Enables or disables order-preserving parallel parsing of data formats. Supported only for [TabSeparated (TSV)](/core/reference/formats/TabSeparated/TabSeparated), [TSKV](/core/reference/formats/TabSeparated/TSKV), [CSV](/core/reference/formats/CSV/CSV) and [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) formats.
Possible values:
@@ -1341,12 +1341,12 @@ When writing data, ClickHouse throws an exception if input data contain columns
Supported formats:
-- [JSONEachRow](/reference/formats/JSON/JSONEachRow) (and other JSON formats)
-- [BSONEachRow](/reference/formats/BSONEachRow) (and other JSON formats)
-- [TSKV](/reference/formats/TabSeparated/TSKV)
+- [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) (and other JSON formats)
+- [BSONEachRow](/core/reference/formats/BSONEachRow) (and other JSON formats)
+- [TSKV](/core/reference/formats/TabSeparated/TSKV)
- All formats with suffixes WithNames/WithNamesAndTypes
-- [MySQLDump](/reference/formats/MySQLDump)
-- [Native](/reference/formats/Native)
+- [MySQLDump](/core/reference/formats/MySQLDump)
+- [Native](/core/reference/formats/Native)
Possible values:
@@ -1399,7 +1399,7 @@ Enabled by default.
-If enabled, ClickHouse will try to infer type [`Variant`](/reference/data-types/variant) in schema inference for text formats when there is more than one possible type for column/array elements.
+If enabled, ClickHouse will try to infer type [`Variant`](/core/reference/data-types/variant) in schema inference for text formats when there is more than one possible type for column/array elements.
Possible values:
@@ -1488,18 +1488,18 @@ To improve insert performance, we recommend disabling this check if you are sure
Supported formats:
-- [CSVWithNames](/reference/formats/CSV/CSVWithNames)
-- [CSVWithNamesAndTypes](/reference/formats/CSV/CSVWithNamesAndTypes)
-- [TabSeparatedWithNames](/reference/formats/TabSeparated/TabSeparatedWithNames)
-- [TabSeparatedWithNamesAndTypes](/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
-- [JSONCompactEachRowWithNames](/reference/formats/JSON/JSONCompactEachRowWithNames)
-- [JSONCompactEachRowWithNamesAndTypes](/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
-- [JSONCompactStringsEachRowWithNames](/reference/formats/JSON/JSONCompactStringsEachRowWithNames)
-- [JSONCompactStringsEachRowWithNamesAndTypes](/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
-- [RowBinaryWithNames](/reference/formats/RowBinary/RowBinaryWithNames)
-- [RowBinaryWithNamesAndTypes](/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
-- [CustomSeparatedWithNames](/reference/formats/CustomSeparated/CustomSeparatedWithNames)
-- [CustomSeparatedWithNamesAndTypes](/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes)
+- [CSVWithNames](/core/reference/formats/CSV/CSVWithNames)
+- [CSVWithNamesAndTypes](/core/reference/formats/CSV/CSVWithNamesAndTypes)
+- [TabSeparatedWithNames](/core/reference/formats/TabSeparated/TabSeparatedWithNames)
+- [TabSeparatedWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
+- [JSONCompactEachRowWithNames](/core/reference/formats/JSON/JSONCompactEachRowWithNames)
+- [JSONCompactEachRowWithNamesAndTypes](/core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
+- [JSONCompactStringsEachRowWithNames](/core/reference/formats/JSON/JSONCompactStringsEachRowWithNames)
+- [JSONCompactStringsEachRowWithNamesAndTypes](/core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
+- [RowBinaryWithNames](/core/reference/formats/RowBinary/RowBinaryWithNames)
+- [RowBinaryWithNamesAndTypes](/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
+- [CustomSeparatedWithNames](/core/reference/formats/CustomSeparated/CustomSeparatedWithNames)
+- [CustomSeparatedWithNamesAndTypes](/core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes)
Possible values:
@@ -1514,12 +1514,12 @@ Controls whether format parser should check if data types from the input data ma
Supported formats:
-- [CSVWithNamesAndTypes](/reference/formats/CSV/CSVWithNamesAndTypes)
-- [TabSeparatedWithNamesAndTypes](/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
-- [JSONCompactEachRowWithNamesAndTypes](/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
-- [JSONCompactStringsEachRowWithNamesAndTypes](/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
-- [RowBinaryWithNamesAndTypes](/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
-- [CustomSeparatedWithNamesAndTypes](/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes)
+- [CSVWithNamesAndTypes](/core/reference/formats/CSV/CSVWithNamesAndTypes)
+- [TabSeparatedWithNamesAndTypes](/core/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
+- [JSONCompactEachRowWithNamesAndTypes](/core/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
+- [JSONCompactStringsEachRowWithNamesAndTypes](/core/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
+- [RowBinaryWithNamesAndTypes](/core/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
+- [CustomSeparatedWithNamesAndTypes](/core/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes)
Possible values:
@@ -1530,7 +1530,7 @@ Possible values:
-Enables or disables random shard insertion into a [Distributed](/reference/engines/table-engines/special/distributed) table when there is no distributed key.
+Enables or disables random shard insertion into a [Distributed](/core/reference/engines/table-engines/special/distributed) table when there is no distributed key.
By default, when inserting data into a `Distributed` table with more than one shard, the ClickHouse server will reject any insertion request if there is no distributed key. When `insert_distributed_one_random_shard = 1`, insertions are allowed and data is forwarded randomly among all shards.
@@ -1557,7 +1557,7 @@ Possible values:
See also:
-- [Interval](/reference/data-types/special-data-types/interval)
+- [Interval](/core/reference/data-types/special-data-types/interval)
## into_outfile_create_parent_directories {#into_outfile_create_parent_directories}
@@ -1680,7 +1680,7 @@ Write data types in binary format instead of type names in RowBinaryWithNamesAnd
-Write values of [JSON](/reference/data-types/newjson) data type as JSON [String](/reference/data-types/string) values in RowBinary output format.
+Write values of [JSON](/core/reference/data-types/newjson) data type as JSON [String](/core/reference/data-types/string) values in RowBinary output format.
## output_format_bson_string_as_string {#output_format_bson_string_as_string}
@@ -1736,7 +1736,7 @@ Disabled by default.
-Enables the ability to output all rows as a JSON array in the [JSONEachRow](/reference/formats/JSON/JSONEachRow) format.
+Enables the ability to output all rows as a JSON array in the [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) format.
Possible values:
@@ -1859,7 +1859,7 @@ Enabled by default.
-Controls quoting of 64-bit [floats](/reference/data-types/float) when they are output in JSON* formats.
+Controls quoting of 64-bit [floats](/core/reference/data-types/float) when they are output in JSON* formats.
Disabled by default.
@@ -1869,7 +1869,7 @@ Disabled by default.
-Controls quoting of 64-bit or bigger [integers](/reference/data-types/int-uint) (like `UInt64` or `Int128`) when they are output in a [JSON](/reference/formats/JSON/JSON) format.
+Controls quoting of 64-bit or bigger [integers](/core/reference/data-types/int-uint) (like `UInt64` or `Int128`) when they are output in a [JSON](/core/reference/formats/JSON/JSON) format.
Such integers are enclosed in quotes by default. This behavior is compatible with most JavaScript implementations.
Possible values:
@@ -1889,7 +1889,7 @@ Disabled by default.
-Enables `+nan`, `-nan`, `+inf`, `-inf` outputs in [JSON](/reference/formats/JSON/JSON) output format.
+Enables `+nan`, `-nan`, `+inf`, `-inf` outputs in [JSON](/core/reference/formats/JSON/JSON) output format.
Possible values:
@@ -2035,7 +2035,7 @@ Write data types in binary format instead of type names in Native output format
-Write data of [JSON](/reference/data-types/newjson) and [Dynamic](/reference/data-types/dynamic) columns in a flattened format (all types/paths as separate subcolumns).
+Write data of [JSON](/core/reference/data-types/newjson) and [Dynamic](/core/reference/data-types/dynamic) columns in a flattened format (all types/paths as separate subcolumns).
## output_format_native_write_json_as_string {#output_format_native_write_json_as_string}
@@ -2043,7 +2043,7 @@ Write data of [JSON](/reference/data-types/newjson) and [Dynamic](/reference/dat
-Write data of [JSON](/reference/data-types/newjson) column as [String](/reference/data-types/string) column containing JSON strings instead of default native JSON serialization.
+Write data of [JSON](/core/reference/data-types/newjson) column as [String](/core/reference/data-types/string) column containing JSON strings instead of default native JSON serialization.
## output_format_orc_compression_block_size {#output_format_orc_compression_block_size}
@@ -2095,7 +2095,7 @@ The time zone name for ORC writer, the default ORC writer's time zone is GMT.
-Enables or disables parallel formatting of data formats. Supported only for [TSV](/reference/formats/TabSeparated/TabSeparated), [TSKV](/reference/formats/TabSeparated/TSKV), [CSV](/reference/formats/CSV/CSV) and [JSONEachRow](/reference/formats/JSON/JSONEachRow) formats.
+Enables or disables parallel formatting of data formats. Supported only for [TSV](/core/reference/formats/TabSeparated/TabSeparated), [TSKV](/core/reference/formats/TabSeparated/TSKV), [CSV](/core/reference/formats/CSV/CSV) and [JSONEachRow](/core/reference/formats/JSON/JSONEachRow) formats.
Possible values:
@@ -2464,7 +2464,7 @@ When serializing Nullable columns with Google wrappers, serialize default values
## output_format_schema {#output_format_schema}
-The path to the file where the automatically generated schema will be saved in [Cap'n Proto](/reference/formats/CapnProto) or [Protobuf](/reference/formats/Protobuf/Protobuf) formats.
+The path to the file where the automatically generated schema will be saved in [Cap'n Proto](/core/reference/formats/CapnProto) or [Protobuf](/core/reference/formats/Protobuf/Protobuf) formats.
## output_format_sql_insert_include_column_names {#output_format_sql_insert_include_column_names}
diff --git a/core/reference/settings/index.mdx b/core/reference/settings/index.mdx
new file mode 100644
index 00000000..c446d4be
--- /dev/null
+++ b/core/reference/settings/index.mdx
@@ -0,0 +1,32 @@
+---
+description: 'Table of Contents page for Settings'
+slug: /operations/settings/
+title: 'Settings'
+doc_type: 'landing-page'
+---
+
+{/* The table of contents table for this page is automatically generated by
+https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh
+from the YAML front matter fields: slug, description, title.
+
+If you've spotted an error, please edit the YML frontmatter of the pages themselves.
+*/}
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [Settings Overview](/core/concepts/features/configuration/settings/overview) | Overview page for settings. |
+| [Permissions for queries](/core/concepts/features/configuration/settings/permissions-for-queries) | Settings for query permissions. |
+| [Restrictions on query complexity](/core/concepts/features/configuration/settings/query-complexity) | Settings which restrict query complexity. |
+| [Settings profiles](/core/concepts/features/configuration/settings/settings-profiles) | A collection of settings grouped under the same name. |
+| [Constraints on settings](/core/concepts/features/configuration/settings/constraints-on-settings) | Constraints on settings can be defined in the `profiles` section of the `user.xml` configuration file and prohibit users from changing some of the settings with the `SET` query. |
+| [Users and roles settings](/core/concepts/features/configuration/settings/settings-users) | Settings for configuring users and roles. |
+| [Composable protocols](/core/concepts/features/configuration/server-config/composable-protocols) | Composable protocols allows more flexible configuration of TCP access to the ClickHouse server. |
+| [Format Settings](/core/reference/settings/formats) | Settings which control input and output formats. |
+| [Memory overcommit](/core/concepts/features/configuration/settings/memory-overcommit) | An experimental technique intended to allow to set more flexible memory limits for queries. |
+| [MergeTree tables settings](/core/reference/settings/merge-tree-settings) | Settings for MergeTree which are in `system.merge_tree_settings` |
+| [Query-level Session Settings](/core/concepts/features/configuration/settings/settings-query-level) | Settings at the query-level |
+| [Server overload](/core/concepts/features/configuration/settings/server-overload) | Controlling behavior on server CPU overload. |
+| [Session Settings](/core/reference/settings/session-settings) | Settings which are found in the ``system.settings`` table. |
+| [TCP connection limits](/core/concepts/features/configuration/settings/tcp-connection-limits) | TCP connection limits. |
+{/*AUTOGENERATED_END*/}
diff --git a/reference/settings/merge-tree-settings.mdx b/core/reference/settings/merge-tree-settings.mdx
similarity index 97%
rename from reference/settings/merge-tree-settings.mdx
rename to core/reference/settings/merge-tree-settings.mdx
index ba7ada80..1b520238 100644
--- a/reference/settings/merge-tree-settings.mdx
+++ b/core/reference/settings/merge-tree-settings.mdx
@@ -296,9 +296,9 @@ to trigger such an action.
**See Also**
-- [ignore_cold_parts_seconds](/reference/settings/session-settings#ignore_cold_parts_seconds)
-- [prefer_warmed_unmerged_parts_seconds](/reference/settings/session-settings#prefer_warmed_unmerged_parts_seconds)
-- [cache_warmer_threads](/reference/settings/session-settings#cache_warmer_threads)
+- [ignore_cold_parts_seconds](/core/reference/settings/session-settings#ignore_cold_parts_seconds)
+- [prefer_warmed_unmerged_parts_seconds](/core/reference/settings/session-settings#prefer_warmed_unmerged_parts_seconds)
+- [cache_warmer_threads](/core/reference/settings/session-settings#cache_warmer_threads)
## cache_populated_by_fetch_filename_regexp {#cache_populated_by_fetch_filename_regexp}
@@ -318,7 +318,7 @@ Obsolete setting, does nothing.
Enables the check at table creation, that the data type of a column for s
ampling or sampling expression is correct. The data type must be one of unsigned
-[integer types](/reference/data-types/int-uint): `UInt8`, `UInt16`,
+[integer types](/core/reference/data-types/int-uint): `UInt8`, `UInt16`,
`UInt32`, `UInt64`.
Possible values:
@@ -475,7 +475,7 @@ disabled, the data part is removed. Activate this setting if you want to
analyze such parts later.
The setting is applicable to `MergeTree` tables with enabled
-[data replication](/reference/engines/table-engines/mergetree-family/replacingmergetree).
+[data replication](/core/reference/engines/table-engines/mergetree-family/replacingmergetree).
Possible values:
@@ -648,8 +648,8 @@ Excludes provided comma delimited list of skip indexes from being built and stor
[materialize_skip_indexes_on_merge](#materialize_skip_indexes_on_merge) is false.
The excluded skip indexes will still be built and stored by an explicit
-[MATERIALIZE INDEX](/reference/statements/alter/skipping-index#materialize-index) query or during INSERTs depending on
-the [materialize_skip_indexes_on_insert](/reference/settings/session-settings#materialize_skip_indexes_on_insert)
+[MATERIALIZE INDEX](/core/reference/statements/alter/skipping-index#materialize-index) query or during INSERTs depending on
+the [materialize_skip_indexes_on_insert](/core/reference/settings/session-settings#materialize_skip_indexes_on_insert)
session setting.
Example:
@@ -890,8 +890,8 @@ the default compression is ZSTD(3).
When enabled, merges build and store skip indices for new parts.
-Otherwise they can be created/stored by explicit [MATERIALIZE INDEX](/reference/statements/alter/skipping-index#materialize-index)
-or [during INSERTs](/reference/settings/session-settings#materialize_skip_indexes_on_insert).
+Otherwise they can be created/stored by explicit [MATERIALIZE INDEX](/core/reference/statements/alter/skipping-index#materialize-index)
+or [during INSERTs](/core/reference/settings/session-settings#materialize_skip_indexes_on_insert).
See also [exclude_materialize_skip_indexes_on_merge](#exclude_materialize_skip_indexes_on_merge) for more fine-grained control.
@@ -900,8 +900,8 @@ See also [exclude_materialize_skip_indexes_on_merge](#exclude_materialize_skip_i
When enabled, merges will build and store statistics for new parts.
-Otherwise they can be created/stored by explicit [MATERIALIZE STATISTICS](/reference/statements/alter/statistics)
-or [during INSERTs](/reference/settings/session-settings#materialize_statistics_on_insert)
+Otherwise they can be created/stored by explicit [MATERIALIZE STATISTICS](/core/reference/statements/alter/statistics)
+or [during INSERTs](/core/reference/settings/session-settings#materialize_statistics_on_insert)
## materialize_ttl_recalculate_only {#materialize_ttl_recalculate_only}
@@ -942,7 +942,7 @@ partitions, and if there are enough free resources in the pool, it starts
background merges. Merges occur until the total size of the source parts is
larger than `max_bytes_to_merge_at_max_space_in_pool`.
-Merges initiated by [OPTIMIZE FINAL](/reference/statements/optimize)
+Merges initiated by [OPTIMIZE FINAL](/core/reference/statements/optimize)
ignore `max_bytes_to_merge_at_max_space_in_pool` (only the free disk space
is taken into account).
@@ -975,7 +975,7 @@ Maximum period to clean old queue logs, blocks hashes and parts.
The maximum size of blocks of uncompressed data before compressing for writing
to a table. You can also specify this setting in the global settings
-(see [max_compress_block_size](/reference/settings/merge-tree-settings#max_compress_block_size)
+(see [max_compress_block_size](/core/reference/settings/merge-tree-settings#max_compress_block_size)
setting). The value specified when the table is created overrides the global
value for this setting.
@@ -1121,7 +1121,7 @@ query-level setting.
Possible values:
- Any positive integer.
-You can also specify a query complexity setting [max_partitions_to_read](/reference/settings/session-settings#max_partitions_to_read)
+You can also specify a query complexity setting [max_partitions_to_read](/core/reference/settings/session-settings#max_partitions_to_read)
at a query / session / profile level.
## max_parts_in_total {#max_parts_in_total}
@@ -1177,9 +1177,9 @@ The maximum number of merge tree projections.
Limits the maximum speed of data exchange over the network in bytes per
-second for [replicated](/reference/engines/table-engines/mergetree-family/replication)
+second for [replicated](/core/reference/engines/table-engines/mergetree-family/replication)
fetches. This setting is applied to a particular table, unlike the
-[`max_replicated_fetches_network_bandwidth_for_server`](/reference/settings/merge-tree-settings#max_replicated_fetches_network_bandwidth)
+[`max_replicated_fetches_network_bandwidth_for_server`](/core/reference/settings/merge-tree-settings#max_replicated_fetches_network_bandwidth)
setting, which is applied to the server.
You can limit both server network and network for a particular table, but for
@@ -1232,9 +1232,9 @@ ReplicatedMergeTree queue.
Limits the maximum speed of data exchange over the network in bytes per
-second for [replicated](/reference/engines/table-engines/mergetree-family/replacingmergetree)
+second for [replicated](/core/reference/engines/table-engines/mergetree-family/replacingmergetree)
sends. This setting is applied to a particular table, unlike the
-[`max_replicated_sends_network_bandwidth_for_server`](/reference/settings/merge-tree-settings#max_replicated_sends_network_bandwidth)
+[`max_replicated_sends_network_bandwidth_for_server`](/core/reference/settings/merge-tree-settings#max_replicated_sends_network_bandwidth)
setting, which is applied to the server.
You can limit both server network and network for a particular table, but
@@ -1441,7 +1441,7 @@ background merges of this table. If not specified (empty string), then
server setting `merge_workload` is used instead.
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## min_absolute_delay_to_close {#min_absolute_delay_to_close}
@@ -1510,7 +1510,7 @@ Possible values:
The value of the `min_bytes_to_rebalance_partition_over_jbod` setting should
not be less than the value of the
-[max_bytes_to_merge_at_max_space_in_pool](/reference/settings/merge-tree-settings#max_bytes_to_merge_at_max_space_in_pool)
+[max_bytes_to_merge_at_max_space_in_pool](/core/reference/settings/merge-tree-settings#max_bytes_to_merge_at_max_space_in_pool)
/ 1024. Otherwise, ClickHouse throws an exception.
## min_columns_to_activate_adaptive_write_buffer {#min_columns_to_activate_adaptive_write_buffer}
@@ -1528,7 +1528,7 @@ Possible values:
Minimum size of blocks of uncompressed data required for compression when
writing the next mark. You can also specify this setting in the global settings
-(see [min_compress_block_size](/reference/settings/merge-tree-settings#min_compress_block_size)
+(see [min_compress_block_size](/core/reference/settings/merge-tree-settings#min_compress_block_size)
setting). The value specified when the table is created overrides the global value
for this setting.
@@ -1703,13 +1703,13 @@ background mutations of this table. If not specified (empty string), then
server setting `mutation_workload` is used instead.
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## non_replicated_deduplication_window {#non_replicated_deduplication_window}
The number of the most recently inserted blocks in the non-replicated
-[MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) table
+[MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table
for which hash sums are stored to check for duplicates.
Possible values:
@@ -1753,8 +1753,8 @@ Possible values:
**Usage**
The value of the `number_of_free_entries_in_pool_to_execute_mutation` setting
-should be less than the value of the [background_pool_size](/reference/settings/server-settings/settings#background_pool_size)
-* [background_merges_mutations_concurrency_ratio](/reference/settings/server-settings/settings#background_merges_mutations_concurrency_ratio).
+should be less than the value of the [background_pool_size](/core/reference/settings/server-settings/settings#background_pool_size)
+* [background_merges_mutations_concurrency_ratio](/core/reference/settings/server-settings/settings#background_merges_mutations_concurrency_ratio).
Otherwise, ClickHouse will throw an exception.
## number_of_free_entries_in_pool_to_execute_optimize_entire_partition {#number_of_free_entries_in_pool_to_execute_optimize_entire_partition}
@@ -1771,8 +1771,8 @@ Possible values:
The value of the `number_of_free_entries_in_pool_to_execute_optimize_entire_partition`
setting should be less than the value of the
-[background_pool_size](/reference/settings/server-settings/settings#background_pool_size)
-* [background_merges_mutations_concurrency_ratio](/reference/settings/server-settings/settings#background_merges_mutations_concurrency_ratio).
+[background_pool_size](/core/reference/settings/server-settings/settings#background_pool_size)
+* [background_merges_mutations_concurrency_ratio](/core/reference/settings/server-settings/settings#background_merges_mutations_concurrency_ratio).
Otherwise, ClickHouse throws an exception.
## number_of_free_entries_in_pool_to_lower_max_size_of_merge {#number_of_free_entries_in_pool_to_lower_max_size_of_merge}
@@ -1899,7 +1899,7 @@ compressability of the newly inserted table part.
Only has an effect for ordinary MergeTree-engine tables. Does nothing for
specialized MergeTree engine tables (e.g. CollapsingMergeTree).
-MergeTree tables are (optionally) compressed using [compression codecs](/reference/statements/create/table#column_compression_codec).
+MergeTree tables are (optionally) compressed using [compression codecs](/core/reference/statements/create/table#column_compression_codec).
Generic compression codecs such as LZ4 and ZSTD achieve maximum compression
rates if the data exposes patterns. Long runs of the same value typically
compress very well.
@@ -2010,7 +2010,7 @@ Possible values:
- Any positive integer.
To achieve maximum performance of `SELECT` queries, it is necessary to
-minimize the number of parts processed, see [Merge Tree](/resources/contribute/architecture#merge-tree).
+minimize the number of parts processed, see [Merge Tree](/resources/develop-contribute/introduction/architecture#merge-tree).
Prior to version 23.6 this setting was set to 300. You can set a higher
different value, it will reduce the probability of the `Too many parts`
@@ -2298,7 +2298,7 @@ Possible values:
- 0 (disable deduplication)
The `Insert` command creates one or more blocks (parts). For
-[insert deduplication](/reference/engines/table-engines/mergetree-family/replication),
+[insert deduplication](/core/reference/engines/table-engines/mergetree-family/replication),
when writing into replicated tables, ClickHouse writes the hash sums of the
created parts into ClickHouse Keeper. Hash sums are stored only for the most
recent `replicated_deduplication_window` blocks. The oldest hash sums are
@@ -2319,8 +2319,8 @@ Possible values:
- Any positive integer.
- 0 (disable deduplication for async_inserts)
-The [Async Insert](/reference/settings/session-settings#async_insert) command will
-be cached in one or more blocks (parts). For [insert deduplication](/reference/engines/table-engines/mergetree-family/replication),
+The [Async Insert](/core/reference/settings/session-settings#async_insert) command will
+be cached in one or more blocks (parts). For [insert deduplication](/core/reference/engines/table-engines/mergetree-family/replication),
when writing into replicated tables, ClickHouse writes the hash sums of each
insert into ClickHouse Keeper. Hash sums are stored only for the most recent
`replicated_deduplication_window_for_async_inserts` blocks. The oldest hash
@@ -2916,7 +2916,7 @@ new format.
Storage method of the data parts headers in ZooKeeper. If enabled, ZooKeeper
-stores less data. For details, see [here](/reference/settings/server-settings/settings#use_minimalistic_part_header_in_zookeeper).
+stores less data. For details, see [here](/core/reference/settings/server-settings/settings#use_minimalistic_part_header_in_zookeeper).
## use_primary_key_cache {#use_primary_key_cache}
diff --git a/reference/settings/server-settings/_server_settings_outside_source.mdx b/core/reference/settings/server-settings/_server_settings_outside_source.mdx
similarity index 92%
rename from reference/settings/server-settings/_server_settings_outside_source.mdx
rename to core/reference/settings/server-settings/_server_settings_outside_source.mdx
index aa83268c..275f6a4e 100644
--- a/reference/settings/server-settings/_server_settings_outside_source.mdx
+++ b/core/reference/settings/server-settings/_server_settings_outside_source.mdx
@@ -6,7 +6,7 @@ If the setting is not enabled by default on your environment, depending on how C
**Enabling**
-To manually turn on asynchronous metric logs history collection [`system.asynchronous_metric_log`](/reference/system-tables/asynchronous_metric_log), create `/etc/clickhouse-server/config.d/asynchronous_metric_log.xml` with the following content:
+To manually turn on asynchronous metric logs history collection [`system.asynchronous_metric_log`](/core/reference/system-tables/asynchronous_metric_log), create `/etc/clickhouse-server/config.d/asynchronous_metric_log.xml` with the following content:
```xml
@@ -43,7 +43,7 @@ This setting should be used with extra caution since forwarded addresses can be
## backups {#backups}
-Settings for backups, used when executing the [`BACKUP` and `RESTORE`](/concepts/features/backup-restore/overview) statements.
+Settings for backups, used when executing the [`BACKUP` and `RESTORE`](/core/concepts/features/backup-restore/overview) statements.
The following settings can be configured by sub-tags:
@@ -152,7 +152,7 @@ ClickHouse reloads built-in dictionaries every x seconds. This makes it possible
## compression {#compression}
-Data compression settings for [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree)-engine tables.
+Data compression settings for [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree)-engine tables.
We recommend not changing this if you have just started using ClickHouse.
@@ -177,7 +177,7 @@ We recommend not changing this if you have just started using ClickHouse.
- `min_part_size` – The minimum size of a data part.
- `min_part_size_ratio` – The ratio of the data part size to the table size.
- `method` – Compression method. Acceptable values: `lz4`, `lz4hc`, `zstd`,`deflate_qpl`.
-- `level` – Compression level. See [Codecs](/reference/statements/create/table#general-purpose-codecs).
+- `level` – Compression level. See [Codecs](/core/reference/statements/create/table#general-purpose-codecs).
You can configure multiple `` sections.
@@ -207,7 +207,7 @@ If no conditions are met for a data part, ClickHouse uses the `lz4` compression.
## encryption {#encryption}
-Configures a command to obtain a key to be used by [encryption codecs](/reference/statements/create/table#encryption-codecs). Key (or keys) should be written in environment variables or set in the configuration file.
+Configures a command to obtain a key to be used by [encryption codecs](/core/reference/statements/create/table#encryption-codecs). Key (or keys) should be written in environment variables or set in the configuration file.
Keys can be hex or string with a length equal to 16 bytes.
@@ -292,7 +292,7 @@ It is disabled by default.
**Enabling**
-To manually turn on error history collection [`system.error_log`](/reference/system-tables/error_log), create `/etc/clickhouse-server/config.d/error_log.xml` with the following content:
+To manually turn on error history collection [`system.error_log`](/core/reference/system-tables/error_log), create `/etc/clickhouse-server/config.d/error_log.xml` with the following content:
```xml
@@ -323,7 +323,7 @@ To disable `error_log` setting, you should create the following file `/etc/click
## custom_settings_prefixes {#custom_settings_prefixes}
-List of prefixes used for [custom settings](/concepts/features/configuration/settings/settings-query-level#custom_settings).
+List of prefixes used for [custom settings](/core/concepts/features/configuration/settings/settings-query-level#custom_settings).
Multiple prefixes should be separated by commas.
**Example**
@@ -334,7 +334,7 @@ Multiple prefixes should be separated by commas.
**See Also**
-- [Custom settings](/concepts/features/configuration/settings/settings-query-level#custom_settings)
+- [Custom settings](/core/concepts/features/configuration/settings/settings-query-level#custom_settings)
## core_dump {#core_dump}
@@ -372,7 +372,7 @@ Path:
- The path can contain wildcards \* and ?.
See also:
-- "[Dictionaries](/reference/statements/create/dictionary)".
+- "[Dictionaries](/core/reference/statements/create/dictionary)".
**Example**
@@ -390,7 +390,7 @@ Path:
- The path can contain wildcards \* and ?.
See also:
-- "[Executable User Defined Functions](/reference/functions/regular-functions/udf#executable-user-defined-functions).".
+- "[Executable User Defined Functions](/core/reference/functions/regular-functions/udf#executable-user-defined-functions).".
**Example**
@@ -409,10 +409,10 @@ Settings:
- `interval` – The interval for sending, in seconds.
- `timeout` – The timeout for sending data, in seconds.
- `root_path` – Prefix for keys.
-- `metrics` – Sending data from the [system.metrics](/reference/system-tables/metrics) table.
-- `events` – Sending deltas data accumulated for the time period from the [system.events](/reference/system-tables/events) table.
-- `events_cumulative` – Sending cumulative data from the [system.events](/reference/system-tables/events) table.
-- `asynchronous_metrics` – Sending data from the [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) table.
+- `metrics` – Sending data from the [system.metrics](/core/reference/system-tables/metrics) table.
+- `events` – Sending deltas data accumulated for the time period from the [system.events](/core/reference/system-tables/events) table.
+- `events_cumulative` – Sending cumulative data from the [system.events](/core/reference/system-tables/events) table.
+- `asynchronous_metrics` – Sending data from the [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) table.
You can configure multiple `` clauses. For instance, you can use this for sending different data at different intervals.
@@ -436,7 +436,7 @@ You can configure multiple `` clauses. For instance, you can use this
Settings for thinning data for Graphite.
-For more details, see [GraphiteMergeTree](/reference/engines/table-engines/mergetree-family/graphitemergetree).
+For more details, see [GraphiteMergeTree](/core/reference/engines/table-engines/mergetree-family/graphitemergetree).
**Example**
@@ -606,12 +606,12 @@ Default:
## interserver_http_credentials {#interserver_http_credentials}
-A username and a password used to connect to other servers during [replication](/reference/engines/table-engines/mergetree-family/replication). Additionally, the server authenticates other replicas using these credentials.
+A username and a password used to connect to other servers during [replication](/core/reference/engines/table-engines/mergetree-family/replication). Additionally, the server authenticates other replicas using these credentials.
`interserver_http_credentials` must therefore be the same for all replicas in a cluster.
- By default, if `interserver_http_credentials` section is omitted, authentication is not used during replication.
-- `interserver_http_credentials` settings do not relate to a ClickHouse client credentials [configuration](/integrations/connectors/data-integrations/drivers-and-interfaces/client#configuration_files).
+- `interserver_http_credentials` settings do not relate to a ClickHouse client credentials [configuration](/core/concepts/features/interfaces/client#configuration_files).
- These credentials are common for replication via `HTTP` and `HTTPS`.
@@ -1058,7 +1058,7 @@ Parameter substitutions for replicated tables.
Can be omitted if replicated tables are not used.
-For more information, see the section [Creating replicated tables](/reference/engines/table-engines/mergetree-family/replication#creating-replicated-tables).
+For more information, see the section [Creating replicated tables](/core/reference/engines/table-engines/mergetree-family/replication#creating-replicated-tables).
**Example**
@@ -1093,7 +1093,7 @@ Example:
## merge_tree {#merge_tree}
-Fine-tuning for tables in the [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree).
+Fine-tuning for tables in the [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree).
For more information, see the MergeTreeSettings.h header file.
@@ -1111,7 +1111,7 @@ It is disabled by default.
**Enabling**
-To manually turn on metrics history collection [`system.metric_log`](/reference/system-tables/metric_log), create `/etc/clickhouse-server/config.d/metric_log.xml` with the following content:
+To manually turn on metrics history collection [`system.metric_log`](/core/reference/system-tables/metric_log), create `/etc/clickhouse-server/config.d/metric_log.xml` with the following content:
```xml
@@ -1142,7 +1142,7 @@ To disable `metric_log` setting, you should create the following file `/etc/clic
## replicated_merge_tree {#replicated_merge_tree}
-Fine-tuning for tables in the [ReplicatedMergeTree](/reference/engines/table-engines/mergetree-family/mergetree). This setting has a higher priority.
+Fine-tuning for tables in the [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree). This setting has a higher priority.
For more information, see the MergeTreeSettings.h header file.
@@ -1156,7 +1156,7 @@ For more information, see the MergeTreeSettings.h header file.
## opentelemetry_span_log {#opentelemetry_span_log}
-Settings for the [`opentelemetry_span_log`](/reference/system-tables/opentelemetry_span_log) system table.
+Settings for the [`opentelemetry_span_log`](/core/reference/system-tables/opentelemetry_span_log) system table.
@@ -1242,9 +1242,9 @@ Keys for server/client settings:
## part_log {#part_log}
-Logging events that are associated with [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree). For instance, adding or merging data. You can use the log to simulate merge algorithms and compare their characteristics. You can visualize the merge process.
+Logging events that are associated with [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree). For instance, adding or merging data. You can use the log to simulate merge algorithms and compare their characteristics. You can visualize the merge process.
-Queries are logged in the [system.part_log](/reference/system-tables/part_log) table, not in a separate file. You can configure the name of this table in the `table` parameter (see below).
+Queries are logged in the [system.part_log](/core/reference/system-tables/part_log) table, not in a separate file. You can configure the name of this table in the `table` parameter (see below).
@@ -1265,7 +1265,7 @@ Queries are logged in the [system.part_log](/reference/system-tables/part_log) t
## processors_profile_log {#processors_profile_log}
-Settings for the [`processors_profile_log`](/reference/system-tables/processors_profile_log) system table.
+Settings for the [`processors_profile_log`](/core/reference/system-tables/processors_profile_log) system table.
@@ -1292,10 +1292,10 @@ Settings:
- `endpoint` – HTTP endpoint for scraping metrics by prometheus server. Start from '/'.
- `port` – Port for `endpoint`.
-- `metrics` – Expose metrics from the [system.metrics](/reference/system-tables/metrics) table.
-- `events` – Expose metrics from the [system.events](/reference/system-tables/events) table.
-- `asynchronous_metrics` – Expose current metrics values from the [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) table.
-- `errors` - Expose the number of errors by error codes occurred since the last server restart. This information could be obtained from the [system.errors](/reference/system-tables/errors) as well.
+- `metrics` – Expose metrics from the [system.metrics](/core/reference/system-tables/metrics) table.
+- `events` – Expose metrics from the [system.events](/core/reference/system-tables/events) table.
+- `asynchronous_metrics` – Expose current metrics values from the [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) table.
+- `errors` - Expose the number of errors by error codes occurred since the last server restart. This information could be obtained from the [system.errors](/core/reference/system-tables/errors) as well.
**Example**
@@ -1322,9 +1322,9 @@ curl 127.0.0.1:9363/metrics
## query_log {#query_log}
-Setting for logging queries received with the [log_queries=1](/reference/settings/session-settings) setting.
+Setting for logging queries received with the [log_queries=1](/core/reference/settings/session-settings) setting.
-Queries are logged in the [system.query_log](/reference/system-tables/query_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
+Queries are logged in the [system.query_log](/core/reference/system-tables/query_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
@@ -1351,7 +1351,7 @@ It is disabled by default.
**Enabling**
-To manually turn on metrics history collection [`system.query_metric_log`](/reference/system-tables/query_metric_log), create `/etc/clickhouse-server/config.d/query_metric_log.xml` with the following content:
+To manually turn on metrics history collection [`system.query_metric_log`](/core/reference/system-tables/query_metric_log), create `/etc/clickhouse-server/config.d/query_metric_log.xml` with the following content:
```xml
@@ -1382,7 +1382,7 @@ To disable `query_metric_log` setting, you should create the following file `/et
## query_cache {#query_cache}
-[Query cache](/concepts/features/performance/caches/query-cache) configuration.
+[Query cache](/core/concepts/features/performance/caches/query-cache) configuration.
The following settings are available:
@@ -1411,9 +1411,9 @@ The following settings are available:
## query_thread_log {#query_thread_log}
-Setting for logging threads of queries received with the [log_query_threads=1](/reference/settings/session-settings#log_query_threads) setting.
+Setting for logging threads of queries received with the [log_query_threads=1](/core/reference/settings/session-settings#log_query_threads) setting.
-Queries are logged in the [system.query_thread_log](/reference/system-tables/query_thread_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
+Queries are logged in the [system.query_thread_log](/core/reference/system-tables/query_thread_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
@@ -1436,9 +1436,9 @@ If the table does not exist, ClickHouse will create it. If the structure of the
## query_views_log {#query_views_log}
-Setting for logging views (live, materialized etc) dependant of queries received with the [log_query_views=1](/reference/settings/session-settings#log_query_views) setting.
+Setting for logging views (live, materialized etc) dependant of queries received with the [log_query_views=1](/core/reference/settings/session-settings#log_query_views) setting.
-Queries are logged in the [system.query_views_log](/reference/system-tables/query_views_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
+Queries are logged in the [system.query_views_log](/core/reference/system-tables/query_views_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
@@ -1461,7 +1461,7 @@ If the table does not exist, ClickHouse will create it. If the structure of the
## text_log {#text_log}
-Settings for the [text_log](/reference/system-tables/text_log) system table for logging text messages.
+Settings for the [text_log](/core/reference/system-tables/text_log) system table for logging text messages.
@@ -1492,7 +1492,7 @@ Additionally:
## trace_log {#trace_log}
-Settings for the [trace_log](/reference/system-tables/trace_log) system table operation.
+Settings for the [trace_log](/core/reference/system-tables/trace_log) system table operation.
@@ -1514,7 +1514,7 @@ The default server configuration file `config.xml` contains the following settin
## asynchronous_insert_log {#asynchronous_insert_log}
-Settings for the [asynchronous_insert_log](/reference/system-tables/asynchronous_insert_log) system table for logging async inserts.
+Settings for the [asynchronous_insert_log](/core/reference/system-tables/asynchronous_insert_log) system table for logging async inserts.
@@ -1538,7 +1538,7 @@ Settings for the [asynchronous_insert_log](/reference/system-tables/asynchronous
## crash_log {#crash_log}
-Settings for the [crash_log](/reference/system-tables/crash_log) system table operation.
+Settings for the [crash_log](/core/reference/system-tables/crash_log) system table operation.
The following settings can be configured by sub-tags:
@@ -1546,17 +1546,17 @@ The following settings can be configured by sub-tags:
|------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|--------------------------------------------------------------------------------------------------------------------|
| `buffer_size_rows_flush_threshold` | Threshold for amount of lines. If the threshold is reached, flushing logs to the disk is launched in background. | `max_size_rows / 2` | |
| `database` | Name of the database. | | |
-| `engine` | [MergeTree Engine Definition](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) for a system table. | | Cannot be used if `partition_by` or `order_by` defined. If not specified `MergeTree` is selected by default |
+| `engine` | [MergeTree Engine Definition](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) for a system table. | | Cannot be used if `partition_by` or `order_by` defined. If not specified `MergeTree` is selected by default |
| `flush_interval_milliseconds` | Interval for flushing data from the buffer in memory to the table. | `7500` | |
| `flush_on_crash` | Sets whether logs should be dumped to the disk in case of a crash. | `false` | |
| `max_size_rows` | Maximal size in lines for the logs. When the amount of non-flushed logs reaches the max_size, logs are dumped to the disk. | `1024` | |
-| `order_by` | [Custom sorting key](/reference/engines/table-engines/mergetree-family/mergetree#order_by) for a system table. Can't be used if `engine` defined. | | If `engine` is specified for system table, `order_by` parameter should be specified directly inside 'engine' |
-| `partition_by` | [Custom partitioning key](/reference/engines/table-engines/mergetree-family/custom-partitioning-key) for a system table. | | If `engine` is specified for system table, `partition_by` parameter should be specified directly inside 'engine' |
+| `order_by` | [Custom sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree#order_by) for a system table. Can't be used if `engine` defined. | | If `engine` is specified for system table, `order_by` parameter should be specified directly inside 'engine' |
+| `partition_by` | [Custom partitioning key](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key) for a system table. | | If `engine` is specified for system table, `partition_by` parameter should be specified directly inside 'engine' |
| `reserved_size_rows` | Pre-allocated memory size in lines for the logs. | `1024` | |
-| `settings` | [Additional parameters](/reference/engines/table-engines/mergetree-family/mergetree#settings) that control the behavior of the MergeTree (optional). | | If `engine` is specified for system table, `settings` parameter should be specified directly inside 'engine' |
+| `settings` | [Additional parameters](/core/reference/engines/table-engines/mergetree-family/mergetree#settings) that control the behavior of the MergeTree (optional). | | If `engine` is specified for system table, `settings` parameter should be specified directly inside 'engine' |
| `storage_policy` | Name of the storage policy to use for the table (optional). | | If `engine` is specified for system table, `storage_policy` parameter should be specified directly inside 'engine' |
| `table` | Name of the system table. | | |
-| `ttl` | Specifies the table [TTL](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). | | If `engine` is specified for system table, `ttl` parameter should be specified directly inside 'engine' |
+| `ttl` | Specifies the table [TTL](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). | | If `engine` is specified for system table, `ttl` parameter should be specified directly inside 'engine' |
The default server configuration file `config.xml` contains the following settings section:
@@ -1594,7 +1594,7 @@ Example:
## backup_log {#backup_log}
-Settings for the [backup_log](/reference/system-tables/backup_log) system table for logging `BACKUP` and `RESTORE` operations.
+Settings for the [backup_log](/core/reference/system-tables/backup_log) system table for logging `BACKUP` and `RESTORE` operations.
@@ -1618,7 +1618,7 @@ Settings for the [backup_log](/reference/system-tables/backup_log) system table
## blob_storage_log {#blob_storage_log}
-Settings for the [`blob_storage_log`](/reference/system-tables/blob_storage_log) system table.
+Settings for the [`blob_storage_log`](/core/reference/system-tables/blob_storage_log) system table.
@@ -1637,7 +1637,7 @@ Example:
## query_masking_rules {#query_masking_rules}
Regexp-based rules, which will be applied to queries as well as all log messages before storing them in server logs,
-[`system.query_log`](/reference/system-tables/query_log), [`system.text_log`](/reference/system-tables/text_log), [`system.processes`](/reference/system-tables/processes) tables, and in logs sent to the client. That allows preventing
+[`system.query_log`](/core/reference/system-tables/query_log), [`system.text_log`](/core/reference/system-tables/text_log), [`system.processes`](/core/reference/system-tables/processes) tables, and in logs sent to the client. That allows preventing
sensitive data leakage from SQL queries such as names, emails, personal identifiers or credit card numbers to logs.
**Example**
@@ -1662,14 +1662,14 @@ sensitive data leakage from SQL queries such as names, emails, personal identifi
The masking rules are applied to the whole query (to prevent leaks of sensitive data from malformed / non-parseable queries).
-The [`system.events`](/reference/system-tables/events) table has counter `QueryMaskingRulesMatch` which has an overall number of query masking rules matches.
+The [`system.events`](/core/reference/system-tables/events) table has counter `QueryMaskingRulesMatch` which has an overall number of query masking rules matches.
For distributed queries each server has to be configured separately, otherwise, subqueries passed to other
nodes will be stored without masking.
## remote_servers {#remote_servers}
-Configuration of clusters used by the [Distributed](/reference/engines/table-engines/special/distributed) table engine and by the `cluster` table function.
+Configuration of clusters used by the [Distributed](/core/reference/engines/table-engines/special/distributed) table engine and by the `cluster` table function.
**Example**
@@ -1677,13 +1677,13 @@ Configuration of clusters used by the [Distributed](/reference/engines/table-eng
```
-For the value of the `incl` attribute, see the section "[Configuration files](/concepts/features/configuration/server-config/configuration-files)".
+For the value of the `incl` attribute, see the section "[Configuration files](/core/concepts/features/configuration/server-config/configuration-files)".
**See Also**
-- [skip_unavailable_shards](/reference/settings/session-settings#skip_unavailable_shards)
-- [Cluster Discovery](/guides/oss/deployment-and-scaling/cluster-discovery)
-- [Replicated database engine](/reference/engines/database-engines/replicated)
+- [skip_unavailable_shards](/core/reference/settings/session-settings#skip_unavailable_shards)
+- [Cluster Discovery](/core/guides/oss/deployment-and-scaling/cluster-discovery)
+- [Replicated database engine](/core/reference/engines/database-engines/replicated)
## remote_url_allow_hosts {#remote_url_allow_hosts}
@@ -1720,7 +1720,7 @@ The time zone is necessary for conversions between String and DateTime formats w
**See also**
-- [session_timezone](/reference/settings/session-settings#session_timezone)
+- [session_timezone](/core/reference/settings/session-settings#session_timezone)
## tcp_port {#tcp_port}
@@ -1794,7 +1794,7 @@ Example:
## user_defined_path {#user_defined_path}
-The directory with user defined files. Used for SQL user defined functions [SQL User Defined Functions](/reference/functions/regular-functions/udf).
+The directory with user defined files. Used for SQL user defined functions [SQL User Defined Functions](/core/reference/functions/regular-functions/udf).
**Example**
@@ -1898,7 +1898,7 @@ The following settings can be configured by sub-tags:
| `identity` (optional) | User and password required by ZooKeeper to access requested znodes. |
| `use_compression` (optional) | Enables compression in Keeper protocol if set to true. |
| `use_xid_64` (optional) | Enables 64-bit transaction IDs. Set to `true` to enable extended transaction ID format. Default: `false`. |
-| `pass_opentelemetry_tracing_context` (optional) | Enables propagation of OpenTelemetry tracing context to Keeper requests. When enabled, tracing spans will be created for Keeper operations, allowing distributed tracing across ClickHouse and Keeper. See [Tracing ClickHouse Keeper Requests](/guides/oss/deployment-and-scaling/monitoring/opentelemetry#tracing-clickhouse-keeper-requests) for more details. Default: `false`. |
+| `pass_opentelemetry_tracing_context` (optional) | Enables propagation of OpenTelemetry tracing context to Keeper requests. When enabled, tracing spans will be created for Keeper operations, allowing distributed tracing across ClickHouse and Keeper. See [Tracing ClickHouse Keeper Requests](/core/guides/oss/deployment-and-scaling/monitoring/opentelemetry#tracing-clickhouse-keeper-requests) for more details. Default: `false`. |
There is also the `zookeeper_load_balancing` setting (optional) which lets you select the algorithm for ZooKeeper node selection:
@@ -1940,13 +1940,13 @@ There is also the `zookeeper_load_balancing` setting (optional) which lets you s
**See Also**
-- [Replication](/reference/engines/table-engines/mergetree-family/replication)
+- [Replication](/core/reference/engines/table-engines/mergetree-family/replication)
- [ZooKeeper Programmer's Guide](http://zookeeper.apache.org/doc/current/zookeeperProgrammers.html)
-- [Optional secured communication between ClickHouse and Zookeeper](/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper)
+- [Optional secured communication between ClickHouse and Zookeeper](/core/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper)
## use_minimalistic_part_header_in_zookeeper {#use_minimalistic_part_header_in_zookeeper}
-Storage method for data part headers in ZooKeeper. This setting only applies to the [`MergeTree`](/reference/engines/table-engines/mergetree-family) family. It can be specified:
+Storage method for data part headers in ZooKeeper. This setting only applies to the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family) family. It can be specified:
**Globally in the [merge_tree](#merge_tree) section of the `config.xml` file**
@@ -1954,14 +1954,14 @@ ClickHouse uses the setting for all the tables on the server. You can change the
**For each table**
-When creating a table, specify the corresponding [engine setting](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table). The behaviour of an existing table with this setting does not change, even if the global setting changes.
+When creating a table, specify the corresponding [engine setting](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table). The behaviour of an existing table with this setting does not change, even if the global setting changes.
**Possible values**
- `0` — Functionality is turned off.
- `1` — Functionality is turned on.
-If [`use_minimalistic_part_header_in_zookeeper = 1`](#use_minimalistic_part_header_in_zookeeper), then [replicated](/reference/engines/table-engines/mergetree-family/replication) tables store the headers of the data parts compactly using a single `znode`. If the table contains many columns, this storage method significantly reduces the volume of the data stored in Zookeeper.
+If [`use_minimalistic_part_header_in_zookeeper = 1`](#use_minimalistic_part_header_in_zookeeper), then [replicated](/core/reference/engines/table-engines/mergetree-family/replication) tables store the headers of the data parts compactly using a single `znode`. If the table contains many columns, this storage method significantly reduces the volume of the data stored in Zookeeper.
After applying `use_minimalistic_part_header_in_zookeeper = 1`, you can't downgrade the ClickHouse server to a version that does not support this setting. Be careful when upgrading ClickHouse on servers in a cluster. Don't upgrade all the servers at once. It is safer to test new versions of ClickHouse in a test environment, or on just a few servers of a cluster.
@@ -1971,8 +1971,8 @@ Data part headers already stored with this setting can't be restored to their pr
## distributed_ddl {#distributed_ddl}
-Manage executing [distributed ddl queries](/reference/statements/distributed-ddl) (`CREATE`, `DROP`, `ALTER`, `RENAME`) on cluster.
-Works only if [ZooKeeper](/reference/settings/server-settings/settings#zookeeper) is enabled.
+Manage executing [distributed ddl queries](/core/reference/statements/distributed-ddl) (`CREATE`, `DROP`, `ALTER`, `RENAME`) on cluster.
+Works only if [ZooKeeper](/core/reference/settings/server-settings/settings#zookeeper) is enabled.
The configurable settings within `` include:
@@ -2019,7 +2019,7 @@ Path to a folder where a ClickHouse server stores user and role configurations c
**See also**
-- [Access Control and Account Management](/concepts/features/security/access-rights#access-control-usage)
+- [Access Control and Account Management](/core/concepts/features/security/access-rights#access-control-usage)
## allow_plaintext_password {#allow_plaintext_password}
@@ -2074,7 +2074,7 @@ Section of the configuration file that contains settings:
- Path to folder where users created by SQL commands are stored.
- ZooKeeper node path where users created by SQL commands are stored and replicated.
-If this section is specified, the path from [users_config](/reference/settings/server-settings/settings#users_config) and [access_control_path](/reference/settings/server-settings/settings#access_control_path) won't be used.
+If this section is specified, the path from [users_config](/core/reference/settings/server-settings/settings#users_config) and [access_control_path](/core/reference/settings/server-settings/settings#access_control_path) won't be used.
The `user_directories` section can contain any number of items, the order of the items means their precedence (the higher the item the higher the precedence).
@@ -2138,7 +2138,7 @@ For example:
```
See also:
-- function [`cutToFirstSignificantSubdomainCustom`](/reference/functions/regular-functions/url-functions#cutToFirstSignificantSubdomainCustom) and variations thereof,
+- function [`cutToFirstSignificantSubdomainCustom`](/core/reference/functions/regular-functions/url-functions#cutToFirstSignificantSubdomainCustom) and variations thereof,
which accepts a custom TLD list name, returning the part of the domain that includes top-level subdomains up to the first significant subdomain.
## proxy {#proxy}
@@ -2323,7 +2323,7 @@ The directory used as a storage for all `CREATE WORKLOAD` and `CREATE RESOURCE`
```
**See Also**
-- [Workload Hierarchy](/concepts/features/configuration/server-config/workload-scheduling#workloads)
+- [Workload Hierarchy](/core/concepts/features/configuration/server-config/workload-scheduling#workloads)
- [workload_zookeeper_path](#workload_zookeeper_path)
## workload_zookeeper_path {#workload_zookeeper_path}
@@ -2337,12 +2337,12 @@ The path to a ZooKeeper node, which is used as a storage for all `CREATE WORKLOA
```
**See Also**
-- [Workload Hierarchy](/concepts/features/configuration/server-config/workload-scheduling#workloads)
+- [Workload Hierarchy](/core/concepts/features/configuration/server-config/workload-scheduling#workloads)
- [workload_path](#workload_path)
## zookeeper_log {#zookeeper_log}
-Settings for the [`zookeeper_log`](/reference/system-tables/zookeeper_log) system table.
+Settings for the [`zookeeper_log`](/core/reference/system-tables/zookeeper_log) system table.
The following settings can be configured by sub-tags:
diff --git a/reference/settings/server-settings/_snippets/_system-log-parameters.mdx b/core/reference/settings/server-settings/_snippets/_system-log-parameters.mdx
similarity index 75%
rename from reference/settings/server-settings/_snippets/_system-log-parameters.mdx
rename to core/reference/settings/server-settings/_snippets/_system-log-parameters.mdx
index 21ed89ed..8dd281a1 100644
--- a/reference/settings/server-settings/_snippets/_system-log-parameters.mdx
+++ b/core/reference/settings/server-settings/_snippets/_system-log-parameters.mdx
@@ -4,12 +4,12 @@ The following settings can be configured by sub-tags:
|------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|--------------------------------------------------------------------------------------------------------------------|
| `database` | Name of the database. | | |
| `table` | Name of the system table. | | |
-| `engine` | [MergeTree Engine Definition](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) for a system table. | | Cannot be used if `partition_by` or `order_by` defined. If not specified `MergeTree` is selected by default |
-| `partition_by` | [Custom partitioning key](/reference/engines/table-engines/mergetree-family/custom-partitioning-key) for a system table. | | If `engine` is specified for system table, `partition_by` parameter should be specified directly inside 'engine' |
-| `ttl` | Specifies the table [TTL](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). | | If `engine` is specified for system table, `ttl` parameter should be specified directly inside 'engine' |
-| `order_by` | [Custom sorting key](/reference/engines/table-engines/mergetree-family/mergetree#order_by) for a system table. Can't be used if `engine` defined. | | If `engine` is specified for system table, `order_by` parameter should be specified directly inside 'engine' |
+| `engine` | [MergeTree Engine Definition](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) for a system table. | | Cannot be used if `partition_by` or `order_by` defined. If not specified `MergeTree` is selected by default |
+| `partition_by` | [Custom partitioning key](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key) for a system table. | | If `engine` is specified for system table, `partition_by` parameter should be specified directly inside 'engine' |
+| `ttl` | Specifies the table [TTL](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). | | If `engine` is specified for system table, `ttl` parameter should be specified directly inside 'engine' |
+| `order_by` | [Custom sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree#order_by) for a system table. Can't be used if `engine` defined. | | If `engine` is specified for system table, `order_by` parameter should be specified directly inside 'engine' |
| `storage_policy` | Name of the storage policy to use for the table (optional). | | If `engine` is specified for system table, `storage_policy` parameter should be specified directly inside 'engine' |
-| `settings` | [Additional parameters](/reference/engines/table-engines/mergetree-family/mergetree#settings) that control the behavior of the MergeTree (optional). | | If `engine` is specified for system table, `settings` parameter should be specified directly inside 'engine' |
+| `settings` | [Additional parameters](/core/reference/engines/table-engines/mergetree-family/mergetree#settings) that control the behavior of the MergeTree (optional). | | If `engine` is specified for system table, `settings` parameter should be specified directly inside 'engine' |
| `flush_interval_milliseconds` | Interval for flushing data from the buffer in memory to the table. | `7500` | |
| `max_size_rows` | Maximal size in lines for the logs. When the amount of non-flushed logs reaches the max_size, logs are dumped to the disk. | `1048576` | |
| `reserved_size_rows` | Pre-allocated memory size in lines for the logs. | `8192` | |
diff --git a/reference/settings/server-settings/settings.mdx b/core/reference/settings/server-settings/settings.mdx
similarity index 93%
rename from reference/settings/server-settings/settings.mdx
rename to core/reference/settings/server-settings/settings.mdx
index 92e00836..d55742e9 100644
--- a/reference/settings/server-settings/settings.mdx
+++ b/core/reference/settings/server-settings/settings.mdx
@@ -14,10 +14,10 @@ import SettingsInfoBlock from "/snippets/components/SettingsInfoBlock/SettingsIn
This section contains descriptions of server settings. These are settings which
cannot be changed at the session or query level.
-For more information on configuration files in ClickHouse see [""Configuration Files""](/concepts/features/configuration/server-config/configuration-files).
+For more information on configuration files in ClickHouse see [""Configuration Files""](/core/concepts/features/configuration/server-config/configuration-files).
-Other settings are described in the ""[Settings](/concepts/features/configuration/settings/overview)"" section.
-Before studying the settings, we recommend reading the [Configuration files](/concepts/features/configuration/server-config/configuration-files)
+Other settings are described in the ""[Settings](/core/concepts/features/configuration/settings/overview)"" section.
+Before studying the settings, we recommend reading the [Configuration files](/core/concepts/features/configuration/server-config/configuration-files)
section and note the use of substitutions (the `incl` and `optional` attributes).
## abort_on_logical_error {#abort_on_logical_error}
@@ -60,7 +60,7 @@ Path to a folder where a ClickHouse server stores user and role configurations c
**See also**
-- [Access Control and Account Management](/concepts/features/security/access-rights#access-control-usage)
+- [Access Control and Account Management](/core/concepts/features/security/access-rights#access-control-usage)
## aggregate_function_group_array_action_when_limit_is_reached {#aggregate_function_group_array_action_when_limit_is_reached}
@@ -171,7 +171,7 @@ Asynchronous loading of system tables. Helpful if there is a high amount of log
## asynchronous_insert_log {#asynchronous_insert_log}
-Settings for the [asynchronous_insert_log](/reference/system-tables/asynchronous_insert_log) system table for logging async inserts.
+Settings for the [asynchronous_insert_log](/core/reference/system-tables/asynchronous_insert_log) system table for logging async inserts.
@@ -201,7 +201,7 @@ If the setting is not enabled by default on your environment, depending on how C
**Enabling**
-To manually turn on asynchronous metric logs history collection [`system.asynchronous_metric_log`](/reference/system-tables/asynchronous_metric_log), create `/etc/clickhouse-server/config.d/asynchronous_metric_log.xml` with the following content:
+To manually turn on asynchronous metric logs history collection [`system.asynchronous_metric_log`](/core/reference/system-tables/asynchronous_metric_log), create `/etc/clickhouse-server/config.d/asynchronous_metric_log.xml` with the following content:
```xml
@@ -250,11 +250,11 @@ This setting should be used with extra caution since forwarded addresses can be
## background_buffer_flush_schedule_pool_size {#background_buffer_flush_schedule_pool_size}
-The maximum number of threads that will be used for performing flush operations for [Buffer-engine tables](/reference/engines/table-engines/special/buffer) in the background.
+The maximum number of threads that will be used for performing flush operations for [Buffer-engine tables](/core/reference/engines/table-engines/special/buffer) in the background.
## background_common_pool_size {#background_common_pool_size}
-The maximum number of threads that will be used for performing a variety of operations (mostly garbage collection) for [*MergeTree-engine](/reference/engines/table-engines/mergetree-family) tables in the background.
+The maximum number of threads that will be used for performing a variety of operations (mostly garbage collection) for [*MergeTree-engine](/core/reference/engines/table-engines/mergetree-family) tables in the background.
## background_distributed_schedule_pool_size {#background_distributed_schedule_pool_size}
@@ -262,19 +262,19 @@ This setting should be used with extra caution since forwarded addresses can be
## background_fetches_pool_size {#background_fetches_pool_size}
-The maximum number of threads that will be used for fetching data parts from another replica for [*MergeTree-engine](/reference/engines/table-engines/mergetree-family) tables in the background.
+The maximum number of threads that will be used for fetching data parts from another replica for [*MergeTree-engine](/core/reference/engines/table-engines/mergetree-family) tables in the background.
## background_merges_mutations_concurrency_ratio {#background_merges_mutations_concurrency_ratio}
Sets a ratio between the number of threads and the number of background merges and mutations that can be executed concurrently.
-For example, if the ratio equals to 2 and [`background_pool_size`](/reference/settings/server-settings/settings#background_pool_size) is set to 16 then ClickHouse can execute 32 background merges concurrently. This is possible, because background operations could be suspended and postponed. This is needed to give small merges more execution priority.
+For example, if the ratio equals to 2 and [`background_pool_size`](/core/reference/settings/server-settings/settings#background_pool_size) is set to 16 then ClickHouse can execute 32 background merges concurrently. This is possible, because background operations could be suspended and postponed. This is needed to give small merges more execution priority.
You can only increase this ratio at runtime. To lower it you have to restart the server.
-As with the [`background_pool_size`](/reference/settings/server-settings/settings#background_pool_size) setting [`background_merges_mutations_concurrency_ratio`](/reference/settings/server-settings/settings#background_merges_mutations_concurrency_ratio) could be applied from the `default` profile for backward compatibility.
+As with the [`background_pool_size`](/core/reference/settings/server-settings/settings#background_pool_size) setting [`background_merges_mutations_concurrency_ratio`](/core/reference/settings/server-settings/settings#background_merges_mutations_concurrency_ratio) could be applied from the `default` profile for backward compatibility.
## background_merges_mutations_scheduling_policy {#background_merges_mutations_scheduling_policy}
@@ -315,9 +315,9 @@ Smaller pool size utilizes less CPU and disk resources, but background processes
Before changing it, please also take a look at related MergeTree settings, such as:
-- [`number_of_free_entries_in_pool_to_lower_max_size_of_merge`](/reference/settings/merge-tree-settings#number_of_free_entries_in_pool_to_lower_max_size_of_merge).
-- [`number_of_free_entries_in_pool_to_execute_mutation`](/reference/settings/merge-tree-settings#number_of_free_entries_in_pool_to_execute_mutation).
-- [`number_of_free_entries_in_pool_to_execute_optimize_entire_partition`](/reference/settings/merge-tree-settings#number_of_free_entries_in_pool_to_execute_optimize_entire_partition)
+- [`number_of_free_entries_in_pool_to_lower_max_size_of_merge`](/core/reference/settings/merge-tree-settings#number_of_free_entries_in_pool_to_lower_max_size_of_merge).
+- [`number_of_free_entries_in_pool_to_execute_mutation`](/core/reference/settings/merge-tree-settings#number_of_free_entries_in_pool_to_execute_mutation).
+- [`number_of_free_entries_in_pool_to_execute_optimize_entire_partition`](/core/reference/settings/merge-tree-settings#number_of_free_entries_in_pool_to_execute_optimize_entire_partition)
**Example**
@@ -354,7 +354,7 @@ Contains information about all background tasks that are executed via various ba
## backup_log {#backup_log}
-Settings for the [backup_log](/reference/system-tables/backup_log) system table for logging `BACKUP` and `RESTORE` operations.
+Settings for the [backup_log](/core/reference/system-tables/backup_log) system table for logging `BACKUP` and `RESTORE` operations.
@@ -382,7 +382,7 @@ Settings for the [backup_log](/reference/system-tables/backup_log) system table
## backups {#backups}
-Settings for backups, used when executing the [`BACKUP` and `RESTORE`](/concepts/features/backup-restore/overview) statements.
+Settings for backups, used when executing the [`BACKUP` and `RESTORE`](/core/concepts/features/backup-restore/overview) statements.
The following settings can be configured by sub-tags:
@@ -461,7 +461,7 @@ bcrypt's computational overhead at higher work factors.
## blob_storage_log {#blob_storage_log}
-Settings for the [`blob_storage_log`](/reference/system-tables/blob_storage_log) system table.
+Settings for the [`blob_storage_log`](/core/reference/system-tables/blob_storage_log) system table.
@@ -506,15 +506,15 @@ To disable the cgroup observer, set this value to `0`.
## compiled_expression_cache_elements_size {#compiled_expression_cache_elements_size}
-Sets the cache size (in elements) for [compiled expressions](/concepts/features/performance/caches/caches).
+Sets the cache size (in elements) for [compiled expressions](/core/concepts/features/performance/caches/caches).
## compiled_expression_cache_size {#compiled_expression_cache_size}
-Sets the cache size (in bytes) for [compiled expressions](/concepts/features/performance/caches/caches).
+Sets the cache size (in bytes) for [compiled expressions](/core/concepts/features/performance/caches/caches).
## compression {#compression}
-Data compression settings for [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree)-engine tables.
+Data compression settings for [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree)-engine tables.
We recommend not changing this if you have just started using ClickHouse.
@@ -539,7 +539,7 @@ We recommend not changing this if you have just started using ClickHouse.
- `min_part_size` – The minimum size of a data part.
- `min_part_size_ratio` – The ratio of the data part size to the table size.
- `method` – Compression method. Acceptable values: `lz4`, `lz4hc`, `zstd`,`deflate_qpl`.
-- `level` – Compression level. See [Codecs](/reference/statements/create/table#general-purpose-codecs).
+- `level` – Compression level. See [Codecs](/core/reference/statements/create/table#general-purpose-codecs).
You can configure multiple `` sections.
@@ -631,7 +631,7 @@ Defines how workload scheduling for CPU resources (MASTER THREAD and WORKER THRE
```
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## cpu_slot_preemption_timeout_ms {#cpu_slot_preemption_timeout_ms}
@@ -645,7 +645,7 @@ It defines how many milliseconds could a worker thread wait during preemption, i
```
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## cpu_slot_quantum_ns {#cpu_slot_quantum_ns}
@@ -659,11 +659,11 @@ It defines how many CPU nanoseconds a thread is allowed to consume after acquire
```
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## crash_log {#crash_log}
-Settings for the [crash_log](/reference/system-tables/crash_log) system table operation.
+Settings for the [crash_log](/core/reference/system-tables/crash_log) system table operation.
The following settings can be configured by sub-tags:
@@ -671,17 +671,17 @@ The following settings can be configured by sub-tags:
|------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|--------------------------------------------------------------------------------------------------------------------|
| `buffer_size_rows_flush_threshold` | Threshold for amount of lines. If the threshold is reached, flushing logs to the disk is launched in background. | `max_size_rows / 2` | |
| `database` | Name of the database. | | |
-| `engine` | [MergeTree Engine Definition](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) for a system table. | | Cannot be used if `partition_by` or `order_by` defined. If not specified `MergeTree` is selected by default |
+| `engine` | [MergeTree Engine Definition](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) for a system table. | | Cannot be used if `partition_by` or `order_by` defined. If not specified `MergeTree` is selected by default |
| `flush_interval_milliseconds` | Interval for flushing data from the buffer in memory to the table. | `7500` | |
| `flush_on_crash` | Sets whether logs should be dumped to the disk in case of a crash. | `false` | |
| `max_size_rows` | Maximal size in lines for the logs. When the amount of non-flushed logs reaches the max_size, logs are dumped to the disk. | `1024` | |
-| `order_by` | [Custom sorting key](/reference/engines/table-engines/mergetree-family/mergetree#order_by) for a system table. Can't be used if `engine` defined. | | If `engine` is specified for system table, `order_by` parameter should be specified directly inside 'engine' |
-| `partition_by` | [Custom partitioning key](/reference/engines/table-engines/mergetree-family/custom-partitioning-key) for a system table. | | If `engine` is specified for system table, `partition_by` parameter should be specified directly inside 'engine' |
+| `order_by` | [Custom sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree#order_by) for a system table. Can't be used if `engine` defined. | | If `engine` is specified for system table, `order_by` parameter should be specified directly inside 'engine' |
+| `partition_by` | [Custom partitioning key](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key) for a system table. | | If `engine` is specified for system table, `partition_by` parameter should be specified directly inside 'engine' |
| `reserved_size_rows` | Pre-allocated memory size in lines for the logs. | `1024` | |
-| `settings` | [Additional parameters](/reference/engines/table-engines/mergetree-family/mergetree#settings) that control the behavior of the MergeTree (optional). | | If `engine` is specified for system table, `settings` parameter should be specified directly inside 'engine' |
+| `settings` | [Additional parameters](/core/reference/engines/table-engines/mergetree-family/mergetree#settings) that control the behavior of the MergeTree (optional). | | If `engine` is specified for system table, `settings` parameter should be specified directly inside 'engine' |
| `storage_policy` | Name of the storage policy to use for the table (optional). | | If `engine` is specified for system table, `storage_policy` parameter should be specified directly inside 'engine' |
| `table` | Name of the system table. | | |
-| `ttl` | Specifies the table [TTL](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). | | If `engine` is specified for system table, `ttl` parameter should be specified directly inside 'engine' |
+| `ttl` | Specifies the table [TTL](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl). | | If `engine` is specified for system table, `ttl` parameter should be specified directly inside 'engine' |
The default server configuration file `config.xml` contains the following settings section:
@@ -719,7 +719,7 @@ Example:
## custom_settings_prefixes {#custom_settings_prefixes}
-List of prefixes used for [custom settings](/concepts/features/configuration/settings/settings-query-level#custom_settings).
+List of prefixes used for [custom settings](/core/concepts/features/configuration/settings/settings-query-level#custom_settings).
Multiple prefixes should be separated by commas.
**Example**
@@ -730,12 +730,12 @@ Multiple prefixes should be separated by commas.
**See Also**
-- [Custom settings](/concepts/features/configuration/settings/settings-query-level#custom_settings)
+- [Custom settings](/core/concepts/features/configuration/settings/settings-query-level#custom_settings)
## database_atomic_delay_before_drop_table_sec {#database_atomic_delay_before_drop_table_sec}
-The delay during which a dropped table can be restored using the [`UNDROP`](/reference/statements/undrop) statement. If `DROP TABLE` ran with a `SYNC` modifier, the setting is ignored.
+The delay during which a dropped table can be restored using the [`UNDROP`](/core/reference/statements/undrop) statement. If `DROP TABLE` ran with a `SYNC` modifier, the setting is ignored.
The default for this setting is `480` (8 minutes).
## database_catalog_drop_error_cooldown_sec {#database_catalog_drop_error_cooldown_sec}
@@ -761,7 +761,7 @@ A value of `0` means "never". The default value corresponds to 1 day.
Parameter of a task that cleans up garbage from `store/` directory.
If some subdirectory is not used by clickhouse-server and this directory was not modified for last
-[`database_catalog_unused_dir_hide_timeout_sec`](/reference/settings/server-settings/settings#database_catalog_unused_dir_hide_timeout_sec) seconds, the task will "hide" this directory by
+[`database_catalog_unused_dir_hide_timeout_sec`](/core/reference/settings/server-settings/settings#database_catalog_unused_dir_hide_timeout_sec) seconds, the task will "hide" this directory by
removing all access rights. It also works for directories that clickhouse-server does not
expect to see inside `store/`.
@@ -774,7 +774,7 @@ A value of `0` means "immediately".
Parameter of a task that cleans up garbage from `store/` directory.
If some subdirectory is not used by clickhouse-server and it was previously "hidden"
-(see [database_catalog_unused_dir_hide_timeout_sec](/reference/settings/server-settings/settings#database_catalog_unused_dir_hide_timeout_sec))
+(see [database_catalog_unused_dir_hide_timeout_sec](/core/reference/settings/server-settings/settings#database_catalog_unused_dir_hide_timeout_sec))
and this directory was not modified for last
[`database_catalog_unused_dir_rm_timeout_sec`]/operations/server-configuration-parameters/settings#database_catalog_unused_dir_rm_timeout_sec) seconds, the task will remove this directory.
It also works for directories that clickhouse-server does not
@@ -877,7 +877,7 @@ Path:
- The path can contain wildcards \* and ?.
See also:
-- "[Dictionaries](/reference/statements/create/dictionary)".
+- "[Dictionaries](/core/reference/statements/create/dictionary)".
**Example**
@@ -895,7 +895,7 @@ Lazy loading of dictionaries.
The server will wait at startup until all the dictionaries finish their loading before receiving any connections
-(exception: if [`wait_dictionaries_load_at_startup`](/reference/settings/server-settings/settings#wait_dictionaries_load_at_startup) is set to `false`).
+(exception: if [`wait_dictionaries_load_at_startup`](/core/reference/settings/server-settings/settings#wait_dictionaries_load_at_startup) is set to `false`).
**Example**
@@ -992,9 +992,9 @@ When enabled, the server waits for background blob removal to complete before ac
Enables or disables showing secrets in `SHOW` and `SELECT` queries for tables, databases, table functions, and dictionaries.
User wishing to see secrets must also have
-[`format_display_secrets_in_show_and_select` format setting](/reference/settings/formats#format_display_secrets_in_show_and_select)
+[`format_display_secrets_in_show_and_select` format setting](/core/reference/settings/formats#format_display_secrets_in_show_and_select)
turned on and a
-[`displaySecretsInShowAndSelect`](/reference/statements/grant#displaysecretsinshowandselect) privilege.
+[`displaySecretsInShowAndSelect`](/core/reference/statements/grant#displaysecretsinshowandselect) privilege.
Possible values:
@@ -1011,8 +1011,8 @@ Possible values:
## distributed_ddl {#distributed_ddl}
-Manage executing [distributed ddl queries](/reference/statements/distributed-ddl) (`CREATE`, `DROP`, `ALTER`, `RENAME`) on cluster.
-Works only if [ZooKeeper](/reference/settings/server-settings/settings#zookeeper) is enabled.
+Manage executing [distributed ddl queries](/core/reference/statements/distributed-ddl) (`CREATE`, `DROP`, `ALTER`, `RENAME`) on cluster.
+Works only if [ZooKeeper](/core/reference/settings/server-settings/settings#zookeeper) is enabled.
The configurable settings within `` include:
@@ -1108,7 +1108,7 @@ Stop further attempts to update a hostname's DNS cache after this number of cons
**See also**
-- [`SYSTEM DROP DNS CACHE`](/reference/statements/system#drop-dns-cache)
+- [`SYSTEM DROP DNS CACHE`](/core/reference/statements/system#drop-dns-cache)
## drop_distributed_cache_pool_size {#drop_distributed_cache_pool_size}
@@ -1124,7 +1124,7 @@ Stop further attempts to update a hostname's DNS cache after this number of cons
## encryption {#encryption}
-Configures a command to obtain a key to be used by [encryption codecs](/reference/statements/create/table#encryption-codecs). Key (or keys) should be written in environment variables or set in the configuration file.
+Configures a command to obtain a key to be used by [encryption codecs](/core/reference/statements/create/table#encryption-codecs). Key (or keys) should be written in environment variables or set in the configuration file.
Keys can be hex or string with a length equal to 16 bytes.
@@ -1214,7 +1214,7 @@ It is disabled by default.
**Enabling**
-To manually turn on error history collection [`system.error_log`](/reference/system-tables/error_log), create `/etc/clickhouse-server/config.d/error_log.xml` with the following content:
+To manually turn on error history collection [`system.error_log`](/core/reference/system-tables/error_log), create `/etc/clickhouse-server/config.d/error_log.xml` with the following content:
```xml
@@ -1265,7 +1265,7 @@ A value of `0` means unlimited.
## format_schema_path {#format_schema_path}
-The path to the directory with the schemes for the input data, such as schemas for the [CapnProto](/reference/formats/CapnProto) format.
+The path to the directory with the schemes for the input data, such as schemas for the [CapnProto](/core/reference/formats/CapnProto) format.
**Example**
@@ -1304,10 +1304,10 @@ Settings:
- `interval` – The interval for sending, in seconds.
- `timeout` – The timeout for sending data, in seconds.
- `root_path` – Prefix for keys.
-- `metrics` – Sending data from the [system.metrics](/reference/system-tables/metrics) table.
-- `events` – Sending deltas data accumulated for the time period from the [system.events](/reference/system-tables/events) table.
-- `events_cumulative` – Sending cumulative data from the [system.events](/reference/system-tables/events) table.
-- `asynchronous_metrics` – Sending data from the [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) table.
+- `metrics` – Sending data from the [system.metrics](/core/reference/system-tables/metrics) table.
+- `events` – Sending deltas data accumulated for the time period from the [system.events](/core/reference/system-tables/events) table.
+- `events_cumulative` – Sending cumulative data from the [system.events](/core/reference/system-tables/events) table.
+- `asynchronous_metrics` – Sending data from the [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) table.
You can configure multiple `` clauses. For instance, you can use this for sending different data at different intervals.
@@ -1331,7 +1331,7 @@ You can configure multiple `` clauses. For instance, you can use this
Settings for thinning data for Graphite.
-For more details, see [GraphiteMergeTree](/reference/engines/table-engines/mergetree-family/graphitemergetree).
+For more details, see [GraphiteMergeTree](/core/reference/engines/table-engines/mergetree-family/graphitemergetree).
**Example**
@@ -1569,7 +1569,7 @@ This setting is only necessary for the migration period and will become obsolete
The path to the file with substitutions. Both XML and YAML formats are supported.
-For more information, see the section [Configuration files](/concepts/features/configuration/server-config/configuration-files).
+For more information, see the section [Configuration files](/core/concepts/features/configuration/server-config/configuration-files).
**Example**
@@ -1633,12 +1633,12 @@ The default would be set to `compatible_double_hashes` and then later to `new_un
## interserver_http_credentials {#interserver_http_credentials}
-A username and a password used to connect to other servers during [replication](/reference/engines/table-engines/mergetree-family/replication). Additionally, the server authenticates other replicas using these credentials.
+A username and a password used to connect to other servers during [replication](/core/reference/engines/table-engines/mergetree-family/replication). Additionally, the server authenticates other replicas using these credentials.
`interserver_http_credentials` must therefore be the same for all replicas in a cluster.
- By default, if `interserver_http_credentials` section is omitted, authentication is not used during replication.
-- `interserver_http_credentials` settings do not relate to a ClickHouse client credentials [configuration](/integrations/connectors/data-integrations/drivers-and-interfaces/client#configuration_files).
+- `interserver_http_credentials` settings do not relate to a ClickHouse client credentials [configuration](/core/concepts/features/interfaces/client#configuration_files).
- These credentials are common for replication via `HTTP` and `HTTPS`.
@@ -1772,7 +1772,7 @@ A value of `0` means unlimited.
Enable jemalloc's allocation profiler for all threads. Jemalloc will sample allocations and all deallocations for sampled allocations.
Profiles can be flushed using SYSTEM JEMALLOC FLUSH PROFILE which can be used for allocation analysis.
Samples can also be stored in system.trace_log using config jemalloc_collect_global_profile_samples_in_trace_log or with query setting jemalloc_collect_profile_samples_in_trace_log.
-See [Allocation Profiling](/concepts/features/performance/allocation-profiling)
+See [Allocation Profiling](/core/concepts/features/performance/allocation-profiling)
## jemalloc_flush_profile_interval_bytes {#jemalloc_flush_profile_interval_bytes}
@@ -2222,7 +2222,7 @@ Parameter substitutions for replicated tables.
Can be omitted if replicated tables are not used.
-For more information, see the section [Creating replicated tables](/reference/engines/table-engines/mergetree-family/replication#creating-replicated-tables).
+For more information, see the section [Creating replicated tables](/core/reference/engines/table-engines/mergetree-family/replication#creating-replicated-tables).
**Example**
@@ -2241,7 +2241,7 @@ For more information, see the section [Creating replicated tables](/reference/en
## mark_cache_size {#mark_cache_size}
-Maximum size of cache for marks (index of [`MergeTree`](/reference/engines/table-engines/mergetree-family) family of tables).
+Maximum size of cache for marks (index of [`MergeTree`](/core/reference/engines/table-engines/mergetree-family) family of tables).
This setting can be modified at runtime and will take effect immediately.
@@ -2305,9 +2305,9 @@ This setting can be modified at runtime and will take effect immediately. Querie
Limit on total number of concurrently executed queries. Note that limits on `INSERT` and `SELECT` queries, and on the maximum number of queries for users must also be considered.
See also:
-- [`max_concurrent_insert_queries`](/reference/settings/server-settings/settings#max_concurrent_insert_queries)
-- [`max_concurrent_select_queries`](/reference/settings/server-settings/settings#max_concurrent_select_queries)
-- [`max_concurrent_queries_for_all_users`](/reference/settings/session-settings#max_concurrent_queries_for_all_users)
+- [`max_concurrent_insert_queries`](/core/reference/settings/server-settings/settings#max_concurrent_insert_queries)
+- [`max_concurrent_select_queries`](/core/reference/settings/server-settings/settings#max_concurrent_select_queries)
+- [`max_concurrent_queries_for_all_users`](/core/reference/settings/session-settings#max_concurrent_queries_for_all_users)
@@ -2506,7 +2506,7 @@ We recommend using this option in macOS since the getrlimit() function returns a
Max ratio between OS CPU wait (OSCPUWaitMicroseconds metric) and busy (OSCPUVirtualTimeMicroseconds metric) times to consider dropping connections. Linear interpolation between min and max ratio is used to calculate the probability, the probability is 1 at this point.
-See [Controlling behavior on server CPU overload](/concepts/features/configuration/settings/server-overload) for more details.
+See [Controlling behavior on server CPU overload](/core/concepts/features/configuration/settings/server-overload) for more details.
## max_outdated_parts_loading_thread_pool_size {#max_outdated_parts_loading_thread_pool_size}
@@ -2528,13 +2528,13 @@ If the number of active parts exceeds the specified value, clickhouse server wil
Restriction on dropping partitions.
-If the size of a [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) table exceeds [`max_partition_size_to_drop`](#max_partition_size_to_drop) (in bytes), you can't drop a partition using a [DROP PARTITION](/reference/statements/alter/partition#drop-partitionpart) query.
+If the size of a [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table exceeds [`max_partition_size_to_drop`](#max_partition_size_to_drop) (in bytes), you can't drop a partition using a [DROP PARTITION](/core/reference/statements/alter/partition#drop-partitionpart) query.
This setting does not require a restart of the ClickHouse server to apply. Another way to disable the restriction is to create the `/flags/force_drop_table` file.
The value `0` means that you can drop partitions without any restrictions.
-This limitation does not restrict drop table and truncate table, see [max_table_size_to_drop](/reference/settings/session-settings#max_table_size_to_drop)
+This limitation does not restrict drop table and truncate table, see [max_table_size_to_drop](/core/reference/settings/session-settings#max_table_size_to_drop)
**Example**
@@ -2710,7 +2710,7 @@ If the number of attached tables exceeds the specified value, clickhouse server
Restriction on deleting tables.
-If the size of a [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) table exceeds `max_table_size_to_drop` (in bytes), you can't delete it using a [`DROP`](/reference/statements/drop) query or [`TRUNCATE`](/reference/statements/truncate) query.
+If the size of a [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table exceeds `max_table_size_to_drop` (in bytes), you can't delete it using a [`DROP`](/core/reference/statements/drop) query or [`TRUNCATE`](/core/reference/statements/truncate) query.
A value of `0` means that you can delete all tables without any restrictions.
@@ -2735,13 +2735,13 @@ A value of `0` means unlimited.
See also:
-- [`max_temporary_data_on_disk_size_for_user`](/reference/settings/session-settings#max_temporary_data_on_disk_size_for_user)
-- [`max_temporary_data_on_disk_size_for_query`](/reference/settings/session-settings#max_temporary_data_on_disk_size_for_query)
+- [`max_temporary_data_on_disk_size_for_user`](/core/reference/settings/session-settings#max_temporary_data_on_disk_size_for_user)
+- [`max_temporary_data_on_disk_size_for_query`](/core/reference/settings/session-settings#max_temporary_data_on_disk_size_for_query)
## max_thread_pool_free_size {#max_thread_pool_free_size}
-If the number of **idle** threads in the Global Thread pool is greater than [`max_thread_pool_free_size`](/reference/settings/server-settings/settings#max_thread_pool_free_size), then ClickHouse releases resources occupied by some threads and the pool size is decreased. Threads can be created again if necessary.
+If the number of **idle** threads in the Global Thread pool is greater than [`max_thread_pool_free_size`](/core/reference/settings/server-settings/settings#max_thread_pool_free_size), then ClickHouse releases resources occupied by some threads and the pool size is decreased. Threads can be created again if necessary.
**Example**
@@ -2799,16 +2799,16 @@ If the number of attached views exceeds the specified value, clickhouse server w
Limit on total number of concurrently waiting queries.
-Execution of a waiting query is blocked while required tables are loading asynchronously (see [`async_load_databases`](/reference/settings/server-settings/settings#async_load_databases).
+Execution of a waiting query is blocked while required tables are loading asynchronously (see [`async_load_databases`](/core/reference/settings/server-settings/settings#async_load_databases).
Waiting queries are not counted when limits controlled by the following settings are checked:
-- [`max_concurrent_queries`](/reference/settings/server-settings/settings#max_concurrent_queries)
-- [`max_concurrent_insert_queries`](/reference/settings/server-settings/settings#max_concurrent_insert_queries)
-- [`max_concurrent_select_queries`](/reference/settings/server-settings/settings#max_concurrent_select_queries)
-- [`max_concurrent_queries_for_user`](/reference/settings/session-settings#max_concurrent_queries_for_user)
-- [`max_concurrent_queries_for_all_users`](/reference/settings/session-settings#max_concurrent_queries_for_all_users)
+- [`max_concurrent_queries`](/core/reference/settings/server-settings/settings#max_concurrent_queries)
+- [`max_concurrent_insert_queries`](/core/reference/settings/server-settings/settings#max_concurrent_insert_queries)
+- [`max_concurrent_select_queries`](/core/reference/settings/server-settings/settings#max_concurrent_select_queries)
+- [`max_concurrent_queries_for_user`](/core/reference/settings/session-settings#max_concurrent_queries_for_user)
+- [`max_concurrent_queries_for_all_users`](/core/reference/settings/session-settings#max_concurrent_queries_for_all_users)
This correction is done to avoid hitting these limits just after server startup.
@@ -2858,7 +2858,7 @@ The threshold ratio for purging jemalloc relative to the memory available to Cli
## merge_tree {#merge_tree}
-Fine-tuning for tables in the [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree).
+Fine-tuning for tables in the [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree).
For more information, see the MergeTreeSettings.h header file.
@@ -2876,7 +2876,7 @@ For more information, see the MergeTreeSettings.h header file.
Used to regulate how resources are utilized and shared between merges and other workloads. Specified value is used as `workload` setting value for all background merges. Can be overridden by a merge tree setting.
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## merges_mutations_memory_usage_soft_limit {#merges_mutations_memory_usage_soft_limit}
@@ -2901,8 +2901,8 @@ The default `merges_mutations_memory_usage_soft_limit` value is calculated as `m
**See also:**
-- [max_memory_usage](/reference/settings/session-settings#max_memory_usage)
-- [merges_mutations_memory_usage_soft_limit](/reference/settings/server-settings/settings#merges_mutations_memory_usage_soft_limit)
+- [max_memory_usage](/core/reference/settings/session-settings#max_memory_usage)
+- [merges_mutations_memory_usage_soft_limit](/core/reference/settings/server-settings/settings#merges_mutations_memory_usage_soft_limit)
## metric_log {#metric_log}
@@ -2910,7 +2910,7 @@ It is disabled by default.
**Enabling**
-To manually turn on metrics history collection [`system.metric_log`](/reference/system-tables/metric_log), create `/etc/clickhouse-server/config.d/metric_log.xml` with the following content:
+To manually turn on metrics history collection [`system.metric_log`](/core/reference/system-tables/metric_log), create `/etc/clickhouse-server/config.d/metric_log.xml` with the following content:
```xml
@@ -2943,7 +2943,7 @@ To disable `metric_log` setting, you should create the following file `/etc/clic
Min ratio between OS CPU wait (OSCPUWaitMicroseconds metric) and busy (OSCPUVirtualTimeMicroseconds metric) times to consider dropping connections. Linear interpolation between min and max ratio is used to calculate the probability, the probability is 0 at this point.
-See [Controlling behavior on server CPU overload](/concepts/features/configuration/settings/server-overload) for more details.
+See [Controlling behavior on server CPU overload](/core/concepts/features/configuration/settings/server-overload) for more details.
## mlock_executable {#mlock_executable}
@@ -2971,8 +2971,8 @@ This setting allows avoiding frequent open/close calls (which are very expensive
The amount of data in mapped files can be monitored in the following system tables with the following metrics:
-- `MMappedFiles`/`MMappedFileBytes`/`MMapCacheCells` in [`system.metrics`](/reference/system-tables/metrics), [`system.metric_log`](/reference/system-tables/metric_log)
-- `CreatedReadBufferMMap`/`CreatedReadBufferMMapFailed`/`MMappedFileCacheHits`/`MMappedFileCacheMisses` in [`system.events`](/reference/system-tables/events), [`system.processes`](/reference/system-tables/processes), [`system.query_log`](/reference/system-tables/query_log), [`system.query_thread_log`](/reference/system-tables/query_thread_log), [`system.query_views_log`](/reference/system-tables/query_views_log)
+- `MMappedFiles`/`MMappedFileBytes`/`MMapCacheCells` in [`system.metrics`](/core/reference/system-tables/metrics), [`system.metric_log`](/core/reference/system-tables/metric_log)
+- `CreatedReadBufferMMap`/`CreatedReadBufferMMapFailed`/`MMappedFileCacheHits`/`MMappedFileCacheMisses` in [`system.events`](/core/reference/system-tables/events), [`system.processes`](/core/reference/system-tables/processes), [`system.query_log`](/core/reference/system-tables/query_log), [`system.query_thread_log`](/core/reference/system-tables/query_thread_log), [`system.query_views_log`](/core/reference/system-tables/query_views_log)
The amount of data in mapped files does not consume memory directly and is not accounted for in query or server memory usage — because this memory can be discarded similar to the OS page cache. The cache is dropped (the files are closed) automatically on the removal of old parts in tables of the MergeTree family, also it can be dropped manually by the `SYSTEM DROP MMAP CACHE` query.
@@ -2986,7 +2986,7 @@ This setting can be modified at runtime and will take effect immediately.
Used to regulate how resources are utilized and shared between mutations and other workloads. Specified value is used as `workload` setting value for all background mutations. Can be overridden by a merge tree setting.
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## mysql_port {#mysql_port}
@@ -3005,7 +3005,7 @@ Port for communicating with clients over MySQL protocol.
## mysql_require_secure_transport {#mysql_require_secure_transport}
-If set to true, secure communication is required with clients over [mysql_port](/reference/settings/server-settings/settings#mysql_port). Connection with option `<--ssl-mode=none>` will be refused. Use it with [OpenSSL](/reference/settings/server-settings/settings#openssl) settings.
+If set to true, secure communication is required with clients over [mysql_port](/core/reference/settings/server-settings/settings#mysql_port). Connection with option `<--ssl-mode=none>` will be refused. Use it with [OpenSSL](/core/reference/settings/server-settings/settings#openssl) settings.
## oom_score {#oom_score}
@@ -3222,7 +3222,7 @@ Path to the file with the secret key of the PEM certificate. The file may contai
## opentelemetry_span_log {#opentelemetry_span_log}
-Settings for the [`opentelemetry_span_log`](/reference/system-tables/opentelemetry_span_log) system table.
+Settings for the [`opentelemetry_span_log`](/core/reference/system-tables/opentelemetry_span_log) system table.
@@ -3326,9 +3326,9 @@ Possible values: -20 to 19.
## part_log {#part_log}
-Logging events that are associated with [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree). For instance, adding or merging data. You can use the log to simulate merge algorithms and compare their characteristics. You can visualize the merge process.
+Logging events that are associated with [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree). For instance, adding or merging data. You can use the log to simulate merge algorithms and compare their characteristics. You can visualize the merge process.
-Queries are logged in the [system.part_log](/reference/system-tables/part_log) table, not in a separate file. You can configure the name of this table in the `table` parameter (see below).
+Queries are logged in the [system.part_log](/core/reference/system-tables/part_log) table, not in a separate file. You can configure the name of this table in the `table` parameter (see below).
@@ -3394,7 +3394,7 @@ Port for communicating with clients over PostgreSQL protocol.
## postgresql_require_secure_transport {#postgresql_require_secure_transport}
-If set to true, secure communication is required with clients over [postgresql_port](/reference/settings/server-settings/settings#postgresql_port). Connection with option `` will be refused. Use it with [OpenSSL](/reference/settings/server-settings/settings#openssl) settings.
+If set to true, secure communication is required with clients over [postgresql_port](/core/reference/settings/server-settings/settings#postgresql_port). Connection with option `` will be refused. Use it with [OpenSSL](/core/reference/settings/server-settings/settings#openssl) settings.
## prefetch_threadpool_pool_size {#prefetch_threadpool_pool_size}
@@ -3448,7 +3448,7 @@ Disabled by default to avoid possible security issues which can be caused by bug
## processors_profile_log {#processors_profile_log}
-Settings for the [`processors_profile_log`](/reference/system-tables/processors_profile_log) system table.
+Settings for the [`processors_profile_log`](/core/reference/system-tables/processors_profile_log) system table.
@@ -3475,10 +3475,10 @@ Settings:
- `endpoint` – HTTP endpoint for scraping metrics by prometheus server. Start from '/'.
- `port` – Port for `endpoint`.
-- `metrics` – Expose metrics from the [system.metrics](/reference/system-tables/metrics) table.
-- `events` – Expose metrics from the [system.events](/reference/system-tables/events) table.
-- `asynchronous_metrics` – Expose current metrics values from the [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) table.
-- `errors` - Expose the number of errors by error codes occurred since the last server restart. This information could be obtained from the [system.errors](/reference/system-tables/errors) as well.
+- `metrics` – Expose metrics from the [system.metrics](/core/reference/system-tables/metrics) table.
+- `events` – Expose metrics from the [system.events](/core/reference/system-tables/events) table.
+- `asynchronous_metrics` – Expose current metrics values from the [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) table.
+- `errors` - Expose the number of errors by error codes occurred since the last server restart. This information could be obtained from the [system.errors](/core/reference/system-tables/errors) as well.
**Example**
@@ -3652,7 +3652,7 @@ This also allows a mix of resolver types can be used.
## query_cache {#query_cache}
-[Query cache](/concepts/features/performance/caches/query-cache) configuration.
+[Query cache](/core/concepts/features/performance/caches/query-cache) configuration.
The following settings are available:
@@ -3713,9 +3713,9 @@ This setting can be modified at runtime and will take effect immediately.
## query_log {#query_log}
-Setting for logging queries received with the [log_queries=1](/reference/settings/session-settings) setting.
+Setting for logging queries received with the [log_queries=1](/core/reference/settings/session-settings) setting.
-Queries are logged in the [system.query_log](/reference/system-tables/query_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
+Queries are logged in the [system.query_log](/core/reference/system-tables/query_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
@@ -3739,7 +3739,7 @@ If the table does not exist, ClickHouse will create it. If the structure of the
## query_masking_rules {#query_masking_rules}
Regexp-based rules, which will be applied to queries as well as all log messages before storing them in server logs,
-[`system.query_log`](/reference/system-tables/query_log), [`system.text_log`](/reference/system-tables/text_log), [`system.processes`](/reference/system-tables/processes) tables, and in logs sent to the client. That allows preventing
+[`system.query_log`](/core/reference/system-tables/query_log), [`system.text_log`](/core/reference/system-tables/text_log), [`system.processes`](/core/reference/system-tables/processes) tables, and in logs sent to the client. That allows preventing
sensitive data leakage from SQL queries such as names, emails, personal identifiers or credit card numbers to logs.
**Example**
@@ -3764,7 +3764,7 @@ sensitive data leakage from SQL queries such as names, emails, personal identifi
The masking rules are applied to the whole query (to prevent leaks of sensitive data from malformed / non-parseable queries).
-The [`system.events`](/reference/system-tables/events) table has counter `QueryMaskingRulesMatch` which has an overall number of query masking rules matches.
+The [`system.events`](/core/reference/system-tables/events) table has counter `QueryMaskingRulesMatch` which has an overall number of query masking rules matches.
For distributed queries each server has to be configured separately, otherwise, subqueries passed to other
nodes will be stored without masking.
@@ -3775,7 +3775,7 @@ It is disabled by default.
**Enabling**
-To manually turn on metrics history collection [`system.query_metric_log`](/reference/system-tables/query_metric_log), create `/etc/clickhouse-server/config.d/query_metric_log.xml` with the following content:
+To manually turn on metrics history collection [`system.query_metric_log`](/core/reference/system-tables/query_metric_log), create `/etc/clickhouse-server/config.d/query_metric_log.xml` with the following content:
```xml
@@ -3806,9 +3806,9 @@ To disable `query_metric_log` setting, you should create the following file `/et
## query_thread_log {#query_thread_log}
-Setting for logging threads of queries received with the [log_query_threads=1](/reference/settings/session-settings#log_query_threads) setting.
+Setting for logging threads of queries received with the [log_query_threads=1](/core/reference/settings/session-settings#log_query_threads) setting.
-Queries are logged in the [system.query_thread_log](/reference/system-tables/query_thread_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
+Queries are logged in the [system.query_thread_log](/core/reference/system-tables/query_thread_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
@@ -3831,9 +3831,9 @@ If the table does not exist, ClickHouse will create it. If the structure of the
## query_views_log {#query_views_log}
-Setting for logging views (live, materialized etc) dependant of queries received with the [log_query_views=1](/reference/settings/session-settings#log_query_views) setting.
+Setting for logging views (live, materialized etc) dependant of queries received with the [log_query_views=1](/core/reference/settings/session-settings#log_query_views) setting.
-Queries are logged in the [system.query_views_log](/reference/system-tables/query_views_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
+Queries are logged in the [system.query_views_log](/core/reference/system-tables/query_views_log) table, not in a separate file. You can change the name of the table in the `table` parameter (see below).
@@ -3871,7 +3871,7 @@ This feature is highly experimental.
## remote_servers {#remote_servers}
-Configuration of clusters used by the [Distributed](/reference/engines/table-engines/special/distributed) table engine and by the `cluster` table function.
+Configuration of clusters used by the [Distributed](/core/reference/engines/table-engines/special/distributed) table engine and by the `cluster` table function.
**Example**
@@ -3879,13 +3879,13 @@ Configuration of clusters used by the [Distributed](/reference/engines/table-eng
```
-For the value of the `incl` attribute, see the section "[Configuration files](/concepts/features/configuration/server-config/configuration-files)".
+For the value of the `incl` attribute, see the section "[Configuration files](/core/concepts/features/configuration/server-config/configuration-files)".
**See Also**
-- [skip_unavailable_shards](/reference/settings/session-settings#skip_unavailable_shards)
-- [Cluster Discovery](/guides/oss/deployment-and-scaling/cluster-discovery)
-- [Replicated database engine](/reference/engines/database-engines/replicated)
+- [skip_unavailable_shards](/core/reference/settings/session-settings#skip_unavailable_shards)
+- [Cluster Discovery](/core/guides/oss/deployment-and-scaling/cluster-discovery)
+- [Replicated database engine](/core/reference/engines/database-engines/replicated)
## remote_url_allow_hosts {#remote_url_allow_hosts}
@@ -3935,7 +3935,7 @@ Empty by default.
## replicated_merge_tree {#replicated_merge_tree}
-Fine-tuning for tables in the [ReplicatedMergeTree](/reference/engines/table-engines/mergetree-family/mergetree). This setting has a higher priority.
+Fine-tuning for tables in the [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree). This setting has a higher priority.
For more information, see the MergeTreeSettings.h header file.
@@ -4353,7 +4353,7 @@ This setting can be modified at runtime and will take effect immediately.
## text_log {#text_log}
-Settings for the [text_log](/reference/system-tables/text_log) system table for logging text messages.
+Settings for the [text_log](/core/reference/system-tables/text_log) system table for logging text messages.
@@ -4385,7 +4385,7 @@ Additionally:
## thread_pool_queue_size {#thread_pool_queue_size}
-The maximum number of jobs that can be scheduled on the Global Thread pool. Increasing queue size leads to larger memory usage. It is recommended to keep this value equal to [`max_thread_pool_size`](/reference/settings/server-settings/settings#max_thread_pool_size).
+The maximum number of jobs that can be scheduled on the Global Thread pool. Increasing queue size leads to larger memory usage. It is recommended to keep this value equal to [`max_thread_pool_size`](/core/reference/settings/server-settings/settings#max_thread_pool_size).
A value of `0` means unlimited.
@@ -4436,7 +4436,7 @@ Defines behaviour on access to unknown WORKLOAD with query setting 'workload'.
```
**See Also**
-- [Workload Scheduling](/concepts/features/configuration/server-config/workload-scheduling)
+- [Workload Scheduling](/core/concepts/features/configuration/server-config/workload-scheduling)
## timezone {#timezone}
@@ -4454,7 +4454,7 @@ The time zone is necessary for conversions between String and DateTime formats w
**See also**
-- [session_timezone](/reference/settings/session-settings#session_timezone)
+- [session_timezone](/core/reference/settings/session-settings#session_timezone)
## tmp_path {#tmp_path}
@@ -4488,7 +4488,7 @@ Recommendations for using object storage as `tmp_policy`:
- `move_factor`, `keep_free_space_bytes`,`max_data_part_size_bytes` and are ignored.
- Policy should have exactly *one volume*
-For more information see the [MergeTree Table Engine](/reference/engines/table-engines/mergetree-family/mergetree) documentation.
+For more information see the [MergeTree Table Engine](/core/reference/engines/table-engines/mergetree-family/mergetree) documentation.
**Example**
@@ -4536,7 +4536,7 @@ For example:
```
See also:
-- function [`cutToFirstSignificantSubdomainCustom`](/reference/functions/regular-functions/url-functions#cutToFirstSignificantSubdomainCustom) and variations thereof,
+- function [`cutToFirstSignificantSubdomainCustom`](/core/reference/functions/regular-functions/url-functions#cutToFirstSignificantSubdomainCustom) and variations thereof,
which accepts a custom TLD list name, returning the part of the domain that includes top-level subdomains up to the first significant subdomain.
## top_level_domains_path {#top_level_domains_path}
@@ -4565,7 +4565,7 @@ The directory with top level domains.
## total_memory_tracker_sample_probability {#total_memory_tracker_sample_probability}
-Allows to collect random allocations and de-allocations and writes them in the [system.trace_log](/reference/system-tables/trace_log) system table with `trace_type` equal to a `MemorySample` with the specified probability. The probability is for every allocation or deallocations, regardless of the size of the allocation. Note that sampling happens only when the amount of untracked memory exceeds the untracked memory limit (default value is `4` MiB). It can be lowered if [total_memory_profiler_step](/reference/settings/server-settings/settings#total_memory_profiler_step) is lowered. You can set `total_memory_profiler_step` equal to `1` for extra fine-grained sampling.
+Allows to collect random allocations and de-allocations and writes them in the [system.trace_log](/core/reference/system-tables/trace_log) system table with `trace_type` equal to a `MemorySample` with the specified probability. The probability is for every allocation or deallocations, regardless of the size of the allocation. Note that sampling happens only when the amount of untracked memory exceeds the untracked memory limit (default value is `4` MiB). It can be lowered if [total_memory_profiler_step](/core/reference/settings/server-settings/settings#total_memory_profiler_step) is lowered. You can set `total_memory_profiler_step` equal to `1` for extra fine-grained sampling.
Possible values:
@@ -4574,7 +4574,7 @@ Possible values:
## trace_log {#trace_log}
-Settings for the [trace_log](/reference/system-tables/trace_log) system table operation.
+Settings for the [trace_log](/core/reference/system-tables/trace_log) system table operation.
@@ -4639,7 +4639,7 @@ Example:
## use_minimalistic_part_header_in_zookeeper {#use_minimalistic_part_header_in_zookeeper}
-Storage method for data part headers in ZooKeeper. This setting only applies to the [`MergeTree`](/reference/engines/table-engines/mergetree-family) family. It can be specified:
+Storage method for data part headers in ZooKeeper. This setting only applies to the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family) family. It can be specified:
**Globally in the [merge_tree](#merge_tree) section of the `config.xml` file**
@@ -4647,14 +4647,14 @@ ClickHouse uses the setting for all the tables on the server. You can change the
**For each table**
-When creating a table, specify the corresponding [engine setting](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table). The behaviour of an existing table with this setting does not change, even if the global setting changes.
+When creating a table, specify the corresponding [engine setting](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table). The behaviour of an existing table with this setting does not change, even if the global setting changes.
**Possible values**
- `0` — Functionality is turned off.
- `1` — Functionality is turned on.
-If [`use_minimalistic_part_header_in_zookeeper = 1`](#use_minimalistic_part_header_in_zookeeper), then [replicated](/reference/engines/table-engines/mergetree-family/replication) tables store the headers of the data parts compactly using a single `znode`. If the table contains many columns, this storage method significantly reduces the volume of the data stored in Zookeeper.
+If [`use_minimalistic_part_header_in_zookeeper = 1`](#use_minimalistic_part_header_in_zookeeper), then [replicated](/core/reference/engines/table-engines/mergetree-family/replication) tables store the headers of the data parts compactly using a single `znode`. If the table contains many columns, this storage method significantly reduces the volume of the data stored in Zookeeper.
After applying `use_minimalistic_part_header_in_zookeeper = 1`, you can't downgrade the ClickHouse server to a version that does not support this setting. Be careful when upgrading ClickHouse on servers in a cluster. Don't upgrade all the servers at once. It is safer to test new versions of ClickHouse in a test environment, or on just a few servers of a cluster.
@@ -4699,7 +4699,7 @@ Path:
- The path can contain wildcards \* and ?.
See also:
-- "[Executable User Defined Functions](/reference/functions/regular-functions/udf#executable-user-defined-functions).".
+- "[Executable User Defined Functions](/core/reference/functions/regular-functions/udf#executable-user-defined-functions).".
**Example**
@@ -4709,7 +4709,7 @@ See also:
## user_defined_path {#user_defined_path}
-The directory with user defined files. Used for SQL user defined functions [SQL User Defined Functions](/reference/functions/regular-functions/udf).
+The directory with user defined files. Used for SQL user defined functions [SQL User Defined Functions](/core/reference/functions/regular-functions/udf).
**Example**
@@ -4724,7 +4724,7 @@ Section of the configuration file that contains settings:
- Path to folder where users created by SQL commands are stored.
- ZooKeeper node path where users created by SQL commands are stored and replicated.
-If this section is specified, the path from [users_config](/reference/settings/server-settings/settings#users_config) and [access_control_path](/reference/settings/server-settings/settings#access_control_path) won't be used.
+If this section is specified, the path from [users_config](/core/reference/settings/server-settings/settings#users_config) and [access_control_path](/core/reference/settings/server-settings/settings#access_control_path) won't be used.
The `user_directories` section can contain any number of items, the order of the items means their precedence (the higher the item the higher the precedence).
@@ -4778,7 +4778,7 @@ To add an LDAP server as a remote user directory of users that are not defined l
## user_files_path {#user_files_path}
-The directory with user files. Used in the table function [file()](/reference/functions/table-functions/file), [fileCluster()](/reference/functions/table-functions/fileCluster).
+The directory with user files. Used in the table function [file()](/core/reference/functions/table-functions/file), [fileCluster()](/core/reference/functions/table-functions/fileCluster).
**Example**
@@ -4789,7 +4789,7 @@ The directory with user files. Used in the table function [file()](/reference/fu
## user_scripts_path {#user_scripts_path}
-The directory with user scripts files. Used for Executable user defined functions [Executable User Defined Functions](/reference/functions/regular-functions/udf#executable-user-defined-functions).
+The directory with user scripts files. Used for Executable user defined functions [Executable User Defined Functions](/core/reference/functions/regular-functions/udf#executable-user-defined-functions).
**Example**
@@ -4886,7 +4886,7 @@ The directory used as a storage for all `CREATE WORKLOAD` and `CREATE RESOURCE`
```
**See Also**
-- [Workload Hierarchy](/concepts/features/configuration/server-config/workload-scheduling#workloads)
+- [Workload Hierarchy](/core/concepts/features/configuration/server-config/workload-scheduling#workloads)
- [workload_zookeeper_path](#workload_zookeeper_path)
## workload_zookeeper_path {#workload_zookeeper_path}
@@ -4900,7 +4900,7 @@ The path to a ZooKeeper node, which is used as a storage for all `CREATE WORKLOA
```
**See Also**
-- [Workload Hierarchy](/concepts/features/configuration/server-config/workload-scheduling#workloads)
+- [Workload Hierarchy](/core/concepts/features/configuration/server-config/workload-scheduling#workloads)
- [workload_path](#workload_path)
## zookeeper {#zookeeper}
@@ -4920,7 +4920,7 @@ The following settings can be configured by sub-tags:
| `identity` (optional) | User and password required by ZooKeeper to access requested znodes. |
| `use_compression` (optional) | Enables compression in Keeper protocol if set to true. |
| `use_xid_64` (optional) | Enables 64-bit transaction IDs. Set to `true` to enable extended transaction ID format. Default: `false`. |
-| `pass_opentelemetry_tracing_context` (optional) | Enables propagation of OpenTelemetry tracing context to Keeper requests. When enabled, tracing spans will be created for Keeper operations, allowing distributed tracing across ClickHouse and Keeper. See [Tracing ClickHouse Keeper Requests](/guides/oss/deployment-and-scaling/monitoring/opentelemetry#tracing-clickhouse-keeper-requests) for more details. Default: `false`. |
+| `pass_opentelemetry_tracing_context` (optional) | Enables propagation of OpenTelemetry tracing context to Keeper requests. When enabled, tracing spans will be created for Keeper operations, allowing distributed tracing across ClickHouse and Keeper. See [Tracing ClickHouse Keeper Requests](/core/guides/oss/deployment-and-scaling/monitoring/opentelemetry#tracing-clickhouse-keeper-requests) for more details. Default: `false`. |
There is also the `zookeeper_load_balancing` setting (optional) which lets you select the algorithm for ZooKeeper node selection:
@@ -4962,13 +4962,13 @@ There is also the `zookeeper_load_balancing` setting (optional) which lets you s
**See Also**
-- [Replication](/reference/engines/table-engines/mergetree-family/replication)
+- [Replication](/core/reference/engines/table-engines/mergetree-family/replication)
- [ZooKeeper Programmer's Guide](http://zookeeper.apache.org/doc/current/zookeeperProgrammers.html)
-- [Optional secured communication between ClickHouse and Zookeeper](/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper)
+- [Optional secured communication between ClickHouse and Zookeeper](/core/guides/oss/deployment-and-scaling/keeper/ssl-zookeeper)
## zookeeper_log {#zookeeper_log}
-Settings for the [`zookeeper_log`](/reference/system-tables/zookeeper_log) system table.
+Settings for the [`zookeeper_log`](/core/reference/system-tables/zookeeper_log) system table.
The following settings can be configured by sub-tags:
diff --git a/reference/settings/session-settings.mdx b/core/reference/settings/session-settings.mdx
similarity index 93%
rename from reference/settings/session-settings.mdx
rename to core/reference/settings/session-settings.mdx
index 932a3a66..d124e94f 100644
--- a/reference/settings/session-settings.mdx
+++ b/core/reference/settings/session-settings.mdx
@@ -14,7 +14,7 @@ import SettingsInfoBlock from "/snippets/components/SettingsInfoBlock/SettingsIn
import VersionHistory from "/snippets/components/VersionHistory/VersionHistory.jsx";
{/* Autogenerated */}
-All below settings are also available in table [system.settings](/reference/system-tables/settings). These settings are autogenerated from [source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).
+All below settings are also available in table [system.settings](/core/reference/system-tables/settings). These settings are autogenerated from [source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).
## add_http_cors_header {#add_http_cors_header}
@@ -130,7 +130,7 @@ Note: The `value` and `array` formats are slower than the default `state` format
-Enables or disables rewriting all aggregate functions in a query, adding [-OrNull](/reference/functions/aggregate-functions/combinators#-ornull) suffix to them. Enable it for SQL standard compatibility.
+Enables or disables rewriting all aggregate functions in a query, adding [-OrNull](/core/reference/functions/aggregate-functions/combinators#-ornull) suffix to them. Enable it for SQL standard compatibility.
It is implemented via query rewrite (similar to [count_distinct_implementation](#count_distinct_implementation) setting) to get consistent results for distributed queries.
Possible values:
@@ -371,16 +371,6 @@ Allow execute multiIf function columnar
Enable experimental AI functions (e.g. `aiGenerateContent`). These functions make external HTTP calls to AI providers.
-## allow_experimental_alias_table_engine {#allow_experimental_alias_table_engine}
-
-
-
-
-
-
-
-Allow to create table with the Alias engine.
-
## allow_experimental_analyzer {#allow_experimental_analyzer}
**Aliases**: `enable_analyzer`
@@ -617,7 +607,7 @@ Enable experimental functions for natural language processing.
-Allows creation of [Nullable](/reference/data-types/nullable) [Tuple](/reference/data-types/tuple) columns in tables.
+Allows creation of [Nullable](/core/reference/data-types/nullable) [Tuple](/core/reference/data-types/tuple) columns in tables.
This setting does not control whether extracted tuple subcolumns can be `Nullable` (for example, from Dynamic, Variant, JSON, or Tuple columns).
Use `allow_nullable_tuple_in_extracted_subcolumns` to control whether extracted tuple subcolumns can be `Nullable`.
@@ -699,9 +689,9 @@ Experimental timeSeries* aggregate functions for Prometheus-like timeseries resa
-Allows creation of tables with the [TimeSeries](/reference/engines/table-engines/integrations/time-series) table engine. Possible values:
-- 0 — the [TimeSeries](/reference/engines/table-engines/integrations/time-series) table engine is disabled.
-- 1 — the [TimeSeries](/reference/engines/table-engines/integrations/time-series) table engine is enabled.
+Allows creation of tables with the [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) table engine. Possible values:
+- 0 — the [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) table engine is disabled.
+- 1 — the [TimeSeries](/core/reference/engines/table-engines/integrations/time-series) table engine is enabled.
## allow_experimental_unique_key {#allow_experimental_unique_key}
@@ -810,7 +800,7 @@ Allow to execute `insert` queries into iceberg.
-Enables or disables [introspection functions](/reference/functions/regular-functions/introspection) for query profiling.
+Enables or disables [introspection functions](/core/reference/functions/regular-functions/introspection) for query profiling.
Possible values:
@@ -819,8 +809,8 @@ Possible values:
**See Also**
-- [Sampling Query Profiler](/concepts/features/performance/troubleshoot/sampling-query-profiler)
-- System table [trace_log](/reference/system-tables/trace_log)
+- [Sampling Query Profiler](/core/concepts/features/performance/troubleshoot/sampling-query-profiler)
+- System table [trace_log](/core/reference/system-tables/trace_log)
## allow_key_condition_coalesce_rewrite {#allow_key_condition_coalesce_rewrite}
@@ -939,6 +929,23 @@ Allows push predicate on AST level for distributed subqueries with enabled anlyz
Allows push predicate when subquery contains WITH clause
+## allow_rank_dense_rank_arguments {#allow_rank_dense_rank_arguments}
+
+
+
+
+
+Allow passing arguments to the `RANK` and `DENSE_RANK` window functions for backward compatibility.
+
+Per SQL standard, `RANK` and `DENSE_RANK` take zero arguments — they rank rows based on the
+`OVER (ORDER BY ...)` window only. In ClickHouse versions before 26.5, queries such as
+`RANK(x) OVER (...)` silently accepted and ignored the argument, which led to user confusion
+(the visible argument suggested it influenced the ranking, but it did not).
+
+When this setting is `false` (the default), `RANK` and `DENSE_RANK` reject any arguments and
+throw `NUMBER_OF_ARGUMENTS_DOESNT_MATCH`. When set to `true`, the legacy lenient behavior is
+restored — arguments are silently ignored, matching the pre-26.5 behavior.
+
## allow_reorder_prewhere_conditions {#allow_reorder_prewhere_conditions}
@@ -1000,7 +1007,7 @@ It helps to avoid unnecessary data copy during formatting.
-Allows defining columns with [statistics](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) and [manipulate statistics](/reference/engines/table-engines/mergetree-family/mergetree#column-statistics).
+Allows defining columns with [statistics](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) and [manipulate statistics](/core/reference/engines/table-engines/mergetree-family/mergetree#column-statistics).
## allow_statistics_optimize {#allow_statistics_optimize}
@@ -1038,7 +1045,7 @@ Reject primary/secondary indexes and sorting keys with identical expressions
-Allows or restricts using [LowCardinality](/reference/data-types/lowcardinality) with data types with fixed size of 8 bytes or less: numeric data types and `FixedString(8_bytes_or_less)`.
+Allows or restricts using [LowCardinality](/core/reference/data-types/lowcardinality) with data types with fixed size of 8 bytes or less: numeric data types and `FixedString(8_bytes_or_less)`.
For small fixed values using of `LowCardinality` is usually inefficient, because ClickHouse stores a numeric index for each row. As a result:
@@ -1046,7 +1053,7 @@ For small fixed values using of `LowCardinality` is usually inefficient, because
- RAM consumption can be higher, depending on a dictionary size.
- Some functions can work slower due to extra coding/encoding operations.
-Merge times in [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree)-engine tables can grow due to all the reasons described above.
+Merge times in [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree)-engine tables can grow due to all the reasons described above.
Possible values:
@@ -1075,7 +1082,7 @@ Reject TTL expressions that don't depend on any of table's columns. It indicates
-Allows or restricts using [Variant](/reference/data-types/variant) and [Dynamic](/reference/data-types/dynamic) types in GROUP BY keys.
+Allows or restricts using [Variant](/core/reference/data-types/variant) and [Dynamic](/core/reference/data-types/dynamic) types in GROUP BY keys.
## allow_suspicious_types_in_order_by {#allow_suspicious_types_in_order_by}
@@ -1083,7 +1090,7 @@ Allows or restricts using [Variant](/reference/data-types/variant) and [Dynamic]
-Allows or restricts using [Variant](/reference/data-types/variant) and [Dynamic](/reference/data-types/dynamic) types in ORDER BY keys.
+Allows or restricts using [Variant](/core/reference/data-types/variant) and [Dynamic](/core/reference/data-types/dynamic) types in ORDER BY keys.
## allow_suspicious_variant_types {#allow_suspicious_variant_types}
@@ -1110,7 +1117,7 @@ Execute ALTER TABLE MOVE ... TO [DISK|VOLUME] asynchronously
Enables or disables the display of information about the parts to which the manipulation operations with partitions and parts have been successfully applied.
-Applicable to [ATTACH PARTITION|PART](/reference/statements/alter/partition#attach-partitionpart) and to [FREEZE PARTITION](/reference/statements/alter/partition#freeze-partition).
+Applicable to [ATTACH PARTITION|PART](/core/reference/statements/alter/partition#attach-partitionpart) and to [FREEZE PARTITION](/core/reference/statements/alter/partition#freeze-partition).
Possible values:
@@ -1146,7 +1153,7 @@ ALTER TABLE test FREEZE SETTINGS alter_partition_verbose_result = 1;
-Allows you to specify the wait behavior for actions that are to be executed on replicas by [`ALTER`](/reference/statements/alter), [`OPTIMIZE`](/reference/statements/optimize) or [`TRUNCATE`](/reference/statements/truncate) queries.
+Allows you to specify the wait behavior for actions that are to be executed on replicas by [`ALTER`](/core/reference/statements/alter), [`OPTIMIZE`](/core/reference/statements/optimize) or [`TRUNCATE`](/core/reference/statements/truncate) queries.
Possible values:
@@ -1236,7 +1243,7 @@ Possible values:
See also:
-- [JOIN strictness](/reference/statements/select/join#settings)
+- [JOIN strictness](/core/reference/statements/select/join#settings)
## apply_deleted_mask {#apply_deleted_mask}
@@ -1359,7 +1366,7 @@ The fuzzer accumulates AST fragments from all queries across all sessions, produ
-Include [ALIAS](/reference/statements/create/table#alias) columns for wildcard query (`SELECT *`).
+Include [ALIAS](/core/reference/statements/create/table#alias) columns for wildcard query (`SELECT *`).
Possible values:
@@ -1370,7 +1377,7 @@ Possible values:
-Include [MATERIALIZED](/reference/statements/create/view#materialized-view) columns for wildcard query (`SELECT *`).
+Include [MATERIALIZED](/core/reference/statements/create/view#materialized-view) columns for wildcard query (`SELECT *`).
Possible values:
@@ -1895,7 +1902,7 @@ When set to `false`, each thread handles s3 request backoff independently of the
-Only has an effect in ClickHouse Cloud. Number of background threads for speculatively downloading new data parts into the filesystem cache, when [cache_populated_by_fetch](/reference/settings/merge-tree-settings#cache_populated_by_fetch) is enabled. Zero to disable.
+Only has an effect in ClickHouse Cloud. Number of background threads for speculatively downloading new data parts into the filesystem cache, when [cache_populated_by_fetch](/core/reference/settings/merge-tree-settings#cache_populated_by_fetch) is enabled. Zero to disable.
## calculate_text_stack_trace {#calculate_text_stack_trace}
@@ -1923,7 +1930,7 @@ CAST operator into IPv4, CAST operator into IPV6 type, toIPv4, toIPv6 functions
-Enables or disables keeping of the `Nullable` data type in [CAST](/reference/functions/regular-functions/type-conversion-functions#CAST) operations.
+Enables or disables keeping of the `Nullable` data type in [CAST](/core/reference/functions/regular-functions/type-conversion-functions#CAST) operations.
When the setting is enabled and the argument of `CAST` function is `Nullable`, the result is also transformed to `Nullable` type. When the setting is disabled, the result always has the destination type exactly.
@@ -1966,7 +1973,7 @@ Result:
**See Also**
-- [CAST](/reference/functions/regular-functions/type-conversion-functions#CAST) functio
+- [CAST](/core/reference/functions/regular-functions/type-conversion-functions#CAST) functio
## cast_string_to_date_time_mode {#cast_string_to_date_time_mode}
@@ -1982,7 +1989,7 @@ Possible values:
ClickHouse can parse the basic `YYYY-MM-DD HH:MM:SS` format and all [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time formats. For example, `'2018-06-08T01:02:03.000Z'`.
-- `'best_effort_us'` — Similar to `best_effort` (see the difference in [parseDateTimeBestEffortUS](/reference/functions/regular-functions/type-conversion-functions#parseDateTimeBestEffortUS)
+- `'best_effort_us'` — Similar to `best_effort` (see the difference in [parseDateTimeBestEffortUS](/core/reference/functions/regular-functions/type-conversion-functions#parseDateTimeBestEffortUS)
- `'basic'` — Use basic parser.
@@ -1990,8 +1997,8 @@ Possible values:
See also:
-- [DateTime data type.](/reference/data-types/datetime)
-- [Functions for working with dates and times.](/reference/functions/regular-functions/date-time-functions)
+- [DateTime data type.](/core/reference/data-types/datetime)
+- [Functions for working with dates and times.](/core/reference/functions/regular-functions/date-time-functions)
## cast_string_to_dynamic_use_inference {#cast_string_to_dynamic_use_inference}
@@ -2023,7 +2030,7 @@ Check that DROP NAMED COLLECTION will not break tables that depend on it
-Defines the level of detail for the [CHECK TABLE](/reference/statements/check-table) query result for `MergeTree` family engines .
+Defines the level of detail for the [CHECK TABLE](/core/reference/statements/check-table) query result for `MergeTree` family engines .
Possible values:
@@ -2340,15 +2347,15 @@ Use in-memory buffer for correlated subquery input to avoid its repeated evaluat
-Specifies which of the `uniq*` functions should be used to perform the [COUNT(DISTINCT ...)](/reference/functions/aggregate-functions/reference/count) construction.
+Specifies which of the `uniq*` functions should be used to perform the [COUNT(DISTINCT ...)](/core/reference/functions/aggregate-functions/reference/count) construction.
Possible values:
-- [uniq](/reference/functions/aggregate-functions/reference/uniq)
-- [uniqCombined](/reference/functions/aggregate-functions/reference/uniqCombined)
-- [uniqCombined64](/reference/functions/aggregate-functions/reference/uniqCombined64)
-- [uniqHLL12](/reference/functions/aggregate-functions/reference/uniqHLL12)
-- [uniqExact](/reference/functions/aggregate-functions/reference/uniqExact)
+- [uniq](/core/reference/functions/aggregate-functions/reference/uniq)
+- [uniqCombined](/core/reference/functions/aggregate-functions/reference/uniqCombined)
+- [uniqCombined64](/core/reference/functions/aggregate-functions/reference/uniqCombined64)
+- [uniqHLL12](/core/reference/functions/aggregate-functions/reference/uniqHLL12)
+- [uniqExact](/core/reference/functions/aggregate-functions/reference/uniqExact)
## count_distinct_optimization {#count_distinct_optimization}
@@ -2420,7 +2427,7 @@ Use inner join instead of comma/cross join if there are joining expressions in t
-Allows data types without explicit modifiers [NULL or NOT NULL](/reference/statements/create/table#null-or-not-null-modifiers) in column definition will be [Nullable](/reference/data-types/nullable).
+Allows data types without explicit modifiers [NULL or NOT NULL](/core/reference/statements/create/table#null-or-not-null-modifiers) in column definition will be [Nullable](/core/reference/data-types/nullable).
Possible values:
@@ -2533,7 +2540,7 @@ This setting is useful for ensuring that materialized views do not contain dupli
**See Also**
-- [NULL Processing in IN Operators](/concepts/operations/insert/deduplicating-inserts-on-retries#insert-deduplication-with-materialized-views)
+- [NULL Processing in IN Operators](/core/concepts/features/operations/insert/deduplicating-inserts-on-retries#insert-deduplication-with-materialized-views)
## deduplicate_insert {#deduplicate_insert}
@@ -2570,7 +2577,7 @@ That setting has four possible values:
-Allows to set a default value for SQL SECURITY option when creating a materialized view. [More about SQL security](/reference/statements/create/view#sql_security).
+Allows to set a default value for SQL SECURITY option when creating a materialized view. [More about SQL security](/core/reference/statements/create/view#sql_security).
The default value is `DEFINER`.
@@ -2586,7 +2593,7 @@ Maximum size of right-side table if limit is required but `max_bytes_in_join` is
-Allows to set default `SQL SECURITY` option while creating a normal view. [More about SQL security](/reference/statements/create/view#sql_security).
+Allows to set default `SQL SECURITY` option while creating a normal view. [More about SQL security](/core/reference/statements/create/view#sql_security).
The default value is `INVOKER`.
@@ -2688,7 +2695,7 @@ ENGINE = Log
-Allows to set default `DEFINER` option while creating a view. [More about SQL security](/reference/statements/create/view#sql_security).
+Allows to set default `DEFINER` option while creating a view. [More about SQL security](/core/reference/statements/create/view#sql_security).
The default value is `CURRENT_USER`.
@@ -2809,7 +2816,7 @@ If true, include only column names and types into result of DESCRIBE query
-Enables describing subcolumns for a [DESCRIBE](/reference/statements/describe-table) query. For example, members of a [Tuple](/reference/data-types/tuple) or subcolumns of a [Map](/reference/data-types/map#reading-subcolumns-of-map), [Nullable](/reference/data-types/nullable#finding-null) or an [Array](/reference/data-types/array#array-size) data type.
+Enables describing subcolumns for a [DESCRIBE](/core/reference/statements/describe-table) query. For example, members of a [Tuple](/core/reference/data-types/tuple) or subcolumns of a [Map](/core/reference/data-types/map#reading-subcolumns-of-map), [Nullable](/core/reference/data-types/nullable#finding-null) or an [Array](/core/reference/data-types/array#array-size) data type.
Possible values:
@@ -2818,7 +2825,7 @@ Possible values:
**Example**
-See an example for the [DESCRIBE](/reference/statements/describe-table) statement.
+See an example for the [DESCRIBE](/core/reference/statements/describe-table) statement.
## describe_include_virtual_columns {#describe_include_virtual_columns}
@@ -2871,7 +2878,7 @@ Is the memory-saving mode of distributed aggregation enabled.
Enables/disables inserted data sending in batches.
-When batch sending is enabled, the [Distributed](/reference/engines/table-engines/special/distributed) table engine tries to send multiple files of inserted data in one operation instead of sending them separately. Batch sending improves cluster performance by better-utilizing server and network resources.
+When batch sending is enabled, the [Distributed](/core/reference/engines/table-engines/special/distributed) table engine tries to send multiple files of inserted data in one operation instead of sending them separately. Batch sending improves cluster performance by better-utilizing server and network resources.
Possible values:
@@ -2884,7 +2891,7 @@ Possible values:
-Maximum interval for the [Distributed](/reference/engines/table-engines/special/distributed) table engine to send data. Limits exponential growth of the interval set in the [distributed_background_insert_sleep_time_ms](#distributed_background_insert_sleep_time_ms) setting.
+Maximum interval for the [Distributed](/core/reference/engines/table-engines/special/distributed) table engine to send data. Limits exponential growth of the interval set in the [distributed_background_insert_sleep_time_ms](#distributed_background_insert_sleep_time_ms) setting.
Possible values:
@@ -2896,7 +2903,7 @@ Possible values:
-Base interval for the [Distributed](/reference/engines/table-engines/special/distributed) table engine to send data. The actual interval grows exponentially in the event of errors.
+Base interval for the [Distributed](/core/reference/engines/table-engines/special/distributed) table engine to send data. The actual interval grows exponentially in the event of errors.
Possible values:
@@ -2920,7 +2927,7 @@ Possible values:
- 0 — Disabled.
-This setting also affects broken batches (that may appears because of abnormal server (machine) termination and no `fsync_after_insert`/`fsync_directories` for [Distributed](/reference/engines/table-engines/special/distributed) table engine).
+This setting also affects broken batches (that may appears because of abnormal server (machine) termination and no `fsync_after_insert`/`fsync_directories` for [Distributed](/core/reference/engines/table-engines/special/distributed) table engine).
@@ -3265,7 +3272,7 @@ Possible values:
-Enables or disables synchronous data insertion into a [Distributed](/reference/engines/table-engines/special/distributed) table.
+Enables or disables synchronous data insertion into a [Distributed](/core/reference/engines/table-engines/special/distributed) table.
By default, when inserting data into a `Distributed` table, the ClickHouse server sends data to cluster nodes in background mode. When `distributed_foreground_insert=1`, the data is processed synchronously, and the `INSERT` operation succeeds only after all the data is saved on all shards (at least one replica for each shard if `internal_replication` is true).
@@ -3278,8 +3285,8 @@ Cloud default value: `1`.
**See Also**
-- [Distributed Table Engine](/reference/engines/table-engines/special/distributed)
-- [Managing Distributed Tables](/reference/statements/system#managing-distributed-tables)
+- [Distributed Table Engine](/core/reference/engines/table-engines/special/distributed)
+- [Managing Distributed Tables](/core/reference/statements/system#managing-distributed-tables)
## distributed_group_by_no_merge {#distributed_group_by_no_merge}
@@ -3337,8 +3344,8 @@ Uses replicas from cluster_for_parallel_replicas.
**See also**
- [distributed_index_analysis_for_non_shared_merge_tree](#distributed_index_analysis_for_non_shared_merge_tree)
-- [distributed_index_analysis_min_parts_to_activate](/reference/settings/merge-tree-settings#distributed_index_analysis_min_parts_to_activate)
-- [distributed_index_analysis_min_indexes_bytes_to_activate](/reference/settings/merge-tree-settings#distributed_index_analysis_min_indexes_bytes_to_activate)
+- [distributed_index_analysis_min_parts_to_activate](/core/reference/settings/merge-tree-settings#distributed_index_analysis_min_parts_to_activate)
+- [distributed_index_analysis_min_indexes_bytes_to_activate](/core/reference/settings/merge-tree-settings#distributed_index_analysis_min_indexes_bytes_to_activate)
## distributed_index_analysis_for_non_shared_merge_tree {#distributed_index_analysis_for_non_shared_merge_tree}
@@ -3458,7 +3465,7 @@ Serialize the distributed query plan for execution at replicas.
-Changes the behaviour of [distributed subqueries](/reference/statements/in).
+Changes the behaviour of [distributed subqueries](/core/reference/statements/in).
ClickHouse applies this setting when the query contains the product of distributed tables, i.e. when the query for a distributed table contains a non-GLOBAL subquery for the distributed table.
@@ -3467,7 +3474,7 @@ Restrictions:
- Only applied for IN and JOIN subqueries.
- Only if the FROM section uses a distributed table containing more than one shard.
- If the subquery concerns a distributed table containing more than one shard.
-- Not used for a table-valued [remote](/reference/functions/table-functions/remote) function.
+- Not used for a table-valued [remote](/core/reference/functions/table-functions/remote) function.
Possible values:
@@ -3516,7 +3523,7 @@ The error count of each replica is capped at this value, preventing a single rep
See also:
- [load_balancing](#load_balancing-round_robin)
-- [Table engine Distributed](/reference/engines/table-engines/special/distributed)
+- [Table engine Distributed](/core/reference/engines/table-engines/special/distributed)
- [distributed_replica_error_half_life](#distributed_replica_error_half_life)
- [distributed_replica_max_ignored_errors](#distributed_replica_max_ignored_errors)
@@ -3532,7 +3539,7 @@ Controls how fast errors in distributed tables are zeroed. If a replica is unava
See also:
- [load_balancing](#load_balancing-round_robin)
-- [Table engine Distributed](/reference/engines/table-engines/special/distributed)
+- [Table engine Distributed](/core/reference/engines/table-engines/special/distributed)
- [distributed_replica_error_cap](#distributed_replica_error_cap)
- [distributed_replica_max_ignored_errors](#distributed_replica_max_ignored_errors)
@@ -3548,7 +3555,7 @@ The number of errors that will be ignored while choosing replicas (according to
See also:
- [load_balancing](#load_balancing-round_robin)
-- [Table engine Distributed](/reference/engines/table-engines/special/distributed)
+- [Table engine Distributed](/core/reference/engines/table-engines/special/distributed)
- [distributed_replica_error_cap](#distributed_replica_error_cap)
- [distributed_replica_error_half_life](#distributed_replica_error_half_life)
@@ -3593,7 +3600,7 @@ Disabled by default.
-When applying a function to a [Dynamic](/reference/data-types/dynamic) column using the default implementation,
+When applying a function to a [Dynamic](/core/reference/data-types/dynamic) column using the default implementation,
controls what happens for rows whose actual type is incompatible with the function:
- `true` (default) — throw an exception.
- `false` — return `NULL` for those rows instead.
@@ -3710,7 +3717,7 @@ Allows to record the filesystem caching log for each query
Enables or disables `write-through` cache. If set to `false`, the `write-through` cache is disabled for write operations. If set to `true`, `write-through` cache is enabled as long as `cache_on_write_operations` is turned on in the server config's cache disk configuration section.
-See ["Using local cache"](/concepts/features/configuration/server-config/storing-data#using-local-cache) for more details.
+See ["Using local cache"](/core/concepts/features/configuration/server-config/storing-data#using-local-cache) for more details.
Cloud default value: `1`.
@@ -3754,7 +3761,7 @@ Enable or disables pread for HDFS files. By default, `hdfsPread` is used. If dis
Enables or disables data compression in the response to an HTTP request.
-For more information, read the [HTTP interface description](/integrations/connectors/data-integrations/drivers-and-interfaces/http).
+For more information, read the [HTTP interface description](/core/concepts/features/interfaces/http).
Possible values:
@@ -3893,7 +3900,7 @@ Allow push predicate to final subquery.
-Enables or disables sorting with `ORDER BY ALL` syntax, see [ORDER BY](/reference/statements/select/order-by).
+Enables or disables sorting with `ORDER BY ALL` syntax, see [ORDER BY](/core/reference/statements/select/order-by).
Possible values:
@@ -3946,7 +3953,7 @@ If true then data can be parsed directly to columns with custom serialization (e
-Enables or disables supporting positional arguments for [GROUP BY](/reference/statements/select/group-by), [LIMIT BY](/reference/statements/select/limit-by), [ORDER BY](/reference/statements/select/order-by) statements.
+Enables or disables supporting positional arguments for [GROUP BY](/core/reference/statements/select/group-by), [LIMIT BY](/core/reference/statements/select/limit-by), [ORDER BY](/core/reference/statements/select/order-by) statements.
Possible values:
@@ -4006,7 +4013,7 @@ The downside is potentially higher memory usage.
-If turned on, results of `SELECT` queries are retrieved from the [query cache](/concepts/features/performance/caches/query-cache).
+If turned on, results of `SELECT` queries are retrieved from the [query cache](/core/concepts/features/performance/caches/query-cache).
Possible values:
@@ -4101,7 +4108,7 @@ Enable use of software prefetch in hash join probe phase to hide memory access l
-Allows creation of [Time](/reference/data-types/time) and [Time64](/reference/data-types/time64) data types.
+Allows creation of [Time](/core/reference/data-types/time) and [Time64](/core/reference/data-types/time64) data types.
## enable_unaligned_array_join {#enable_unaligned_array_join}
@@ -4115,7 +4122,7 @@ Allow ARRAY JOIN with multiple arrays that have different sizes. When this setti
-Allows to enable/disable decoding/encoding path in uri in [URL](/reference/engines/table-engines/special/url) engine tables.
+Allows to enable/disable decoding/encoding path in uri in [URL](/core/reference/engines/table-engines/special/url) engine tables.
Disabled by default.
@@ -4131,7 +4138,7 @@ If enable, remove duplicated rows during FINAL by marking rows as deleted and fi
-If turned on, results of `SELECT` queries are stored in the [query cache](/concepts/features/performance/caches/query-cache).
+If turned on, results of `SELECT` queries are stored in the [query cache](/core/concepts/features/performance/caches/query-cache).
Possible values:
@@ -4172,7 +4179,7 @@ Possible values:
-Enables or disables skipping empty files in [File](/reference/engines/table-engines/special/file) engine tables.
+Enables or disables skipping empty files in [File](/core/reference/engines/table-engines/special/file) engine tables.
Possible values:
- 0 — `SELECT` throws an exception if empty file is not compatible with requested format.
@@ -4182,7 +4189,7 @@ Possible values:
-Enables or disables truncate before insert in [File](/reference/engines/table-engines/special/file) engine tables.
+Enables or disables truncate before insert in [File](/core/reference/engines/table-engines/special/file) engine tables.
Possible values:
- 0 — `INSERT` query appends new data to the end of the file.
@@ -4192,7 +4199,7 @@ Possible values:
-Enables or disables skipping empty files in [URL](/reference/engines/table-engines/special/url) engine tables.
+Enables or disables skipping empty files in [URL](/core/reference/engines/table-engines/special/url) engine tables.
Possible values:
- 0 — `SELECT` throws an exception if empty file is not compatible with requested format.
@@ -4214,8 +4221,8 @@ Set default mode in EXCEPT query. Possible values: empty string, 'ALL', 'DISTINC
-Excludes specified skip indexes from being built and stored during INSERTs. The excluded skip indexes will still be built and stored [during merges](/reference/settings/merge-tree-settings#materialize_skip_indexes_on_merge) or by an explicit
-[MATERIALIZE INDEX](/reference/statements/alter/skipping-index#materialize-index) query.
+Excludes specified skip indexes from being built and stored during INSERTs. The excluded skip indexes will still be built and stored [during merges](/core/reference/settings/merge-tree-settings#materialize_skip_indexes_on_merge) or by an explicit
+[MATERIALIZE INDEX](/core/reference/statements/alter/skipping-index#materialize-index) query.
Has no effect if [materialize_skip_indexes_on_insert](#materialize_skip_indexes_on_insert) is false.
@@ -4283,7 +4290,7 @@ Read/write timeout in seconds. Now supported only for MySQL
-Defines how [mysql](/reference/functions/table-functions/mysql), [postgresql](/reference/functions/table-functions/postgresql) and [odbc](/reference/functions/table-functions/odbc) table functions use Nullable columns.
+Defines how [mysql](/core/reference/functions/table-functions/mysql), [postgresql](/core/reference/functions/table-functions/postgresql) and [odbc](/core/reference/functions/table-functions/odbc) table functions use Nullable columns.
Possible values:
@@ -4321,7 +4328,7 @@ For more information, see the section "Extreme values".
-Forces a query to an out-of-date replica if updated data is not available. See [Replication](/reference/engines/table-engines/mergetree-family/replication).
+Forces a query to an out-of-date replica if updated data is not available. See [Replication](/core/reference/engines/table-engines/mergetree-family/replication).
ClickHouse selects the most relevant from the outdated replicas of the table.
@@ -4439,7 +4446,7 @@ Maximum number of prefetches. Zero means unlimited. A setting `filesystem_prefet
-Automatically applies [FINAL](/reference/statements/select/from#final-modifier) modifier to all tables in a query, to tables where [FINAL](/reference/statements/select/from#final-modifier) is applicable, including joined tables and tables in sub-queries, and
+Automatically applies [FINAL](/core/reference/statements/select/from#final-modifier) modifier to all tables in a query, to tables where [FINAL](/core/reference/statements/select/from#final-modifier) is applicable, including joined tables and tables in sub-queries, and
distributed tables.
Possible values:
@@ -4493,7 +4500,7 @@ When enabled, projection parts are finalized synchronously during INSERT, reduci
-Sets the data format of a [nested](/reference/data-types/nested-data-structures) columns.
+Sets the data format of a [nested](/core/reference/data-types/nested-data-structures) columns.
Possible values:
@@ -4609,13 +4616,13 @@ Disables query execution if the index can't be used by date.
Works with tables in the MergeTree family.
-If `force_index_by_date=1`, ClickHouse checks whether the query has a date key condition that can be used for restricting data ranges. If there is no suitable condition, it throws an exception. However, it does not check whether the condition reduces the amount of data to read. For example, the condition `Date != ' 2000-01-01 '` is acceptable even when it matches all the data in the table (i.e., running the query requires a full scan). For more information about ranges of data in MergeTree tables, see [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree).
+If `force_index_by_date=1`, ClickHouse checks whether the query has a date key condition that can be used for restricting data ranges. If there is no suitable condition, it throws an exception. However, it does not check whether the condition reduces the amount of data to read. For example, the condition `Date != ' 2000-01-01 '` is acceptable even when it matches all the data in the table (i.e., running the query requires a full scan). For more information about ranges of data in MergeTree tables, see [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree).
## force_optimize_projection {#force_optimize_projection}
-Enables or disables the obligatory use of [projections](/reference/engines/table-engines/mergetree-family/mergetree#projections) in `SELECT` queries, when projection optimization is enabled (see [optimize_use_projections](#optimize_use_projections) setting).
+Enables or disables the obligatory use of [projections](/core/reference/engines/table-engines/mergetree-family/mergetree#projections) in `SELECT` queries, when projection optimization is enabled (see [optimize_use_projections](#optimize_use_projections) setting).
Possible values:
@@ -4662,7 +4669,7 @@ Disables query execution if indexing by the primary key is not possible.
Works with tables in the MergeTree family.
-If `force_primary_key=1`, ClickHouse checks to see if the query has a primary key condition that can be used for restricting data ranges. If there is no suitable condition, it throws an exception. However, it does not check whether the condition reduces the amount of data to read. For more information about data ranges in MergeTree tables, see [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree).
+If `force_primary_key=1`, ClickHouse checks to see if the query has a primary key condition that can be used for restricting data ranges. If there is no suitable condition, it throws an exception. However, it does not check whether the condition reduces the amount of data to read. For more information about data ranges in MergeTree tables, see [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree).
## force_remove_data_recursively_on_drop {#force_remove_data_recursively_on_drop}
@@ -4782,7 +4789,7 @@ Possible values:
-Controls the order of arguments in function [locate](/reference/functions/regular-functions/string-search-functions#locate).
+Controls the order of arguments in function [locate](/core/reference/functions/regular-functions/string-search-functions#locate).
Possible values:
@@ -4793,7 +4800,7 @@ Possible values:
-Sets the safety threshold for data volume generated by function [range](/reference/functions/regular-functions/array-functions#range). Defines the maximum number of values generated by function per block of data (sum of array sizes for every row in a block).
+Sets the safety threshold for data volume generated by function [range](/core/reference/functions/regular-functions/array-functions#range). Defines the maximum number of values generated by function per block of data (sum of array sizes for every row in a block).
Possible values:
@@ -4896,18 +4903,18 @@ From what size of the aggregation state in bytes, a two-level aggregation begins
-Changes the way the [GROUP BY clause](/reference/statements/select/group-by) treats the types of aggregation keys.
+Changes the way the [GROUP BY clause](/core/reference/statements/select/group-by) treats the types of aggregation keys.
When the `ROLLUP`, `CUBE`, or `GROUPING SETS` specifiers are used, some aggregation keys may not be used to produce some result rows.
Columns for these keys are filled with either default value or `NULL` in corresponding rows depending on this setting.
Possible values:
- 0 — The default value for the aggregation key type is used to produce missing values.
-- 1 — ClickHouse executes `GROUP BY` the same way as the SQL standard says. The types of aggregation keys are converted to [Nullable](/reference/data-types/nullable). Columns for corresponding aggregation keys are filled with [NULL](/reference/syntax#null) for rows that didn't use it.
+- 1 — ClickHouse executes `GROUP BY` the same way as the SQL standard says. The types of aggregation keys are converted to [Nullable](/core/reference/data-types/nullable). Columns for corresponding aggregation keys are filled with [NULL](/core/reference/syntax#null) for rows that didn't use it.
See also:
-- [GROUP BY clause](/reference/statements/select/group-by)
+- [GROUP BY clause](/core/reference/statements/select/group-by)
## h3togeo_lon_lat_result_order {#h3togeo_lon_lat_result_order}
@@ -4957,7 +4964,7 @@ The actual number of replications can be specified when the hdfs file is created
-Enables or disables skipping empty files in [HDFS](/reference/engines/table-engines/integrations/hdfs) engine tables.
+Enables or disables skipping empty files in [HDFS](/core/reference/engines/table-engines/integrations/hdfs) engine tables.
Possible values:
- 0 — `SELECT` throws an exception if empty file is not compatible with requested format.
@@ -4999,7 +5006,7 @@ Connection timeout for establishing connection with replica for Hedged requests
-Sets the maximum number of highlight matches per row in the [highlight](/reference/functions/regular-functions/string-search-functions#highlight) function. Use it to protect against excessive memory usage when highlighting highly repetitive patterns in large texts.
+Sets the maximum number of highlight matches per row in the [highlight](/core/reference/functions/regular-functions/string-search-functions#highlight) function. Use it to protect against excessive memory usage when highlighting highly repetitive patterns in large texts.
Possible values:
@@ -5114,7 +5121,7 @@ Possible values:
Enables or disables checksum verification when decompressing the HTTP POST data from the client. Used only for ClickHouse native compression format (not used with `gzip` or `deflate`).
-For more information, read the [HTTP interface description](/integrations/connectors/data-integrations/drivers-and-interfaces/http).
+For more information, read the [HTTP interface description](/core/concepts/features/interfaces/http).
Possible values:
@@ -5389,7 +5396,7 @@ Possible values:
-Only has an effect in ClickHouse Cloud. Exclude new data parts from SELECT queries until they're either pre-warmed (see [cache_populated_by_fetch](/reference/settings/merge-tree-settings#cache_populated_by_fetch)) or this many seconds old. Only for Replicated-/SharedMergeTree.
+Only has an effect in ClickHouse Cloud. Exclude new data parts from SELECT queries until they're either pre-warmed (see [cache_populated_by_fetch](/core/reference/settings/merge-tree-settings#cache_populated_by_fetch)) or this many seconds old. Only for Replicated-/SharedMergeTree.
## ignore_data_skipping_indices {#ignore_data_skipping_indices}
@@ -5592,9 +5599,9 @@ Possible values:
- 0 — Disabled.
- 1 — Enabled.
-By default, blocks inserted into replicated tables by the `INSERT` statement are deduplicated (see [Data Replication](/reference/engines/table-engines/mergetree-family/replication)).
-For the replicated tables by default the only 100 of the most recent blocks for each partition are deduplicated (see [replicated_deduplication_window](/reference/settings/merge-tree-settings#replicated_deduplication_window), [replicated_deduplication_window_seconds](/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds)).
-For not replicated tables see [non_replicated_deduplication_window](/reference/settings/merge-tree-settings#non_replicated_deduplication_window).
+By default, blocks inserted into replicated tables by the `INSERT` statement are deduplicated (see [Data Replication](/core/reference/engines/table-engines/mergetree-family/replication)).
+For the replicated tables by default the only 100 of the most recent blocks for each partition are deduplicated (see [replicated_deduplication_window](/core/reference/settings/merge-tree-settings#replicated_deduplication_window), [replicated_deduplication_window_seconds](/core/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds)).
+For not replicated tables see [non_replicated_deduplication_window](/core/reference/settings/merge-tree-settings#non_replicated_deduplication_window).
## insert_deduplication_token {#insert_deduplication_token}
@@ -5608,8 +5615,8 @@ Possible values:
`insert_deduplication_token` is used for deduplication _only_ when not empty.
-For the replicated tables by default the only 100 of the most recent inserts for each partition are deduplicated (see [replicated_deduplication_window](/reference/settings/merge-tree-settings#replicated_deduplication_window), [replicated_deduplication_window_seconds](/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds)).
-For not replicated tables see [non_replicated_deduplication_window](/reference/settings/merge-tree-settings#non_replicated_deduplication_window).
+For the replicated tables by default the only 100 of the most recent inserts for each partition are deduplicated (see [replicated_deduplication_window](/core/reference/settings/merge-tree-settings#replicated_deduplication_window), [replicated_deduplication_window_seconds](/core/reference/settings/merge-tree-settings#replicated_deduplication_window_seconds)).
+For not replicated tables see [non_replicated_deduplication_window](/core/reference/settings/merge-tree-settings#non_replicated_deduplication_window).
`insert_deduplication_token` works on a partition level (the same as `insert_deduplication` checksum). Multiple partitions can have the same `insert_deduplication_token`.
@@ -5706,10 +5713,10 @@ Possible values:
-Enables or disables the insertion of [default values](/reference/statements/create/table#default_values) instead of [NULL](/reference/syntax#null) into columns with not [nullable](/reference/data-types/nullable) data type.
+Enables or disables the insertion of [default values](/core/reference/statements/create/table#default_values) instead of [NULL](/core/reference/syntax#null) into columns with not [nullable](/core/reference/data-types/nullable) data type.
If column type is not nullable and this setting is disabled, then inserting `NULL` causes an exception. If column type is nullable, then `NULL` values are inserted as is, regardless of this setting.
-This setting is applicable to [INSERT ... SELECT](/reference/statements/insert-into#inserting-the-results-of-select) queries. Note that `SELECT` subqueries may be concatenated with `UNION ALL` clause.
+This setting is applicable to [INSERT ... SELECT](/core/reference/statements/insert-into#inserting-the-results-of-select) queries. Note that `SELECT` subqueries may be concatenated with `UNION ALL` clause.
Possible values:
@@ -5786,7 +5793,7 @@ See also:
-If not `0`, specifies the shard of [Distributed](/reference/engines/table-engines/special/distributed) table into which the data will be inserted synchronously.
+If not `0`, specifies the shard of [Distributed](/core/reference/engines/table-engines/special/distributed) table into which the data will be inserted synchronously.
If `insert_shard_id` value is incorrect, the server will throw an exception.
@@ -5799,7 +5806,7 @@ SELECT uniq(shard_num) FROM system.clusters WHERE cluster = 'requested_cluster';
Possible values:
- 0 — Disabled.
-- Any number from `1` to `shards_num` of corresponding [Distributed](/reference/engines/table-engines/special/distributed) table.
+- Any number from `1` to `shards_num` of corresponding [Distributed](/core/reference/engines/table-engines/special/distributed) table.
**Example**
@@ -5859,7 +5866,7 @@ Collect jemalloc allocation and deallocation samples in trace log.
Enable jemalloc profiler for the query. Jemalloc will sample allocations and all deallocations for sampled allocations.
Profiles can be flushed using SYSTEM JEMALLOC FLUSH PROFILE which can be used for allocation analysis.
Samples can also be stored in system.trace_log using config jemalloc_collect_global_profile_samples_in_trace_log or with query setting jemalloc_collect_profile_samples_in_trace_log.
-See [Allocation Profiling](/concepts/features/performance/allocation-profiling)
+See [Allocation Profiling](/core/concepts/features/performance/allocation-profiling)
## jemalloc_profile_text_collapsed_use_count {#jemalloc_profile_text_collapsed_use_count}
@@ -5894,7 +5901,7 @@ Whether to include inline frames when symbolizing jemalloc heap profile. When en
-Specifies which [JOIN](/reference/statements/select/join) algorithm is used.
+Specifies which [JOIN](/core/reference/statements/select/join) algorithm is used.
Several algorithms can be specified, and an available one would be chosen for a particular query based on kind/strictness and table engine.
@@ -5904,7 +5911,7 @@ Possible values:
[Grace hash join](https://en.wikipedia.org/wiki/Hash_join#Grace_hash_join) is used. Grace hash provides an algorithm option that provides performant complex joins while limiting memory use.
- The first phase of a grace join reads the right table and splits it into N buckets depending on the hash value of key columns (initially, N is `grace_hash_join_initial_buckets`). This is done in a way to ensure that each bucket can be processed independently. Rows from the first bucket are added to an in-memory hash table while the others are saved to disk. If the hash table grows beyond the memory limit (e.g., as set by [`max_bytes_in_join`](/reference/settings/session-settings#max_bytes_in_join), the number of buckets is increased and the assigned bucket for each row. Any rows which don't belong to the current bucket are flushed and reassigned.
+ The first phase of a grace join reads the right table and splits it into N buckets depending on the hash value of key columns (initially, N is `grace_hash_join_initial_buckets`). This is done in a way to ensure that each bucket can be processed independently. Rows from the first bucket are added to an in-memory hash table while the others are saved to disk. If the hash table grows beyond the memory limit (e.g., as set by [`max_bytes_in_join`](/core/reference/settings/session-settings#max_bytes_in_join), the number of buckets is increased and the assigned bucket for each row. Any rows which don't belong to the current bucket are flushed and reassigned.
Supports `INNER/LEFT/RIGHT/FULL ALL/ANY JOIN`.
@@ -5931,7 +5938,7 @@ Possible values:
- direct
The `direct` (also known as nested loop) algorithm performs a lookup in the right table using rows from the left table as keys.
- It's supported by special storages such as [Dictionary](/reference/engines/table-engines/special/dictionary), [EmbeddedRocksDB](/reference/engines/table-engines/integrations/embedded-rocksdb), and [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables.
+ It's supported by special storages such as [Dictionary](/core/reference/engines/table-engines/special/dictionary), [EmbeddedRocksDB](/core/reference/engines/table-engines/integrations/embedded-rocksdb), and [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables.
For MergeTree tables, the algorithm pushes join key filters directly to the storage layer. This can be more efficient when the key can use the table's primary key index for lookups, otherwise it performs full scans of the right table for each left table block.
@@ -5961,7 +5968,7 @@ Possible values:
Changes the behaviour of join operations with `ANY` strictness.
-This setting applies only for `JOIN` operations with [Join](/reference/engines/table-engines/special/join) engine tables.
+This setting applies only for `JOIN` operations with [Join](/core/reference/engines/table-engines/special/join) engine tables.
Possible values:
@@ -5971,15 +5978,15 @@ Possible values:
See also:
-- [JOIN clause](/reference/statements/select/join)
-- [Join table engine](/reference/engines/table-engines/special/join)
+- [JOIN clause](/core/reference/statements/select/join)
+- [Join table engine](/core/reference/engines/table-engines/special/join)
- [join_default_strictness](#join_default_strictness)
## join_default_strictness {#join_default_strictness}
-Sets default strictness for [JOIN clauses](/reference/statements/select/join).
+Sets default strictness for [JOIN clauses](/core/reference/statements/select/join).
Possible values:
@@ -6014,8 +6021,8 @@ The lower limit of per-key average rows in the right table to determine whether
Defines what action ClickHouse performs when any of the following join limits is reached:
-- [max_bytes_in_join](/reference/settings/session-settings#max_bytes_in_join)
-- [max_rows_in_join](/reference/settings/session-settings#max_rows_in_join)
+- [max_bytes_in_join](/core/reference/settings/session-settings#max_bytes_in_join)
+- [max_rows_in_join](/core/reference/settings/session-settings#max_rows_in_join)
Possible values:
@@ -6026,8 +6033,8 @@ Default value: `THROW`.
**See Also**
-- [JOIN clause](/reference/statements/select/join)
-- [Join table engine](/reference/engines/table-engines/special/join)
+- [JOIN clause](/core/reference/statements/select/join)
+- [Join table engine](/core/reference/engines/table-engines/special/join)
## join_runtime_bloom_filter_bytes {#join_runtime_bloom_filter_bytes}
@@ -6113,12 +6120,12 @@ The lower limit of per-key average rows in the right table to determine whether
-Sets the type of [JOIN](/reference/statements/select/join) behaviour. When merging tables, empty cells may appear. ClickHouse fills them differently based on this setting.
+Sets the type of [JOIN](/core/reference/statements/select/join) behaviour. When merging tables, empty cells may appear. ClickHouse fills them differently based on this setting.
Possible values:
- 0 — The empty cells are filled with the default value of the corresponding field type.
-- 1 — `JOIN` behaves the same way as in standard SQL. The type of the corresponding field is converted to [Nullable](/reference/data-types/nullable), and empty cells are filled with [NULL](/reference/syntax).
+- 1 — `JOIN` behaves the same way as in standard SQL. The type of the corresponding field is converted to [Nullable](/core/reference/data-types/nullable), and empty cells are filled with [NULL](/core/reference/syntax).
## joined_block_split_single_row {#joined_block_split_single_row}
@@ -6147,7 +6154,7 @@ Disable limit on kafka_num_consumers that depends on the number of available CPU
-The wait time in milliseconds for reading messages from [Kafka](/reference/engines/table-engines/integrations/kafka) before retry.
+The wait time in milliseconds for reading messages from [Kafka](/core/reference/engines/table-engines/integrations/kafka) before retry.
Possible values:
@@ -6236,8 +6243,8 @@ Possible values:
**See Also**
-- [Synchronicity of ALTER Queries](/reference/statements/alter#synchronicity-of-alter-queries)
-- [Mutations](/reference/statements/alter#mutations)
+- [Synchronicity of ALTER Queries](/core/reference/statements/alter#synchronicity-of-alter-queries)
+- [Mutations](/core/reference/statements/alter#mutations)
Cloud default value: `1`.
@@ -6245,7 +6252,7 @@ Cloud default value: `1`.
-Sets the maximum number of rows to get from the query result. It adjusts the value set by the [LIMIT](/reference/statements/select/limit) clause, so that the limit, specified in the query, cannot exceed the limit, set by this setting.
+Sets the maximum number of rows to get from the query result. It adjusts the value set by the [LIMIT](/core/reference/statements/select/limit) clause, so that the limit, specified in the query, cannot exceed the limit, set by this setting.
Possible values:
@@ -6386,9 +6393,9 @@ Possible values:
## log_comment {#log_comment}
-Specifies the value for the `log_comment` field of the [system.query_log](/reference/system-tables/query_log) table and comment text for the server log.
+Specifies the value for the `log_comment` field of the [system.query_log](/core/reference/system-tables/query_log) table and comment text for the server log.
-It can be used to improve the readability of server logs. Additionally, it helps to select queries related to the test from the `system.query_log` after running [clickhouse-test](/resources/contribute/tests).
+It can be used to improve the readability of server logs. Additionally, it helps to select queries related to the test from the `system.query_log` after running [clickhouse-test](/resources/develop-contribute/contribute/tests).
Possible values:
@@ -6418,7 +6425,7 @@ Result:
-Allows to log formatted queries to the [system.query_log](/reference/system-tables/query_log) system table (populates `formatted_query` column in the [system.query_log](/reference/system-tables/query_log)).
+Allows to log formatted queries to the [system.query_log](/core/reference/system-tables/query_log) system table (populates `formatted_query` column in the [system.query_log](/core/reference/system-tables/query_log)).
Possible values:
@@ -6435,8 +6442,8 @@ Write time that processor spent during execution/waiting for data to `system.pro
See also:
-- [`system.processors_profile_log`](/reference/system-tables/processors_profile_log)
-- [`EXPLAIN PIPELINE`](/reference/statements/explain#explain-pipeline)
+- [`system.processors_profile_log`](/core/reference/system-tables/processors_profile_log)
+- [`EXPLAIN PIPELINE`](/core/reference/statements/explain#explain-pipeline)
## log_profile_events {#log_profile_events}
@@ -6450,7 +6457,7 @@ Log query performance statistics into the query_log, query_thread_log and query_
Setting up query logging.
-Queries sent to ClickHouse with this setup are logged according to the rules in the [query_log](/reference/settings/server-settings/settings#query_log) server configuration parameter.
+Queries sent to ClickHouse with this setup are logged according to the rules in the [query_log](/core/reference/settings/server-settings/settings#query_log) server configuration parameter.
Example:
@@ -6503,7 +6510,7 @@ log_queries_min_type='EXCEPTION_WHILE_PROCESSING'
-Allows a user to write to [query_log](/reference/system-tables/query_log), [query_thread_log](/reference/system-tables/query_thread_log), and [query_views_log](/reference/system-tables/query_views_log) system tables only a sample of queries selected randomly with the specified probability. It helps to reduce the load with a large volume of queries in a second.
+Allows a user to write to [query_log](/core/reference/system-tables/query_log), [query_thread_log](/core/reference/system-tables/query_thread_log), and [query_views_log](/core/reference/system-tables/query_views_log) system tables only a sample of queries selected randomly with the specified probability. It helps to reduce the load with a large volume of queries in a second.
Possible values:
@@ -6523,7 +6530,7 @@ Log query settings into the query_log and OpenTelemetry span log.
Setting up query threads logging.
-Query threads log into the [system.query_thread_log](/reference/system-tables/query_thread_log) table. This setting has effect only when [log_queries](#log_queries) is true. Queries' threads run by ClickHouse with this setup are logged according to the rules in the [query_thread_log](/reference/settings/server-settings/settings#query_thread_log) server configuration parameter.
+Query threads log into the [system.query_thread_log](/core/reference/system-tables/query_thread_log) table. This setting has effect only when [log_queries](#log_queries) is true. Queries' threads run by ClickHouse with this setup are logged according to the rules in the [query_thread_log](/core/reference/settings/server-settings/settings#query_thread_log) server configuration parameter.
Possible values:
@@ -6542,7 +6549,7 @@ log_query_threads=1
Setting up query views logging.
-When a query run by ClickHouse with this setting enabled has associated views (materialized or live views), they are logged in the [query_views_log](/reference/settings/server-settings/settings#query_views_log) server configuration parameter.
+When a query run by ClickHouse with this setting enabled has associated views (materialized or live views), they are logged in the [query_views_log](/core/reference/settings/server-settings/settings#query_views_log) server configuration parameter.
Example:
@@ -6554,7 +6561,7 @@ log_query_views=1
-Allows or restricts using the [LowCardinality](/reference/data-types/lowcardinality) data type with the [Native](/reference/formats/Native) format.
+Allows or restricts using the [LowCardinality](/core/reference/data-types/lowcardinality) data type with the [Native](/core/reference/formats/Native) format.
If usage of `LowCardinality` is restricted, ClickHouse server converts `LowCardinality`-columns to ordinary ones for `SELECT` queries, and convert ordinary columns to `LowCardinality`-columns for `INSERT` queries.
@@ -6569,7 +6576,7 @@ Possible values:
-Sets a maximum size in rows of a shared global dictionary for the [LowCardinality](/reference/data-types/lowcardinality) data type that can be written to a storage file system. This setting prevents issues with RAM in case of unlimited dictionary growth. All the data that can't be encoded due to maximum dictionary size limitation ClickHouse writes in an ordinary method.
+Sets a maximum size in rows of a shared global dictionary for the [LowCardinality](/core/reference/data-types/lowcardinality) data type that can be written to a storage file system. This setting prevents issues with RAM in case of unlimited dictionary growth. All the data that can't be encoded due to maximum dictionary size limitation ClickHouse writes in an ordinary method.
Possible values:
@@ -6614,7 +6621,7 @@ Make distributed query plan.
-If INSERTs build and store skip indexes. If disabled, skip indexes will only be built and stored [during merges](/reference/settings/merge-tree-settings#materialize_skip_indexes_on_merge) or by explicit [MATERIALIZE INDEX](/reference/statements/alter/skipping-index#materialize-index).
+If INSERTs build and store skip indexes. If disabled, skip indexes will only be built and stored [during merges](/core/reference/settings/merge-tree-settings#materialize_skip_indexes_on_merge) or by explicit [MATERIALIZE INDEX](/core/reference/statements/alter/skipping-index#materialize-index).
See also [exclude_materialize_skip_indexes_on_insert](#exclude_materialize_skip_indexes_on_insert).
@@ -6710,11 +6717,11 @@ The block size should not be too small to avoid noticeable costs when processing
Cloud default value: half the memory amount per replica.
Enables or disables execution of `GROUP BY` clauses in external memory.
-(See [GROUP BY in external memory](/reference/statements/select/group-by#group-by-in-external-memory))
+(See [GROUP BY in external memory](/core/reference/statements/select/group-by#group-by-in-external-memory))
Possible values:
-- Maximum volume of RAM (in bytes) that can be used by the single [GROUP BY](/reference/statements/select/group-by) operation.
+- Maximum volume of RAM (in bytes) that can be used by the single [GROUP BY](/core/reference/statements/select/group-by) operation.
- `0` — `GROUP BY` in external memory disabled.
@@ -6738,12 +6745,12 @@ If set to a non-zero value and `join_algorithm` is `hash`, `parallel_hash`, `def
Cloud default value: half the memory amount per replica.
-Enables or disables execution of `ORDER BY` clauses in external memory. See [ORDER BY Implementation Details](/reference/statements/select/order-by#implementation-details)
+Enables or disables execution of `ORDER BY` clauses in external memory. See [ORDER BY Implementation Details](/core/reference/statements/select/order-by#implementation-details)
If memory usage during ORDER BY operation exceeds this threshold in bytes, the 'external sorting' mode (spill data to disk) is activated.
Possible values:
-- Maximum volume of RAM (in bytes) that can be used by the single [ORDER BY](/reference/statements/select/order-by) operation.
+- Maximum volume of RAM (in bytes) that can be used by the single [ORDER BY](/core/reference/statements/select/order-by) operation.
The recommended value is half of available system memory
- `0` — `ORDER BY` in external memory disabled.
@@ -6774,13 +6781,13 @@ is used by a hash table when using DISTINCT.
The maximum size in number of bytes of the hash table used when joining tables.
-This setting applies to [SELECT ... JOIN](/reference/statements/select/join)
-operations and the [Join table engine](/reference/engines/table-engines/special/join).
+This setting applies to [SELECT ... JOIN](/core/reference/statements/select/join)
+operations and the [Join table engine](/core/reference/engines/table-engines/special/join).
If the query contains joins, ClickHouse checks this setting for every intermediate result.
ClickHouse can proceed with different actions when the limit is reached. Use
-the [join_overflow_mode](/reference/settings/session-settings#join_overflow_mode) settings to choose the action.
+the [join_overflow_mode](/core/reference/settings/session-settings#join_overflow_mode) settings to choose the action.
Possible values:
@@ -6928,7 +6935,7 @@ Possible values:
**See Also**
-- [max_concurrent_queries](/reference/settings/server-settings/settings#max_concurrent_queries)
+- [max_concurrent_queries](/core/reference/settings/server-settings/settings#max_concurrent_queries)
Cloud default value: `1000`.
@@ -6971,7 +6978,7 @@ The following parameters are only used when creating Distributed tables (and whe
-Limits the maximum depth of recursive queries for [Distributed](/reference/engines/table-engines/special/distributed) tables.
+Limits the maximum depth of recursive queries for [Distributed](/core/reference/engines/table-engines/special/distributed) tables.
If the value is exceeded, the server throws an exception.
@@ -6999,7 +7006,7 @@ The maximum number of threads to download data (e.g. for URL engine).
Maximum query estimate execution time in seconds. Checked on every data block
-when [`timeout_before_checking_execution_speed`](/reference/settings/session-settings#timeout_before_checking_execution_speed)
+when [`timeout_before_checking_execution_speed`](/core/reference/settings/session-settings#timeout_before_checking_execution_speed)
expires.
## max_execution_speed {#max_execution_speed}
@@ -7007,7 +7014,7 @@ expires.
The maximum number of execution rows per second. Checked on every data block when
-[`timeout_before_checking_execution_speed`](/reference/settings/session-settings#timeout_before_checking_execution_speed)
+[`timeout_before_checking_execution_speed`](/core/reference/settings/session-settings#timeout_before_checking_execution_speed)
expires. If the execution speed is high, the execution speed will be reduced.
## max_execution_speed_bytes {#max_execution_speed_bytes}
@@ -7015,7 +7022,7 @@ expires. If the execution speed is high, the execution speed will be reduced.
The maximum number of execution bytes per second. Checked on every data block when
-[`timeout_before_checking_execution_speed`](/reference/settings/session-settings#timeout_before_checking_execution_speed)
+[`timeout_before_checking_execution_speed`](/core/reference/settings/session-settings#timeout_before_checking_execution_speed)
expires. If the execution speed is high, the execution speed will be reduced.
## max_execution_time {#max_execution_time}
@@ -7026,7 +7033,7 @@ The maximum query execution time in seconds.
The `max_execution_time` parameter can be a bit tricky to understand.
It operates based on interpolation relative to the current query execution speed
-(this behaviour is controlled by [`timeout_before_checking_execution_speed`](/reference/settings/session-settings#timeout_before_checking_execution_speed)).
+(this behaviour is controlled by [`timeout_before_checking_execution_speed`](/core/reference/settings/session-settings#timeout_before_checking_execution_speed)).
ClickHouse will interrupt a query if the projected execution time exceeds the
specified `max_execution_time`. By default, the `timeout_before_checking_execution_speed`
@@ -7084,7 +7091,7 @@ Amount of retries while fetching partition from another host.
-Sets the maximum number of parallel threads for the `SELECT` query data read phase with the [FINAL](/reference/statements/select/from#final-modifier) modifier.
+Sets the maximum number of parallel threads for the `SELECT` query data read phase with the [FINAL](/core/reference/statements/select/from#final-modifier) modifier.
Possible values:
@@ -7103,7 +7110,7 @@ Cloud default value: `10`.
-Defines the maximum length for each regular expression in the [hyperscan multi-match functions](/reference/functions/regular-functions/string-search-functions#multiMatchAny).
+Defines the maximum length for each regular expression in the [hyperscan multi-match functions](/core/reference/functions/regular-functions/string-search-functions#multiMatchAny).
Possible values:
@@ -7146,7 +7153,7 @@ Exception: Regexp length too large.
-Sets the maximum length total of all regular expressions in each [hyperscan multi-match function](/reference/functions/regular-functions/string-search-functions#multiMatchAny).
+Sets the maximum length total of all regular expressions in each [hyperscan multi-match function](/core/reference/functions/regular-functions/string-search-functions#multiMatchAny).
Possible values:
@@ -7324,8 +7331,8 @@ from `String` and `Array` arguments:
- `argMin`
- `argMax`
-Memory consumption is also restricted by the parameters [`max_memory_usage_for_user`](/reference/settings/session-settings#max_memory_usage_for_user)
-and [`max_server_memory_usage`](/reference/settings/server-settings/settings#max_server_memory_usage).
+Memory consumption is also restricted by the parameters [`max_memory_usage_for_user`](/core/reference/settings/session-settings#max_memory_usage_for_user)
+and [`max_server_memory_usage`](/core/reference/settings/server-settings/settings#max_server_memory_usage).
## max_memory_usage_for_user {#max_memory_usage_for_user}
@@ -7335,7 +7342,7 @@ The maximum amount of RAM to use for running a user's queries on a single server
By default, the amount is not restricted (`max_memory_usage_for_user = 0`).
-Also see the description of [`max_memory_usage`](/reference/settings/session-settings#max_memory_usage).
+Also see the description of [`max_memory_usage`](/core/reference/settings/session-settings#max_memory_usage).
For example if you want to set `max_memory_usage_for_user` to 1000 bytes for a user named `clickhouse_read`, you can use the statement
@@ -7472,7 +7479,7 @@ Restriction on dropping partitions in query time. The value `0` means that you c
Cloud default value: 1 TB.
-This query setting overwrites its server setting equivalent, see [max_partition_size_to_drop](/reference/settings/server-settings/settings#max_partition_size_to_drop)
+This query setting overwrites its server setting equivalent, see [max_partition_size_to_drop](/core/reference/settings/server-settings/settings#max_partition_size_to_drop)
## max_partitions_per_insert_block {#max_partitions_per_insert_block}
@@ -7522,7 +7529,7 @@ Possible values:
- `-1` - unlimited (default)
-You can also specify the MergeTree setting [`max_partitions_to_read`](/reference/settings/session-settings#max_partitions_to_read) in tables' setting.
+You can also specify the MergeTree setting [`max_partitions_to_read`](/core/reference/settings/session-settings#max_partitions_to_read) in tables' setting.
## max_parts_to_move {#max_parts_to_move}
@@ -7610,7 +7617,7 @@ The maximum speed of data exchange over the network in bytes per second for writ
-Disables lagging replicas for distributed queries. See [Replication](/reference/engines/table-engines/mergetree-family/replication).
+Disables lagging replicas for distributed queries. See [Replication](/core/reference/engines/table-engines/mergetree-family/replication).
Sets the time in seconds. If a replica's lag is greater than or equal to the set value, this replica is not used.
@@ -7682,13 +7689,13 @@ The maximum number of different rows when using DISTINCT.
Limits the number of rows in the hash table that is used when joining tables.
-This settings applies to [SELECT ... JOIN](/reference/statements/select/join)
-operations and the [Join](/reference/engines/table-engines/special/join) table engine.
+This settings applies to [SELECT ... JOIN](/core/reference/statements/select/join)
+operations and the [Join](/core/reference/engines/table-engines/special/join) table engine.
If a query contains multiple joins, ClickHouse checks this setting for every intermediate result.
ClickHouse can proceed with different actions when the limit is reached. Use the
-[`join_overflow_mode`](/reference/settings/session-settings#join_overflow_mode) setting to choose the action.
+[`join_overflow_mode`](/core/reference/settings/session-settings#join_overflow_mode) setting to choose the action.
Possible values:
@@ -7912,7 +7919,7 @@ Restriction on deleting tables in query time. The value `0` means that you can d
Cloud default value: 1 TB.
-This query setting overwrites its server setting equivalent, see [max_table_size_to_drop](/reference/settings/server-settings/settings#max_table_size_to_drop)
+This query setting overwrites its server setting equivalent, see [max_table_size_to_drop](/core/reference/settings/server-settings/settings#max_table_size_to_drop)
## max_temporary_columns {#max_temporary_columns}
@@ -7971,7 +7978,7 @@ approximately zero computing resources.
-The maximum number of query processing threads, excluding threads for retrieving data from remote servers (see the ['max_distributed_connections'](/reference/settings/session-settings#max_distributed_connections) parameter).
+The maximum number of query processing threads, excluding threads for retrieving data from remote servers (see the ['max_distributed_connections'](/core/reference/settings/session-settings#max_distributed_connections) parameter).
This parameter applies to threads that perform the same stages of the query processing pipeline in parallel.
For example, when reading from a table, if it is possible to evaluate expressions with functions, filter with `WHERE` and pre-aggregate for `GROUP BY` in parallel using at least 'max_threads' number of threads, then 'max_threads' are used.
@@ -8033,7 +8040,7 @@ Maximum number of points, rings, or polygons allowed in a single WKB geometry el
It represents the soft memory limit when the hard limit is reached on the global level.
This value is used to compute the overcommit ratio for the query.
Zero means skip the query.
-Read more about [memory overcommit](/concepts/features/configuration/settings/memory-overcommit).
+Read more about [memory overcommit](/core/concepts/features/configuration/settings/memory-overcommit).
## memory_overcommit_ratio_denominator_for_user {#memory_overcommit_ratio_denominator_for_user}
@@ -8044,7 +8051,7 @@ Read more about [memory overcommit](/concepts/features/configuration/settings/me
It represents the soft memory limit when the hard limit is reached on the user level.
This value is used to compute the overcommit ratio for the query.
Zero means skip the query.
-Read more about [memory overcommit](/concepts/features/configuration/settings/memory-overcommit).
+Read more about [memory overcommit](/core/concepts/features/configuration/settings/memory-overcommit).
## memory_profiler_sample_max_allocation_size {#memory_profiler_sample_max_allocation_size}
@@ -8068,7 +8075,7 @@ Collect random allocations and deallocations and write them into system.trace_lo
-Sets the step of memory profiler. Whenever query memory usage becomes larger than every next step in number of bytes the memory profiler will collect the allocating stacktrace and will write it into [trace_log](/reference/system-tables/trace_log).
+Sets the step of memory profiler. Whenever query memory usage becomes larger than every next step in number of bytes the memory profiler will collect the allocating stacktrace and will write it into [trace_log](/core/reference/system-tables/trace_log).
Possible values:
@@ -8088,7 +8095,7 @@ For testing of `exception safety` - throw an exception every time you allocate m
Maximum time thread will wait for memory to be freed in the case of memory overcommit on a user level.
If the timeout is reached and memory is not freed, an exception is thrown.
-Read more about [memory overcommit](/concepts/features/configuration/settings/memory-overcommit).
+Read more about [memory overcommit](/core/concepts/features/configuration/settings/memory-overcommit).
## merge_table_max_tables_to_look_for_schema_inference {#merge_table_max_tables_to_look_for_schema_inference}
@@ -8129,7 +8136,7 @@ Whether to use only prewhere columns size to determine reading task size.
If ClickHouse should read more than `merge_tree_max_bytes_to_use_cache` bytes in one query, it does not use the cache of uncompressed blocks.
-The cache of uncompressed blocks stores data extracted for queries. ClickHouse uses this cache to speed up responses to repeated small queries. This setting protects the cache from trashing by queries that read a large amount of data. The [uncompressed_cache_size](/reference/settings/server-settings/settings#uncompressed_cache_size) server setting defines the size of the cache of uncompressed blocks.
+The cache of uncompressed blocks stores data extracted for queries. ClickHouse uses this cache to speed up responses to repeated small queries. This setting protects the cache from trashing by queries that read a large amount of data. The [uncompressed_cache_size](/core/reference/settings/server-settings/settings#uncompressed_cache_size) server setting defines the size of the cache of uncompressed blocks.
Possible values:
@@ -8141,7 +8148,7 @@ Possible values:
If ClickHouse should read more than `merge_tree_max_rows_to_use_cache` rows in one query, it does not use the cache of uncompressed blocks.
-The cache of uncompressed blocks stores data extracted for queries. ClickHouse uses this cache to speed up responses to repeated small queries. This setting protects the cache from trashing by queries that read a large amount of data. The [uncompressed_cache_size](/reference/settings/server-settings/settings#uncompressed_cache_size) server setting defines the size of the cache of uncompressed blocks.
+The cache of uncompressed blocks stores data extracted for queries. ClickHouse uses this cache to speed up responses to repeated small queries. This setting protects the cache from trashing by queries that read a large amount of data. The [uncompressed_cache_size](/core/reference/settings/server-settings/settings#uncompressed_cache_size) server setting defines the size of the cache of uncompressed blocks.
Possible values:
@@ -8151,7 +8158,7 @@ Possible values:
-If the number of bytes to read from one file of a [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree)-engine table exceeds `merge_tree_min_bytes_for_concurrent_read`, then ClickHouse tries to concurrently read from this file in several threads.
+If the number of bytes to read from one file of a [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree)-engine table exceeds `merge_tree_min_bytes_for_concurrent_read`, then ClickHouse tries to concurrently read from this file in several threads.
Possible value:
@@ -8163,7 +8170,7 @@ Possible value:
-The minimum number of bytes to read from one file before [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) engine can parallelize reading, when reading from remote filesystem. We do not recommend using this setting.
+The minimum number of bytes to read from one file before [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) engine can parallelize reading, when reading from remote filesystem. We do not recommend using this setting.
Possible values:
@@ -8201,7 +8208,7 @@ Hard lower limit on the task size (even when the number of granules is low and t
-If the number of rows to be read from a file of a [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) table exceeds `merge_tree_min_rows_for_concurrent_read` then ClickHouse tries to perform a concurrent reading from this file on several threads.
+If the number of rows to be read from a file of a [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table exceeds `merge_tree_min_rows_for_concurrent_read` then ClickHouse tries to perform a concurrent reading from this file on several threads.
Possible values:
@@ -8213,7 +8220,7 @@ Possible values:
-The minimum number of lines to read from one file before the [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) engine can parallelize reading, when reading from remote filesystem. We do not recommend using this setting.
+The minimum number of lines to read from one file before the [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) engine can parallelize reading, when reading from remote filesystem. We do not recommend using this setting.
Possible values:
@@ -8327,7 +8334,7 @@ The minimum chunk size in bytes, which each thread will parse in parallel.
-For [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables. In order to reduce latency when processing queries, a block is compressed when writing the next mark if its size is at least `min_compress_block_size`. By default, 65,536.
+For [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables. In order to reduce latency when processing queries, a block is compressed when writing the next mark if its size is at least `min_compress_block_size`. By default, 65,536.
The actual size of the block, if the uncompressed data is less than `max_compress_block_size`, is no less than this value and no less than the volume of data for one mark.
@@ -8369,7 +8376,7 @@ The number of identical sort descriptions before they are JIT-compiled
Minimal execution speed in rows per second. Checked on every data block when
-[`timeout_before_checking_execution_speed`](/reference/settings/session-settings#timeout_before_checking_execution_speed)
+[`timeout_before_checking_execution_speed`](/core/reference/settings/session-settings#timeout_before_checking_execution_speed)
expires. If the execution speed is lower, an exception is thrown.
## min_execution_speed_bytes {#min_execution_speed_bytes}
@@ -8377,7 +8384,7 @@ expires. If the execution speed is lower, an exception is thrown.
The minimum number of execution bytes per second. Checked on every data block when
-[`timeout_before_checking_execution_speed`](/reference/settings/session-settings#timeout_before_checking_execution_speed)
+[`timeout_before_checking_execution_speed`](/core/reference/settings/session-settings#timeout_before_checking_execution_speed)
expires. If the execution speed is lower, an exception is thrown.
## min_external_table_block_size_bytes {#min_external_table_block_size_bytes}
@@ -8449,7 +8456,7 @@ Possible values:
-Sets the minimum number of bytes in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
+Sets the minimum number of bytes in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/core/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
Possible values:
@@ -8490,7 +8497,7 @@ Possible values:
-Sets the minimum number of rows in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
+Sets the minimum number of rows in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/core/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
Possible values:
@@ -8614,7 +8621,7 @@ The maximum size of serialized literal in bytes to replace in `UPDATE` and `DELE
-Allows to execute `ALTER TABLE ... UPDATE|DELETE|MATERIALIZE INDEX|MATERIALIZE PROJECTION|MATERIALIZE COLUMN|MATERIALIZE STATISTICS` queries ([mutations](/reference/statements/alter#mutations)) synchronously.
+Allows to execute `ALTER TABLE ... UPDATE|DELETE|MATERIALIZE INDEX|MATERIALIZE PROJECTION|MATERIALIZE COLUMN|MATERIALIZE STATISTICS` queries ([mutations](/core/reference/statements/alter#mutations)) synchronously.
Possible values:
@@ -8643,7 +8650,7 @@ Defines how MySQL types are converted to corresponding ClickHouse types. A comma
-When enabled, [FixedString](/reference/data-types/fixedstring) ClickHouse data type will be displayed as `TEXT` in [SHOW COLUMNS](/reference/statements/show#show_columns).
+When enabled, [FixedString](/core/reference/data-types/fixedstring) ClickHouse data type will be displayed as `TEXT` in [SHOW COLUMNS](/core/reference/statements/show#show_columns).
Has an effect only when the connection is made through the MySQL wire protocol.
@@ -8656,7 +8663,7 @@ Has an effect only when the connection is made through the MySQL wire protocol.
-When enabled, [String](/reference/data-types/string) ClickHouse data type will be displayed as `TEXT` in [SHOW COLUMNS](/reference/statements/show#show_columns).
+When enabled, [String](/core/reference/data-types/string) ClickHouse data type will be displayed as `TEXT` in [SHOW COLUMNS](/core/reference/statements/show#show_columns).
Has an effect only when the connection is made through the MySQL wire protocol.
@@ -8732,7 +8739,7 @@ Use connection pooling in ODBC bridge. If set to false, a new connection is crea
-Sets the number of rows to skip before starting to return rows from the query. It adjusts the offset set by the [OFFSET](/reference/statements/select/offset) clause, so that these two values are summarized.
+Sets the number of rows to skip before starting to return rows from the query. It adjusts the offset set by the [OFFSET](/core/reference/statements/select/offset) clause, so that these two values are summarized.
Possible values:
@@ -8808,7 +8815,7 @@ Collect OpenTelemetry spans for processors.
-Enables [GROUP BY](/reference/statements/select/group-by) optimization in [SELECT](/reference/statements/select) queries for aggregating data in corresponding order in [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables.
+Enables [GROUP BY](/core/reference/statements/select/group-by) optimization in [SELECT](/core/reference/statements/select) queries for aggregating data in corresponding order in [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables.
Possible values:
@@ -8817,7 +8824,7 @@ Possible values:
**See Also**
-- [GROUP BY optimization](/reference/statements/select/group-by#group-by-optimization-depending-on-table-sorting-key)
+- [GROUP BY optimization](/core/reference/statements/select/group-by#group-by-optimization-depending-on-table-sorting-key)
## optimize_aggregators_of_group_by_keys {#optimize_aggregators_of_group_by_keys}
@@ -8837,7 +8844,7 @@ Populate constant comparison in AND chains to enhance filtering ability. Support
-Use [constraints](/reference/statements/create/table#constraints) in order to append index condition. The default is `false`.
+Use [constraints](/core/reference/statements/create/table#constraints) in order to append index condition. The default is `false`.
Possible values:
@@ -8961,14 +8968,14 @@ Enables or disables optimization by transforming some functions to reading subco
These functions can be transformed:
-- [length](/reference/functions/regular-functions/array-functions#length) to read the [size0](/reference/data-types/array#array-size) subcolumn.
-- [empty](/reference/functions/regular-functions/array-functions#empty) to read the [size0](/reference/data-types/array#array-size) subcolumn.
-- [notEmpty](/reference/functions/regular-functions/array-functions#notEmpty) to read the [size0](/reference/data-types/array#array-size) subcolumn.
-- [isNull](/reference/functions/regular-functions/functions-for-nulls#isNull) to read the [null](/reference/data-types/nullable#finding-null) subcolumn.
-- [isNotNull](/reference/functions/regular-functions/functions-for-nulls#isNotNull) to read the [null](/reference/data-types/nullable#finding-null) subcolumn.
-- [count](/reference/functions/aggregate-functions/reference/count) to read the [null](/reference/data-types/nullable#finding-null) subcolumn.
-- [mapKeys](/reference/functions/regular-functions/tuple-map-functions#mapKeys) to read the [keys](/reference/data-types/map#reading-subcolumns-of-map) subcolumn.
-- [mapValues](/reference/functions/regular-functions/tuple-map-functions#mapValues) to read the [values](/reference/data-types/map#reading-subcolumns-of-map) subcolumn.
+- [length](/core/reference/functions/regular-functions/array-functions#length) to read the [size0](/core/reference/data-types/array#array-size) subcolumn.
+- [empty](/core/reference/functions/regular-functions/array-functions#empty) to read the [size0](/core/reference/data-types/array#array-size) subcolumn.
+- [notEmpty](/core/reference/functions/regular-functions/array-functions#notEmpty) to read the [size0](/core/reference/data-types/array#array-size) subcolumn.
+- [isNull](/core/reference/functions/regular-functions/functions-for-nulls#isNull) to read the [null](/core/reference/data-types/nullable#finding-null) subcolumn.
+- [isNotNull](/core/reference/functions/regular-functions/functions-for-nulls#isNotNull) to read the [null](/core/reference/data-types/nullable#finding-null) subcolumn.
+- [count](/core/reference/functions/aggregate-functions/reference/count) to read the [null](/core/reference/data-types/nullable#finding-null) subcolumn.
+- [mapKeys](/core/reference/functions/regular-functions/tuple-map-functions#mapKeys) to read the [keys](/core/reference/data-types/map#reading-subcolumns-of-map) subcolumn.
+- [mapValues](/core/reference/functions/regular-functions/tuple-map-functions#mapValues) to read the [values](/core/reference/data-types/map#reading-subcolumns-of-map) subcolumn.
Possible values:
@@ -9039,9 +9046,9 @@ The minimum length of the expression `expr <> x1 AND ... expr <> xN` for optimiz
-Enables or disables automatic [PREWHERE](/reference/statements/select/prewhere) optimization in [SELECT](/reference/statements/select) queries.
+Enables or disables automatic [PREWHERE](/core/reference/statements/select/prewhere) optimization in [SELECT](/core/reference/statements/select) queries.
-Works only for [*MergeTree](/reference/engines/table-engines/mergetree-family) tables.
+Works only for [*MergeTree](/core/reference/engines/table-engines/mergetree-family) tables.
Possible values:
@@ -9052,9 +9059,9 @@ Possible values:
-Enables or disables automatic [PREWHERE](/reference/statements/select/prewhere) optimization in [SELECT](/reference/statements/select) queries with [FINAL](/reference/statements/select/from#final-modifier) modifier.
+Enables or disables automatic [PREWHERE](/core/reference/statements/select/prewhere) optimization in [SELECT](/core/reference/statements/select) queries with [FINAL](/core/reference/statements/select/from#final-modifier) modifier.
-Works only for [*MergeTree](/reference/engines/table-engines/mergetree-family) tables.
+Works only for [*MergeTree](/core/reference/engines/table-engines/mergetree-family) tables.
Possible values:
@@ -9133,7 +9140,7 @@ Result:
└─────────────┘
```
-Note that this setting influences [Materialized view](/reference/statements/create/view#materialized-view) behaviour.
+Note that this setting influences [Materialized view](/core/reference/statements/create/view#materialized-view) behaviour.
## optimize_or_like_chain {#optimize_or_like_chain}
@@ -9153,7 +9160,7 @@ Replace distance functions on `QBit` data type with equivalent ones that only re
-Enables [ORDER BY](/reference/statements/select/order-by#optimization-of-data-reading) optimization in [SELECT](/reference/statements/select) queries for reading data from [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables.
+Enables [ORDER BY](/core/reference/statements/select/order-by#optimization-of-data-reading) optimization in [SELECT](/core/reference/statements/select) queries for reading data from [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables.
Possible values:
@@ -9162,7 +9169,7 @@ Possible values:
**See Also**
-- [ORDER BY Clause](/reference/statements/select/order-by#optimization-of-data-reading)
+- [ORDER BY Clause](/core/reference/statements/select/order-by#optimization-of-data-reading)
## optimize_redundant_functions_in_order_by {#optimize_redundant_functions_in_order_by}
@@ -9223,7 +9230,7 @@ Rewrite sumIf() and sum(if()) function countIf() function when logically equival
-Enables or disables optimization for [OPTIMIZE TABLE ... FINAL](/reference/statements/optimize) query if there is only one part with level > 0 and it doesn't have expired TTL.
+Enables or disables optimization for [OPTIMIZE TABLE ... FINAL](/core/reference/statements/optimize) query if there is only one part with level > 0 and it doesn't have expired TTL.
- `OPTIMIZE TABLE ... FINAL SETTINGS optimize_skip_merged_partitions=1`
@@ -9238,7 +9245,7 @@ Possible values:
-Enables or disables skipping of unused shards for [SELECT](/reference/statements/select) queries that have sharding key condition in `WHERE/PREWHERE`, and activates related optimizations for distributed queries (e.g. aggregation by sharding key).
+Enables or disables skipping of unused shards for [SELECT](/core/reference/statements/select) queries that have sharding key condition in `WHERE/PREWHERE`, and activates related optimizations for distributed queries (e.g. aggregation by sharding key).
Assumes that the data is distributed by sharding key, otherwise a query yields incorrect result.
@@ -9290,7 +9297,7 @@ Optimize sorting by sorting properties of input stream
-Use [constraints](/reference/statements/create/table#constraints) for column substitution. The default is `false`.
+Use [constraints](/core/reference/statements/create/table#constraints) for column substitution. The default is `false`.
Possible values:
@@ -9302,7 +9309,7 @@ Possible values:
-Enables to fuse aggregate functions with identical argument. It rewrites query contains at least two aggregate functions from [sum](/reference/functions/aggregate-functions/reference/sum), [count](/reference/functions/aggregate-functions/reference/count) or [avg](/reference/functions/aggregate-functions/reference/avg) with identical argument to [sumCount](/reference/functions/aggregate-functions/reference/sumCount).
+Enables to fuse aggregate functions with identical argument. It rewrites query contains at least two aggregate functions from [sum](/core/reference/functions/aggregate-functions/reference/sum), [count](/core/reference/functions/aggregate-functions/reference/count) or [avg](/core/reference/functions/aggregate-functions/reference/avg) with identical argument to [sumCount](/core/reference/functions/aggregate-functions/reference/sumCount).
Possible values:
@@ -9334,7 +9341,7 @@ FROM default.fuse_tbl AS __table1
-Enables or disables throwing an exception if an [OPTIMIZE](/reference/statements/optimize) query didn't perform a merge.
+Enables or disables throwing an exception if an [OPTIMIZE](/core/reference/statements/optimize) query didn't perform a merge.
By default, `OPTIMIZE` returns successfully even if it didn't do anything. This setting lets you differentiate these situations and get the reason in an exception message.
@@ -9434,7 +9441,7 @@ Enables using projections to filter part ranges even when projections are not se
-Enables or disables [projection](/reference/engines/table-engines/mergetree-family/mergetree#projections) optimization when processing `SELECT` queries.
+Enables or disables [projection](/core/reference/engines/table-engines/mergetree-family/mergetree#projections) optimization when processing `SELECT` queries.
Possible values:
@@ -9445,7 +9452,7 @@ Possible values:
-Use [constraints](/reference/statements/create/table#constraints) for query optimization. The default is `false`.
+Use [constraints](/core/reference/statements/create/table#constraints) for query optimization. The default is `false`.
Possible values:
@@ -9539,7 +9546,7 @@ Default: -1 (disabled)
Enables parallel distributed `INSERT ... SELECT` query.
-If we execute `INSERT INTO distributed_table_a SELECT ... FROM distributed_table_b` queries and both tables use the same cluster, and both tables are either [replicated](/reference/engines/table-engines/mergetree-family/replication) or non-replicated, then this query is processed locally on every shard.
+If we execute `INSERT INTO distributed_table_a SELECT ... FROM distributed_table_b` queries and both tables use the same cluster, and both tables are either [replicated](/core/reference/engines/table-engines/mergetree-family/replication) or non-replicated, then this query is processed locally on every shard.
Possible values:
@@ -9805,7 +9812,7 @@ If not 0 group left table blocks in bigger ones for left-side table in partial m
-Limits sizes of right-hand join data blocks in partial merge join algorithm for [JOIN](/reference/statements/select/join) queries.
+Limits sizes of right-hand join data blocks in partial merge join algorithm for [JOIN](/core/reference/statements/select/join) queries.
ClickHouse server:
@@ -9912,7 +9919,7 @@ Collect predicate selectivity statistics into `system.predicate_statistics_log`.
-Enables or disables using the original column names instead of aliases in query expressions and clauses. It especially matters when alias is the same as the column name, see [Expression Aliases](/reference/syntax#notes-on-usage). Enable this setting to make aliases syntax rules in ClickHouse more compatible with most other database engines.
+Enables or disables using the original column names instead of aliases in query expressions and clauses. It especially matters when alias is the same as the column name, see [Expression Aliases](/core/reference/syntax#notes-on-usage). Enable this setting to make aliases syntax rules in ClickHouse more compatible with most other database engines.
Possible values:
@@ -9981,7 +9988,7 @@ Another use case of `prefer_global_in_and_join` is accessing tables created by
**See also:**
-- [Distributed subqueries](/reference/statements/in#distributed-subqueries) for more information on how to use `GLOBAL IN`/`GLOBAL JOIN`
+- [Distributed subqueries](/core/reference/statements/in#distributed-subqueries) for more information on how to use `GLOBAL IN`/`GLOBAL JOIN`
## prefer_localhost_replica {#prefer_localhost_replica}
@@ -10006,7 +10013,7 @@ If it's used on a cluster with a single shard and multiple replicas, disabling t
-Only has an effect in ClickHouse Cloud. If a merged part is less than this many seconds old and is not pre-warmed (see [cache_populated_by_fetch](/reference/settings/merge-tree-settings#cache_populated_by_fetch)), but all its source parts are available and pre-warmed, SELECT queries will read from those parts instead. Only for Replicated-/SharedMergeTree. Note that this only checks whether CacheWarmer processed the part; if the part was fetched into cache by something else, it'll still be considered cold until CacheWarmer gets to it; if it was warmed, then evicted from cache, it'll still be considered warm.
+Only has an effect in ClickHouse Cloud. If a merged part is less than this many seconds old and is not pre-warmed (see [cache_populated_by_fetch](/core/reference/settings/merge-tree-settings#cache_populated_by_fetch)), but all its source parts are available and pre-warmed, SELECT queries will read from those parts instead. Only for Replicated-/SharedMergeTree. Note that this only checks whether CacheWarmer processed the part; if the part was fetched into cache by something else, it'll still be considered cold until CacheWarmer gets to it; if it was warmed, then evicted from cache, it'll still be considered warm.
## preferred_block_size_bytes {#preferred_block_size_bytes}
@@ -10117,7 +10124,20 @@ Enable pushing user roles from originator to other nodes while performing a quer
-Compress entries in the [query cache](/concepts/features/performance/caches/query-cache). Lessens the memory consumption of the query cache at the cost of slower inserts into / reads from it.
+Compress entries in the [query cache](/core/concepts/features/performance/caches/query-cache). Lessens the memory consumption of the query cache at the cost of slower inserts into / reads from it.
+
+Possible values:
+
+- 0 - Disabled
+- 1 - Enabled
+
+## query_cache_for_subqueries {#query_cache_for_subqueries}
+
+
+
+
+
+If turned on, subquery results may be written to and read from the [query cache](/core/concepts/features/performance/caches/query-cache). This enables propagation of `use_query_cache` into all subqueries.
Possible values:
@@ -10128,7 +10148,7 @@ Possible values:
-The maximum number of query results the current user may store in the [query cache](/concepts/features/performance/caches/query-cache). 0 means unlimited.
+The maximum number of query results the current user may store in the [query cache](/core/concepts/features/performance/caches/query-cache). 0 means unlimited.
Possible values:
@@ -10138,7 +10158,7 @@ Possible values:
-The maximum amount of memory (in bytes) the current user may allocate in the [query cache](/concepts/features/performance/caches/query-cache). 0 means unlimited.
+The maximum amount of memory (in bytes) the current user may allocate in the [query cache](/core/concepts/features/performance/caches/query-cache). 0 means unlimited.
Possible values:
@@ -10148,7 +10168,7 @@ Possible values:
-Minimum duration in milliseconds a query needs to run for its result to be stored in the [query cache](/concepts/features/performance/caches/query-cache).
+Minimum duration in milliseconds a query needs to run for its result to be stored in the [query cache](/core/concepts/features/performance/caches/query-cache).
Possible values:
@@ -10158,7 +10178,7 @@ Possible values:
-Minimum number of times a `SELECT` query must run before its result is stored in the [query cache](/concepts/features/performance/caches/query-cache).
+Minimum number of times a `SELECT` query must run before its result is stored in the [query cache](/core/concepts/features/performance/caches/query-cache).
Possible values:
@@ -10168,7 +10188,7 @@ Possible values:
-Controls how the [query cache](/concepts/features/performance/caches/query-cache) handles `SELECT` queries with non-deterministic functions like `rand()` or `now()`.
+Controls how the [query cache](/core/concepts/features/performance/caches/query-cache) handles `SELECT` queries with non-deterministic functions like `rand()` or `now()`.
Possible values:
@@ -10180,7 +10200,7 @@ Possible values:
-If turned on, the result of `SELECT` queries cached in the [query cache](/concepts/features/performance/caches/query-cache) can be read by other users.
+If turned on, the result of `SELECT` queries cached in the [query cache](/core/concepts/features/performance/caches/query-cache) can be read by other users.
It is not recommended to enable this setting due to security reasons.
Possible values:
@@ -10192,7 +10212,7 @@ Possible values:
-Squash partial result blocks to blocks of size [max_block_size](#max_block_size). Reduces performance of inserts into the [query cache](/concepts/features/performance/caches/query-cache) but improves the compressability of cache entries (see [query_cache_compress-entries](#query_cache_compress_entries)).
+Squash partial result blocks to blocks of size [max_block_size](#max_block_size). Reduces performance of inserts into the [query cache](/core/concepts/features/performance/caches/query-cache) but improves the compressability of cache entries (see [query_cache_compress-entries](#query_cache_compress_entries)).
Possible values:
@@ -10205,7 +10225,7 @@ Possible values:
-Controls how the [query cache](/concepts/features/performance/caches/query-cache) handles `SELECT` queries against system tables, i.e. tables in databases `system.*` and `information_schema.*`.
+Controls how the [query cache](/core/concepts/features/performance/caches/query-cache) handles `SELECT` queries against system tables, i.e. tables in databases `system.*` and `information_schema.*`.
Possible values:
@@ -10217,7 +10237,7 @@ Possible values:
-A string which acts as a label for [query cache](/concepts/features/performance/caches/query-cache) entries.
+A string which acts as a label for [query cache](/core/concepts/features/performance/caches/query-cache) entries.
The same queries with different tags are considered different by the query cache.
Possible values:
@@ -10228,7 +10248,7 @@ Possible values:
-After this time in seconds entries in the [query cache](/concepts/features/performance/caches/query-cache) become stale.
+After this time in seconds entries in the [query cache](/core/concepts/features/performance/caches/query-cache) become stale.
Possible values:
@@ -10240,9 +10260,9 @@ Possible values:
-The interval in milliseconds at which the [query_metric_log](/reference/system-tables/query_metric_log) for individual queries is collected.
+The interval in milliseconds at which the [query_metric_log](/core/reference/system-tables/query_metric_log) for individual queries is collected.
-If set to any negative value, it will take the value `collect_interval_milliseconds` from the [query_metric_log setting](/reference/settings/server-settings/settings#query_metric_log) or default to 1000 if not present.
+If set to any negative value, it will take the value `collect_interval_milliseconds` from the [query_metric_log setting](/core/reference/settings/server-settings/settings#query_metric_log) or default to 1000 if not present.
To disable the collection of a single query, set `query_metric_log_interval` to 0.
@@ -10714,7 +10734,7 @@ Possible values:
-Sets the period for a CPU clock timer of the [query profiler](/concepts/features/performance/troubleshoot/sampling-query-profiler). This timer counts only CPU time.
+Sets the period for a CPU clock timer of the [query profiler](/core/concepts/features/performance/troubleshoot/sampling-query-profiler). This timer counts only CPU time.
Possible values:
@@ -10729,13 +10749,13 @@ Possible values:
See also:
-- System table [trace_log](/reference/system-tables/trace_log)
+- System table [trace_log](/core/reference/system-tables/trace_log)
## query_profiler_real_time_period_ns {#query_profiler_real_time_period_ns}
-Sets the period for a real clock timer of the [query profiler](/concepts/features/performance/troubleshoot/sampling-query-profiler). Real clock timer counts wall-clock time.
+Sets the period for a real clock timer of the [query profiler](/core/concepts/features/performance/troubleshoot/sampling-query-profiler). Real clock timer counts wall-clock time.
Possible values:
@@ -10750,7 +10770,7 @@ Possible values:
See also:
-- System table [trace_log](/reference/system-tables/trace_log)
+- System table [trace_log](/core/reference/system-tables/trace_log)
Cloud default value: `3000000000`.
@@ -10932,7 +10952,7 @@ Allow '.' to match newline characters for a regexp_tree dictionary.
-Sets the maximum number of matches for a single regular expression per row. Use it to protect against memory overload when using greedy regular expression in the [extractAllGroupsHorizontal](/reference/functions/regular-functions/string-search-functions#extractAllGroupsHorizontal) function.
+Sets the maximum number of matches for a single regular expression per row. Use it to protect against memory overload when using greedy regular expression in the [extractAllGroupsHorizontal](/core/reference/functions/regular-functions/string-search-functions#extractAllGroupsHorizontal) function.
Possible values:
@@ -11031,7 +11051,7 @@ Possible values:
-Specifies how long (in seconds) to wait for inactive replicas to execute [`ALTER`](/reference/statements/alter), [`OPTIMIZE`](/reference/statements/optimize) or [`TRUNCATE`](/reference/statements/truncate) queries.
+Specifies how long (in seconds) to wait for inactive replicas to execute [`ALTER`](/core/reference/statements/alter), [`OPTIMIZE`](/core/reference/statements/optimize) or [`TRUNCATE`](/core/reference/statements/truncate) queries.
Possible values:
@@ -11088,8 +11108,8 @@ Possible values:
Using 'break' is similar to using LIMIT. `Break` interrupts execution only at the
block level. This means that amount of returned rows is greater than
-[`max_result_rows`](/reference/settings/session-settings#max_result_rows), multiple of [`max_block_size`](/reference/settings/session-settings#max_block_size)
-and depends on [`max_threads`](/reference/settings/session-settings#max_threads).
+[`max_result_rows`](/core/reference/settings/session-settings#max_result_rows), multiple of [`max_block_size`](/core/reference/settings/session-settings#max_block_size)
+and depends on [`max_threads`](/core/reference/settings/session-settings#max_threads).
**Example**
@@ -11306,7 +11326,7 @@ Idleness timeout for sending and receiving data to/from S3. Fail if a single TCP
-Enables or disables skipping empty files in [S3](/reference/engines/table-engines/integrations/s3) engine tables.
+Enables or disables skipping empty files in [S3](/core/reference/engines/table-engines/integrations/s3) engine tables.
Possible values:
- 0 — `SELECT` throws an exception if empty file is not compatible with requested format.
@@ -11499,7 +11519,7 @@ Send server text logs with specified regexp to match log source name. Empty mean
-Enables or disables sending of [ProfileEvents](/resources/contribute/native-protocol/server#profile-events) packets to the client.
+Enables or disables sending of [ProfileEvents](/resources/develop-contribute/native-protocol/server#profile-events) packets to the client.
This can be disabled to reduce network traffic for clients that do not require profile events.
@@ -11514,7 +11534,7 @@ Possible values:
Enables or disables `X-ClickHouse-Progress` HTTP response headers in `clickhouse-server` responses.
-For more information, read the [HTTP interface description](/integrations/connectors/data-integrations/drivers-and-interfaces/http).
+For more information, read the [HTTP interface description](/core/concepts/features/interfaces/http).
Possible values:
@@ -11558,7 +11578,7 @@ Serialize String values during aggregation with zero byte at the end. Enable to
Sets the implicit time zone of the current session or query.
The implicit time zone is the time zone applied to values of type DateTime/DateTime64 which have no explicitly specified time zone.
The setting takes precedence over the globally configured (server-level) implicit time zone.
-A value of '' (empty string) means that the implicit time zone of the current session or query is equal to the [server time zone](/reference/settings/server-settings/settings#timezone).
+A value of '' (empty string) means that the implicit time zone of the current session or query is equal to the [server time zone](/core/reference/settings/server-settings/settings#timezone).
You can use functions `timeZone()` and `serverTimeZone()` to get the session time zone and server time zone.
@@ -11612,7 +11632,7 @@ This happens due to different parsing pipelines:
**See also**
-- [timezone](/reference/settings/server-settings/settings#timezone)
+- [timezone](/core/reference/settings/server-settings/settings#timezone)
## set_overflow_mode {#set_overflow_mode}
@@ -11661,7 +11681,7 @@ Automatically synchronize set of data parts after MOVE|REPLACE|ATTACH partition
-Allows calculating the [if](/reference/functions/regular-functions/conditional-functions#if), [multiIf](/reference/functions/regular-functions/conditional-functions#multiIf), [and](/reference/functions/regular-functions/logical-functions#and), and [or](/reference/functions/regular-functions/logical-functions#or) functions according to a [short scheme](https://en.wikipedia.org/wiki/Short-circuit_evaluation). This helps optimize the execution of complex expressions in these functions and prevent possible exceptions (such as division by zero when it is not expected).
+Allows calculating the [if](/core/reference/functions/regular-functions/conditional-functions#if), [multiIf](/core/reference/functions/regular-functions/conditional-functions#multiIf), [and](/core/reference/functions/regular-functions/logical-functions#and), and [or](/core/reference/functions/regular-functions/logical-functions#or) functions according to a [short scheme](https://en.wikipedia.org/wiki/Short-circuit_evaluation). This helps optimize the execution of complex expressions in these functions and prevent possible exceptions (such as division by zero when it is not expected).
Possible values:
@@ -11849,7 +11869,7 @@ Split parts ranges into intersecting and non intersecting during FINAL optimizat
-Controls whether function [splitBy*()](/reference/functions/regular-functions/splitting-merging-functions) with argument `max_substrings` > 0 will include the remaining string in the last element of the result array.
+Controls whether function [splitBy*()](/core/reference/functions/regular-functions/splitting-merging-functions) with argument `max_substrings` > 0 will include the remaining string in the last element of the result array.
Possible values:
@@ -11909,7 +11929,7 @@ Timeout for polling data from/to streaming storages.
-Allows to select zero-valued events from [`system.events`](/reference/system-tables/events).
+Allows to select zero-valued events from [`system.events`](/core/reference/system-tables/events).
Some monitoring systems require passing all the metrics values to them for each checkpoint, even if the metric value is zero.
@@ -11975,7 +11995,7 @@ Only has an effect in ClickHouse Cloud. Allow reading from distributed cache via
-Sets the maximum number of addresses generated from patterns for the [remote](/reference/functions/table-functions/remote) function.
+Sets the maximum number of addresses generated from patterns for the [remote](/core/reference/functions/table-functions/remote) function.
Possible values:
@@ -12047,7 +12067,7 @@ Requires `use_text_index_like_evaluation_by_dictionary_scan` to be enabled.
-Allows or forbids empty INSERTs, enabled by default (throws an error on an empty insert). Only applies to INSERTs using [`clickhouse-client`](/integrations/connectors/data-integrations/drivers-and-interfaces/cli) or using the [gRPC interface](/integrations/connectors/data-integrations/drivers-and-interfaces/grpc).
+Allows or forbids empty INSERTs, enabled by default (throws an error on an empty insert). Only applies to INSERTs using [`clickhouse-client`](/core/concepts/features/interfaces/cli) or using the [gRPC interface](/core/concepts/features/interfaces/grpc).
## throw_on_error_from_cache_on_write_operations {#throw_on_error_from_cache_on_write_operations}
@@ -12066,7 +12086,7 @@ Possible values:
- `false` - Logs a warning when `max_partitions_per_insert_block` is reached.
-This can be useful if you're trying to understand the impact on users when changing [`max_partitions_per_insert_block`](/reference/settings/session-settings#max_partitions_per_insert_block).
+This can be useful if you're trying to understand the impact on users when changing [`max_partitions_per_insert_block`](/core/reference/settings/session-settings#max_partitions_per_insert_block).
## throw_on_unsupported_query_inside_transaction {#throw_on_unsupported_query_inside_transaction}
@@ -12125,7 +12145,7 @@ See the section "WITH TOTALS modifier".
-Enables or disables collecting stacktraces on each update of profile events along with the name of profile event and the value of increment and sending them into [trace_log](/reference/system-tables/trace_log).
+Enables or disables collecting stacktraces on each update of profile events along with the name of profile event and the value of increment and sending them into [trace_log](/core/reference/system-tables/trace_log).
Possible values:
@@ -12158,7 +12178,7 @@ source data ran out.
-Enables equality of [NULL](/reference/syntax#null) values for [IN](/reference/statements/in) operator.
+Enables equality of [NULL](/core/reference/syntax#null) values for [IN](/core/reference/statements/in) operator.
By default, `NULL` values can't be compared because `NULL` means undefined value. Thus, comparison `expr = NULL` must always return `false`. With this setting `NULL = NULL` returns `true` for `IN` operator.
@@ -12210,7 +12230,7 @@ Result:
**See Also**
-- [NULL Processing in IN Operators](/reference/statements/in#null-processing)
+- [NULL Processing in IN Operators](/core/reference/statements/in#null-processing)
## traverse_shadow_remote_data_paths {#traverse_shadow_remote_data_paths}
@@ -12222,7 +12242,7 @@ Traverse frozen data (shadow directory) in addition to actual table data when qu
## union_default_mode {#union_default_mode}
-Sets a mode for combining `SELECT` query results. The setting is only used when shared with [UNION](/reference/statements/select/union) without explicitly specifying the `UNION ALL` or `UNION DISTINCT`.
+Sets a mode for combining `SELECT` query results. The setting is only used when shared with [UNION](/core/reference/statements/select/union) without explicitly specifying the `UNION ALL` or `UNION DISTINCT`.
Possible values:
@@ -12230,7 +12250,7 @@ Possible values:
- `'ALL'` — ClickHouse outputs all rows as a result of combining queries including duplicate rows.
- `''` — ClickHouse generates an exception when used with `UNION`.
-See examples in [UNION](/reference/statements/select/union).
+See examples in [UNION](/core/reference/statements/select/union).
## unknown_packet_in_send_data {#unknown_packet_in_send_data}
@@ -12263,7 +12283,7 @@ If true set of parts is updated to the latest version before execution of update
-The base URL used to resolve relative URLs in the [url](/reference/functions/table-functions/url) table function and the [URL](/reference/engines/table-engines/special/url) table engine.
+The base URL used to resolve relative URLs in the [url](/core/reference/functions/table-functions/url) table function and the [URL](/core/reference/engines/table-engines/special/url) table engine.
When set, relative URLs are resolved as follows:
- Path-relative URL (e.g. `data.csv`): merged with the base URL path per RFC 3986. Everything after the last `/` in the base path is replaced by the relative URL, so a trailing slash matters: `https://example.com/dir/` + `data.csv` = `https://example.com/dir/data.csv`, but `https://example.com/dir` + `data.csv` = `https://example.com/data.csv`. If the base has no path (e.g. `https://example.com`), a `/` is inserted: `https://example.com/data.csv`. Dot segments (`./` and `../`) in the relative URL are normalized: `https://example.com/dir/` + `../a.csv` = `https://example.com/a.csv`.
@@ -12357,7 +12377,7 @@ Cloud default value: `0`.
-When enabled, ClickHouse will detect Hive-style partitioning in path (`/name=value/`) in file-like table engines [File](/reference/functions/table-functions/file#hive-style-partitioning)/[S3](/reference/functions/table-functions/s3#hive-style-partitioning)/[URL](/reference/functions/table-functions/url#hive-style-partitioning)/[HDFS](/reference/functions/table-functions/hdfs#hive-style-partitioning)/[AzureBlobStorage](/reference/functions/table-functions/azureBlobStorage#hive-style-partitioning) and will allow to use partition columns as virtual columns in the query. These virtual columns will have the same names as in the partitioned path, but starting with `_`.
+When enabled, ClickHouse will detect Hive-style partitioning in path (`/name=value/`) in file-like table engines [File](/core/reference/functions/table-functions/file#hive-style-partitioning)/[S3](/core/reference/functions/table-functions/s3#hive-style-partitioning)/[URL](/core/reference/functions/table-functions/url#hive-style-partitioning)/[HDFS](/core/reference/functions/table-functions/hdfs#hive-style-partitioning)/[AzureBlobStorage](/core/reference/functions/table-functions/azureBlobStorage#hive-style-partitioning) and will allow to use partition columns as virtual columns in the query. These virtual columns will have the same names as in the partitioned path, but starting with `_`.
## use_iceberg_metadata_files_cache {#use_iceberg_metadata_files_cache}
@@ -12501,7 +12521,7 @@ Possible values:
-If turned on, `SELECT` queries may utilize the [query cache](/concepts/features/performance/caches/query-cache). Parameters [enable_reads_from_query_cache](#enable_reads_from_query_cache)
+If turned on, `SELECT` queries may utilize the [query cache](/core/concepts/features/performance/caches/query-cache). Parameters [enable_reads_from_query_cache](#enable_reads_from_query_cache)
and [enable_writes_to_query_cache](#enable_writes_to_query_cache) control in more detail how the cache is used.
Possible values:
@@ -12515,7 +12535,7 @@ Possible values:
-Enable the [query condition cache](/concepts/features/performance/caches/query-condition-cache). The cache stores ranges of granules in data parts which do not satisfy the condition in the `WHERE` clause,
+Enable the [query condition cache](/core/concepts/features/performance/caches/query-condition-cache). The cache stores ranges of granules in data parts which do not satisfy the condition in the `WHERE` clause,
and reuse this information as an ephemeral index for subsequent queries.
Possible values:
@@ -12749,7 +12769,7 @@ Possible values:
Whether to use a cache of uncompressed blocks. Accepts 0 or 1. By default, 0 (disabled).
-Using the uncompressed cache (only for tables in the MergeTree family) can significantly reduce latency and increase throughput when working with a large number of short queries. Enable this setting for users who send frequent short requests. Also pay attention to the [uncompressed_cache_size](/reference/settings/server-settings/settings#uncompressed_cache_size) configuration parameter (only set in the config file) – the size of uncompressed cache blocks. By default, it is 8 GiB. The uncompressed cache is filled in as needed and the least-used data is automatically deleted.
+Using the uncompressed cache (only for tables in the MergeTree family) can significantly reduce latency and increase throughput when working with a large number of short queries. Enable this setting for users who send frequent short requests. Also pay attention to the [uncompressed_cache_size](/core/reference/settings/server-settings/settings#uncompressed_cache_size) configuration parameter (only set in the config file) – the size of uncompressed cache blocks. By default, it is 8 GiB. The uncompressed cache is filled in as needed and the least-used data is automatically deleted.
For queries that read at least a somewhat large volume of data (one million rows or more), the uncompressed cache is disabled automatically to save space for truly small queries. This means that you can keep the 'use_uncompressed_cache' setting always set to 1.
@@ -12759,7 +12779,7 @@ For queries that read at least a somewhat large volume of data (one million rows
-Allows to use `Variant` type as a result type for [if](/reference/functions/regular-functions/conditional-functions#if)/[multiIf](/reference/functions/regular-functions/conditional-functions#multiIf)/[array](/reference/functions/regular-functions/array-functions)/[map](/reference/functions/regular-functions/tuple-map-functions) functions when there is no common type for argument types.
+Allows to use `Variant` type as a result type for [if](/core/reference/functions/regular-functions/conditional-functions#if)/[multiIf](/core/reference/functions/regular-functions/conditional-functions#multiIf)/[array](/core/reference/functions/regular-functions/array-functions)/[map](/core/reference/functions/regular-functions/tuple-map-functions) functions when there is no common type for argument types.
Example:
@@ -12877,7 +12897,7 @@ Only change this setting if you encounter a backward-incompatible bug.
-Enables or disables throwing an exception in the [pointInPolygon](/reference/functions/regular-functions/geo/coordinates#pointinpolygon) function, if the polygon is self-intersecting or self-tangent.
+Enables or disables throwing an exception in the [pointInPolygon](/core/reference/functions/regular-functions/geo/coordinates#pointinpolygon) function, if the polygon is self-intersecting or self-tangent.
Possible values:
@@ -12890,7 +12910,7 @@ Possible values:
-When applying a function to a [Variant](/reference/data-types/variant) column using the default implementation,
+When applying a function to a [Variant](/core/reference/data-types/variant) column using the default implementation,
controls what happens for rows whose actual type is incompatible with the function:
- `true` (default) — throw an exception.
- `false` — return `NULL` for those rows instead.
diff --git a/core/reference/statements/alter/apply-deleted-mask.mdx b/core/reference/statements/alter/apply-deleted-mask.mdx
new file mode 100644
index 00000000..fc240fa5
--- /dev/null
+++ b/core/reference/statements/alter/apply-deleted-mask.mdx
@@ -0,0 +1,22 @@
+---
+description: 'Documentation for Apply mask of deleted rows'
+sidebarTitle: 'APPLY DELETED MASK'
+slug: /sql-reference/statements/alter/apply-deleted-mask
+title: 'Apply mask of deleted rows'
+doc_type: 'reference'
+---
+
+```sql
+ALTER TABLE [db].name [ON CLUSTER cluster] APPLY DELETED MASK [IN PARTITION partition_id]
+```
+
+The command applies mask created by [lightweight delete](/core/reference/statements/delete) and forcefully removes rows marked as deleted from disk. This command is a heavyweight mutation, and it semantically equals to query ```ALTER TABLE [db].name DELETE WHERE _row_exists = 0```.
+
+
+It only works for tables in the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) family (including [replicated](/core/reference/engines/table-engines/mergetree-family/replication) tables).
+
+
+**See also**
+
+- [Lightweight deletes](/core/reference/statements/delete)
+- [Heavyweight deletes](/core/reference/statements/alter/delete)
diff --git a/reference/statements/alter/apply-patches.mdx b/core/reference/statements/alter/apply-patches.mdx
similarity index 63%
rename from reference/statements/alter/apply-patches.mdx
rename to core/reference/statements/alter/apply-patches.mdx
index 1a10bd41..9bc8ecc1 100644
--- a/reference/statements/alter/apply-patches.mdx
+++ b/core/reference/statements/alter/apply-patches.mdx
@@ -14,10 +14,10 @@ import BetaBadge from "/snippets/components/BetaBadge/BetaBadge.jsx";
ALTER TABLE [db.]table [ON CLUSTER cluster] APPLY PATCHES [IN PARTITION partition_id]
```
-The command manually triggers the physical materialization of patch parts created by [lightweight `UPDATE`](/reference/statements/update) statements. It forcefully applies pending patches to the data parts by rewriting only the affected columns.
+The command manually triggers the physical materialization of patch parts created by [lightweight `UPDATE`](/core/reference/statements/update) statements. It forcefully applies pending patches to the data parts by rewriting only the affected columns.
-- It only works for tables in the [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) family (including [replicated](/reference/engines/table-engines/mergetree-family/replication) tables).
+- It only works for tables in the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) family (including [replicated](/core/reference/engines/table-engines/mergetree-family/replication) tables).
- This is a mutation operation and executes asynchronously in the background.
@@ -27,7 +27,7 @@ The command manually triggers the physical materialization of patch parts create
Generally, you should not need to use `APPLY PATCHES`
-Patch parts are normally applied automatically during merges when the [`apply_patches_on_merge`](/reference/settings/merge-tree-settings#apply_patches_on_merge) setting is enabled (default). However, you may want to manually trigger patch application in these scenarios:
+Patch parts are normally applied automatically during merges when the [`apply_patches_on_merge`](/core/reference/settings/merge-tree-settings#apply_patches_on_merge) setting is enabled (default). However, you may want to manually trigger patch application in these scenarios:
- To reduce the overhead of applying patches during `SELECT` queries
- To consolidate multiple patch parts before they accumulate
@@ -53,7 +53,7 @@ ALTER TABLE my_table APPLY PATCHES, UPDATE column = value WHERE condition;
## Monitoring patch application {#monitor}
-You can monitor the progress of patch application using the [`system.mutations`](/reference/system-tables/mutations) table:
+You can monitor the progress of patch application using the [`system.mutations`](/core/reference/system-tables/mutations) table:
```sql
SELECT * FROM system.mutations
@@ -62,5 +62,5 @@ WHERE table = 'my_table' AND command LIKE '%APPLY PATCHES%';
## See also {#see-also}
-- [Lightweight `UPDATE`](/reference/statements/update) - Create patch parts with lightweight updates
-- [`apply_patches_on_merge` setting](/reference/settings/merge-tree-settings#apply_patches_on_merge) - Control automatic patch application during merges
+- [Lightweight `UPDATE`](/core/reference/statements/update) - Create patch parts with lightweight updates
+- [`apply_patches_on_merge` setting](/core/reference/settings/merge-tree-settings#apply_patches_on_merge) - Control automatic patch application during merges
diff --git a/reference/statements/alter/column.mdx b/core/reference/statements/alter/column.mdx
similarity index 85%
rename from reference/statements/alter/column.mdx
rename to core/reference/statements/alter/column.mdx
index 3283d4dd..dd1ed255 100644
--- a/reference/statements/alter/column.mdx
+++ b/core/reference/statements/alter/column.mdx
@@ -37,11 +37,11 @@ These actions are described in detail below.
ADD COLUMN [IF NOT EXISTS] name [type] [default_expr] [codec] [AFTER name_after | FIRST]
```
-Adds a new column to the table with the specified `name`, `type`, [`codec`](/reference/statements/create/table#column_compression_codec) and `default_expr` (see the section [Default expressions](/reference/statements/create/table#default_values)).
+Adds a new column to the table with the specified `name`, `type`, [`codec`](/core/reference/statements/create/table#column_compression_codec) and `default_expr` (see the section [Default expressions](/core/reference/statements/create/table#default_values)).
If the `IF NOT EXISTS` clause is included, the query won't return an error if the column already exists. If you specify `AFTER name_after` (the name of another column), the column is added after the specified one in the list of table columns. If you want to add a column to the beginning of the table use the `FIRST` clause. Otherwise, the column is added to the end of the table. For a chain of actions, `name_after` can be the name of a column that is added in one of the previous actions.
-Adding a column just changes the table structure, without performing any actions with data. The data does not appear on the disk after `ALTER`. If the data is missing for a column when reading from the table, it is filled in with default values (by performing the default expression if there is one, or using zeros or empty strings). The column appears on the disk after merging data parts (see [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree)).
+Adding a column just changes the table structure, without performing any actions with data. The data does not appear on the disk after `ALTER`. If the data is missing for a column when reading from the table, it is filled in with default values (by performing the default expression if there is one, or using zeros or empty strings). The column appears on the disk after merging data parts (see [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree)).
This approach allows us to complete the `ALTER` query instantly, without increasing the volume of old data.
@@ -78,7 +78,7 @@ Deletes the column with the name `name`. If the `IF EXISTS` clause is specified,
Deletes data from the file system. Since this deletes entire files, the query is completed almost instantly.
-You can't delete a column if it is referenced by [materialized view](/reference/statements/create/view). Otherwise, it returns an error.
+You can't delete a column if it is referenced by [materialized view](/core/reference/statements/create/view). Otherwise, it returns an error.
Example:
@@ -109,7 +109,7 @@ ALTER TABLE visits RENAME COLUMN webBrowser TO browser
CLEAR COLUMN [IF EXISTS] name IN PARTITION partition_name
```
-Resets all data in a column for a specified partition. Read more about setting the partition name in the section [How to set the partition expression](/reference/statements/alter/partition#how-to-set-partition-expression).
+Resets all data in a column for a specified partition. Read more about setting the partition name in the section [How to set the partition expression](/core/reference/statements/alter/partition#how-to-set-partition-expression).
If the `IF EXISTS` clause is specified, the query won't return an error if the column does not exist.
@@ -129,7 +129,7 @@ Adds a comment to the column. If the `IF EXISTS` clause is specified, the query
Each column can have one comment. If a comment already exists for the column, a new comment overwrites the previous comment.
-Comments are stored in the `comment_expression` column returned by the [DESCRIBE TABLE](/reference/statements/describe-table) query.
+Comments are stored in the `comment_expression` column returned by the [DESCRIBE TABLE](/core/reference/statements/describe-table) query.
Example:
@@ -156,15 +156,15 @@ This query changes the `name` column properties:
- Column-level Settings
-For examples of columns compression CODECS modifying, see [Column Compression Codecs](/reference/statements/create/table#column_compression_codec).
+For examples of columns compression CODECS modifying, see [Column Compression Codecs](/core/reference/statements/create/table#column_compression_codec).
-For examples of columns TTL modifying, see [Column TTL](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-column-ttl).
+For examples of columns TTL modifying, see [Column TTL](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-column-ttl).
-For examples of column-level settings modifying, see [Column-level Settings](/reference/engines/table-engines/mergetree-family/mergetree#column-level-settings).
+For examples of column-level settings modifying, see [Column-level Settings](/core/reference/engines/table-engines/mergetree-family/mergetree#column-level-settings).
If the `IF EXISTS` clause is specified, the query won't return an error if the column does not exist.
-When changing the type, values are converted as if the [toType](/reference/functions/regular-functions/type-conversion-functions) functions were applied to them. If only the default expression is changed, the query does not do anything complex, and is completed almost instantly.
+When changing the type, values are converted as if the [toType](/core/reference/functions/regular-functions/type-conversion-functions) functions were applied to them. If only the default expression is changed, the query does not do anything complex, and is completed almost instantly.
Example:
@@ -236,7 +236,7 @@ ALTER TABLE table_with_ttl MODIFY COLUMN column_ttl REMOVE TTL;
**See Also**
-- [REMOVE TTL](/reference/statements/alter/ttl).
+- [REMOVE TTL](/core/reference/statements/alter/ttl).
## MODIFY COLUMN MODIFY SETTING {#modify-column-modify-setting}
@@ -277,7 +277,7 @@ ALTER TABLE table_name MODIFY COLUMN column_name RESET SETTING max_compress_bloc
## MATERIALIZE COLUMN {#materialize-column}
Materializes a column with a `DEFAULT` or `MATERIALIZED` value expression. When adding a materialized column using `ALTER TABLE table_name ADD COLUMN column_name MATERIALIZED`, existing rows without materialized values are not automatically filled. `MATERIALIZE COLUMN` statement can be used to rewrite existing column data after a `DEFAULT` or `MATERIALIZED` expression has been added or updated (which only updates the metadata but does not change existing data). Note that materializing a column in the sort key is an invalid operation because it could break the sort order.
-Implemented as a [mutation](/reference/statements/alter#mutations).
+Implemented as a [mutation](/core/reference/statements/alter#mutations).
For columns with a new or updated `MATERIALIZED` value expression, all existing rows are rewritten.
@@ -330,18 +330,18 @@ SELECT groupArray(x), groupArray(s) FROM tmp;
**See Also**
-- [MATERIALIZED](/reference/statements/create/view#materialized-view).
+- [MATERIALIZED](/core/reference/statements/create/view#materialized-view).
## Limitations {#limitations}
The `ALTER` query lets you create and delete separate elements (columns) in nested data structures, but not whole nested data structures. To add a nested data structure, you can add columns with a name like `name.nested_name` and the type `Array(T)`. A nested data structure is equivalent to multiple array columns with a name that has the same prefix before the dot.
-Renaming columns with dots in their names is partially supported. Dots are reserved for [Nested](/reference/data-types/nested-data-structures) sub-column access, so the prefix (parent name) must remain the same. Only the suffix (sub-column name) can be changed. For example, `a.b` can be renamed to `a.c`, but renaming `a.b` to `b.d` is not allowed because it changes the Nested parent prefix.
+Renaming columns with dots in their names is partially supported. Dots are reserved for [Nested](/core/reference/data-types/nested-data-structures) sub-column access, so the prefix (parent name) must remain the same. Only the suffix (sub-column name) can be changed. For example, `a.b` can be renamed to `a.c`, but renaming `a.b` to `b.d` is not allowed because it changes the Nested parent prefix.
There is no support for deleting columns in the primary key or the sampling key (columns that are used in the `ENGINE` expression). Changing the type for columns that are included in the primary key is only possible if this change does not cause the data to be modified (for example, you are allowed to add values to an Enum or to change a type from `DateTime` to `UInt32`).
-If the `ALTER` query is not sufficient to make the table changes you need, you can create a new table, copy the data to it using the [INSERT SELECT](/reference/statements/insert-into#inserting-the-results-of-select) query, then switch the tables using the [RENAME](/reference/statements/rename#rename-table) query and delete the old table.
+If the `ALTER` query is not sufficient to make the table changes you need, you can create a new table, copy the data to it using the [INSERT SELECT](/core/reference/statements/insert-into#inserting-the-results-of-select) query, then switch the tables using the [RENAME](/core/reference/statements/rename#rename-table) query and delete the old table.
The `ALTER` query blocks all reads and writes for the table. In other words, if a long `SELECT` is running at the time of the `ALTER` query, the `ALTER` query will wait for it to complete. At the same time, all new queries to the same table will wait while this `ALTER` is running.
-For tables that do not store data themselves (such as [Merge](/reference/statements/alter) and [Distributed](/reference/statements/alter)), `ALTER` just changes the table structure, and does not change the structure of subordinate tables. For example, when running ALTER for a `Distributed` table, you will also need to run `ALTER` for the tables on all remote servers.
+For tables that do not store data themselves (such as [Merge](/core/reference/statements/alter) and [Distributed](/core/reference/statements/alter)), `ALTER` just changes the table structure, and does not change the structure of subordinate tables. For example, when running ALTER for a `Distributed` table, you will also need to run `ALTER` for the tables on all remote servers.
diff --git a/reference/statements/alter/comment.mdx b/core/reference/statements/alter/comment.mdx
similarity index 90%
rename from reference/statements/alter/comment.mdx
rename to core/reference/statements/alter/comment.mdx
index 2527b4dc..32e5b375 100644
--- a/reference/statements/alter/comment.mdx
+++ b/core/reference/statements/alter/comment.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
---
Adds, modifies, or removes a table comment, regardless of whether it was set
-before or not. The comment change is reflected in both [`system.tables`](/reference/system-tables/tables)
+before or not. The comment change is reflected in both [`system.tables`](/core/reference/system-tables/tables)
and in the `SHOW CREATE TABLE` query.
## Syntax {#syntax}
@@ -83,5 +83,5 @@ ClickHouse versions.
## Related content {#related-content}
-- [`COMMENT`](/reference/statements/create/table#comment-clause) clause
-- [`ALTER DATABASE ... MODIFY COMMENT`](/reference/statements/alter/database-comment)
+- [`COMMENT`](/core/reference/statements/create/table#comment-clause) clause
+- [`ALTER DATABASE ... MODIFY COMMENT`](/core/reference/statements/alter/database-comment)
diff --git a/reference/statements/alter/constraint.mdx b/core/reference/statements/alter/constraint.mdx
similarity index 90%
rename from reference/statements/alter/constraint.mdx
rename to core/reference/statements/alter/constraint.mdx
index b29b4af7..ea7190c8 100644
--- a/reference/statements/alter/constraint.mdx
+++ b/core/reference/statements/alter/constraint.mdx
@@ -13,7 +13,7 @@ ALTER TABLE [db].name [ON CLUSTER cluster] ADD CONSTRAINT [IF NOT EXISTS] constr
ALTER TABLE [db].name [ON CLUSTER cluster] DROP CONSTRAINT [IF EXISTS] constraint_name;
```
-See more on [constraints](/reference/statements/create/table#constraints).
+See more on [constraints](/core/reference/statements/create/table#constraints).
Queries will add or remove metadata about constraints from table, so they are processed immediately.
diff --git a/reference/statements/alter/database-comment.mdx b/core/reference/statements/alter/database-comment.mdx
similarity index 89%
rename from reference/statements/alter/database-comment.mdx
rename to core/reference/statements/alter/database-comment.mdx
index b79791ac..50042d3a 100644
--- a/reference/statements/alter/database-comment.mdx
+++ b/core/reference/statements/alter/database-comment.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
---
Adds, modifies, or removes a database comment, regardless of whether it was set
-before or not. The comment change is reflected in both [`system.databases`](/reference/system-tables/databases)
+before or not. The comment change is reflected in both [`system.databases`](/core/reference/system-tables/databases)
and the `SHOW CREATE DATABASE` query.
## Syntax {#syntax}
@@ -70,5 +70,5 @@ WHERE name = 'database_with_comment';
## Related content {#related-content}
-- [`COMMENT`](/reference/statements/create/table#comment-clause) clause
-- [`ALTER TABLE ... MODIFY COMMENT`](/reference/statements/alter/comment)
+- [`COMMENT`](/core/reference/statements/create/table#comment-clause) clause
+- [`ALTER TABLE ... MODIFY COMMENT`](/core/reference/statements/alter/comment)
diff --git a/reference/statements/alter/delete.mdx b/core/reference/statements/alter/delete.mdx
similarity index 68%
rename from reference/statements/alter/delete.mdx
rename to core/reference/statements/alter/delete.mdx
index 15ad808a..05011b58 100644
--- a/reference/statements/alter/delete.mdx
+++ b/core/reference/statements/alter/delete.mdx
@@ -10,23 +10,23 @@ doc_type: 'reference'
ALTER TABLE [db.]table [ON CLUSTER cluster] DELETE WHERE filter_expr
```
-Deletes data matching the specified filtering expression. Implemented as a [mutation](/reference/statements/alter#mutations).
+Deletes data matching the specified filtering expression. Implemented as a [mutation](/core/reference/statements/alter#mutations).
-The `ALTER TABLE` prefix makes this syntax different from most other systems supporting SQL. It is intended to signify that unlike similar queries in OLTP databases this is a heavy operation not designed for frequent use. `ALTER TABLE` is considered a heavyweight operation that requires the underlying data to be merged before it is deleted. For MergeTree tables, consider using the [`DELETE FROM` query](/reference/statements/delete), which performs a lightweight delete and can be considerably faster.
+The `ALTER TABLE` prefix makes this syntax different from most other systems supporting SQL. It is intended to signify that unlike similar queries in OLTP databases this is a heavy operation not designed for frequent use. `ALTER TABLE` is considered a heavyweight operation that requires the underlying data to be merged before it is deleted. For MergeTree tables, consider using the [`DELETE FROM` query](/core/reference/statements/delete), which performs a lightweight delete and can be considerably faster.
The `filter_expr` must be of type `UInt8`. The query deletes rows in the table for which this expression takes a non-zero value.
One query can contain several commands separated by commas.
-The synchronicity of the query processing is defined by the [mutations_sync](/reference/settings/session-settings#mutations_sync) setting. By default, it is asynchronous.
+The synchronicity of the query processing is defined by the [mutations_sync](/core/reference/settings/session-settings#mutations_sync) setting. By default, it is asynchronous.
**See also**
-- [Mutations](/reference/statements/alter#mutations)
-- [Synchronicity of ALTER Queries](/reference/statements/alter#synchronicity-of-alter-queries)
-- [mutations_sync](/reference/settings/session-settings#mutations_sync) setting
+- [Mutations](/core/reference/statements/alter#mutations)
+- [Synchronicity of ALTER Queries](/core/reference/statements/alter#synchronicity-of-alter-queries)
+- [mutations_sync](/core/reference/settings/session-settings#mutations_sync) setting
## Related content {#related-content}
diff --git a/reference/statements/alter/index.mdx b/core/reference/statements/alter/index.mdx
similarity index 56%
rename from reference/statements/alter/index.mdx
rename to core/reference/statements/alter/index.mdx
index c3bb777b..5a867213 100644
--- a/reference/statements/alter/index.mdx
+++ b/core/reference/statements/alter/index.mdx
@@ -10,53 +10,53 @@ Most `ALTER TABLE` queries modify table settings or data:
| Modifier |
|-------------------------------------------------------------------------------------|
-| [COLUMN](/reference/statements/alter/column) |
-| [PARTITION](/reference/statements/alter/partition) |
-| [DELETE](/reference/statements/alter/delete) |
-| [UPDATE](/reference/statements/alter/update) |
-| [ORDER BY](/reference/statements/alter/order-by) |
-| [INDEX](/reference/statements/alter/skipping-index) |
-| [CONSTRAINT](/reference/statements/alter/constraint) |
-| [TTL](/reference/statements/alter/ttl) |
-| [STATISTICS](/reference/statements/alter/statistics) |
-| [APPLY DELETED MASK](/reference/statements/alter/apply-deleted-mask) |
-| [APPLY PATCHES](/reference/statements/alter/apply-patches) |
+| [COLUMN](/core/reference/statements/alter/column) |
+| [PARTITION](/core/reference/statements/alter/partition) |
+| [DELETE](/core/reference/statements/alter/delete) |
+| [UPDATE](/core/reference/statements/alter/update) |
+| [ORDER BY](/core/reference/statements/alter/order-by) |
+| [INDEX](/core/reference/statements/alter/skipping-index) |
+| [CONSTRAINT](/core/reference/statements/alter/constraint) |
+| [TTL](/core/reference/statements/alter/ttl) |
+| [STATISTICS](/core/reference/statements/alter/statistics) |
+| [APPLY DELETED MASK](/core/reference/statements/alter/apply-deleted-mask) |
+| [APPLY PATCHES](/core/reference/statements/alter/apply-patches) |
-Most `ALTER TABLE` queries are supported only for [\*MergeTree](/reference/engines/table-engines/mergetree-family), [Merge](/reference/engines/table-engines/special/merge) and [Distributed](/reference/engines/table-engines/special/distributed) tables.
+Most `ALTER TABLE` queries are supported only for [\*MergeTree](/core/reference/engines/table-engines/mergetree-family), [Merge](/core/reference/engines/table-engines/special/merge) and [Distributed](/core/reference/engines/table-engines/special/distributed) tables.
These `ALTER` statements manipulate views:
| Statement | Description |
|-------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------|
-| [ALTER TABLE ... MODIFY QUERY](/reference/statements/alter/view) | Modifies a [Materialized view](/reference/statements/create/view) structure. |
+| [ALTER TABLE ... MODIFY QUERY](/core/reference/statements/alter/view) | Modifies a [Materialized view](/core/reference/statements/create/view) structure. |
These `ALTER` statements modify entities related to role-based access control:
| Statement |
|---------------------------------------------------------------------------------|
-| [USER](/reference/statements/alter/user) |
-| [ROLE](/reference/statements/alter/role) |
-| [QUOTA](/reference/statements/alter/quota) |
-| [ROW POLICY](/reference/statements/alter/row-policy) |
-| [SETTINGS PROFILE](/reference/statements/alter/settings-profile) |
+| [USER](/core/reference/statements/alter/user) |
+| [ROLE](/core/reference/statements/alter/role) |
+| [QUOTA](/core/reference/statements/alter/quota) |
+| [ROW POLICY](/core/reference/statements/alter/row-policy) |
+| [SETTINGS PROFILE](/core/reference/statements/alter/settings-profile) |
| Statement | Description |
|---------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------|
-| [ALTER TABLE ... MODIFY COMMENT](/reference/statements/alter/comment) | Adds, modifies, or removes comments to the table, regardless if it was set before or not. |
-| [ALTER NAMED COLLECTION](/reference/statements/alter/named-collection) | Modifies [Named Collections](/concepts/features/configuration/server-config/named-collections). |
+| [ALTER TABLE ... MODIFY COMMENT](/core/reference/statements/alter/comment) | Adds, modifies, or removes comments to the table, regardless if it was set before or not. |
+| [ALTER NAMED COLLECTION](/core/reference/statements/alter/named-collection) | Modifies [Named Collections](/core/concepts/features/configuration/server-config/named-collections). |
## Mutations {#mutations}
-`ALTER` queries that are intended to manipulate table data are implemented with a mechanism called "mutations", most notably [ALTER TABLE ... DELETE](/reference/statements/alter/delete) and [ALTER TABLE ... UPDATE](/reference/statements/alter/update). They are asynchronous background processes similar to merges in [MergeTree](/reference/engines/table-engines/mergetree-family) tables that to produce new "mutated" versions of parts.
+`ALTER` queries that are intended to manipulate table data are implemented with a mechanism called "mutations", most notably [ALTER TABLE ... DELETE](/core/reference/statements/alter/delete) and [ALTER TABLE ... UPDATE](/core/reference/statements/alter/update). They are asynchronous background processes similar to merges in [MergeTree](/core/reference/engines/table-engines/mergetree-family) tables that to produce new "mutated" versions of parts.
For `*MergeTree` tables mutations execute by **rewriting whole data parts**.
There is no atomicity — parts are substituted for mutated parts as soon as they are ready and a `SELECT` query that started executing during a mutation will see data from parts that have already been mutated along with data from parts that have not been mutated yet.
Mutations are totally ordered by their creation order and are applied to each part in that order. Mutations are also partially ordered with `INSERT INTO` queries: data that was inserted into the table before the mutation was submitted will be mutated and data that was inserted after that will not be mutated. Note that mutations do not block inserts in any way.
-A mutation query returns immediately after the mutation entry is added (in case of replicated tables to ZooKeeper, for non-replicated tables - to the filesystem). The mutation itself executes asynchronously using the system profile settings. To track the progress of mutations you can use the [`system.mutations`](/reference/system-tables/mutations) table. A mutation that was successfully submitted will continue to execute even if ClickHouse servers are restarted. There is no way to roll back the mutation once it is submitted, but if the mutation is stuck for some reason it can be cancelled with the [`KILL MUTATION`](/reference/statements/kill#kill-mutation) query.
+A mutation query returns immediately after the mutation entry is added (in case of replicated tables to ZooKeeper, for non-replicated tables - to the filesystem). The mutation itself executes asynchronously using the system profile settings. To track the progress of mutations you can use the [`system.mutations`](/core/reference/system-tables/mutations) table. A mutation that was successfully submitted will continue to execute even if ClickHouse servers are restarted. There is no way to roll back the mutation once it is submitted, but if the mutation is stuck for some reason it can be cancelled with the [`KILL MUTATION`](/core/reference/statements/kill#kill-mutation) query.
Entries for finished mutations are not deleted right away (the number of preserved entries is determined by the `finished_mutations_to_keep` storage engine parameter). Older mutation entries are deleted.
@@ -64,11 +64,11 @@ Entries for finished mutations are not deleted right away (the number of preserv
For non-replicated tables, all `ALTER` queries are performed synchronously. For replicated tables, the query just adds instructions for the appropriate actions to `ZooKeeper`, and the actions themselves are performed as soon as possible. However, the query can wait for these actions to be completed on all the replicas.
-For `ALTER` queries that creates mutations (e.g.: including, but not limited to `UPDATE`, `DELETE`, `MATERIALIZE INDEX`, `MATERIALIZE PROJECTION`, `MATERIALIZE COLUMN`, `APPLY DELETED MASK`, `APPLY PATCHES`, `CLEAR STATISTIC`, `MATERIALIZE STATISTIC`) the synchronicity is defined by the [mutations_sync](/reference/settings/session-settings#mutations_sync) setting.
+For `ALTER` queries that creates mutations (e.g.: including, but not limited to `UPDATE`, `DELETE`, `MATERIALIZE INDEX`, `MATERIALIZE PROJECTION`, `MATERIALIZE COLUMN`, `APPLY DELETED MASK`, `APPLY PATCHES`, `CLEAR STATISTIC`, `MATERIALIZE STATISTIC`) the synchronicity is defined by the [mutations_sync](/core/reference/settings/session-settings#mutations_sync) setting.
-For other `ALTER` queries which only modify the metadata, you can use the [alter_sync](/reference/settings/session-settings#alter_sync) setting to set up waiting.
+For other `ALTER` queries which only modify the metadata, you can use the [alter_sync](/core/reference/settings/session-settings#alter_sync) setting to set up waiting.
-You can specify how long (in seconds) to wait for inactive replicas to execute all `ALTER` queries with the [replication_wait_for_inactive_replica_timeout](/reference/settings/session-settings#replication_wait_for_inactive_replica_timeout) setting.
+You can specify how long (in seconds) to wait for inactive replicas to execute all `ALTER` queries with the [replication_wait_for_inactive_replica_timeout](/core/reference/settings/session-settings#replication_wait_for_inactive_replica_timeout) setting.
For all `ALTER` queries, if `alter_sync = 2` and some replicas are not active for more than the time, specified in the `replication_wait_for_inactive_replica_timeout` setting, then an exception `UNFINISHED` is thrown.
diff --git a/reference/statements/alter/masking-policy.mdx b/core/reference/statements/alter/masking-policy.mdx
similarity index 100%
rename from reference/statements/alter/masking-policy.mdx
rename to core/reference/statements/alter/masking-policy.mdx
diff --git a/reference/statements/alter/named-collection.mdx b/core/reference/statements/alter/named-collection.mdx
similarity index 100%
rename from reference/statements/alter/named-collection.mdx
rename to core/reference/statements/alter/named-collection.mdx
diff --git a/reference/statements/alter/order-by.mdx b/core/reference/statements/alter/order-by.mdx
similarity index 59%
rename from reference/statements/alter/order-by.mdx
rename to core/reference/statements/alter/order-by.mdx
index 795e777b..d658c102 100644
--- a/reference/statements/alter/order-by.mdx
+++ b/core/reference/statements/alter/order-by.mdx
@@ -10,12 +10,12 @@ doc_type: 'reference'
ALTER TABLE [db].name [ON CLUSTER cluster] MODIFY ORDER BY new_expression
```
-The command changes the [sorting key](/reference/engines/table-engines/mergetree-family/mergetree) of the table to `new_expression` (an expression or a tuple of expressions). Primary key remains the same.
+The command changes the [sorting key](/core/reference/engines/table-engines/mergetree-family/mergetree) of the table to `new_expression` (an expression or a tuple of expressions). Primary key remains the same.
The command is lightweight in a sense that it only changes metadata. To keep the property that data part rows are ordered by the sorting key expression you cannot add expressions containing existing columns to the sorting key (only columns added by the `ADD COLUMN` command in the same `ALTER` query, without default column value).
****
-It only works for tables in the [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) family (including [replicated](/reference/engines/table-engines/mergetree-family/replication) tables).
+It only works for tables in the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) family (including [replicated](/core/reference/engines/table-engines/mergetree-family/replication) tables).
\ No newline at end of file
diff --git a/reference/statements/alter/partition.mdx b/core/reference/statements/alter/partition.mdx
similarity index 89%
rename from reference/statements/alter/partition.mdx
rename to core/reference/statements/alter/partition.mdx
index 79436885..adb407c9 100644
--- a/reference/statements/alter/partition.mdx
+++ b/core/reference/statements/alter/partition.mdx
@@ -6,7 +6,7 @@ title: 'Manipulating Partitions and Parts'
doc_type: 'reference'
---
-The following operations with [partitions](/reference/engines/table-engines/mergetree-family/custom-partitioning-key) are available:
+The following operations with [partitions](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key) are available:
- [DETACH PARTITION\|PART](#detach-partitionpart) — Moves a partition or part to the `detached` directory and forget it.
- [DROP PARTITION\|PART](#drop-partitionpart) — Deletes a partition or part.
@@ -47,7 +47,7 @@ Read about setting the partition expression in a section [How to set the partiti
After the query is executed, you can do whatever you want with the data in the `detached` directory — delete it from the file system, or just leave it.
-This query is replicated – it moves the data to the `detached` directory on all replicas. Note that you can execute this query only on a leader replica. To find out if a replica is a leader, perform the `SELECT` query to the [system.replicas](/reference/system-tables/replicas) table. Alternatively, it is easier to make a `DETACH` query on all replicas - all the replicas throw an exception, except the leader replicas (as multiple leaders are allowed).
+This query is replicated – it moves the data to the `detached` directory on all replicas. Note that you can execute this query only on a leader replica. To find out if a replica is a leader, perform the `SELECT` query to the [system.replicas](/core/reference/system-tables/replicas) table. Alternatively, it is easier to make a `DETACH` query on all replicas - all the replicas throw an exception, except the leader replicas (as multiple leaders are allowed).
## DROP PARTITION\|PART {#drop-partitionpart}
@@ -207,7 +207,7 @@ At the time of execution, for a data snapshot, the query creates hardlinks to a
- if the `WITH NAME` parameter is specified, then the value of the `'backup_name'` parameter is used instead of the incremental number.
-If you use [a set of disks for data storage in a table](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes), the `shadow/N` directory appears on every disk, storing data parts that matched by the `PARTITION` expression.
+If you use [a set of disks for data storage in a table](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes), the `shadow/N` directory appears on every disk, storing data parts that matched by the `PARTITION` expression.
The same structure of directories is created inside the backup as inside `/var/lib/clickhouse/`. The query performs `chmod` for all files, forbidding writing into them.
@@ -228,7 +228,7 @@ Restoring from a backup does not require stopping the server.
The query processes parts in parallel, the number of threads is regulated by the `max_threads` setting.
-For more information about backups and restoring data, see section ["Backup and Restore in ClickHouse"](/concepts/features/backup-restore/overview) section.
+For more information about backups and restoring data, see section ["Backup and Restore in ClickHouse"](/core/concepts/features/backup-restore/overview) section.
## UNFREEZE PARTITION {#unfreeze-partition}
@@ -283,7 +283,7 @@ Although the query is called `ALTER TABLE`, it does not change the table structu
## MOVE PARTITION\|PART {#move-partitionpart}
-Moves partitions or data parts to another volume or disk for `MergeTree`-engine tables. See [Using Multiple Block Devices for Data Storage](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes).
+Moves partitions or data parts to another volume or disk for `MergeTree`-engine tables. See [Using Multiple Block Devices for Data Storage](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes).
```sql
ALTER TABLE table_name [ON CLUSTER cluster] MOVE PARTITION|PART partition_expr TO DISK|VOLUME 'disk_name'
@@ -304,7 +304,7 @@ ALTER TABLE hits MOVE PARTITION '2019-09-01' TO DISK 'fast_ssd'
## UPDATE IN PARTITION {#update-in-partition}
-Manipulates data in the specifies partition matching the specified filtering expression. Implemented as a [mutation](/reference/statements/alter#mutations).
+Manipulates data in the specifies partition matching the specified filtering expression. Implemented as a [mutation](/core/reference/statements/alter#mutations).
Syntax:
@@ -324,11 +324,11 @@ ALTER TABLE mt UPDATE x = x + 1 IN PARTITION ID '2' WHERE p = 2;
### See Also {#see-also}
-- [UPDATE](/reference/statements/alter/partition#update-in-partition)
+- [UPDATE](/core/reference/statements/alter/partition#update-in-partition)
## DELETE IN PARTITION {#delete-in-partition}
-Deletes data in the specifies partition matching the specified filtering expression. Implemented as a [mutation](/reference/statements/alter#mutations).
+Deletes data in the specifies partition matching the specified filtering expression. Implemented as a [mutation](/core/reference/statements/alter#mutations).
Syntax:
@@ -359,7 +359,7 @@ ALTER TABLE mt REWRITE PARTS IN PARTITION 2;
### See Also {#see-also-1}
-- [DELETE](/reference/statements/alter/delete)
+- [DELETE](/core/reference/statements/alter/delete)
## How to Set Partition Expression {#how-to-set-partition-expression}
@@ -369,16 +369,16 @@ You can specify the partition expression in `ALTER ... PARTITION` queries in dif
- Using the keyword `ALL`. It can be used only with DROP/DETACH/ATTACH/ATTACH FROM. For example, `ALTER TABLE visits ATTACH PARTITION ALL`.
- As a tuple of expressions or constants that matches (in types) the table partitioning keys tuple. In the case of a single element partitioning key, the expression should be wrapped in the `tuple (...)` function. For example, `ALTER TABLE visits DETACH PARTITION tuple(toYYYYMM(toDate('2019-01-25')))`.
- Using the partition ID. Partition ID is a string identifier of the partition (human-readable, if possible) that is used as the names of partitions in the file system and in ZooKeeper. The partition ID must be specified in the `PARTITION ID` clause, in a single quotes. For example, `ALTER TABLE visits DETACH PARTITION ID '201901'`.
-- In the [ALTER ATTACH PART](#attach-partitionpart) and [DROP DETACHED PART](#drop-detached-partitionpart) query, to specify the name of a part, use string literal with a value from the `name` column of the [system.detached_parts](/reference/system-tables/detached_parts) table. For example, `ALTER TABLE visits ATTACH PART '201901_1_1_0'`.
+- In the [ALTER ATTACH PART](#attach-partitionpart) and [DROP DETACHED PART](#drop-detached-partitionpart) query, to specify the name of a part, use string literal with a value from the `name` column of the [system.detached_parts](/core/reference/system-tables/detached_parts) table. For example, `ALTER TABLE visits ATTACH PART '201901_1_1_0'`.
Usage of quotes when specifying the partition depends on the type of partition expression. For example, for the `String` type, you have to specify its name in quotes (`'`). For the `Date` and `Int*` types no quotes are needed.
-All the rules above are also true for the [OPTIMIZE](/reference/statements/optimize) query. If you need to specify the only partition when optimizing a non-partitioned table, set the expression `PARTITION tuple()`. For example:
+All the rules above are also true for the [OPTIMIZE](/core/reference/statements/optimize) query. If you need to specify the only partition when optimizing a non-partitioned table, set the expression `PARTITION tuple()`. For example:
```sql
OPTIMIZE TABLE table_not_partitioned PARTITION tuple() FINAL;
```
-`IN PARTITION` specifies the partition to which the [UPDATE](/reference/statements/alter/update) or [DELETE](/reference/statements/alter/delete) expressions are applied as a result of the `ALTER TABLE` query. New parts are created only from the specified partition. In this way, `IN PARTITION` helps to reduce the load when the table is divided into many partitions, and you only need to update the data point-by-point.
+`IN PARTITION` specifies the partition to which the [UPDATE](/core/reference/statements/alter/update) or [DELETE](/core/reference/statements/alter/delete) expressions are applied as a result of the `ALTER TABLE` query. New parts are created only from the specified partition. In this way, `IN PARTITION` helps to reduce the load when the table is divided into many partitions, and you only need to update the data point-by-point.
The examples of `ALTER ... PARTITION` queries are demonstrated in the tests [`00502_custom_partitioning_local`](https://github.com/ClickHouse/ClickHouse/blob/master/tests/queries/0_stateless/00502_custom_partitioning_local.sql) and [`00502_custom_partitioning_replicated_zookeeper`](https://github.com/ClickHouse/ClickHouse/blob/master/tests/queries/0_stateless/00502_custom_partitioning_replicated_zookeeper.sql).
diff --git a/reference/statements/alter/projection.mdx b/core/reference/statements/alter/projection.mdx
similarity index 89%
rename from reference/statements/alter/projection.mdx
rename to core/reference/statements/alter/projection.mdx
index 056818b6..8de86aa7 100644
--- a/reference/statements/alter/projection.mdx
+++ b/core/reference/statements/alter/projection.mdx
@@ -23,7 +23,7 @@ Projections will create internally a new hidden table, this means that more IO a
For example, if the projection has defined a different primary key, all the data from the original table will be duplicated.
-You can see more technical details about how projections work internally on this [page](/guides/cloud-oss/data-modelling/sparse-primary-indexes#option-3-projections).
+You can see more technical details about how projections work internally on this [page](/core/guides/clickhouse/data-modelling/sparse-primary-indexes#option-3-projections).
## Using projections {#examples}
@@ -164,7 +164,7 @@ SELECT query, projections FROM system.query_log WHERE query_id=''
### Creating and using projection indexes {#projection-indexes}
-Creating a [projection index](/reference/engines/table-engines/mergetree-family/mergetree#projection-index):
+Creating a [projection index](/core/reference/engines/table-engines/mergetree-family/mergetree#projection-index):
```sql
CREATE TABLE events
@@ -227,7 +227,7 @@ SETTINGS enable_shared_storage_snapshot_in_query = 1
## Manipulating projections {#manipulating-projections}
-The following operations with [projections](/reference/engines/table-engines/mergetree-family/mergetree#projections) are available:
+The following operations with [projections](/core/reference/engines/table-engines/mergetree-family/mergetree#projections) are available:
### ADD PROJECTION {#add-projection}
@@ -259,7 +259,7 @@ Projection settings override the effective table settings for the projection, su
### DROP PROJECTION {#drop-projection}
Use the statement below to remove a projection description from a tables metadata and delete projection files from disk.
-This is implemented as a [mutation](/reference/statements/alter#mutations).
+This is implemented as a [mutation](/core/reference/statements/alter#mutations).
```sql
ALTER TABLE [db.]name [ON CLUSTER cluster] DROP PROJECTION [IF EXISTS] name
@@ -268,7 +268,7 @@ ALTER TABLE [db.]name [ON CLUSTER cluster] DROP PROJECTION [IF EXISTS] name
### MATERIALIZE PROJECTION {#materialize-projection}
Use the statement below to rebuild the projection `name` in partition `partition_name`.
-This is implemented as a [mutation](/reference/statements/alter#mutations).
+This is implemented as a [mutation](/core/reference/statements/alter#mutations).
```sql
ALTER TABLE [db.]table [ON CLUSTER cluster] MATERIALIZE PROJECTION [IF EXISTS] name [IN PARTITION partition_name]
@@ -277,7 +277,7 @@ ALTER TABLE [db.]table [ON CLUSTER cluster] MATERIALIZE PROJECTION [IF EXISTS] n
### CLEAR PROJECTION {#clear-projection}
Use the statement below to delete projection files from disk without removing description.
-This is implemented as a [mutation](/reference/statements/alter#mutations).
+This is implemented as a [mutation](/core/reference/statements/alter#mutations).
```sql
ALTER TABLE [db.]table [ON CLUSTER cluster] CLEAR PROJECTION [IF EXISTS] name [IN PARTITION partition_name]
@@ -287,7 +287,7 @@ The commands `ADD`, `DROP` and `CLEAR` are lightweight in the sense that they on
Additionally, they are replicated, and sync projection metadata via ClickHouse Keeper or ZooKeeper.
-Projection manipulation is supported only for tables with [`*MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) engine (including [replicated](/reference/engines/table-engines/mergetree-family/replication) variants).
+Projection manipulation is supported only for tables with [`*MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) engine (including [replicated](/core/reference/engines/table-engines/mergetree-family/replication) variants).
### Controlling projection merge behavior {#control-projections-merges}
@@ -308,9 +308,9 @@ Similarly, if the table is stored using the `AggregatingMergeTree` table engine,
Before ClickHouse v24.8, projection parts either silently got out of sync with the main data, or certain operations like updates and deletes could not be run at all as the database automatically threw an exception if the table had projections.
-Since v24.8, a new table-level setting [`deduplicate_merge_projection_mode`](/reference/settings/merge-tree-settings#deduplicate_merge_projection_mode) controls the behavior if the aforementioned non-trivial background merge operations occur in parts of the original table.
+Since v24.8, a new table-level setting [`deduplicate_merge_projection_mode`](/core/reference/settings/merge-tree-settings#deduplicate_merge_projection_mode) controls the behavior if the aforementioned non-trivial background merge operations occur in parts of the original table.
-Delete mutations are another example of part merge operations that drop rows in the parts of the original table. Since v24.7, we also have a setting to control the behavior w.r.t. delete mutations triggered by lightweight deletes: [`lightweight_mutation_projection_mode`](/reference/settings/merge-tree-settings#deduplicate_merge_projection_mode).
+Delete mutations are another example of part merge operations that drop rows in the parts of the original table. Since v24.7, we also have a setting to control the behavior w.r.t. delete mutations triggered by lightweight deletes: [`lightweight_mutation_projection_mode`](/core/reference/settings/merge-tree-settings#deduplicate_merge_projection_mode).
Below are the possible values for both `deduplicate_merge_projection_mode` and `lightweight_mutation_projection_mode`:
@@ -361,5 +361,5 @@ ENGINE = MergeTree ORDER BY id;
## See also {#see-also}
- ["Control Of Projections During Merges" (blog post)](https://clickhouse.com/blog/clickhouse-release-24-08#control-of-projections-during-merges)
-- ["Projections" (guide)](/concepts/features/projections/projections#using-projections-to-speed-up-UK-price-paid)
-- ["Materialized Views versus Projections"](/concepts/features/projections/materialized-views-versus-projections)
+- ["Projections" (guide)](/core/concepts/features/projections/projections#using-projections-to-speed-up-UK-price-paid)
+- ["Materialized Views versus Projections"](/core/concepts/features/projections/materialized-views-versus-projections)
diff --git a/reference/statements/alter/quota.mdx b/core/reference/statements/alter/quota.mdx
similarity index 88%
rename from reference/statements/alter/quota.mdx
rename to core/reference/statements/alter/quota.mdx
index 3202770a..611668a4 100644
--- a/reference/statements/alter/quota.mdx
+++ b/core/reference/statements/alter/quota.mdx
@@ -19,11 +19,11 @@ ALTER QUOTA [IF EXISTS] name [ON CLUSTER cluster_name]
NO LIMITS | TRACKING ONLY} [,...]]
[TO {role [,...] | ALL | ALL EXCEPT role [,...]}]
```
-Keys `user_name`, `ip_address`, `client_key`, `client_key, user_name`, `client_key, ip_address`, and `normalized_query_hash` correspond to the fields in the [system.quotas](/reference/system-tables/quotas) table.
+Keys `user_name`, `ip_address`, `client_key`, `client_key, user_name`, `client_key, ip_address`, and `normalized_query_hash` correspond to the fields in the [system.quotas](/core/reference/system-tables/quotas) table.
-Parameters `queries`, `query_selects`, `query_inserts`, `errors`, `result_rows`, `result_bytes`, `read_rows`, `read_bytes`, `execution_time`, `queries_per_normalized_hash` correspond to the fields in the [system.quotas_usage](/reference/system-tables/quotas_usage) table.
+Parameters `queries`, `query_selects`, `query_inserts`, `errors`, `result_rows`, `result_bytes`, `read_rows`, `read_bytes`, `execution_time`, `queries_per_normalized_hash` correspond to the fields in the [system.quotas_usage](/core/reference/system-tables/quotas_usage) table.
-`ON CLUSTER` clause allows creating quotas on a cluster, see [Distributed DDL](/reference/statements/distributed-ddl).
+`ON CLUSTER` clause allows creating quotas on a cluster, see [Distributed DDL](/core/reference/statements/distributed-ddl).
**Examples**
diff --git a/reference/statements/alter/role.mdx b/core/reference/statements/alter/role.mdx
similarity index 100%
rename from reference/statements/alter/role.mdx
rename to core/reference/statements/alter/role.mdx
diff --git a/reference/statements/alter/row-policy.mdx b/core/reference/statements/alter/row-policy.mdx
similarity index 100%
rename from reference/statements/alter/row-policy.mdx
rename to core/reference/statements/alter/row-policy.mdx
diff --git a/reference/statements/alter/sample-by.mdx b/core/reference/statements/alter/sample-by.mdx
similarity index 51%
rename from reference/statements/alter/sample-by.mdx
rename to core/reference/statements/alter/sample-by.mdx
index ecc049c0..2e1f4f73 100644
--- a/reference/statements/alter/sample-by.mdx
+++ b/core/reference/statements/alter/sample-by.mdx
@@ -14,7 +14,7 @@ The following operations are available:
ALTER TABLE [db].name [ON CLUSTER cluster] MODIFY SAMPLE BY new_expression
```
-The command changes the [sampling key](/reference/engines/table-engines/mergetree-family/mergetree) of the table to `new_expression` (an expression or a tuple of expressions). The primary key must contain the new sample key.
+The command changes the [sampling key](/core/reference/engines/table-engines/mergetree-family/mergetree) of the table to `new_expression` (an expression or a tuple of expressions). The primary key must contain the new sample key.
## REMOVE {#remove}
@@ -22,12 +22,12 @@ The command changes the [sampling key](/reference/engines/table-engines/mergetre
ALTER TABLE [db].name [ON CLUSTER cluster] REMOVE SAMPLE BY
```
-The command removes the [sampling key](/reference/engines/table-engines/mergetree-family/mergetree) of the table.
+The command removes the [sampling key](/core/reference/engines/table-engines/mergetree-family/mergetree) of the table.
The commands `MODIFY` and `REMOVE` are lightweight in the sense that they only change metadata or remove files.
****
-It only works for tables in the [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) family (including [replicated](/reference/engines/table-engines/mergetree-family/replication) tables).
+It only works for tables in the [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family (including [replicated](/core/reference/engines/table-engines/mergetree-family/replication) tables).
diff --git a/reference/statements/alter/setting.mdx b/core/reference/statements/alter/setting.mdx
similarity index 87%
rename from reference/statements/alter/setting.mdx
rename to core/reference/statements/alter/setting.mdx
index cbd53a47..973c1eab 100644
--- a/reference/statements/alter/setting.mdx
+++ b/core/reference/statements/alter/setting.mdx
@@ -18,7 +18,7 @@ ALTER TABLE [db].name [ON CLUSTER cluster] MODIFY|RESET SETTING ...
****
-These queries can be applied to [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables only.
+These queries can be applied to [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables only.
## MODIFY SETTING {#modify-setting}
@@ -60,4 +60,4 @@ ALTER TABLE example_table RESET SETTING max_part_loading_threads;
**See Also**
-- [MergeTree settings](/reference/settings/merge-tree-settings)
+- [MergeTree settings](/core/reference/settings/merge-tree-settings)
diff --git a/reference/statements/alter/settings-profile.mdx b/core/reference/statements/alter/settings-profile.mdx
similarity index 100%
rename from reference/statements/alter/settings-profile.mdx
rename to core/reference/statements/alter/settings-profile.mdx
diff --git a/reference/statements/alter/skipping-index.mdx b/core/reference/statements/alter/skipping-index.mdx
similarity index 76%
rename from reference/statements/alter/skipping-index.mdx
rename to core/reference/statements/alter/skipping-index.mdx
index ed362ef1..52a899ba 100644
--- a/reference/statements/alter/skipping-index.mdx
+++ b/core/reference/statements/alter/skipping-index.mdx
@@ -15,15 +15,15 @@ The following operations are available:
## DROP INDEX {#drop-index}
-`ALTER TABLE [db.]table_name [ON CLUSTER cluster] DROP INDEX [IF EXISTS] name` - Removes index description from tables metadata and deletes index files from disk. Implemented as a [mutation](/reference/statements/alter#mutations).
+`ALTER TABLE [db.]table_name [ON CLUSTER cluster] DROP INDEX [IF EXISTS] name` - Removes index description from tables metadata and deletes index files from disk. Implemented as a [mutation](/core/reference/statements/alter#mutations).
## MATERIALIZE INDEX {#materialize-index}
-`ALTER TABLE [db.]table_name [ON CLUSTER cluster] MATERIALIZE INDEX [IF EXISTS] name [IN PARTITION partition_name]` - Rebuilds the secondary index `name` for the specified `partition_name`. Implemented as a [mutation](/reference/statements/alter#mutations). If `IN PARTITION` part is omitted then it rebuilds the index for the whole table data.
+`ALTER TABLE [db.]table_name [ON CLUSTER cluster] MATERIALIZE INDEX [IF EXISTS] name [IN PARTITION partition_name]` - Rebuilds the secondary index `name` for the specified `partition_name`. Implemented as a [mutation](/core/reference/statements/alter#mutations). If `IN PARTITION` part is omitted then it rebuilds the index for the whole table data.
## CLEAR INDEX {#clear-index}
-`ALTER TABLE [db.]table_name [ON CLUSTER cluster] CLEAR INDEX [IF EXISTS] name [IN PARTITION partition_name]` - Deletes the secondary index files from disk without removing description. Implemented as a [mutation](/reference/statements/alter#mutations).
+`ALTER TABLE [db.]table_name [ON CLUSTER cluster] CLEAR INDEX [IF EXISTS] name [IN PARTITION partition_name]` - Deletes the secondary index files from disk without removing description. Implemented as a [mutation](/core/reference/statements/alter#mutations).
The commands `ADD`, `DROP`, and `CLEAR` are lightweight in the sense that they only change metadata or remove files.
Also, they are replicated, syncing indices metadata via ClickHouse Keeper or ZooKeeper.
@@ -31,5 +31,5 @@ Also, they are replicated, syncing indices metadata via ClickHouse Keeper or Zoo
****
-Index manipulation is supported only for tables with [`*MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) engine (including [replicated](/reference/engines/table-engines/mergetree-family/replication) variants).
+Index manipulation is supported only for tables with [`*MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) engine (including [replicated](/core/reference/engines/table-engines/mergetree-family/replication) variants).
diff --git a/reference/statements/alter/statistics.mdx b/core/reference/statements/alter/statistics.mdx
similarity index 84%
rename from reference/statements/alter/statistics.mdx
rename to core/reference/statements/alter/statistics.mdx
index edc1dbde..7394b4d5 100644
--- a/reference/statements/alter/statistics.mdx
+++ b/core/reference/statements/alter/statistics.mdx
@@ -20,7 +20,7 @@ The following operations are available:
- `ALTER TABLE [db].table CLEAR STATISTICS [IF EXISTS] (column list)` - Deletes all statistics objects in all parts for the specified columns. Statistics objects can be rebuild using `ALTER TABLE MATERIALIZE STATISTICS`.
-- `ALTER TABLE [db.]table MATERIALIZE STATISTICS (ALL | [IF EXISTS] (column list))` - Rebuilds the statistic for columns. Implemented as a [mutation](/reference/statements/alter#mutations).
+- `ALTER TABLE [db.]table MATERIALIZE STATISTICS (ALL | [IF EXISTS] (column list))` - Rebuilds the statistic for columns. Implemented as a [mutation](/core/reference/statements/alter#mutations).
The first two commands are lightweight in a sense that they only change metadata or remove files.
@@ -41,5 +41,5 @@ ALTER TABLE t1 ADD STATISTICS nullable_col TYPE NullCount;
```
-Statistic are supported only for [`*MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) engine tables (including [replicated](/reference/engines/table-engines/mergetree-family/replication) variants).
+Statistic are supported only for [`*MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) engine tables (including [replicated](/core/reference/engines/table-engines/mergetree-family/replication) variants).
diff --git a/reference/statements/alter/ttl.mdx b/core/reference/statements/alter/ttl.mdx
similarity index 82%
rename from reference/statements/alter/ttl.mdx
rename to core/reference/statements/alter/ttl.mdx
index fd11fa87..2fefcab0 100644
--- a/reference/statements/alter/ttl.mdx
+++ b/core/reference/statements/alter/ttl.mdx
@@ -7,12 +7,12 @@ doc_type: 'reference'
---
-If you are looking for details on using TTL for managing old data, check out the [Manage Data with TTL](/concepts/operations/delete/ttl) user guide. The docs below demonstrate how to alter or remove an existing TTL rule.
+If you are looking for details on using TTL for managing old data, check out the [Manage Data with TTL](/core/concepts/features/operations/delete/ttl) user guide. The docs below demonstrate how to alter or remove an existing TTL rule.
## MODIFY TTL {#modify-ttl}
-You can change [table TTL](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-table-ttl) with a request of the following form:
+You can change [table TTL](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-table-ttl) with a request of the following form:
```sql
ALTER TABLE [db.]table_name [ON CLUSTER cluster] MODIFY TTL ttl_expression;
@@ -86,5 +86,5 @@ The `TTL` is no longer there, so the second row is not deleted:
**See Also**
-- More about the [TTL-expression](/reference/statements/create/table#ttl-expression).
-- Modify column [with TTL](/reference/statements/alter/ttl).
+- More about the [TTL-expression](/core/reference/statements/create/table#ttl-expression).
+- Modify column [with TTL](/core/reference/statements/alter/ttl).
diff --git a/reference/statements/alter/update.mdx b/core/reference/statements/alter/update.mdx
similarity index 66%
rename from reference/statements/alter/update.mdx
rename to core/reference/statements/alter/update.mdx
index 2f47834e..bb465052 100644
--- a/reference/statements/alter/update.mdx
+++ b/core/reference/statements/alter/update.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
ALTER TABLE [db.]table [ON CLUSTER cluster] UPDATE column1 = expr1 [, ...] [IN PARTITION partition_id] WHERE filter_expr
```
-Manipulates data matching the specified filtering expression. Implemented as a [mutation](/reference/statements/alter#mutations).
+Manipulates data matching the specified filtering expression. Implemented as a [mutation](/core/reference/statements/alter#mutations).
****
@@ -22,15 +22,15 @@ The `filter_expr` must be of type `UInt8`. This query updates values of specifie
One query can contain several commands separated by commas.
-The synchronicity of the query processing is defined by the [mutations_sync](/reference/settings/session-settings#mutations_sync) setting. By default, it is asynchronous.
+The synchronicity of the query processing is defined by the [mutations_sync](/core/reference/settings/session-settings#mutations_sync) setting. By default, it is asynchronous.
**See also**
-- [Mutations](/reference/statements/alter#mutations)
-- [Synchronicity of ALTER Queries](/reference/statements/alter#synchronicity-of-alter-queries)
-- [mutations_sync](/reference/settings/session-settings#mutations_sync) setting
-- [Lightweight `UPDATE`](/reference/statements/update) - Alternative lightweight update using patch parts
-- [`APPLY PATCHES`](/reference/statements/alter/apply-patches) - Manually apply patches from lightweight updates
+- [Mutations](/core/reference/statements/alter#mutations)
+- [Synchronicity of ALTER Queries](/core/reference/statements/alter#synchronicity-of-alter-queries)
+- [mutations_sync](/core/reference/settings/session-settings#mutations_sync) setting
+- [Lightweight `UPDATE`](/core/reference/statements/update) - Alternative lightweight update using patch parts
+- [`APPLY PATCHES`](/core/reference/statements/alter/apply-patches) - Manually apply patches from lightweight updates
## Related content {#related-content}
diff --git a/reference/statements/alter/user.mdx b/core/reference/statements/alter/user.mdx
similarity index 93%
rename from reference/statements/alter/user.mdx
rename to core/reference/statements/alter/user.mdx
index e21f167c..41607529 100644
--- a/reference/statements/alter/user.mdx
+++ b/core/reference/statements/alter/user.mdx
@@ -27,11 +27,11 @@ ALTER USER [IF EXISTS] name1 [RENAME TO new_name |, name2 [,...]]
[ADD PROFILES 'profile_name' [,...] ]
```
-To use `ALTER USER` you must have the [ALTER USER](/reference/statements/grant#access-management) privilege.
+To use `ALTER USER` you must have the [ALTER USER](/core/reference/statements/grant#access-management) privilege.
## GRANTEES Clause {#grantees-clause}
-Specifies users or roles which are allowed to receive [privileges](/reference/statements/grant#privileges) from this user on the condition this user has also all required access granted with [GRANT OPTION](/reference/statements/grant#granting-privilege-syntax). Options of the `GRANTEES` clause:
+Specifies users or roles which are allowed to receive [privileges](/core/reference/statements/grant#privileges) from this user on the condition this user has also all required access granted with [GRANT OPTION](/core/reference/statements/grant#granting-privilege-syntax). Options of the `GRANTEES` clause:
- `user` — Specifies a user this user can grant privileges to.
- `role` — Specifies a role this user can grant privileges to.
diff --git a/reference/statements/alter/view.mdx b/core/reference/statements/alter/view.mdx
similarity index 93%
rename from reference/statements/alter/view.mdx
rename to core/reference/statements/alter/view.mdx
index 56cfb0f6..0f08b473 100644
--- a/reference/statements/alter/view.mdx
+++ b/core/reference/statements/alter/view.mdx
@@ -6,7 +6,7 @@ title: 'ALTER TABLE ... MODIFY QUERY Statement'
doc_type: 'reference'
---
-You can modify `SELECT` query that was specified when a [materialized view](/reference/statements/create/view#materialized-view) was created with the `ALTER TABLE ... MODIFY QUERY` statement without interrupting ingestion process.
+You can modify `SELECT` query that was specified when a [materialized view](/core/reference/statements/create/view#materialized-view) was created with the `ALTER TABLE ... MODIFY QUERY` statement without interrupting ingestion process.
This command is created to change materialized view created with `TO [db.]name` clause. It does not change the structure of the underlying storage table and it does not change the columns' definition of the materialized view, because of this the application of this command is very limited for materialized views are created without `TO [db.]name` clause.
@@ -192,7 +192,7 @@ SELECT * FROM mv;
## ALTER TABLE ... MODIFY REFRESH Statement {#alter-table--modify-refresh-statement}
-`ALTER TABLE ... MODIFY REFRESH` changes refresh parameters of a [Refreshable Materialized View](/reference/statements/create/view#refreshable-materialized-view), including the schedule, dependencies, randomization, and [refresh settings](/reference/statements/create/view#refresh-settings).
+`ALTER TABLE ... MODIFY REFRESH` changes refresh parameters of a [Refreshable Materialized View](/core/reference/statements/create/view#refreshable-materialized-view), including the schedule, dependencies, randomization, and [refresh settings](/core/reference/statements/create/view#refresh-settings).
```sql
ALTER TABLE [db.]name MODIFY REFRESH EVERY|AFTER ... [RANDOMIZE FOR ...] [DEPENDS ON ...] [SETTINGS ...]
@@ -223,4 +223,4 @@ Limitations:
- Adding or removing `APPEND` is not supported.
- The `all_replicas` refresh setting cannot be changed after the view is created.
-The full list of refresh settings is documented in [Refresh Settings](/reference/statements/create/view#refresh-settings). Refresh status, including the currently applied settings, is visible in [`system.view_refreshes`](/reference/system-tables/view_refreshes).
+The full list of refresh settings is documented in [Refresh Settings](/core/reference/statements/create/view#refresh-settings). Refresh status, including the currently applied settings, is visible in [`system.view_refreshes`](/core/reference/system-tables/view_refreshes).
diff --git a/reference/statements/attach.mdx b/core/reference/statements/attach.mdx
similarity index 94%
rename from reference/statements/attach.mdx
rename to core/reference/statements/attach.mdx
index 59b3fdfd..bacb87ac 100644
--- a/reference/statements/attach.mdx
+++ b/core/reference/statements/attach.mdx
@@ -16,7 +16,7 @@ ATTACH TABLE|DICTIONARY|DATABASE [IF NOT EXISTS] [db.]name [ON CLUSTER cluster]
The query does not create data on disk, but assumes that data is already in the appropriate places, and just adds information about the specified table, dictionary or database to the server. After executing the `ATTACH` query, the server will know about the existence of the table, dictionary or database.
-If a table was previously detached ([DETACH](/reference/statements/detach) query), meaning that its structure is known, you can use shorthand without defining the structure.
+If a table was previously detached ([DETACH](/core/reference/statements/detach) query), meaning that its structure is known, you can use shorthand without defining the structure.
## Attach Existing Table {#attach-existing-table}
@@ -60,7 +60,7 @@ SELECT * FROM test;
### With Specified Table UUID {#with-specified-table-uuid}
This query creates a new table with provided structure and attaches data from the table with the specified UUID.
-It is supported by the [Atomic](/reference/engines/database-engines/atomic) database engine.
+It is supported by the [Atomic](/core/reference/engines/database-engines/atomic) database engine.
**Syntax**
diff --git a/reference/statements/check-grant.mdx b/core/reference/statements/check-grant.mdx
similarity index 91%
rename from reference/statements/check-grant.mdx
rename to core/reference/statements/check-grant.mdx
index ef2b9398..190796d2 100644
--- a/reference/statements/check-grant.mdx
+++ b/core/reference/statements/check-grant.mdx
@@ -44,4 +44,4 @@ CHECK GRANT SELECT(col2) ON table_2;
```
## Wildcard {#wildcard}
-Specifying privileges you can use asterisk (`*`) instead of a table or a database name. Please check [WILDCARD GRANTS](/reference/statements/grant#wildcard-grants) for wildcard rules.
+Specifying privileges you can use asterisk (`*`) instead of a table or a database name. Please check [WILDCARD GRANTS](/core/reference/statements/grant#wildcard-grants) for wildcard rules.
diff --git a/reference/statements/check-table.mdx b/core/reference/statements/check-table.mdx
similarity index 94%
rename from reference/statements/check-table.mdx
rename to core/reference/statements/check-table.mdx
index 4c1d220b..83d37a96 100644
--- a/reference/statements/check-table.mdx
+++ b/core/reference/statements/check-table.mdx
@@ -29,7 +29,7 @@ CHECK TABLE table_name [PARTITION partition_expression | PART part_name] [FORMAT
- `part_name`: (Optional) If you want to check a specific part in the table, you can add string literal to specify a part name.
- `FORMAT format`: (Optional) Allows you to specify the output format of the result.
- `SETTINGS`: (Optional) Allows additional settings.
- - (Optional): [check_query_single_value_result](/reference/settings/session-settings#check_query_single_value_result): This setting controls if the output is detailed (`0`) or summarized (`1`).
+ - (Optional): [check_query_single_value_result](/core/reference/settings/session-settings#check_query_single_value_result): This setting controls if the output is detailed (`0`) or summarized (`1`).
- Other settings can be applied as well. If you don't require a deterministic order for the results, you can set max_threads to a value greater than one to speed up the query.
The query response depends on the value of the `check_query_single_value_result` setting.
@@ -42,10 +42,10 @@ With `check_query_single_value_result = 0` the query returns the following colum
The `CHECK TABLE` query supports the following table engines:
-- [Log](/reference/engines/table-engines/log-family/log)
-- [TinyLog](/reference/engines/table-engines/log-family/tinylog)
-- [StripeLog](/reference/engines/table-engines/log-family/stripelog)
-- [MergeTree family](/reference/engines/table-engines/mergetree-family/mergetree)
+- [Log](/core/reference/engines/table-engines/log-family/log)
+- [TinyLog](/core/reference/engines/table-engines/log-family/tinylog)
+- [StripeLog](/core/reference/engines/table-engines/log-family/stripelog)
+- [MergeTree family](/core/reference/engines/table-engines/mergetree-family/mergetree)
Performed over the tables with another table engines causes an `NOT_IMPLEMENTED` exception.
diff --git a/reference/statements/create/database.mdx b/core/reference/statements/create/database.mdx
similarity index 85%
rename from reference/statements/create/database.mdx
rename to core/reference/statements/create/database.mdx
index 97bdb189..7a56e3b4 100644
--- a/reference/statements/create/database.mdx
+++ b/core/reference/statements/create/database.mdx
@@ -23,11 +23,11 @@ If the `db_name` database already exists, then ClickHouse does not create a new
### ON CLUSTER {#on-cluster}
-ClickHouse creates the `db_name` database on all the servers of a specified cluster. More details in a [Distributed DDL](/reference/statements/distributed-ddl) article.
+ClickHouse creates the `db_name` database on all the servers of a specified cluster. More details in a [Distributed DDL](/core/reference/statements/distributed-ddl) article.
### ENGINE {#engine}
-By default, ClickHouse uses its own [Atomic](/reference/engines/database-engines/atomic) database engine. There are also [MySQL](/reference/engines/database-engines/mysql), [PostgresSQL](/reference/engines/database-engines/postgresql), [MaterializedPostgreSQL](/reference/engines/database-engines/materialized-postgresql), [Replicated](/reference/engines/database-engines/replicated), [SQLite](/reference/engines/database-engines/sqlite).
+By default, ClickHouse uses its own [Atomic](/core/reference/engines/database-engines/atomic) database engine. There are also [MySQL](/core/reference/engines/database-engines/mysql), [PostgresSQL](/core/reference/engines/database-engines/postgresql), [MaterializedPostgreSQL](/core/reference/engines/database-engines/materialized-postgresql), [Replicated](/core/reference/engines/database-engines/replicated), [SQLite](/core/reference/engines/database-engines/sqlite).
### COMMENT {#comment}
diff --git a/reference/statements/create/dictionary.mdx b/core/reference/statements/create/dictionary.mdx
similarity index 70%
rename from reference/statements/create/dictionary.mdx
rename to core/reference/statements/create/dictionary.mdx
index 6482e132..478bfaec 100644
--- a/reference/statements/create/dictionary.mdx
+++ b/core/reference/statements/create/dictionary.mdx
@@ -47,12 +47,12 @@ COMMENT 'Comment'
| Clause | Description |
|---|---|
-| [Attributes](/reference/statements/create/dictionary/attributes) | Dictionary attributes are specified similarly to table columns. The only required property is the type, all others may have default values. |
+| [Attributes](/core/reference/statements/create/dictionary/attributes) | Dictionary attributes are specified similarly to table columns. The only required property is the type, all others may have default values. |
| PRIMARY KEY | Defines the key column(s) for dictionary lookups. Depending on the layout, one or more attributes can be specified as keys. |
-| [`SOURCE`](/reference/statements/create/dictionary/sources/overview) | Defines the data source for the dictionary (e.g. ClickHouse table, HTTP, PostgreSQL). |
-| [`LAYOUT`](/reference/statements/create/dictionary/layouts/overview) | Controls how the dictionary is stored in memory (e.g. `FLAT`, `HASHED`, `CACHE`). |
-| [`LIFETIME`](/reference/statements/create/dictionary/lifetime) | Sets the refresh interval for the dictionary. |
-| [`ON CLUSTER`](/reference/statements/distributed-ddl) | Creates the dictionary on a cluster. Optional. |
+| [`SOURCE`](/core/reference/statements/create/dictionary/sources/overview) | Defines the data source for the dictionary (e.g. ClickHouse table, HTTP, PostgreSQL). |
+| [`LAYOUT`](/core/reference/statements/create/dictionary/layouts/overview) | Controls how the dictionary is stored in memory (e.g. `FLAT`, `HASHED`, `CACHE`). |
+| [`LIFETIME`](/core/reference/statements/create/dictionary/lifetime) | Sets the refresh interval for the dictionary. |
+| [`ON CLUSTER`](/core/reference/statements/distributed-ddl) | Creates the dictionary on a cluster. Optional. |
| `SETTINGS` | Additional dictionary settings. Optional. |
| `COMMENT` | Adds a text comment to the dictionary. Optional. |
@@ -85,9 +85,9 @@ You can configure any number of dictionaries in the same file.
## Related content {#related-content}
-- [Layouts](/reference/statements/create/dictionary/layouts/overview) — How dictionaries are stored in memory
-- [Sources](/reference/statements/create/dictionary/sources/overview) — Connecting to data sources
-- [Lifetime](/reference/statements/create/dictionary/lifetime) — Automatic refresh configuration
-- [Attributes](/reference/statements/create/dictionary/attributes) — Key and attribute configuration
-- [Embedded Dictionaries](/reference/statements/create/dictionary/embedded) — Built-in geobase dictionaries
-- [system.dictionaries](/reference/system-tables/dictionaries) — System table with dictionary information
+- [Layouts](/core/reference/statements/create/dictionary/layouts/overview) — How dictionaries are stored in memory
+- [Sources](/core/reference/statements/create/dictionary/sources/overview) — Connecting to data sources
+- [Lifetime](/core/reference/statements/create/dictionary/lifetime) — Automatic refresh configuration
+- [Attributes](/core/reference/statements/create/dictionary/attributes) — Key and attribute configuration
+- [Embedded Dictionaries](/core/reference/statements/create/dictionary/embedded) — Built-in geobase dictionaries
+- [system.dictionaries](/core/reference/system-tables/dictionaries) — System table with dictionary information
diff --git a/reference/statements/create/dictionary/attributes.mdx b/core/reference/statements/create/dictionary/attributes.mdx
similarity index 83%
rename from reference/statements/create/dictionary/attributes.mdx
rename to core/reference/statements/create/dictionary/attributes.mdx
index e94f622a..f1e23282 100644
--- a/reference/statements/create/dictionary/attributes.mdx
+++ b/core/reference/statements/create/dictionary/attributes.mdx
@@ -96,7 +96,7 @@ PRIMARY KEY Id
### Composite Key {#composite-key}
-The key can be a `tuple` from any types of fields. The [layout](/reference/statements/create/dictionary/layouts/overview) in this case must be `complex_key_hashed` or `complex_key_cache`.
+The key can be a `tuple` from any types of fields. The [layout](/core/reference/statements/create/dictionary/layouts/overview) in this case must be `complex_key_hashed` or `complex_key_cache`.
A composite key can consist of a single element. This makes it possible to use a string as the key, for instance.
@@ -166,9 +166,9 @@ Configuration fields:
| Tag | Description | Required |
|------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------|
| `name` | Column name. | Yes |
-| `type` | ClickHouse data type: [UInt8](/reference/data-types/int-uint), [UInt16](/reference/data-types/int-uint), [UInt32](/reference/data-types/int-uint), [UInt64](/reference/data-types/int-uint), [Int8](/reference/data-types/int-uint), [Int16](/reference/data-types/int-uint), [Int32](/reference/data-types/int-uint), [Int64](/reference/data-types/int-uint), [Float32](/reference/data-types/float), [Float64](/reference/data-types/float), [UUID](/reference/data-types/uuid), [Decimal32](/reference/data-types/decimal), [Decimal64](/reference/data-types/decimal), [Decimal128](/reference/data-types/decimal), [Decimal256](/reference/data-types/decimal),[Date](/reference/data-types/date), [Date32](/reference/data-types/date32), [DateTime](/reference/data-types/datetime), [DateTime64](/reference/data-types/datetime64), [String](/reference/data-types/string), [Array](/reference/data-types/array). ClickHouse tries to cast value from dictionary to the specified data type. For example, for MySQL, the field might be `TEXT`, `VARCHAR`, or `BLOB` in the MySQL source table, but it can be uploaded as `String` in ClickHouse. [Nullable](/reference/data-types/nullable) is currently supported for [Flat](/reference/statements/create/dictionary/layouts/flat), [Hashed](/reference/statements/create/dictionary/layouts/hashed), [ComplexKeyHashed](/reference/statements/create/dictionary/layouts/hashed#complex_key_hashed), [Direct](/reference/statements/create/dictionary/layouts/direct), [ComplexKeyDirect](/reference/statements/create/dictionary/layouts/direct#complex_key_direct), [RangeHashed](/reference/statements/create/dictionary/layouts/range-hashed), Polygon, [Cache](/reference/statements/create/dictionary/layouts/cache), [ComplexKeyCache](/reference/statements/create/dictionary/layouts/cache), [SSDCache](/reference/statements/create/dictionary/layouts/ssd-cache), [SSDComplexKeyCache](/reference/statements/create/dictionary/layouts/ssd-cache#complex_key_ssd_cache) dictionaries. In [IPTrie](/reference/statements/create/dictionary/layouts/ip-trie) dictionaries `Nullable` types are not supported. | Yes |
-| `null_value` | Default value for a non-existing element. In the example, it is an empty string. [NULL](/reference/syntax#null) value can be used only for the `Nullable` types (see the previous line with types description). | Yes |
-| `expression` | [Expression](/reference/syntax#expressions) that ClickHouse executes on the value. The expression can be a column name in the remote SQL database. Thus, you can use it to create an alias for the remote column.
Default value: no expression. | No |
-| `hierarchical` | If `true`, the attribute contains the value of a parent key for the current key. See [Hierarchical Dictionaries](/reference/statements/create/dictionary/layouts/hierarchical).
Default value: `false`. | No |
+| `type` | ClickHouse data type: [UInt8](/core/reference/data-types/int-uint), [UInt16](/core/reference/data-types/int-uint), [UInt32](/core/reference/data-types/int-uint), [UInt64](/core/reference/data-types/int-uint), [Int8](/core/reference/data-types/int-uint), [Int16](/core/reference/data-types/int-uint), [Int32](/core/reference/data-types/int-uint), [Int64](/core/reference/data-types/int-uint), [Float32](/core/reference/data-types/float), [Float64](/core/reference/data-types/float), [UUID](/core/reference/data-types/uuid), [Decimal32](/core/reference/data-types/decimal), [Decimal64](/core/reference/data-types/decimal), [Decimal128](/core/reference/data-types/decimal), [Decimal256](/core/reference/data-types/decimal),[Date](/core/reference/data-types/date), [Date32](/core/reference/data-types/date32), [DateTime](/core/reference/data-types/datetime), [DateTime64](/core/reference/data-types/datetime64), [String](/core/reference/data-types/string), [Array](/core/reference/data-types/array). ClickHouse tries to cast value from dictionary to the specified data type. For example, for MySQL, the field might be `TEXT`, `VARCHAR`, or `BLOB` in the MySQL source table, but it can be uploaded as `String` in ClickHouse. [Nullable](/core/reference/data-types/nullable) is currently supported for [Flat](/core/reference/statements/create/dictionary/layouts/flat), [Hashed](/core/reference/statements/create/dictionary/layouts/hashed), [ComplexKeyHashed](/core/reference/statements/create/dictionary/layouts/hashed#complex_key_hashed), [Direct](/core/reference/statements/create/dictionary/layouts/direct), [ComplexKeyDirect](/core/reference/statements/create/dictionary/layouts/direct#complex_key_direct), [RangeHashed](/core/reference/statements/create/dictionary/layouts/range-hashed), Polygon, [Cache](/core/reference/statements/create/dictionary/layouts/cache), [ComplexKeyCache](/core/reference/statements/create/dictionary/layouts/cache), [SSDCache](/core/reference/statements/create/dictionary/layouts/ssd-cache), [SSDComplexKeyCache](/core/reference/statements/create/dictionary/layouts/ssd-cache#complex_key_ssd_cache) dictionaries. In [IPTrie](/core/reference/statements/create/dictionary/layouts/ip-trie) dictionaries `Nullable` types are not supported. | Yes |
+| `null_value` | Default value for a non-existing element. In the example, it is an empty string. [NULL](/core/reference/syntax#null) value can be used only for the `Nullable` types (see the previous line with types description). | Yes |
+| `expression` | [Expression](/core/reference/syntax#expressions) that ClickHouse executes on the value. The expression can be a column name in the remote SQL database. Thus, you can use it to create an alias for the remote column.
Default value: no expression. | No |
+| `hierarchical` | If `true`, the attribute contains the value of a parent key for the current key. See [Hierarchical Dictionaries](/core/reference/statements/create/dictionary/layouts/hierarchical).
Default value: `false`. | No |
| `injective` | Flag that shows whether the `id -> attribute` image is [injective](https://en.wikipedia.org/wiki/Injective_function). If `true`, ClickHouse can automatically place after the `GROUP BY` clause the requests to dictionaries with injection. Usually it significantly reduces the amount of such requests.
Default value: `false`. | No |
| `is_object_id` | Flag that shows whether the query is executed for a MongoDB document by `ObjectID`.
Default value: `false`.
diff --git a/reference/statements/create/dictionary/embedded.mdx b/core/reference/statements/create/dictionary/embedded.mdx
similarity index 100%
rename from reference/statements/create/dictionary/embedded.mdx
rename to core/reference/statements/create/dictionary/embedded.mdx
diff --git a/reference/statements/create/dictionary/layouts/cache.mdx b/core/reference/statements/create/dictionary/layouts/cache.mdx
similarity index 85%
rename from reference/statements/create/dictionary/layouts/cache.mdx
rename to core/reference/statements/create/dictionary/layouts/cache.mdx
index 8160e3be..5a6ce1fb 100644
--- a/reference/statements/create/dictionary/layouts/cache.mdx
+++ b/core/reference/statements/create/dictionary/layouts/cache.mdx
@@ -9,15 +9,15 @@ doc_type: 'reference'
The `cached` dictionary layout type is stores the dictionary in a cache that has a fixed number of cells.
These cells contain frequently used elements.
-The dictionary key has the [UInt64](/reference/data-types/int-uint) type.
+The dictionary key has the [UInt64](/core/reference/data-types/int-uint) type.
When searching for a dictionary, the cache is searched first. For each block of data, all keys that are not found in the cache or are outdated are requested from the source using `SELECT attrs... FROM db.table WHERE id IN (k1, k2, ...)`. The received data is then written to the cache.
If keys are not found in dictionary, then update cache task is created and added into update queue. Update queue properties can be controlled with settings `max_update_queue_size`, `update_queue_push_timeout_milliseconds`, `query_wait_timeout_milliseconds`, `max_threads_for_updates`.
-For cache dictionaries, the expiration [lifetime](/reference/statements/create/dictionary/lifetime) of data in the cache can be set. If more time than `lifetime` has passed since loading the data in a cell, the cell's value is not used and key becomes expired. The key is re-requested the next time it needs to be used. This behaviour can be configured with setting `allow_read_expired_keys`.
+For cache dictionaries, the expiration [lifetime](/core/reference/statements/create/dictionary/lifetime) of data in the cache can be set. If more time than `lifetime` has passed since loading the data in a cell, the cell's value is not used and key becomes expired. The key is re-requested the next time it needs to be used. This behaviour can be configured with setting `allow_read_expired_keys`.
-This is the least effective of all the ways to store dictionaries. The speed of the cache depends strongly on correct settings and the usage scenario. A cache type dictionary performs well only when the hit rates are high enough (recommended 99% and higher). You can view the average hit rate in the [system.dictionaries](/reference/system-tables/dictionaries) table.
+This is the least effective of all the ways to store dictionaries. The speed of the cache depends strongly on correct settings and the usage scenario. A cache type dictionary performs well only when the hit rates are high enough (recommended 99% and higher). You can view the average hit rate in the [system.dictionaries](/core/reference/system-tables/dictionaries) table.
If setting `allow_read_expired_keys` is set to 1, by default 0. Then dictionary can support asynchronous updates. If a client requests keys and all of them are in cache, but some of them are expired, then dictionary will return expired keys for a client and request them asynchronously from the source.
diff --git a/reference/statements/create/dictionary/layouts/direct.mdx b/core/reference/statements/create/dictionary/layouts/direct.mdx
similarity index 62%
rename from reference/statements/create/dictionary/layouts/direct.mdx
rename to core/reference/statements/create/dictionary/layouts/direct.mdx
index 53890209..c838bba8 100644
--- a/reference/statements/create/dictionary/layouts/direct.mdx
+++ b/core/reference/statements/create/dictionary/layouts/direct.mdx
@@ -10,9 +10,9 @@ doc_type: 'reference'
The dictionary is not stored in memory and directly goes to the source during the processing of a request.
-The dictionary key has the [UInt64](/reference/data-types/int-uint) type.
+The dictionary key has the [UInt64](/core/reference/data-types/int-uint) type.
-All types of [sources](/reference/statements/create/dictionary/sources/overview#dictionary-sources), except local files, are supported.
+All types of [sources](/core/reference/statements/create/dictionary/sources/overview#dictionary-sources), except local files, are supported.
Configuration example:
@@ -38,4 +38,4 @@ LAYOUT(DIRECT())
## complex_key_direct {#complex_key_direct}
-This type of storage is for use with composite [keys](/reference/statements/create/dictionary/attributes#composite-key). Similar to `direct`.
+This type of storage is for use with composite [keys](/core/reference/statements/create/dictionary/attributes#composite-key). Similar to `direct`.
diff --git a/reference/statements/create/dictionary/layouts/flat.mdx b/core/reference/statements/create/dictionary/layouts/flat.mdx
similarity index 89%
rename from reference/statements/create/dictionary/layouts/flat.mdx
rename to core/reference/statements/create/dictionary/layouts/flat.mdx
index 5793ad71..32d31e20 100644
--- a/reference/statements/create/dictionary/layouts/flat.mdx
+++ b/core/reference/statements/create/dictionary/layouts/flat.mdx
@@ -13,7 +13,7 @@ The amount of memory used is proportional to the size of the largest key (in spa
This layout type provides the best performance among all available methods of storing a dictionary.
-The dictionary key has the [UInt64](/reference/data-types/int-uint) type and the value is limited to `max_array_size` (by default — 500,000).
+The dictionary key has the [UInt64](/core/reference/data-types/int-uint) type and the value is limited to `max_array_size` (by default — 500,000).
If a larger key is discovered when creating the dictionary, ClickHouse throws an exception and does not create the dictionary.
The initial size of dictionary flat arrays are controlled by the `initial_array_size` setting (by default — 1024).
diff --git a/reference/statements/create/dictionary/layouts/hashed-array.mdx b/core/reference/statements/create/dictionary/layouts/hashed-array.mdx
similarity index 83%
rename from reference/statements/create/dictionary/layouts/hashed-array.mdx
rename to core/reference/statements/create/dictionary/layouts/hashed-array.mdx
index 29c781c9..90e8cca8 100644
--- a/reference/statements/create/dictionary/layouts/hashed-array.mdx
+++ b/core/reference/statements/create/dictionary/layouts/hashed-array.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
The dictionary is completely stored in memory. Each attribute is stored in an array. The key attribute is stored in the form of a hashed table where value is an index in the attributes array. The dictionary can contain any number of elements with any identifiers. In practice, the number of keys can reach tens of millions of items.
-The dictionary key has the [UInt64](/reference/data-types/int-uint) type.
+The dictionary key has the [UInt64](/core/reference/data-types/int-uint) type.
All types of sources are supported. When updating, data (from a file or from a table) is read in its entirety.
@@ -39,7 +39,7 @@ LAYOUT(HASHED_ARRAY([SHARDS 1]))
## complex_key_hashed_array {#complex_key_hashed_array}
-This type of storage is for use with composite [keys](/reference/statements/create/dictionary/attributes#composite-key). Similar to [hashed_array](#hashed_array).
+This type of storage is for use with composite [keys](/core/reference/statements/create/dictionary/attributes#composite-key). Similar to [hashed_array](#hashed_array).
Configuration example:
diff --git a/reference/statements/create/dictionary/layouts/hashed.mdx b/core/reference/statements/create/dictionary/layouts/hashed.mdx
similarity index 88%
rename from reference/statements/create/dictionary/layouts/hashed.mdx
rename to core/reference/statements/create/dictionary/layouts/hashed.mdx
index 1968539d..fe17835a 100644
--- a/reference/statements/create/dictionary/layouts/hashed.mdx
+++ b/core/reference/statements/create/dictionary/layouts/hashed.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
The dictionary is completely stored in memory in the form of a hash table. The dictionary can contain any number of elements with any identifiers. In practice, the number of keys can reach tens of millions of items.
-The dictionary key has the [UInt64](/reference/data-types/int-uint) type.
+The dictionary key has the [UInt64](/core/reference/data-types/int-uint) type.
All types of sources are supported. When updating, data (from a file or from a table) is read in its entirety.
@@ -85,7 +85,7 @@ LAYOUT(HASHED([SHARDS 1] [SHARD_LOAD_QUEUE_BACKLOG 10000] [MAX_LOAD_FACTOR 0.5])
Similar to `hashed`, but uses less memory in favor more CPU usage.
-The dictionary key has the [UInt64](/reference/data-types/int-uint) type.
+The dictionary key has the [UInt64](/core/reference/data-types/int-uint) type.
Configuration example:
@@ -117,7 +117,7 @@ It is also possible to use `shards` for this type of dictionary, and again it is
## complex_key_hashed {#complex_key_hashed}
-This type of storage is for use with composite [keys](/reference/statements/create/dictionary/attributes#composite-key). Similar to `hashed`.
+This type of storage is for use with composite [keys](/core/reference/statements/create/dictionary/attributes#composite-key). Similar to `hashed`.
Configuration example:
@@ -147,7 +147,7 @@ LAYOUT(COMPLEX_KEY_HASHED([SHARDS 1] [SHARD_LOAD_QUEUE_BACKLOG 10000] [MAX_LOAD_
## complex_key_sparse_hashed {#complex_key_sparse_hashed}
-This type of storage is for use with composite [keys](/reference/statements/create/dictionary/attributes#composite-key). Similar to [sparse_hashed](#sparse_hashed).
+This type of storage is for use with composite [keys](/core/reference/statements/create/dictionary/attributes#composite-key). Similar to [sparse_hashed](#sparse_hashed).
Configuration example:
diff --git a/reference/statements/create/dictionary/layouts/hierarchical.mdx b/core/reference/statements/create/dictionary/layouts/hierarchical.mdx
similarity index 90%
rename from reference/statements/create/dictionary/layouts/hierarchical.mdx
rename to core/reference/statements/create/dictionary/layouts/hierarchical.mdx
index e9209107..fa5be7cd 100644
--- a/reference/statements/create/dictionary/layouts/hierarchical.mdx
+++ b/core/reference/statements/create/dictionary/layouts/hierarchical.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
## Hierarchical dictionaries {#hierarchical-dictionaries}
-ClickHouse supports hierarchical dictionaries with a [numeric key](/reference/statements/create/dictionary/attributes#numeric-key).
+ClickHouse supports hierarchical dictionaries with a [numeric key](/core/reference/statements/create/dictionary/attributes#numeric-key).
Look at the following hierarchical structure:
@@ -40,7 +40,7 @@ This table contains a column `parent_region` that contains the key of the neares
ClickHouse supports the hierarchical property for external dictionary attributes. This property allows you to configure the hierarchical dictionary similar to described above.
-The [dictGetHierarchy](/reference/functions/regular-functions/ext-dict-functions#dictGetHierarchy) function allows you to get the parent chain of an element.
+The [dictGetHierarchy](/core/reference/functions/regular-functions/ext-dict-functions#dictGetHierarchy) function allows you to get the parent chain of an element.
For our example, the structure of the dictionary can be the following:
diff --git a/reference/statements/create/dictionary/layouts/ip-trie.mdx b/core/reference/statements/create/dictionary/layouts/ip-trie.mdx
similarity index 100%
rename from reference/statements/create/dictionary/layouts/ip-trie.mdx
rename to core/reference/statements/create/dictionary/layouts/ip-trie.mdx
diff --git a/core/reference/statements/create/dictionary/layouts/overview.mdx b/core/reference/statements/create/dictionary/layouts/overview.mdx
new file mode 100644
index 00000000..aab34a70
--- /dev/null
+++ b/core/reference/statements/create/dictionary/layouts/overview.mdx
@@ -0,0 +1,157 @@
+---
+description: 'Dictionary layout types for storing dictionaries in memory'
+sidebarTitle: 'Overview'
+slug: /sql-reference/statements/create/dictionary/layouts
+title: 'Dictionary layouts'
+doc_type: 'reference'
+---
+
+import CloudDetails from '/snippets/_snippet_dictionary_in_cloud.mdx';
+
+## Dictionary layout types {#storing-dictionaries-in-memory}
+
+There are a variety of ways to store dictionaries in memory, each with CPU and RAM-usage trade-offs.
+
+| Layout | Description |
+|---|---|
+| [flat](/core/reference/statements/create/dictionary/layouts/flat) | Stores data in flat arrays indexed by key. Fastest layout, but keys must be `UInt64` and bounded by `max_array_size`. |
+| [hashed](/core/reference/statements/create/dictionary/layouts/hashed) | Stores data in a hash table. No key size limit, supports any number of elements. |
+| [sparse_hashed](/core/reference/statements/create/dictionary/layouts/hashed#sparse_hashed) | Like `hashed`, but trades CPU for lower memory usage. |
+| [complex_key_hashed](/core/reference/statements/create/dictionary/layouts/hashed#complex_key_hashed) | Like `hashed`, for composite keys. |
+| [complex_key_sparse_hashed](/core/reference/statements/create/dictionary/layouts/hashed#complex_key_sparse_hashed) | Like `sparse_hashed`, for composite keys. |
+| [hashed_array](/core/reference/statements/create/dictionary/layouts/hashed-array) | Attributes stored in arrays with a hash table mapping keys to array indices. Memory-efficient for many attributes. |
+| [complex_key_hashed_array](/core/reference/statements/create/dictionary/layouts/hashed-array#complex_key_hashed_array) | Like `hashed_array`, for composite keys. |
+| [range_hashed](/core/reference/statements/create/dictionary/layouts/range-hashed) | Hash table with ordered ranges. Supports lookups by key + date/time range. |
+| [complex_key_range_hashed](/core/reference/statements/create/dictionary/layouts/range-hashed#complex_key_range_hashed) | Like `range_hashed`, for composite keys. |
+| [cache](/core/reference/statements/create/dictionary/layouts/cache) | Fixed-size in-memory cache. Only frequently accessed keys are stored. |
+| [complex_key_cache](/core/reference/statements/create/dictionary/layouts/hashed#complex_key_hashed) | Like `cache`, for composite keys. |
+| [ssd_cache](/core/reference/statements/create/dictionary/layouts/ssd-cache) | Like `cache`, but stores data on SSD with an in-memory index. |
+| [complex_key_ssd_cache](/core/reference/statements/create/dictionary/layouts/ssd-cache#complex_key_ssd_cache) | Like `ssd_cache`, for composite keys. |
+| [direct](/core/reference/statements/create/dictionary/layouts/direct) | No in-memory storage — queries the source directly for each request. |
+| [complex_key_direct](/core/reference/statements/create/dictionary/layouts/direct#complex_key_direct) | Like `direct`, for composite keys. |
+| [ip_trie](/core/reference/statements/create/dictionary/layouts/ip-trie) | Trie structure for fast IP prefix lookups (CIDR-based). |
+
+
+**Recommended layouts**
+
+[flat](/core/reference/statements/create/dictionary/layouts/flat), [hashed](/core/reference/statements/create/dictionary/layouts/hashed), and [complex_key_hashed](/core/reference/statements/create/dictionary/layouts/hashed#complex_key_hashed) provide the best query performance.
+Caching layouts are not recommended due to potentially poor performance and difficulty tuning parameters — see [cache](/core/reference/statements/create/dictionary/layouts/cache) for details.
+
+
+## Specify dictionary layout {#specify-dictionary-layout}
+
+
+
+You can configure a dictionary layout with the `LAYOUT` clause (for DDL) or the `layout` setting for configuration file definitions.
+
+
+
+
+```sql
+CREATE DICTIONARY (...)
+...
+LAYOUT(LAYOUT_TYPE(param value)) -- layout settings
+...
+```
+
+
+
+
+```xml
+
+
+ ...
+
+
+
+
+
+ ...
+
+
+```
+
+
+
+
+
+See also [CREATE DICTIONARY](/core/reference/statements/create/dictionary) for the full DDL syntax.
+
+Dictionaries without word `complex-key*` in a layout have a key with [UInt64](/core/reference/data-types/int-uint) type, `complex-key*` dictionaries have a composite key (complex, with arbitrary types).
+
+**Numeric key example** (column key_column has [UInt64](/core/reference/data-types/int-uint) type):
+
+
+
+
+```sql
+CREATE DICTIONARY dict_name (
+ key_column UInt64,
+ ...
+)
+PRIMARY KEY key_column
+```
+
+
+
+
+```xml
+
+
+ key_column
+
+ ...
+
+```
+
+
+
+
+
+**Composite key example** (key has one element with [String](/core/reference/data-types/string) type):
+
+
+
+
+```sql
+CREATE DICTIONARY dict_name (
+ country_code String,
+ ...
+)
+PRIMARY KEY country_code
+```
+
+
+
+
+```xml
+
+
+
+ country_code
+ String
+
+
+ ...
+
+```
+
+
+
+
+## Improve dictionary performance {#improve-performance}
+
+There are several ways to improve dictionary performance:
+
+- Call the function for working with the dictionary after `GROUP BY`.
+- Mark attributes to extract as injective.
+ An attribute is called injective if different keys correspond to different attribute values.
+ So when `GROUP BY` uses a function that fetches an attribute value by the key, this function is automatically taken out of `GROUP BY`.
+
+ClickHouse generates an exception for errors with dictionaries.
+Examples of errors can be:
+
+- The dictionary being accessed could not be loaded.
+- Error querying a `cached` dictionary.
+
+You can view the list of dictionaries and their statuses in the [system.dictionaries](/core/reference/system-tables/dictionaries) table.
diff --git a/reference/statements/create/dictionary/layouts/polygon.mdx b/core/reference/statements/create/dictionary/layouts/polygon.mdx
similarity index 94%
rename from reference/statements/create/dictionary/layouts/polygon.mdx
rename to core/reference/statements/create/dictionary/layouts/polygon.mdx
index 1f9b31ae..f6eb16b0 100644
--- a/reference/statements/create/dictionary/layouts/polygon.mdx
+++ b/core/reference/statements/create/dictionary/layouts/polygon.mdx
@@ -83,7 +83,7 @@ Points can be specified as an array or a tuple of their coordinates. In the curr
The user can upload their own data in all formats supported by ClickHouse.
-There are 3 types of [in-memory storage](/reference/statements/create/dictionary/layouts/overview#storing-dictionaries-in-memory) available:
+There are 3 types of [in-memory storage](/core/reference/statements/create/dictionary/layouts/overview#storing-dictionaries-in-memory) available:
| Layout | Description |
|---|---|
@@ -92,7 +92,7 @@ There are 3 types of [in-memory storage](/reference/statements/create/dictionary
| `POLYGON_INDEX_CELL` | Also creates the grid described above with the same options. For each leaf cell, an index is built on all polygon pieces that fall into it, allowing fast query responses. |
| `POLYGON` | Synonym for `POLYGON_INDEX_CELL`. |
-Dictionary queries are carried out using standard [functions](/reference/functions/regular-functions/ext-dict-functions) for working with dictionaries.
+Dictionary queries are carried out using standard [functions](/core/reference/functions/regular-functions/ext-dict-functions) for working with dictionaries.
An important difference is that here the keys will be the points for which you want to find the polygon containing them.
**Example**
diff --git a/reference/statements/create/dictionary/layouts/range-hashed.mdx b/core/reference/statements/create/dictionary/layouts/range-hashed.mdx
similarity index 95%
rename from reference/statements/create/dictionary/layouts/range-hashed.mdx
rename to core/reference/statements/create/dictionary/layouts/range-hashed.mdx
index e34cfa01..ca7787b3 100644
--- a/reference/statements/create/dictionary/layouts/range-hashed.mdx
+++ b/core/reference/statements/create/dictionary/layouts/range-hashed.mdx
@@ -22,7 +22,7 @@ Example: The table contains discounts for each advertiser in the format:
└───────────────┴─────────────────────┴───────────────────┴────────┘
```
-To use a sample for date ranges, define the `range_min` and `range_max` elements in the [structure](/reference/statements/create/dictionary/attributes#composite-key). These elements must contain elements `name` and `type` (if `type` is not specified, the default type will be used - Date). `type` can be any numeric type (Date / DateTime / UInt64 / Int32 / others).
+To use a sample for date ranges, define the `range_min` and `range_max` elements in the [structure](/core/reference/statements/create/dictionary/attributes#composite-key). These elements must contain elements `name` and `type` (if `type` is not specified, the default type will be used - Date). `type` can be any numeric type (Date / DateTime / UInt64 / Int32 / others).
Values of `range_min` and `range_max` should fit in `Int64` type.
@@ -255,7 +255,7 @@ select dictGet('discounts_dict', 'amount', 3, toDate('2015-01-01')) res;
## complex_key_range_hashed {#complex_key_range_hashed}
-The dictionary is stored in memory in the form of a hash table with an ordered array of ranges and their corresponding values (see [range_hashed](#range_hashed)). This type of storage is for use with composite [keys](/reference/statements/create/dictionary/attributes#composite-key).
+The dictionary is stored in memory in the form of a hash table with an ordered array of ranges and their corresponding values (see [range_hashed](#range_hashed)). This type of storage is for use with composite [keys](/core/reference/statements/create/dictionary/attributes#composite-key).
Configuration example:
diff --git a/reference/statements/create/dictionary/layouts/regexp-tree.mdx b/core/reference/statements/create/dictionary/layouts/regexp-tree.mdx
similarity index 91%
rename from reference/statements/create/dictionary/layouts/regexp-tree.mdx
rename to core/reference/statements/create/dictionary/layouts/regexp-tree.mdx
index 729c7714..fae6a7b4 100644
--- a/reference/statements/create/dictionary/layouts/regexp-tree.mdx
+++ b/core/reference/statements/create/dictionary/layouts/regexp-tree.mdx
@@ -20,7 +20,7 @@ It's optimized for pattern-match lookups (e.g. classifying strings like user age
-Regular expression tree dictionaries are defined in ClickHouse open-source using the [`YAMLRegExpTree`](/reference/statements/create/dictionary/sources/yamlregexptree) source which is provided the path to a YAML file containing the regular expression tree.
+Regular expression tree dictionaries are defined in ClickHouse open-source using the [`YAMLRegExpTree`](/core/reference/statements/create/dictionary/sources/yamlregexptree) source which is provided the path to a YAML file containing the regular expression tree.
```sql title="Query"
CREATE DICTIONARY regexp_dict
@@ -35,7 +35,7 @@ LAYOUT(regexp_tree)
...
```
-The dictionary source [`YAMLRegExpTree`](/reference/statements/create/dictionary/sources/yamlregexptree) represents the structure of a regexp tree. For example:
+The dictionary source [`YAMLRegExpTree`](/core/reference/statements/create/dictionary/sources/yamlregexptree) represents the structure of a regexp tree. For example:
```yaml
- regexp: 'Linux/(\d+[\.\d]*).+tlinux'
@@ -83,7 +83,7 @@ ClickHouse supports [uap-core](https://github.com/ua-parser/uap-core) and you ca
### Collecting attribute values {#collecting-attribute-values}
-Sometimes it is useful to return values from multiple regular expressions that matched, rather than just the value of a leaf node. In these cases, the specialized [`dictGetAll`](/reference/functions/regular-functions/ext-dict-functions#dictGetAll) function can be used. If a node has an attribute value of type `T`, `dictGetAll` will return an `Array(T)` containing zero or more values.
+Sometimes it is useful to return values from multiple regular expressions that matched, rather than just the value of a leaf node. In these cases, the specialized [`dictGetAll`](/core/reference/functions/regular-functions/ext-dict-functions#dictGetAll) function can be used. If a node has an attribute value of type `T`, `dictGetAll` will return an `Array(T)` containing zero or more values.
By default, the number of matches returned per key is unbounded. A bound can be passed as an optional fourth argument to `dictGetAll`. The array is populated in _topological order_, meaning that child nodes come before parent nodes, and sibling nodes follow the ordering in the source.
@@ -148,8 +148,8 @@ Pattern matching behavior can be modified with certain dictionary settings:
## Use regular expression tree dictionary in ClickHouse Cloud {#use-regular-expression-tree-dictionary-in-clickhouse-cloud}
-The [`YAMLRegExpTree`](/reference/statements/create/dictionary/sources/yamlregexptree) source works in ClickHouse Open Source but not in ClickHouse Cloud.
-To use regexp tree dictionaries in ClickHouse Cloud, first create a regexp tree dictionary from a YAML file locally in ClickHouse Open Source, then dump this dictionary into a CSV file using the `dictionary` table function and the [INTO OUTFILE](/reference/statements/select/into-outfile) clause.
+The [`YAMLRegExpTree`](/core/reference/statements/create/dictionary/sources/yamlregexptree) source works in ClickHouse Open Source but not in ClickHouse Cloud.
+To use regexp tree dictionaries in ClickHouse Cloud, first create a regexp tree dictionary from a YAML file locally in ClickHouse Open Source, then dump this dictionary into a CSV file using the `dictionary` table function and the [INTO OUTFILE](/core/reference/statements/select/into-outfile) clause.
```sql
SELECT * FROM dictionary(regexp_dict) INTO OUTFILE('regexp_dict.csv')
diff --git a/reference/statements/create/dictionary/layouts/ssd-cache.mdx b/core/reference/statements/create/dictionary/layouts/ssd-cache.mdx
similarity index 86%
rename from reference/statements/create/dictionary/layouts/ssd-cache.mdx
rename to core/reference/statements/create/dictionary/layouts/ssd-cache.mdx
index a31eb9e8..ffd09298 100644
--- a/reference/statements/create/dictionary/layouts/ssd-cache.mdx
+++ b/core/reference/statements/create/dictionary/layouts/ssd-cache.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
Similar to `cache`, but stores data on SSD and index in RAM. All cache dictionary settings related to update queue can also be applied to SSD cache dictionaries.
-The dictionary key has the [UInt64](/reference/data-types/int-uint) type.
+The dictionary key has the [UInt64](/core/reference/data-types/int-uint) type.
@@ -46,4 +46,4 @@ LAYOUT(SSD_CACHE(BLOCK_SIZE 4096 FILE_SIZE 16777216 READ_BUFFER_SIZE 1048576
## complex_key_ssd_cache {#complex_key_ssd_cache}
-This type of storage is for use with composite [keys](/reference/statements/create/dictionary/attributes#composite-key). Similar to `ssd_cache`.
+This type of storage is for use with composite [keys](/core/reference/statements/create/dictionary/attributes#composite-key). Similar to `ssd_cache`.
diff --git a/reference/statements/create/dictionary/lifetime.mdx b/core/reference/statements/create/dictionary/lifetime.mdx
similarity index 94%
rename from reference/statements/create/dictionary/lifetime.mdx
rename to core/reference/statements/create/dictionary/lifetime.mdx
index 98227d32..c25267e8 100644
--- a/reference/statements/create/dictionary/lifetime.mdx
+++ b/core/reference/statements/create/dictionary/lifetime.mdx
@@ -14,7 +14,7 @@ ClickHouse periodically updates dictionaries based on the `LIFETIME` tag (define
During updates, the old version of a dictionary can still be queried.
Dictionary updates do not block queries, apart from when they load for first use.
If an error occurs during an update, the error is written to the server log, and queries can continue using the old version of the dictionary.
-If a dictionary update is successful, the old version of the dictionary is replaced [atomically](/concepts/core-concepts/glossary#atomicity).
+If a dictionary update is successful, the old version of the dictionary is replaced [atomically](/core/concepts/core-concepts/glossary#atomicity).
Example of settings:
@@ -63,7 +63,7 @@ LIFETIME(MIN 300 MAX 360)
If `0` and `0`, ClickHouse does not reload the dictionary by timeout.
In this case, ClickHouse can reload the dictionary earlier if the dictionary configuration file was changed or the `SYSTEM RELOAD DICTIONARY` command was executed.
-When updating the dictionaries, the ClickHouse server applies different logic depending on the type of [source](/reference/statements/create/dictionary/sources/overview):
+When updating the dictionaries, the ClickHouse server applies different logic depending on the type of [source](/core/reference/statements/create/dictionary/sources/overview):
- For a text file, it checks the time of modification. If the time differs from the previously recorded time, the dictionary is updated.
- Dictionaries from other sources are updated every time by default.
@@ -71,7 +71,7 @@ When updating the dictionaries, the ClickHouse server applies different logic de
For other sources (ODBC, PostgreSQL, ClickHouse, etc), you can set up a query that will update the dictionaries only if they really changed, rather than each time. To do this, follow these steps:
- The dictionary table must have a field that always changes when the source data is updated.
-- The settings of the source must specify a query that retrieves the changing field. The ClickHouse server interprets the query result as a row, and if this row has changed relative to its previous state, the dictionary is updated. Specify the query in the `` field in the settings for the [source](/reference/statements/create/dictionary/sources/overview).
+- The settings of the source must specify a query that retrieves the changing field. The ClickHouse server interprets the query result as a row, and if this row has changed relative to its previous state, the dictionary is updated. Specify the query in the `` field in the settings for the [source](/core/reference/statements/create/dictionary/sources/overview).
Example of settings:
diff --git a/reference/statements/create/dictionary/sources/cassandra.mdx b/core/reference/statements/create/dictionary/sources/cassandra.mdx
similarity index 100%
rename from reference/statements/create/dictionary/sources/cassandra.mdx
rename to core/reference/statements/create/dictionary/sources/cassandra.mdx
diff --git a/reference/statements/create/dictionary/sources/clickhouse.mdx b/core/reference/statements/create/dictionary/sources/clickhouse.mdx
similarity index 88%
rename from reference/statements/create/dictionary/sources/clickhouse.mdx
rename to core/reference/statements/create/dictionary/sources/clickhouse.mdx
index 268afc6e..eaa08888 100644
--- a/reference/statements/create/dictionary/sources/clickhouse.mdx
+++ b/core/reference/statements/create/dictionary/sources/clickhouse.mdx
@@ -52,14 +52,14 @@ Setting fields:
| Setting | Description |
|---------|-------------|
-| `host` | The ClickHouse host. If it is a local host, the query is processed without any network activity. To improve fault tolerance, you can create a [Distributed](/reference/engines/table-engines/special/distributed) table and enter it in subsequent configurations. |
+| `host` | The ClickHouse host. If it is a local host, the query is processed without any network activity. To improve fault tolerance, you can create a [Distributed](/core/reference/engines/table-engines/special/distributed) table and enter it in subsequent configurations. |
| `port` | The port on the ClickHouse server. |
| `user` | Name of the ClickHouse user. |
| `password` | Password of the ClickHouse user. |
| `db` | Name of the database. |
| `table` | Name of the table. |
| `where` | The selection criteria. Optional. |
-| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/reference/statements/create/dictionary/lifetime). |
+| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/core/reference/statements/create/dictionary/lifetime). |
| `secure` | Use SSL for connection. |
| `query` | The custom query. Optional. |
diff --git a/reference/statements/create/dictionary/sources/executable-file.mdx b/core/reference/statements/create/dictionary/sources/executable-file.mdx
similarity index 77%
rename from reference/statements/create/dictionary/sources/executable-file.mdx
rename to core/reference/statements/create/dictionary/sources/executable-file.mdx
index f0c2aed6..ff0dafef 100644
--- a/reference/statements/create/dictionary/sources/executable-file.mdx
+++ b/core/reference/statements/create/dictionary/sources/executable-file.mdx
@@ -6,7 +6,7 @@ description: 'Configure an executable file as a dictionary source in ClickHouse.
doc_type: 'reference'
---
-Working with executable files depends on [how the dictionary is stored in memory](/reference/statements/create/dictionary/layouts/overview). If the dictionary is stored using `cache` and `complex_key_cache`, ClickHouse requests the necessary keys by sending a request to the executable file's STDIN. Otherwise, ClickHouse starts the executable file and treats its output as dictionary data.
+Working with executable files depends on [how the dictionary is stored in memory](/core/reference/statements/create/dictionary/layouts/overview). If the dictionary is stored using `cache` and `complex_key_cache`, ClickHouse requests the necessary keys by sending a request to the executable file's STDIN. Otherwise, ClickHouse starts the executable file and treats its output as dictionary data.
Example of settings:
@@ -42,12 +42,12 @@ Setting fields:
| Setting | Description |
|---------|-------------|
| `command` | The absolute path to the executable file, or the file name (if the command's directory is in the `PATH`). |
-| `format` | The file format. All the formats described in [Formats](/reference/formats) are supported. |
+| `format` | The file format. All the formats described in [Formats](/core/reference/formats) are supported. |
| `command_termination_timeout` | The executable script should contain a main read-write loop. After the dictionary is destroyed, the pipe is closed, and the executable file will have `command_termination_timeout` seconds to shutdown before ClickHouse will send a SIGTERM signal to the child process. Specified in seconds. Default value is `10`. Optional. |
| `command_read_timeout` | Timeout for reading data from command stdout in milliseconds. Default value `10000`. Optional. |
| `command_write_timeout` | Timeout for writing data to command stdin in milliseconds. Default value `10000`. Optional. |
| `implicit_key` | The executable source file can return only values, and the correspondence to the requested keys is determined implicitly by the order of rows in the result. Default value is `false`. |
-| `execute_direct` | If `execute_direct` = `1`, then `command` will be searched inside user_scripts folder specified by [user_scripts_path](/reference/settings/server-settings/settings#user_scripts_path). Additional script arguments can be specified using a whitespace separator. Example: `script_name arg1 arg2`. If `execute_direct` = `0`, `command` is passed as argument for `bin/sh -c`. Default value is `0`. Optional. |
+| `execute_direct` | If `execute_direct` = `1`, then `command` will be searched inside user_scripts folder specified by [user_scripts_path](/core/reference/settings/server-settings/settings#user_scripts_path). Additional script arguments can be specified using a whitespace separator. Example: `script_name arg1 arg2`. If `execute_direct` = `0`, `command` is passed as argument for `bin/sh -c`. Default value is `0`. Optional. |
| `send_chunk_header` | Controls whether to send row count before sending a chunk of data to process. Default value is `false`. Optional. |
That dictionary source can be configured only via XML configuration. Creating dictionaries with executable source via DDL is disabled; otherwise, the DB user would be able to execute arbitrary binaries on the ClickHouse node.
diff --git a/reference/statements/create/dictionary/sources/executable-pool.mdx b/core/reference/statements/create/dictionary/sources/executable-pool.mdx
similarity index 87%
rename from reference/statements/create/dictionary/sources/executable-pool.mdx
rename to core/reference/statements/create/dictionary/sources/executable-pool.mdx
index b52c4b2a..2d097889 100644
--- a/reference/statements/create/dictionary/sources/executable-pool.mdx
+++ b/core/reference/statements/create/dictionary/sources/executable-pool.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
Executable pool allows loading data from a pool of processes.
This source does not work with dictionary layouts that need to load all data from source.
-Executable pool works if the dictionary [is stored](/reference/statements/create/dictionary/layouts/overview#storing-dictionaries-in-memory) using one of the following layouts:
+Executable pool works if the dictionary [is stored](/core/reference/statements/create/dictionary/layouts/overview#storing-dictionaries-in-memory) using one of the following layouts:
- `cache`
- `complex_key_cache`
- `ssd_cache`
@@ -57,14 +57,14 @@ Setting fields:
| Setting | Description |
|---------|-------------|
| `command` | The absolute path to the executable file, or the file name (if the program directory is written to `PATH`). |
-| `format` | The file format. All the formats described in [Formats](/reference/formats) are supported. |
+| `format` | The file format. All the formats described in [Formats](/core/reference/formats) are supported. |
| `pool_size` | Size of pool. If 0 is specified as `pool_size` then there is no pool size restrictions. Default value is `16`. |
| `command_termination_timeout` | Executable script should contain main read-write loop. After dictionary is destroyed, pipe is closed, and executable file will have `command_termination_timeout` seconds to shutdown before ClickHouse will send SIGTERM signal to child process. Specified in seconds. Default value is `10`. Optional. |
| `max_command_execution_time` | Maximum executable script command execution time for processing block of data. Specified in seconds. Default value is `10`. Optional. |
| `command_read_timeout` | Timeout for reading data from command stdout in milliseconds. Default value `10000`. Optional. |
| `command_write_timeout` | Timeout for writing data to command stdin in milliseconds. Default value `10000`. Optional. |
| `implicit_key` | The executable source file can return only values, and the correspondence to the requested keys is determined implicitly by the order of rows in the result. Default value is `false`. Optional. |
-| `execute_direct` | If `execute_direct` = `1`, then `command` will be searched inside user_scripts folder specified by [user_scripts_path](/reference/settings/server-settings/settings#user_scripts_path). Additional script arguments can be specified using whitespace separator. Example: `script_name arg1 arg2`. If `execute_direct` = `0`, `command` is passed as argument for `bin/sh -c`. Default value is `1`. Optional. |
+| `execute_direct` | If `execute_direct` = `1`, then `command` will be searched inside user_scripts folder specified by [user_scripts_path](/core/reference/settings/server-settings/settings#user_scripts_path). Additional script arguments can be specified using whitespace separator. Example: `script_name arg1 arg2`. If `execute_direct` = `0`, `command` is passed as argument for `bin/sh -c`. Default value is `1`. Optional. |
| `send_chunk_header` | Controls whether to send row count before sending a chunk of data to process. Default value is `false`. Optional. |
That dictionary source can be configured only via XML configuration. Creating dictionaries with executable source via DDL is disabled, otherwise, the DB user would be able to execute arbitrary binary on ClickHouse node.
diff --git a/reference/statements/create/dictionary/sources/http.mdx b/core/reference/statements/create/dictionary/sources/http.mdx
similarity index 83%
rename from reference/statements/create/dictionary/sources/http.mdx
rename to core/reference/statements/create/dictionary/sources/http.mdx
index add2be16..7ed9474f 100644
--- a/reference/statements/create/dictionary/sources/http.mdx
+++ b/core/reference/statements/create/dictionary/sources/http.mdx
@@ -6,7 +6,7 @@ description: 'Configure an HTTP or HTTPS endpoint as a dictionary source in Clic
doc_type: 'reference'
---
-Working with an HTTP(S) server depends on [how the dictionary is stored in memory](/reference/statements/create/dictionary/layouts/overview). If the dictionary is stored using `cache` and `complex_key_cache`, ClickHouse requests the necessary keys by sending a request via the `POST` method.
+Working with an HTTP(S) server depends on [how the dictionary is stored in memory](/core/reference/statements/create/dictionary/layouts/overview). If the dictionary is stored using `cache` and `complex_key_cache`, ClickHouse requests the necessary keys by sending a request via the `POST` method.
Example of settings:
@@ -48,14 +48,14 @@ SOURCE(HTTP(
-In order for ClickHouse to access an HTTPS resource, you must [configure openSSL](/reference/settings/server-settings/settings#openssl) in the server configuration.
+In order for ClickHouse to access an HTTPS resource, you must [configure openSSL](/core/reference/settings/server-settings/settings#openssl) in the server configuration.
Setting fields:
| Setting | Description |
|---------|-------------|
| `url` | The source URL. |
-| `format` | The file format. All the formats described in [Formats](/reference/formats) are supported. |
+| `format` | The file format. All the formats described in [Formats](/core/reference/formats) are supported. |
| `credentials` | Basic HTTP authentication. Optional. |
| `user` | Username required for the authentication. |
| `password` | Password required for the authentication. |
diff --git a/reference/statements/create/dictionary/sources/local-file.mdx b/core/reference/statements/create/dictionary/sources/local-file.mdx
similarity index 86%
rename from reference/statements/create/dictionary/sources/local-file.mdx
rename to core/reference/statements/create/dictionary/sources/local-file.mdx
index 2ec942e3..8d419439 100644
--- a/reference/statements/create/dictionary/sources/local-file.mdx
+++ b/core/reference/statements/create/dictionary/sources/local-file.mdx
@@ -6,7 +6,7 @@ description: 'Configure a local file as a dictionary source in ClickHouse.'
doc_type: 'reference'
---
-The local file source loads dictionary data from a file on the local filesystem. This is useful for small, static lookup tables that can be stored as flat files in formats such as TSV, CSV, or any other [supported format](/reference/formats).
+The local file source loads dictionary data from a file on the local filesystem. This is useful for small, static lookup tables that can be stored as flat files in formats such as TSV, CSV, or any other [supported format](/core/reference/formats).
Example of settings:
@@ -39,10 +39,10 @@ Setting fields:
| Setting | Description |
|---------|-------------|
| `path` | The absolute path to the file. |
-| `format` | The file format. All the formats described in [Formats](/reference/formats) are supported. |
+| `format` | The file format. All the formats described in [Formats](/core/reference/formats) are supported. |
When a dictionary with source `FILE` is created via DDL command (`CREATE DICTIONARY ...`), the source file needs to be located in the `user_files` directory to prevent DB users from accessing arbitrary files on the ClickHouse node.
**See Also**
-- [Dictionary function](/reference/functions/table-functions/dictionary)
+- [Dictionary function](/core/reference/functions/table-functions/dictionary)
diff --git a/reference/statements/create/dictionary/sources/mongodb.mdx b/core/reference/statements/create/dictionary/sources/mongodb.mdx
similarity index 94%
rename from reference/statements/create/dictionary/sources/mongodb.mdx
rename to core/reference/statements/create/dictionary/sources/mongodb.mdx
index 48871d27..24a04151 100644
--- a/reference/statements/create/dictionary/sources/mongodb.mdx
+++ b/core/reference/statements/create/dictionary/sources/mongodb.mdx
@@ -77,4 +77,4 @@ Setting fields:
| `options` | MongoDB connection string options. Optional. |
| `uri` | URI for establishing the connection (alternative to individual host/port/db fields). |
-[More information about the engine](/reference/engines/table-engines/integrations/mongodb)
+[More information about the engine](/core/reference/engines/table-engines/integrations/mongodb)
diff --git a/reference/statements/create/dictionary/sources/mysql.mdx b/core/reference/statements/create/dictionary/sources/mysql.mdx
similarity index 98%
rename from reference/statements/create/dictionary/sources/mysql.mdx
rename to core/reference/statements/create/dictionary/sources/mysql.mdx
index 4a1883ac..0d392a9d 100644
--- a/reference/statements/create/dictionary/sources/mysql.mdx
+++ b/core/reference/statements/create/dictionary/sources/mysql.mdx
@@ -71,7 +71,7 @@ Setting fields:
| `db` | Name of the database. |
| `table` | Name of the table. |
| `where` | The selection criteria. The syntax for conditions is the same as for `WHERE` clause in MySQL, for example, `id > 10 AND id < 20`. Optional. |
-| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/reference/statements/create/dictionary/lifetime). |
+| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/core/reference/statements/create/dictionary/lifetime). |
| `fail_on_connection_loss` | Controls behavior of the server on connection loss. If `true`, an exception is thrown immediately if the connection between client and server was lost. If `false`, the ClickHouse server retries to execute the query three times before throwing an exception. Note that retrying leads to increased response times. Default value: `false`. |
| `query` | The custom query. Optional. |
diff --git a/reference/statements/create/dictionary/sources/null.mdx b/core/reference/statements/create/dictionary/sources/null.mdx
similarity index 100%
rename from reference/statements/create/dictionary/sources/null.mdx
rename to core/reference/statements/create/dictionary/sources/null.mdx
diff --git a/reference/statements/create/dictionary/sources/odbc.mdx b/core/reference/statements/create/dictionary/sources/odbc.mdx
similarity index 99%
rename from reference/statements/create/dictionary/sources/odbc.mdx
rename to core/reference/statements/create/dictionary/sources/odbc.mdx
index d6864c03..fe85f984 100644
--- a/reference/statements/create/dictionary/sources/odbc.mdx
+++ b/core/reference/statements/create/dictionary/sources/odbc.mdx
@@ -49,7 +49,7 @@ Setting fields:
| `db` | Name of the database. Omit it if the database name is set in the `` parameters. |
| `table` | Name of the table and schema if exists. |
| `connection_string` | Connection string. |
-| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/reference/statements/create/dictionary/lifetime). |
+| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/core/reference/statements/create/dictionary/lifetime). |
| `background_reconnect` | Reconnect to replica in background if connection fails. Optional. |
| `query` | The custom query. Optional. |
diff --git a/reference/statements/create/dictionary/sources/overview.mdx b/core/reference/statements/create/dictionary/sources/overview.mdx
similarity index 55%
rename from reference/statements/create/dictionary/sources/overview.mdx
rename to core/reference/statements/create/dictionary/sources/overview.mdx
index 9530cad9..55203b72 100644
--- a/reference/statements/create/dictionary/sources/overview.mdx
+++ b/core/reference/statements/create/dictionary/sources/overview.mdx
@@ -54,23 +54,23 @@ SOURCE(SOURCE_TYPE(param1 val1 ... paramN valN)) -- Source configuration
The following source types (`SOURCE_TYPE`/`source_type`) are available:
-- [Local file](/reference/statements/create/dictionary/sources/local-file)
-- [Executable File](/reference/statements/create/dictionary/sources/executable-file)
-- [Executable Pool](/reference/statements/create/dictionary/sources/executable-pool)
-- [HTTP(S)](/reference/statements/create/dictionary/sources/http)
+- [Local file](/core/reference/statements/create/dictionary/sources/local-file)
+- [Executable File](/core/reference/statements/create/dictionary/sources/executable-file)
+- [Executable Pool](/core/reference/statements/create/dictionary/sources/executable-pool)
+- [HTTP(S)](/core/reference/statements/create/dictionary/sources/http)
- DBMS
- - [ODBC](/reference/statements/create/dictionary/sources/odbc)
- - [MySQL](/reference/statements/create/dictionary/sources/mysql)
- - [ClickHouse](/reference/statements/create/dictionary/sources/clickhouse)
- - [MongoDB](/reference/statements/create/dictionary/sources/mongodb)
- - [Redis](/reference/statements/create/dictionary/sources/redis)
- - [Cassandra](/reference/statements/create/dictionary/sources/cassandra)
- - [PostgreSQL](/reference/statements/create/dictionary/sources/postgresql)
- - [YTsaurus](/reference/statements/create/dictionary/sources/ytsaurus)
-- [YAMLRegExpTree](/reference/statements/create/dictionary/sources/yamlregexptree)
-- [Null](/reference/statements/create/dictionary/sources/null)
-
-For source types [Local file](/reference/statements/create/dictionary/sources/local-file), [Executable file](/reference/statements/create/dictionary/sources/executable-file), [HTTP(s)](/reference/statements/create/dictionary/sources/http), [ClickHouse](/reference/statements/create/dictionary/sources/clickhouse)
+ - [ODBC](/core/reference/statements/create/dictionary/sources/odbc)
+ - [MySQL](/core/reference/statements/create/dictionary/sources/mysql)
+ - [ClickHouse](/core/reference/statements/create/dictionary/sources/clickhouse)
+ - [MongoDB](/core/reference/statements/create/dictionary/sources/mongodb)
+ - [Redis](/core/reference/statements/create/dictionary/sources/redis)
+ - [Cassandra](/core/reference/statements/create/dictionary/sources/cassandra)
+ - [PostgreSQL](/core/reference/statements/create/dictionary/sources/postgresql)
+ - [YTsaurus](/core/reference/statements/create/dictionary/sources/ytsaurus)
+- [YAMLRegExpTree](/core/reference/statements/create/dictionary/sources/yamlregexptree)
+- [Null](/core/reference/statements/create/dictionary/sources/null)
+
+For source types [Local file](/core/reference/statements/create/dictionary/sources/local-file), [Executable file](/core/reference/statements/create/dictionary/sources/executable-file), [HTTP(s)](/core/reference/statements/create/dictionary/sources/http), [ClickHouse](/core/reference/statements/create/dictionary/sources/clickhouse)
optional settings are available:
diff --git a/reference/statements/create/dictionary/sources/postgresql.mdx b/core/reference/statements/create/dictionary/sources/postgresql.mdx
similarity index 97%
rename from reference/statements/create/dictionary/sources/postgresql.mdx
rename to core/reference/statements/create/dictionary/sources/postgresql.mdx
index 8266a077..5445182c 100644
--- a/reference/statements/create/dictionary/sources/postgresql.mdx
+++ b/core/reference/statements/create/dictionary/sources/postgresql.mdx
@@ -65,7 +65,7 @@ Setting fields:
| `db` | Name of the database. |
| `table` | Name of the table. |
| `where` | The selection criteria. The syntax for conditions is the same as for `WHERE` clause in PostgreSQL. For example, `id > 10 AND id < 20`. Optional. |
-| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/reference/statements/create/dictionary/lifetime). |
+| `invalidate_query` | Query for checking the dictionary status. Optional. Read more in the section [Refreshing dictionary data using LIFETIME](/core/reference/statements/create/dictionary/lifetime). |
| `background_reconnect` | Reconnect to replica in background if connection fails. Optional. |
| `query` | The custom query. Optional. |
diff --git a/reference/statements/create/dictionary/sources/redis.mdx b/core/reference/statements/create/dictionary/sources/redis.mdx
similarity index 100%
rename from reference/statements/create/dictionary/sources/redis.mdx
rename to core/reference/statements/create/dictionary/sources/redis.mdx
diff --git a/reference/statements/create/dictionary/sources/yamlregexptree.mdx b/core/reference/statements/create/dictionary/sources/yamlregexptree.mdx
similarity index 75%
rename from reference/statements/create/dictionary/sources/yamlregexptree.mdx
rename to core/reference/statements/create/dictionary/sources/yamlregexptree.mdx
index 9b1b9f5c..0d3f4dfb 100644
--- a/reference/statements/create/dictionary/sources/yamlregexptree.mdx
+++ b/core/reference/statements/create/dictionary/sources/yamlregexptree.mdx
@@ -11,13 +11,13 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
The `YAMLRegExpTree` source loads a regular expression tree from a YAML file on the local filesystem.
-It is designed exclusively for use with the [`regexp_tree`](/reference/statements/create/dictionary/layouts/regexp-tree) dictionary layout
+It is designed exclusively for use with the [`regexp_tree`](/core/reference/statements/create/dictionary/layouts/regexp-tree) dictionary layout
and provides hierarchical regex-to-attribute mappings for pattern-based lookups such as user agent parsing.
The `YAMLRegExpTree` source is only available in ClickHouse Open Source.
-For ClickHouse Cloud, export the dictionary to CSV and load it via a [ClickHouse table source](/reference/statements/create/dictionary/sources/clickhouse) instead.
-See [Using regexp_tree dictionaries in ClickHouse Cloud](/reference/statements/create/dictionary/layouts/regexp-tree#use-regular-expression-tree-dictionary-in-clickhouse-cloud) for details.
+For ClickHouse Cloud, export the dictionary to CSV and load it via a [ClickHouse table source](/core/reference/statements/create/dictionary/sources/clickhouse) instead.
+See [Using regexp_tree dictionaries in ClickHouse Cloud](/core/reference/statements/create/dictionary/layouts/regexp-tree#use-regular-expression-tree-dictionary-in-clickhouse-cloud) for details.
## Configuration {#configuration}
@@ -71,5 +71,5 @@ Each node has the following structure:
## Related pages {#related-pages}
-- [regexp_tree dictionary layout](/reference/statements/create/dictionary/layouts/regexp-tree) — layout configuration, query examples, and matching modes
-- [dictGet](/reference/functions/regular-functions/ext-dict-functions#dictGet), [dictGetAll](/reference/functions/regular-functions/ext-dict-functions#dictGetAll) — functions for querying regexp tree dictionaries
+- [regexp_tree dictionary layout](/core/reference/statements/create/dictionary/layouts/regexp-tree) — layout configuration, query examples, and matching modes
+- [dictGet](/core/reference/functions/regular-functions/ext-dict-functions#dictGet), [dictGetAll](/core/reference/functions/regular-functions/ext-dict-functions#dictGetAll) — functions for querying regexp tree dictionaries
diff --git a/reference/statements/create/dictionary/sources/ytsaurus.mdx b/core/reference/statements/create/dictionary/sources/ytsaurus.mdx
similarity index 94%
rename from reference/statements/create/dictionary/sources/ytsaurus.mdx
rename to core/reference/statements/create/dictionary/sources/ytsaurus.mdx
index f82e824b..3ae2f3e8 100644
--- a/reference/statements/create/dictionary/sources/ytsaurus.mdx
+++ b/core/reference/statements/create/dictionary/sources/ytsaurus.mdx
@@ -15,7 +15,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
This is an experimental feature that may change in backwards-incompatible ways in future releases.
Enable usage of the YTsaurus dictionary source
-using setting [`allow_experimental_ytsaurus_dictionary_source`](/reference/settings/session-settings#allow_experimental_ytsaurus_dictionary_source).
+using setting [`allow_experimental_ytsaurus_dictionary_source`](/core/reference/settings/session-settings#allow_experimental_ytsaurus_dictionary_source).
Example of settings:
diff --git a/reference/statements/create/function.mdx b/core/reference/statements/create/function.mdx
similarity index 93%
rename from reference/statements/create/function.mdx
rename to core/reference/statements/create/function.mdx
index 23f90e44..c8298c9b 100644
--- a/reference/statements/create/function.mdx
+++ b/core/reference/statements/create/function.mdx
@@ -38,7 +38,7 @@ SELECT number, linear_equation(number, 2, 1) FROM numbers(3);
└────────┴──────────────────────────────┘
```
-A [conditional function](/reference/functions/regular-functions/conditional-functions) is called in a user defined function in the following query:
+A [conditional function](/core/reference/functions/regular-functions/conditional-functions) is called in a user defined function in the following query:
```sql title="Query"
CREATE FUNCTION parity_str AS (n) -> if(n % 2, 'odd', 'even');
@@ -74,6 +74,6 @@ SELECT create_query FROM system.functions WHERE name = 'exampleReplaceFunction';
## Related Content {#related-content}
-### [Executable UDFs](/reference/functions/regular-functions/udf). {#executable-udfs}
+### [Executable UDFs](/core/reference/functions/regular-functions/udf). {#executable-udfs}
### [User-defined functions in ClickHouse Cloud](https://clickhouse.com/blog/user-defined-functions-clickhouse-udfs) {#user-defined-functions-in-clickhouse-cloud}
diff --git a/core/reference/statements/create/index.mdx b/core/reference/statements/create/index.mdx
new file mode 100644
index 00000000..2284a4b4
--- /dev/null
+++ b/core/reference/statements/create/index.mdx
@@ -0,0 +1,9 @@
+---
+description: 'Documentation for CREATE Queries'
+sidebarTitle: 'CREATE'
+slug: /sql-reference/statements/create/
+title: 'CREATE Queries'
+doc_type: 'reference'
+---
+
+CREATE queries create (for example) new [databases](/core/reference/statements/create/database), [tables](/core/reference/statements/create/table) and [views](/core/reference/statements/create/view).
diff --git a/reference/statements/create/masking-policy.mdx b/core/reference/statements/create/masking-policy.mdx
similarity index 100%
rename from reference/statements/create/masking-policy.mdx
rename to core/reference/statements/create/masking-policy.mdx
diff --git a/reference/statements/create/named-collection.mdx b/core/reference/statements/create/named-collection.mdx
similarity index 74%
rename from reference/statements/create/named-collection.mdx
rename to core/reference/statements/create/named-collection.mdx
index 6f7ba49c..47b57489 100644
--- a/reference/statements/create/named-collection.mdx
+++ b/core/reference/statements/create/named-collection.mdx
@@ -30,9 +30,9 @@ CREATE NAMED COLLECTION foobar AS a = '1', b = '2' OVERRIDABLE;
**Related statements**
-- [CREATE NAMED COLLECTION](/reference/statements/alter/named-collection)
-- [DROP NAMED COLLECTION](/reference/statements/drop#drop-function)
+- [CREATE NAMED COLLECTION](/core/reference/statements/alter/named-collection)
+- [DROP NAMED COLLECTION](/core/reference/statements/drop#drop-function)
**See Also**
-- [Named collections guide](/concepts/features/configuration/server-config/named-collections)
+- [Named collections guide](/core/concepts/features/configuration/server-config/named-collections)
diff --git a/reference/statements/create/quota.mdx b/core/reference/statements/create/quota.mdx
similarity index 84%
rename from reference/statements/create/quota.mdx
rename to core/reference/statements/create/quota.mdx
index 4c72e34d..8feb6836 100644
--- a/reference/statements/create/quota.mdx
+++ b/core/reference/statements/create/quota.mdx
@@ -6,7 +6,7 @@ title: 'CREATE QUOTA'
doc_type: 'reference'
---
-Creates a [quota](/concepts/features/security/access-rights#quotas-management) that can be assigned to a user or a role.
+Creates a [quota](/core/concepts/features/security/access-rights#quotas-management) that can be assigned to a user or a role.
Syntax:
@@ -20,11 +20,11 @@ CREATE QUOTA [IF NOT EXISTS | OR REPLACE] name [ON CLUSTER cluster_name]
[TO {role [,...] | ALL | ALL EXCEPT role [,...]}]
```
-Keys `user_name`, `ip_address`, `client_key`, `client_key, user_name`, `client_key, ip_address`, and `normalized_query_hash` correspond to the fields in the [system.quotas](/reference/system-tables/quotas) table.
+Keys `user_name`, `ip_address`, `client_key`, `client_key, user_name`, `client_key, ip_address`, and `normalized_query_hash` correspond to the fields in the [system.quotas](/core/reference/system-tables/quotas) table.
-Parameters `queries`, `query_selects`, `query_inserts`, `errors`, `result_rows`, `result_bytes`, `read_rows`, `read_bytes`, `written_bytes`, `execution_time`, `failed_sequential_authentications`, `queries_per_normalized_hash` correspond to the fields in the [system.quotas_usage](/reference/system-tables/quotas_usage) table.
+Parameters `queries`, `query_selects`, `query_inserts`, `errors`, `result_rows`, `result_bytes`, `read_rows`, `read_bytes`, `written_bytes`, `execution_time`, `failed_sequential_authentications`, `queries_per_normalized_hash` correspond to the fields in the [system.quotas_usage](/core/reference/system-tables/quotas_usage) table.
-`ON CLUSTER` clause allows creating quotas on a cluster, see [Distributed DDL](/reference/statements/distributed-ddl).
+`ON CLUSTER` clause allows creating quotas on a cluster, see [Distributed DDL](/core/reference/statements/distributed-ddl).
**Examples**
@@ -52,7 +52,7 @@ Limit any single normalized query pattern to at most 50 executions per hour (reg
CREATE QUOTA qD FOR INTERVAL 1 hour MAX queries_per_normalized_hash = 50 TO default;
```
-Further examples, using the xml configuration (not supported in ClickHouse Cloud), can be found in the [Quotas guide](/concepts/features/configuration/server-config/quotas).
+Further examples, using the xml configuration (not supported in ClickHouse Cloud), can be found in the [Quotas guide](/core/concepts/features/configuration/server-config/quotas).
## Related Content {#related-content}
diff --git a/reference/statements/create/role.mdx b/core/reference/statements/create/role.mdx
similarity index 50%
rename from reference/statements/create/role.mdx
rename to core/reference/statements/create/role.mdx
index edb2531c..6742003b 100644
--- a/reference/statements/create/role.mdx
+++ b/core/reference/statements/create/role.mdx
@@ -6,7 +6,7 @@ title: 'CREATE ROLE'
doc_type: 'reference'
---
-Creates new [roles](/concepts/features/security/access-rights#role-management). Role is a set of [privileges](/reference/statements/grant#granting-privilege-syntax). A [user](/reference/statements/create/user) assigned a role gets all the privileges of this role.
+Creates new [roles](/core/concepts/features/security/access-rights#role-management). Role is a set of [privileges](/core/reference/statements/grant#granting-privilege-syntax). A [user](/core/reference/statements/create/user) assigned a role gets all the privileges of this role.
Syntax:
@@ -18,13 +18,13 @@ CREATE ROLE [IF NOT EXISTS | OR REPLACE] name1 [, name2 [,...]] [ON CLUSTER clus
## Managing Roles {#managing-roles}
-A user can be assigned multiple roles. Users can apply their assigned roles in arbitrary combinations by the [SET ROLE](/reference/statements/set-role) statement. The final scope of privileges is a combined set of all the privileges of all the applied roles. If a user has privileges granted directly to it's user account, they are also combined with the privileges granted by roles.
+A user can be assigned multiple roles. Users can apply their assigned roles in arbitrary combinations by the [SET ROLE](/core/reference/statements/set-role) statement. The final scope of privileges is a combined set of all the privileges of all the applied roles. If a user has privileges granted directly to it's user account, they are also combined with the privileges granted by roles.
-User can have default roles which apply at user login. To set default roles, use the [SET DEFAULT ROLE](/reference/statements/set-role#set-default-role) statement or the [ALTER USER](/reference/statements/alter/user) statement.
+User can have default roles which apply at user login. To set default roles, use the [SET DEFAULT ROLE](/core/reference/statements/set-role#set-default-role) statement or the [ALTER USER](/core/reference/statements/alter/user) statement.
-To revoke a role, use the [REVOKE](/reference/statements/revoke) statement.
+To revoke a role, use the [REVOKE](/core/reference/statements/revoke) statement.
-To delete role, use the [DROP ROLE](/reference/statements/drop#drop-role) statement. The deleted role is being automatically revoked from all the users and roles to which it was assigned.
+To delete role, use the [DROP ROLE](/core/reference/statements/drop#drop-role) statement. The deleted role is being automatically revoked from all the users and roles to which it was assigned.
## Examples {#examples}
diff --git a/reference/statements/create/row-policy.mdx b/core/reference/statements/create/row-policy.mdx
similarity index 94%
rename from reference/statements/create/row-policy.mdx
rename to core/reference/statements/create/row-policy.mdx
index ac873145..36091658 100644
--- a/reference/statements/create/row-policy.mdx
+++ b/core/reference/statements/create/row-policy.mdx
@@ -6,7 +6,7 @@ title: 'CREATE ROW POLICY'
doc_type: 'reference'
---
-Creates a [row policy](/concepts/features/security/access-rights#row-policy-management), i.e. a filter used to determine which rows a user can read from a table.
+Creates a [row policy](/core/concepts/features/security/access-rights#row-policy-management), i.e. a filter used to determine which rows a user can read from a table.
Row policies make sense only for users with readonly access. If a user can modify a table or copy partitions between tables, it defeats the restrictions of row policies.
@@ -80,7 +80,7 @@ any other table in mydb would have only `b=1` policy applied for the user.
## ON CLUSTER Clause {#on-cluster-clause}
-Allows creating row policies on a cluster, see [Distributed DDL](/reference/statements/distributed-ddl).
+Allows creating row policies on a cluster, see [Distributed DDL](/core/reference/statements/distributed-ddl).
## Examples {#examples}
diff --git a/reference/statements/create/settings-profile.mdx b/core/reference/statements/create/settings-profile.mdx
similarity index 83%
rename from reference/statements/create/settings-profile.mdx
rename to core/reference/statements/create/settings-profile.mdx
index 641ddac3..7422ad51 100644
--- a/reference/statements/create/settings-profile.mdx
+++ b/core/reference/statements/create/settings-profile.mdx
@@ -6,7 +6,7 @@ title: 'CREATE SETTINGS PROFILE'
doc_type: 'reference'
---
-Creates [settings profiles](/concepts/features/security/access-rights#settings-profiles-management) that can be assigned to a user or a role.
+Creates [settings profiles](/core/concepts/features/security/access-rights#settings-profiles-management) that can be assigned to a user or a role.
Syntax:
@@ -18,7 +18,7 @@ CREATE SETTINGS PROFILE [IF NOT EXISTS | OR REPLACE] name1 [, name2 [,...]]
[TO {{role1 | user1 [, role2 | user2 ...]} | NONE | ALL | ALL EXCEPT {role1 | user1 [, role2 | user2 ...]}}]
```
-`ON CLUSTER` clause allows creating settings profiles on a cluster, see [Distributed DDL](/reference/statements/distributed-ddl).
+`ON CLUSTER` clause allows creating settings profiles on a cluster, see [Distributed DDL](/core/reference/statements/distributed-ddl).
## Example {#example}
diff --git a/reference/statements/create/table.mdx b/core/reference/statements/create/table.mdx
similarity index 91%
rename from reference/statements/create/table.mdx
rename to core/reference/statements/create/table.mdx
index 6d33ddd2..49b0142c 100644
--- a/reference/statements/create/table.mdx
+++ b/core/reference/statements/create/table.mdx
@@ -12,7 +12,7 @@ import ExperimentalBadge from "/snippets/components/ExperimentalBadge/Experiment
Creates a new table. This query can have various syntax forms depending on a use case.
-By default, tables are created only on the current server. Distributed DDL queries are implemented as `ON CLUSTER` clause, which is [described separately](/reference/statements/distributed-ddl).
+By default, tables are created only on the current server. Distributed DDL queries are implemented as `ON CLUSTER` clause, which is [described separately](/core/reference/statements/distributed-ddl).
## Syntax Forms {#syntax-forms}
@@ -73,7 +73,7 @@ For both features, you can specify a different engine for the table. If the engi
CREATE TABLE [IF NOT EXISTS] [db.]table_name AS table_function()
```
-Creates a table with the same result as that of the [table function](/reference/functions/table-functions) specified. The created table will also work in the same way as the corresponding table function that was specified.
+Creates a table with the same result as that of the [table function](/core/reference/functions/table-functions) specified. The created table will also work in the same way as the corresponding table function that was specified.
### From SELECT query {#from-select-query}
@@ -85,7 +85,7 @@ Creates a table with a structure like the result of the `SELECT` query, with the
If the table already exists and `IF NOT EXISTS` is specified, the query won't do anything.
-There can be other clauses after the `ENGINE` clause in the query. See detailed documentation on how to create tables in the descriptions of [table engines](/reference/engines/table-engines).
+There can be other clauses after the `ENGINE` clause in the query. See detailed documentation on how to create tables in the descriptions of [table engines](/core/reference/engines/table-engines).
**Example**
@@ -102,11 +102,11 @@ SELECT x, toTypeName(x) FROM t1;
## NULL Or NOT NULL Modifiers {#null-or-not-null-modifiers}
-`NULL` and `NOT NULL` modifiers after data type in column definition allow or do not allow it to be [Nullable](/reference/data-types/nullable).
+`NULL` and `NOT NULL` modifiers after data type in column definition allow or do not allow it to be [Nullable](/core/reference/data-types/nullable).
If the type is not `Nullable` and if `NULL` is specified, it will be treated as `Nullable`; if `NOT NULL` is specified, then no. For example, `INT NULL` is the same as `Nullable(INT)`. If the type is `Nullable` and `NULL` or `NOT NULL` modifiers are specified, the exception will be thrown.
-See also [data_type_default_nullable](/reference/settings/session-settings#data_type_default_nullable) setting.
+See also [data_type_default_nullable](/core/reference/settings/session-settings#data_type_default_nullable) setting.
## Default Values {#default_values}
@@ -259,7 +259,7 @@ SELECT * FROM test SETTINGS asterisk_include_alias_columns=1;
## Primary Key {#primary-key}
-You can define a [primary key](/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries) when creating a table. Primary key can be specified in two ways:
+You can define a [primary key](/core/reference/engines/table-engines/mergetree-family/mergetree#primary-keys-and-indexes-in-queries) when creating a table. Primary key can be specified in two ways:
- Inside the column list
@@ -333,13 +333,13 @@ Then, when executing the query `SELECT name FROM users_a WHERE length(name) < 5;
## TTL Expression {#ttl-expression}
-Defines storage time for values. Can be specified only for MergeTree-family tables. For the detailed description, see [TTL for columns and tables](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl).
+Defines storage time for values. Can be specified only for MergeTree-family tables. For the detailed description, see [TTL for columns and tables](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl).
## Column Compression Codecs {#column_compression_codec}
By default, ClickHouse applies `lz4` compression in the self-managed version, and `zstd` in ClickHouse Cloud.
-For `MergeTree`-engine family you can change the default compression method in the [compression](/reference/settings/server-settings/settings#compression) section of a server configuration.
+For `MergeTree`-engine family you can change the default compression method in the [compression](/core/reference/settings/server-settings/settings#compression) section of a server configuration.
You can also define the compression method for each individual column in the `CREATE TABLE` query.
@@ -373,10 +373,10 @@ You can't decompress ClickHouse database files with external utilities like `lz4
Compression is supported for the following table engines:
-- [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) family. Supports column compression codecs and selecting the default compression method by [compression](/reference/settings/server-settings/settings#compression) settings.
-- [Log](/reference/engines/table-engines/log-family) family. Uses the `lz4` compression method by default and supports column compression codecs.
-- [Set](/reference/engines/table-engines/special/set). Only supported the default compression.
-- [Join](/reference/engines/table-engines/special/join). Only supported the default compression.
+- [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family. Supports column compression codecs and selecting the default compression method by [compression](/core/reference/settings/server-settings/settings#compression) settings.
+- [Log](/core/reference/engines/table-engines/log-family) family. Uses the `lz4` compression method by default and supports column compression codecs.
+- [Set](/core/reference/engines/table-engines/special/set). Only supported the default compression.
+- [Join](/core/reference/engines/table-engines/special/join). Only supported the default compression.
ClickHouse supports general purpose codecs and specialized codecs.
@@ -459,7 +459,7 @@ ENGINE = MergeTree()
### Encryption Codecs {#encryption-codecs}
-These codecs don't actually compress data, but instead encrypt data on disk. These are only available when an encryption key is specified by [encryption](/reference/settings/server-settings/settings#encryption) settings. Note that encryption only makes sense at the end of codec pipelines, because encrypted data usually can't be compressed in any meaningful way.
+These codecs don't actually compress data, but instead encrypt data on disk. These are only available when an encryption key is specified by [encryption](/core/reference/settings/server-settings/settings#encryption) settings. Note that encryption only makes sense at the end of codec pipelines, because encrypted data usually can't be compressed in any meaningful way.
Encryption codecs:
@@ -471,14 +471,14 @@ Encryption codecs:
`CODEC('AES-256-GCM-SIV')` — Encrypts data with AES-256 in GCM-SIV mode.
-These codecs use a fixed nonce and encryption is therefore deterministic. This makes it compatible with deduplicating engines such as [ReplicatedMergeTree](/reference/engines/table-engines/mergetree-family/replication) but has a weakness: when the same data block is encrypted twice, the resulting ciphertext will be exactly the same so an adversary who can read the disk can see this equivalence (although only the equivalence, without getting its content).
+These codecs use a fixed nonce and encryption is therefore deterministic. This makes it compatible with deduplicating engines such as [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/replication) but has a weakness: when the same data block is encrypted twice, the resulting ciphertext will be exactly the same so an adversary who can read the disk can see this equivalence (although only the equivalence, without getting its content).
Most engines including the "\*MergeTree" family create index files on disk without applying codecs. This means plaintext will appear on disk if an encrypted column is indexed.
-If you perform a SELECT query mentioning a specific value in an encrypted column (such as in its WHERE clause), the value may appear in [system.query_log](/reference/system-tables/query_log). You may want to disable the logging.
+If you perform a SELECT query mentioning a specific value in an encrypted column (such as in its WHERE clause), the value may appear in [system.query_log](/core/reference/system-tables/query_log). You may want to disable the logging.
**Example**
@@ -533,14 +533,14 @@ CREATE [OR REPLACE] TEMPORARY TABLE [IF NOT EXISTS] table_name
In most cases, temporary tables are not created manually, but when using external data for a query, or for distributed `(GLOBAL) IN`. For more information, see the appropriate sections
-It's possible to use tables with [ENGINE = Memory](/reference/engines/table-engines/special/memory) instead of temporary tables.
+It's possible to use tables with [ENGINE = Memory](/core/reference/engines/table-engines/special/memory) instead of temporary tables.
## REPLACE TABLE {#replace-table}
-The `REPLACE` statement allows you to update a table [atomically](/concepts/core-concepts/glossary#atomicity).
+The `REPLACE` statement allows you to update a table [atomically](/core/concepts/core-concepts/glossary#atomicity).
-This statement is supported for the [`Atomic`](/reference/engines/database-engines/atomic) and [`Replicated`](/reference/engines/database-engines/replicated) database engines,
+This statement is supported for the [`Atomic`](/core/reference/engines/database-engines/atomic) and [`Replicated`](/core/reference/engines/database-engines/replicated) database engines,
which are the default database engines for ClickHouse and ClickHouse Cloud respectively.
diff --git a/reference/statements/create/user.mdx b/core/reference/statements/create/user.mdx
similarity index 92%
rename from reference/statements/create/user.mdx
rename to core/reference/statements/create/user.mdx
index 0cc7d69e..510b6714 100644
--- a/reference/statements/create/user.mdx
+++ b/core/reference/statements/create/user.mdx
@@ -6,7 +6,7 @@ title: 'CREATE USER'
doc_type: 'reference'
---
-Creates [user accounts](/concepts/features/security/access-rights#user-account-management).
+Creates [user accounts](/core/concepts/features/security/access-rights#user-account-management).
Syntax:
@@ -24,7 +24,7 @@ CREATE USER [IF NOT EXISTS | OR REPLACE] name1 [, name2 [,...]] [ON CLUSTER clus
[SETTINGS variable [= value] [MIN [=] min_value] [MAX [=] max_value] [READONLY | WRITABLE] | PROFILE 'profile_name'] [,...]
```
-`ON CLUSTER` clause allows creating users on a cluster, see [Distributed DDL](/reference/statements/distributed-ddl).
+`ON CLUSTER` clause allows creating users on a cluster, see [Distributed DDL](/core/reference/statements/distributed-ddl).
## Identification {#identification}
@@ -45,7 +45,7 @@ There are multiple ways of user identification:
- `IDENTIFIED WITH http SERVER 'http_server'` or `IDENTIFIED WITH http SERVER 'http_server' SCHEME 'basic'`
- `IDENTIFIED BY 'qwerty'`
-Password complexity requirements can be edited in [config.xml](/concepts/features/configuration/server-config/configuration-files). Below is an example configuration that requires passwords to be at least 12 characters long and contain 1 number. Each password complexity rule requires a regex to match against passwords and a description of the rule.
+Password complexity requirements can be edited in [config.xml](/core/concepts/features/configuration/server-config/configuration-files). Below is an example configuration that requires passwords to be at least 12 characters long and contain 1 number. Each password complexity rule requires a regex to match against passwords and a description of the rule.
```xml
@@ -173,7 +173,7 @@ User host is a host from which a connection to ClickHouse server could be establ
- `HOST LOCAL` — User can connect only locally.
- `HOST NAME 'fqdn'` — User host can be specified as FQDN. For example, `HOST NAME 'mysite.com'`.
- `HOST REGEXP 'regexp'` — You can use [pcre](http://www.pcre.org/) regular expressions when specifying user hosts. For example, `HOST REGEXP '.*\.mysite\.com'`.
-- `HOST LIKE 'template'` — Allows you to use the [LIKE](/reference/functions/regular-functions/string-search-functions#like) operator to filter the user hosts. For example, `HOST LIKE '%'` is equivalent to `HOST ANY`, `HOST LIKE '%.mysite.com'` filters all the hosts in the `mysite.com` domain.
+- `HOST LIKE 'template'` — Allows you to use the [LIKE](/core/reference/functions/regular-functions/string-search-functions#like) operator to filter the user hosts. For example, `HOST LIKE '%'` is equivalent to `HOST ANY`, `HOST LIKE '%.mysite.com'` filters all the hosts in the `mysite.com` domain.
Another way of specifying host is to use `@` syntax following the username. Examples:
@@ -204,7 +204,7 @@ The datetime string is parsed by `parseDateTimeBestEffort`, which only recognize
## GRANTEES Clause {#grantees-clause}
-Specifies users or roles which are allowed to receive [privileges](/reference/statements/grant#privileges) from this user on the condition this user has also all required access granted with [GRANT OPTION](/reference/statements/grant#granting-privilege-syntax). Options of the `GRANTEES` clause:
+Specifies users or roles which are allowed to receive [privileges](/core/reference/statements/grant#privileges) from this user on the condition this user has also all required access granted with [GRANT OPTION](/core/reference/statements/grant#granting-privilege-syntax). Options of the `GRANTEES` clause:
- `user` — Specifies a user this user can grant privileges to.
- `role` — Specifies a role this user can grant privileges to.
diff --git a/reference/statements/create/view.mdx b/core/reference/statements/create/view.mdx
similarity index 91%
rename from reference/statements/create/view.mdx
rename to core/reference/statements/create/view.mdx
index bf3b706a..f5a1ad7d 100644
--- a/reference/statements/create/view.mdx
+++ b/core/reference/statements/create/view.mdx
@@ -10,7 +10,7 @@ import ExperimentalBadge from "/snippets/components/ExperimentalBadge/Experiment
import DeprecatedBadge from "/snippets/components/DeprecatedBadge/DeprecatedBadge.jsx";
import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/CloudNotSupportedBadge.jsx";
-Creates a new view. Views can be [normal](#normal-view), [materialized](#materialized-view), [refreshable materialized](#refreshable-materialized-view), and [window](/reference/statements/create/view#window-view).
+Creates a new view. Views can be [normal](#normal-view), [materialized](#materialized-view), [refreshable materialized](#refreshable-materialized-view), and [window](/core/reference/statements/create/view#window-view).
## Normal View {#normal-view}
@@ -23,7 +23,7 @@ AS SELECT ...
[COMMENT 'comment']
```
-Normal views do not store any data. They just perform a read from another table on each access. In other words, a normal view is nothing more than a saved query. When reading from a view, this saved query is used as a subquery in the [FROM](/reference/statements/select/from) clause.
+Normal views do not store any data. They just perform a read from another table on each access. In other words, a normal view is nothing more than a saved query. When reading from a view, this saved query is used as a subquery in the [FROM](/core/reference/statements/select/from) clause.
As an example, assume you've created a view:
@@ -125,10 +125,10 @@ CREATE OR REPLACE MATERIALIZED VIEW mv TO target
```
-Here is a step-by-step guide on using [Materialized views](/concepts/features/materialized-views/cascading-materialized-views).
+Here is a step-by-step guide on using [Materialized views](/core/concepts/features/materialized-views/cascading-materialized-views).
-Materialized views store data transformed by the corresponding [SELECT](/reference/statements/select) query.
+Materialized views store data transformed by the corresponding [SELECT](/core/reference/statements/select) query.
When creating a materialized view without `TO [db].[table]`, you must specify `ENGINE` – the table engine for storing data.
@@ -137,7 +137,7 @@ When creating a materialized view with `TO [db].[table]`, you can't also use `PO
A materialized view is implemented as follows: when inserting data to the table specified in `SELECT`, part of the inserted data is converted by this `SELECT` query, and the result is inserted in the view.
-Materialized views in ClickHouse use **column names** instead of column order during insertion into destination table. If some column names are not present in the `SELECT` query result, ClickHouse uses a default value, even if the column is not [Nullable](/reference/data-types/nullable). A safe practice would be to add aliases for every column when using Materialized views.
+Materialized views in ClickHouse use **column names** instead of column order during insertion into destination table. If some column names are not present in the `SELECT` query result, ClickHouse uses a default value, even if the column is not [Nullable](/core/reference/data-types/nullable). A safe practice would be to add aliases for every column when using Materialized views.
Materialized views in ClickHouse are implemented more like insert triggers. If there's some aggregation in the view query, it's applied only to the batch of freshly inserted data. Any changes to existing data of source table (like update, delete, drop partition, etc.) does not change the materialized view.
@@ -162,11 +162,11 @@ A `SELECT` query can contain `DISTINCT`, `GROUP BY`, `ORDER BY`, `LIMIT`. Note t
If the materialized view uses the construction `TO [db.]name`, you can `DETACH` the view, run `ALTER` for the target table, and then `ATTACH` the previously detached (`DETACH`) view.
-Note that materialized view is influenced by [optimize_on_insert](/reference/settings/session-settings#optimize_on_insert) setting. The data is merged before the insertion into a view.
+Note that materialized view is influenced by [optimize_on_insert](/core/reference/settings/session-settings#optimize_on_insert) setting. The data is merged before the insertion into a view.
Views look the same as normal tables. For example, they are listed in the result of the `SHOW TABLES` query.
-To delete a view, use [DROP VIEW](/reference/statements/drop#drop-view). Although `DROP TABLE` works for VIEWs as well.
+To delete a view, use [DROP VIEW](/core/reference/statements/drop#drop-view). Although `DROP TABLE` works for VIEWs as well.
## SQL security {#sql_security}
@@ -188,8 +188,8 @@ Thus, it is required to have `GRANT ALLOW SQL SECURITY NONE TO ` in order
If `DEFINER`/`SQL SECURITY` aren't specified, the default values are used:
-- `SQL SECURITY`: `INVOKER` for normal views and `DEFINER` for materialized views ([configurable by settings](/reference/settings/session-settings#default_normal_view_sql_security))
-- `DEFINER`: `CURRENT_USER` ([configurable by settings](/reference/settings/session-settings#default_view_definer))
+- `SQL SECURITY`: `INVOKER` for normal views and `DEFINER` for materialized views ([configurable by settings](/core/reference/settings/session-settings#default_normal_view_sql_security))
+- `DEFINER`: `CURRENT_USER` ([configurable by settings](/core/reference/settings/session-settings#default_view_definer))
If a view is attached without `DEFINER`/`SQL SECURITY` specified, the default value is `SQL SECURITY NONE` for the materialized view and `SQL SECURITY INVOKER` for the normal view.
@@ -279,13 +279,13 @@ Additionally, a refresh is started immediately after the materialized view is cr
### In Replicated DB {#in-replicated-db}
-If the refreshable materialized view is in a [Replicated database](/reference/engines/database-engines/replicated), the replicas coordinate with each other such that only one replica performs the refresh at each scheduled time. [ReplicatedMergeTree](/reference/engines/table-engines/mergetree-family/replication) table engine is required, so that all replicas see the data produced by the refresh.
+If the refreshable materialized view is in a [Replicated database](/core/reference/engines/database-engines/replicated), the replicas coordinate with each other such that only one replica performs the refresh at each scheduled time. [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/replication) table engine is required, so that all replicas see the data produced by the refresh.
In `APPEND` mode, coordination can be disabled using `SETTINGS all_replicas = 1`. This makes replicas do refreshes independently of each other. In this case ReplicatedMergeTree is not required.
In non-`APPEND` mode, only coordinated refreshing is supported. For uncoordinated, use `Atomic` database and `CREATE ... ON CLUSTER` query to create refreshable materialized views on all replicas.
-The coordination is done through Keeper. The znode path is determined by [default_replica_path](/reference/settings/server-settings/settings#default_replica_path) server setting.
+The coordination is done through Keeper. The znode path is determined by [default_replica_path](/core/reference/settings/server-settings/settings#default_replica_path) server setting.
### Refresh Dependencies {#refresh-dependencies}
@@ -330,13 +330,13 @@ Available refresh settings:
* `refresh_retries` - How many times to retry if refresh query fails with an exception. If all retries fail, skip to the next scheduled refresh time. 0 means no retries, -1 means infinite retries. Default: 2.
* `refresh_retry_initial_backoff_ms` - Delay before the first retry, if `refresh_retries` is not zero. Each subsequent retry doubles the delay, up to `refresh_retry_max_backoff_ms`. Default: 100 ms.
* `refresh_retry_max_backoff_ms` - Limit on the exponential growth of delay between refresh attempts. Default: 60000 ms (1 minute).
-* `all_replicas` - In a [Replicated database](/reference/engines/database-engines/replicated) with `APPEND`, controls whether all replicas refresh independently or only one replica refreshes at each scheduled time. Cannot be changed after the view is created. Default: `false`.
+* `all_replicas` - In a [Replicated database](/core/reference/engines/database-engines/replicated) with `APPEND`, controls whether all replicas refresh independently or only one replica refreshes at each scheduled time. Cannot be changed after the view is created. Default: `false`.
* `prefer_dependency_replica` - When the view has `DEPENDS ON`, the replica that ran the parent refresh gets priority for running the dependent refresh; other replicas delay their attempt by `prefer_dependency_replica_delay_ms`. Useful with `SharedMergeTree` to avoid replication lag causing missing data in dependent refresh chains. Default: `false`.
* `prefer_dependency_replica_delay_ms` - How long non-preferred replicas wait before attempting to run a dependent refresh when `prefer_dependency_replica` is enabled. Default: 2000 ms.
### Changing Refresh Parameters {#changing-refresh-parameters}
-Refresh parameters of an existing refreshable materialized view are changed with [`ALTER TABLE ... MODIFY REFRESH`](/reference/statements/alter/view#alter-table--modify-refresh-statement):
+Refresh parameters of an existing refreshable materialized view are changed with [`ALTER TABLE ... MODIFY REFRESH`](/core/reference/statements/alter/view#alter-table--modify-refresh-statement):
```sql
ALTER TABLE [db.]name MODIFY REFRESH EVERY|AFTER ... [RANDOMIZE FOR ...] [DEPENDS ON ...] [SETTINGS ...]
@@ -379,11 +379,11 @@ ALTER TABLE rmv MODIFY REFRESH EVERY 6 HOUR;
### Other operations {#other-operations}
-The status of all refreshable materialized views is available in table [`system.view_refreshes`](/reference/system-tables/view_refreshes). In particular, it contains refresh progress (if running), last and next refresh time, exception message if a refresh failed.
+The status of all refreshable materialized views is available in table [`system.view_refreshes`](/core/reference/system-tables/view_refreshes). In particular, it contains refresh progress (if running), last and next refresh time, exception message if a refresh failed.
-To manually stop, start, trigger, or cancel refreshes, use [`SYSTEM STOP|START|REFRESH|WAIT|CANCEL VIEW`](/reference/statements/system#managing-refreshable-materialized-views).
+To manually stop, start, trigger, or cancel refreshes, use [`SYSTEM STOP|START|REFRESH|WAIT|CANCEL VIEW`](/core/reference/statements/system#managing-refreshable-materialized-views).
-To wait for a refresh to complete, use [`SYSTEM WAIT VIEW`](/reference/statements/system#wait-view). In particular, useful for waiting for initial refresh after creating a view.
+To wait for a refresh to complete, use [`SYSTEM WAIT VIEW`](/core/reference/statements/system#wait-view). In particular, useful for waiting for initial refresh after creating a view.
Fun fact: the refresh query is allowed to read from the view that's being refreshed, seeing pre-refresh version of the data. This means you can implement Conway's game of life: https://pastila.nl/?00021a4b/d6156ff819c83d490ad2dcec05676865#O0LGWTO7maUQIA4AcGUtlA==
@@ -395,7 +395,7 @@ Fun fact: the refresh query is allowed to read from the view that's being refres
-This is an experimental feature that may change in backwards-incompatible ways in the future releases. Enable usage of window views and `WATCH` query using [allow_experimental_window_view](/reference/settings/session-settings#allow_experimental_window_view) setting. Input the command `set allow_experimental_window_view = 1`.
+This is an experimental feature that may change in backwards-incompatible ways in the future releases. Enable usage of window views and `WATCH` query using [allow_experimental_window_view](/core/reference/settings/session-settings#allow_experimental_window_view) setting. Input the command `set allow_experimental_window_view = 1`.
```sql
@@ -413,7 +413,7 @@ When creating a window view without `TO [db].[table]`, you must specify `ENGINE`
### Time Window Functions {#time-window-functions}
-[Time window functions](/reference/functions/regular-functions/time-window-functions) are used to get the lower and upper window bound of records. The window view needs to be used with a time window function.
+[Time window functions](/core/reference/functions/regular-functions/time-window-functions) are used to get the lower and upper window bound of records. The window view needs to be used with a time window function.
### TIME ATTRIBUTES {#time-attributes}
@@ -453,7 +453,7 @@ You can modify `SELECT` query that was specified in the window view by using `AL
### Monitoring New Windows {#monitoring-new-windows}
-Window view supports the [WATCH](/reference/statements/watch) query to monitoring changes, or use `TO` syntax to output the results to a table.
+Window view supports the [WATCH](/core/reference/statements/watch) query to monitoring changes, or use `TO` syntax to output the results to a table.
```sql
WATCH [db.]window_view
diff --git a/reference/statements/delete.mdx b/core/reference/statements/delete.mdx
similarity index 80%
rename from reference/statements/delete.mdx
rename to core/reference/statements/delete.mdx
index a44e64e3..c84a0005 100644
--- a/reference/statements/delete.mdx
+++ b/core/reference/statements/delete.mdx
@@ -13,7 +13,7 @@ The lightweight `DELETE` statement removes rows from the table `[db.]table` that
DELETE FROM [db.]table [ON CLUSTER cluster] [IN PARTITION partition_expr] WHERE expr;
```
-It is called "lightweight `DELETE`" to contrast it to the [ALTER TABLE ... DELETE](/reference/statements/alter/delete) command, which is a heavyweight process.
+It is called "lightweight `DELETE`" to contrast it to the [ALTER TABLE ... DELETE](/core/reference/statements/alter/delete) command, which is a heavyweight process.
## Examples {#examples}
@@ -24,25 +24,25 @@ DELETE FROM hits WHERE Title LIKE '%hello%';
## Lightweight `DELETE` does not delete data immediately {#lightweight-delete-does-not-delete-data-immediately}
-Lightweight `DELETE` is implemented as a [mutation](/reference/statements/alter#mutations) that marks rows as deleted but does not immediately physically delete them.
+Lightweight `DELETE` is implemented as a [mutation](/core/reference/statements/alter#mutations) that marks rows as deleted but does not immediately physically delete them.
-By default, `DELETE` statements wait until marking the rows as deleted is completed before returning. This can take a long time if the amount of data is large. Alternatively, you can run it asynchronously in the background using the setting [`lightweight_deletes_sync`](/reference/settings/session-settings#lightweight_deletes_sync). If disabled, the `DELETE` statement is going to return immediately, but the data can still be visible to queries until the background mutation is finished.
+By default, `DELETE` statements wait until marking the rows as deleted is completed before returning. This can take a long time if the amount of data is large. Alternatively, you can run it asynchronously in the background using the setting [`lightweight_deletes_sync`](/core/reference/settings/session-settings#lightweight_deletes_sync). If disabled, the `DELETE` statement is going to return immediately, but the data can still be visible to queries until the background mutation is finished.
The mutation does not physically delete the rows that have been marked as deleted, this will only happen during the next merge. As a result, it is possible that for an unspecified period, data is not actually deleted from storage and is only marked as deleted.
-If you need to guarantee that your data is deleted from storage in a predictable time, consider using the table setting [`min_age_to_force_merge_seconds`](/reference/settings/merge-tree-settings#min_age_to_force_merge_seconds). Or you can use the [ALTER TABLE ... DELETE](/reference/statements/alter/delete) command. Note that deleting data using `ALTER TABLE ... DELETE` may consume significant resources as it recreates all affected parts.
+If you need to guarantee that your data is deleted from storage in a predictable time, consider using the table setting [`min_age_to_force_merge_seconds`](/core/reference/settings/merge-tree-settings#min_age_to_force_merge_seconds). Or you can use the [ALTER TABLE ... DELETE](/core/reference/statements/alter/delete) command. Note that deleting data using `ALTER TABLE ... DELETE` may consume significant resources as it recreates all affected parts.
## Deleting large amounts of data {#deleting-large-amounts-of-data}
-Large deletes can negatively affect ClickHouse performance. If you are attempting to delete all rows from a table, consider using the [`TRUNCATE TABLE`](/reference/statements/truncate) command.
+Large deletes can negatively affect ClickHouse performance. If you are attempting to delete all rows from a table, consider using the [`TRUNCATE TABLE`](/core/reference/statements/truncate) command.
-If you anticipate frequent deletes, consider using a [custom partitioning key](/reference/engines/table-engines/mergetree-family/custom-partitioning-key). You can then use the [`ALTER TABLE ... DROP PARTITION`](/reference/statements/alter/partition#drop-partitionpart) command to quickly drop all rows associated with that partition.
+If you anticipate frequent deletes, consider using a [custom partitioning key](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key). You can then use the [`ALTER TABLE ... DROP PARTITION`](/core/reference/statements/alter/partition#drop-partitionpart) command to quickly drop all rows associated with that partition.
## Limitations of lightweight `DELETE` {#limitations-of-lightweight-delete}
### Lightweight `DELETE`s with projections {#lightweight-deletes-with-projections}
-By default, `DELETE` does not work for tables with projections. This is because rows in a projection may be affected by a `DELETE` operation. But there is a [MergeTree setting](/reference/settings/merge-tree-settings) `lightweight_mutation_projection_mode` to change the behavior.
+By default, `DELETE` does not work for tables with projections. This is because rows in a projection may be affected by a `DELETE` operation. But there is a [MergeTree setting](/core/reference/settings/merge-tree-settings) `lightweight_mutation_projection_mode` to change the behavior.
## Performance considerations when using lightweight `DELETE` {#performance-considerations-when-using-lightweight-delete}
diff --git a/reference/statements/describe-table.mdx b/core/reference/statements/describe-table.mdx
similarity index 78%
rename from reference/statements/describe-table.mdx
rename to core/reference/statements/describe-table.mdx
index 2f48513f..cf1d01fd 100644
--- a/reference/statements/describe-table.mdx
+++ b/core/reference/statements/describe-table.mdx
@@ -14,20 +14,20 @@ Returns information about table columns.
DESC|DESCRIBE TABLE [db.]table [INTO OUTFILE filename] [FORMAT format]
```
-The `DESCRIBE` statement returns a row for each table column with the following [String](/reference/data-types/string) values:
+The `DESCRIBE` statement returns a row for each table column with the following [String](/core/reference/data-types/string) values:
- `name` — A column name.
- `type` — A column type.
-- `default_type` — A clause that is used in the column [default expression](/reference/statements/create/table): `DEFAULT`, `MATERIALIZED` or `ALIAS`. If there is no default expression, then empty string is returned.
+- `default_type` — A clause that is used in the column [default expression](/core/reference/statements/create/table): `DEFAULT`, `MATERIALIZED` or `ALIAS`. If there is no default expression, then empty string is returned.
- `default_expression` — An expression specified after the `DEFAULT` clause.
-- `comment` — A [column comment](/reference/statements/alter/column#comment-column).
-- `codec_expression` — A [codec](/reference/statements/create/table#column_compression_codec) that is applied to the column.
-- `ttl_expression` — A [TTL](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl) expression.
-- `is_subcolumn` — A flag that equals `1` for internal subcolumns. It is included into the result only if subcolumn description is enabled by the [describe_include_subcolumns](/reference/settings/session-settings#describe_include_subcolumns) setting.
+- `comment` — A [column comment](/core/reference/statements/alter/column#comment-column).
+- `codec_expression` — A [codec](/core/reference/statements/create/table#column_compression_codec) that is applied to the column.
+- `ttl_expression` — A [TTL](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl) expression.
+- `is_subcolumn` — A flag that equals `1` for internal subcolumns. It is included into the result only if subcolumn description is enabled by the [describe_include_subcolumns](/core/reference/settings/session-settings#describe_include_subcolumns) setting.
-All columns in [Nested](/reference/data-types/nested-data-structures) data structures are described separately. The name of each column is prefixed with a parent column name and a dot.
+All columns in [Nested](/core/reference/data-types/nested-data-structures) data structures are described separately. The name of each column is prefixed with a parent column name and a dot.
-To show internal subcolumns of other data types, use the [describe_include_subcolumns](/reference/settings/session-settings#describe_include_subcolumns) setting.
+To show internal subcolumns of other data types, use the [describe_include_subcolumns](/core/reference/settings/session-settings#describe_include_subcolumns) setting.
**Example**
@@ -81,4 +81,4 @@ This usage returns metadata about the result columns of the specified query or s
**See Also**
-- [describe_include_subcolumns](/reference/settings/session-settings#describe_include_subcolumns) setting.
+- [describe_include_subcolumns](/core/reference/settings/session-settings#describe_include_subcolumns) setting.
diff --git a/reference/statements/detach.mdx b/core/reference/statements/detach.mdx
similarity index 82%
rename from reference/statements/detach.mdx
rename to core/reference/statements/detach.mdx
index 433c4334..75ba3ed8 100644
--- a/reference/statements/detach.mdx
+++ b/core/reference/statements/detach.mdx
@@ -16,14 +16,14 @@ DETACH TABLE|VIEW|DICTIONARY|DATABASE [IF EXISTS] [db.]name [ON CLUSTER cluster]
Detaching does not delete the data or metadata of a table, a materialized view, a dictionary or a database. If an entity was not detached `PERMANENTLY`, on the next server launch the server will read the metadata and recall the table/view/dictionary/database again. If an entity was detached `PERMANENTLY`, there will be no automatic recall.
-Whether a table, a dictionary or a database was detached permanently or not, in both cases you can reattach them using the [ATTACH](/reference/statements/attach) query.
+Whether a table, a dictionary or a database was detached permanently or not, in both cases you can reattach them using the [ATTACH](/core/reference/statements/attach) query.
System log tables can be also attached back (e.g. `query_log`, `text_log`, etc.). Other system tables can't be reattached. On the next server launch the server will recall those tables again.
`ATTACH MATERIALIZED VIEW` does not work with short syntax (without `SELECT`), but you can attach it using the `ATTACH TABLE` query.
Note that you can not detach permanently the table which is already detached (temporary). But you can attach it back and then detach permanently again.
-Also, you can not [DROP](/reference/statements/drop#drop-table) the detached table, or [CREATE TABLE](/reference/statements/create/table) with the same name as detached permanently, or replace it with the other table with [RENAME TABLE](/reference/statements/rename) query.
+Also, you can not [DROP](/core/reference/statements/drop#drop-table) the detached table, or [CREATE TABLE](/core/reference/statements/create/table) with the same name as detached permanently, or replace it with the other table with [RENAME TABLE](/core/reference/statements/rename) query.
The `SYNC` modifier executes the action without delay.
@@ -69,5 +69,5 @@ In ClickHouse Cloud users should use the `PERMANENTLY` clause e.g. `DETACH TABLE
**See Also**
-- [Materialized View](/reference/statements/create/view#materialized-view)
-- [Dictionaries](/reference/statements/create/dictionary)
+- [Materialized View](/core/reference/statements/create/view#materialized-view)
+- [Dictionaries](/core/reference/statements/create/dictionary)
diff --git a/reference/statements/distributed-ddl.mdx b/core/reference/statements/distributed-ddl.mdx
similarity index 100%
rename from reference/statements/distributed-ddl.mdx
rename to core/reference/statements/distributed-ddl.mdx
diff --git a/reference/statements/drop.mdx b/core/reference/statements/drop.mdx
similarity index 94%
rename from reference/statements/drop.mdx
rename to core/reference/statements/drop.mdx
index acc9619f..3b0a0f7c 100644
--- a/reference/statements/drop.mdx
+++ b/core/reference/statements/drop.mdx
@@ -23,7 +23,7 @@ DROP DATABASE [IF EXISTS] db [ON CLUSTER cluster] [SYNC]
Deletes one or more tables.
-To undo the deletion of a table, please see [UNDROP TABLE](/reference/statements/undrop)
+To undo the deletion of a table, please see [UNDROP TABLE](/core/reference/statements/undrop)
Syntax:
@@ -118,7 +118,7 @@ DROP VIEW [IF EXISTS] [db.]name [ON CLUSTER cluster] [SYNC]
## DROP FUNCTION {#drop-function}
-Deletes a user defined function created by [CREATE FUNCTION](/reference/statements/create/function).
+Deletes a user defined function created by [CREATE FUNCTION](/core/reference/statements/create/function).
System functions can not be dropped.
**Syntax**
diff --git a/reference/statements/exchange.mdx b/core/reference/statements/exchange.mdx
similarity index 86%
rename from reference/statements/exchange.mdx
rename to core/reference/statements/exchange.mdx
index 3eb82aa5..be48c182 100644
--- a/reference/statements/exchange.mdx
+++ b/core/reference/statements/exchange.mdx
@@ -7,12 +7,12 @@ doc_type: 'reference'
---
Exchanges the names of two tables or dictionaries atomically.
-This task can also be accomplished with a [`RENAME`](/reference/statements/rename) query using a temporary name, but the operation is not atomic in that case.
+This task can also be accomplished with a [`RENAME`](/core/reference/statements/rename) query using a temporary name, but the operation is not atomic in that case.
****
-The `EXCHANGE` query is supported by the [`Atomic`](/reference/engines/database-engines/atomic) and [`Shared`](/products/cloud/features/infrastructure/shared-catalog#shared-database-engine) database engines only.
+The `EXCHANGE` query is supported by the [`Atomic`](/core/reference/engines/database-engines/atomic) and [`Shared`](/products/cloud/features/infrastructure/shared-catalog#shared-database-engine) database engines only.
**Syntax**
@@ -103,4 +103,4 @@ EXCHANGE DICTIONARIES [db0.]dict_A AND [db1.]dict_B [ON CLUSTER cluster]
**See Also**
-- [Dictionaries](/reference/statements/create/dictionary)
+- [Dictionaries](/core/reference/statements/create/dictionary)
diff --git a/reference/statements/execute_as.mdx b/core/reference/statements/execute_as.mdx
similarity index 79%
rename from reference/statements/execute_as.mdx
rename to core/reference/statements/execute_as.mdx
index 28d74663..4b9d6617 100644
--- a/reference/statements/execute_as.mdx
+++ b/core/reference/statements/execute_as.mdx
@@ -31,8 +31,8 @@ GRANT IMPERSONATE ON * TO user3;
```
allow user `user2` to execute commands `EXECUTE AS user1 ...` and also allow user `user3` to execute commands as any user.
-While impersonating another user function [currentUser()](/reference/functions/regular-functions/other-functions#currentUser) returns the name of that other user,
-and function [authenticatedUser()](/reference/functions/regular-functions/other-functions#authenticatedUser) returns the name of the user who has been actually authenticated.
+While impersonating another user function [currentUser()](/core/reference/functions/regular-functions/other-functions#currentUser) returns the name of that other user,
+and function [authenticatedUser()](/core/reference/functions/regular-functions/other-functions#authenticatedUser) returns the name of the user who has been actually authenticated.
## Examples {#examples}
diff --git a/reference/statements/exists.mdx b/core/reference/statements/exists.mdx
similarity index 100%
rename from reference/statements/exists.mdx
rename to core/reference/statements/exists.mdx
diff --git a/reference/statements/explain.mdx b/core/reference/statements/explain.mdx
similarity index 96%
rename from reference/statements/explain.mdx
rename to core/reference/statements/explain.mdx
index 5755bb18..f34c6224 100644
--- a/reference/statements/explain.mdx
+++ b/core/reference/statements/explain.mdx
@@ -179,12 +179,12 @@ Settings:
- `optimize` — Controls whether query plan optimizations are applied before displaying the plan. Default: 1.
- `header` — Prints output header for step. Default: 0.
- `description` — Prints step description. Default: 1.
-- `indexes` — Shows used indexes, the number of filtered parts and the number of filtered granules for every index applied. Default: 0. Supported for [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables. Starting from ClickHouse >= v25.9, this statement only shows reasonable output when used with `SETTINGS use_query_condition_cache = 0, use_skip_indexes_on_data_read = 0`.
-- `projections` — Shows all analyzed projections and their effect on part-level filtering based on projection primary key conditions. For each projection, this section includes statistics such as the number of parts, rows, marks, and ranges that were evaluated using the projection's primary key. It also shows how many data parts were skipped due to this filtering, without reading from the projection itself. Whether a projection was actually used for reading or only analyzed for filtering can be determined by the `description` field. Default: 0. Supported for [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables.
+- `indexes` — Shows used indexes, the number of filtered parts and the number of filtered granules for every index applied. Default: 0. Supported for [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables. Starting from ClickHouse >= v25.9, this statement only shows reasonable output when used with `SETTINGS use_query_condition_cache = 0, use_skip_indexes_on_data_read = 0`.
+- `projections` — Shows all analyzed projections and their effect on part-level filtering based on projection primary key conditions. For each projection, this section includes statistics such as the number of parts, rows, marks, and ranges that were evaluated using the projection's primary key. It also shows how many data parts were skipped due to this filtering, without reading from the projection itself. Whether a projection was actually used for reading or only analyzed for filtering can be determined by the `description` field. Default: 0. Supported for [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables.
- `actions` — Prints detailed information about step actions. Default: 0.
- `sorting` — Prints the sort description for each plan step that produces sorted output. Default: 0.
- `keep_logical_steps` — Keeps logical plan steps for joins instead of converting them to physical join implementations. Default: 0.
-- `json` — Prints query plan steps as a row in [JSON](/reference/formats/JSON/JSON) format. Default: 0. It is recommended to use [TabSeparatedRaw (TSVRaw)](/reference/formats/TabSeparated/TabSeparatedRaw) format to avoid unnecessary escaping.
+- `json` — Prints query plan steps as a row in [JSON](/core/reference/formats/JSON/JSON) format. Default: 0. It is recommended to use [TabSeparatedRaw (TSVRaw)](/core/reference/formats/TabSeparated/TabSeparatedRaw) format to avoid unnecessary escaping.
- `input_headers` — Prints input headers for step. Default: 0. Mostly useful only for developers to debug issues related to input-output header mismatch.
- `column_structure` — Prints also the structure of columns in headers on top of their name and type. Default: 0. Mostly useful only for developers to debug issues related to input-output header mismatch.
- `distributed` — Shows query plans executed on remote nodes for distributed tables or parallel replicas. Default: 0.
@@ -626,7 +626,7 @@ ExpressionTransform
```
### EXPLAIN ESTIMATE {#explain-estimate}
-Shows the estimated number of rows, marks and parts to be read from the tables while processing the query. Works with tables in the [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) family.
+Shows the estimated number of rows, marks and parts to be read from the tables while processing the query. Works with tables in the [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family.
**Example**
diff --git a/reference/statements/grant.mdx b/core/reference/statements/grant.mdx
similarity index 90%
rename from reference/statements/grant.mdx
rename to core/reference/statements/grant.mdx
index b0711cc2..6a319f78 100644
--- a/reference/statements/grant.mdx
+++ b/core/reference/statements/grant.mdx
@@ -11,7 +11,7 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
- Grants [privileges](#privileges) to ClickHouse user accounts or roles.
- Assigns roles to user accounts or to the other roles.
-To revoke privileges, use the [REVOKE](/reference/statements/revoke) statement. Also you can list granted privileges with the [SHOW GRANTS](/reference/statements/show#show-grants) statement.
+To revoke privileges, use the [REVOKE](/core/reference/statements/revoke) statement. Also you can list granted privileges with the [SHOW GRANTS](/core/reference/statements/show#show-grants) statement.
## Granting Privilege Syntax {#granting-privilege-syntax}
@@ -242,7 +242,7 @@ The hierarchy of privileges in ClickHouse is shown below:
- `SHOW NAMED COLLECTIONS SECRETS`
- [`OPTIMIZE`](#optimize)
- [`SELECT`](#select)
- - [`SET DEFINER`](/reference/statements/create/view#sql_security)
+ - [`SET DEFINER`](/core/reference/statements/create/view#sql_security)
- [`SHOW`](#show)
- `SHOW COLUMNS`
- `SHOW DATABASES`
@@ -367,11 +367,11 @@ By default, a user account or a role has no privileges.
If a user or a role has no privileges, it is displayed as [NONE](#none) privilege.
-Some queries by their implementation require a set of privileges. For example, to execute the [RENAME](/reference/statements/optimize) query you need the following privileges: `SELECT`, `CREATE TABLE`, `INSERT` and `DROP TABLE`.
+Some queries by their implementation require a set of privileges. For example, to execute the [RENAME](/core/reference/statements/optimize) query you need the following privileges: `SELECT`, `CREATE TABLE`, `INSERT` and `DROP TABLE`.
### SELECT {#select}
-Allows executing [SELECT](/reference/statements/select) queries.
+Allows executing [SELECT](/core/reference/statements/select) queries.
Privilege level: `COLUMN`.
@@ -389,7 +389,7 @@ This privilege allows `john` to execute any `SELECT` query that involves data fr
### INSERT {#insert}
-Allows executing [INSERT](/reference/statements/insert-into) queries.
+Allows executing [INSERT](/core/reference/statements/insert-into) queries.
Privilege level: `COLUMN`.
@@ -407,7 +407,7 @@ The granted privilege allows `john` to insert data to the `x` and/or `y` columns
### ALTER {#alter}
-Allows executing [ALTER](/reference/statements/alter) queries according to the following hierarchy of privileges:
+Allows executing [ALTER](/core/reference/statements/alter) queries according to the following hierarchy of privileges:
- `ALTER`. Level: `COLUMN`.
- `ALTER TABLE`. Level: `GROUP`
@@ -452,15 +452,15 @@ Examples of how this hierarchy is treated:
- The `MODIFY SETTING` privilege allows modifying table engine settings. It does not affect settings or server configuration parameters.
- The `ATTACH` operation needs the [CREATE](#create) privilege.
- The `DETACH` operation needs the [DROP](#drop) privilege.
-- To stop mutation by the [KILL MUTATION](/reference/statements/kill#kill-mutation) query, you need to have a privilege to start this mutation. For example, if you want to stop the `ALTER UPDATE` query, you need the `ALTER UPDATE`, `ALTER TABLE`, or `ALTER` privilege.
+- To stop mutation by the [KILL MUTATION](/core/reference/statements/kill#kill-mutation) query, you need to have a privilege to start this mutation. For example, if you want to stop the `ALTER UPDATE` query, you need the `ALTER UPDATE`, `ALTER TABLE`, or `ALTER` privilege.
### BACKUP {#backup}
-Allows execution of [`BACKUP`] in queries. For more information on backups see ["Backup and Restore"](/concepts/features/backup-restore/overview).
+Allows execution of [`BACKUP`] in queries. For more information on backups see ["Backup and Restore"](/core/concepts/features/backup-restore/overview).
### CREATE {#create}
-Allows executing [CREATE](/reference/statements/create) and [ATTACH](/reference/statements/attach) DDL-queries according to the following hierarchy of privileges:
+Allows executing [CREATE](/core/reference/statements/create) and [ATTACH](/core/reference/statements/attach) DDL-queries according to the following hierarchy of privileges:
- `CREATE`. Level: `GROUP`
- `CREATE DATABASE`. Level: `DATABASE`
@@ -500,7 +500,7 @@ located in the `access_control_improvements` section of `config.xml` (see below)
### DROP {#drop}
-Allows executing [DROP](/reference/statements/drop) and [DETACH](/reference/statements/detach) queries according to the following hierarchy of privileges:
+Allows executing [DROP](/core/reference/statements/drop) and [DETACH](/core/reference/statements/detach) queries according to the following hierarchy of privileges:
- `DROP`. Level: `GROUP`
- `DROP DATABASE`. Level: `DATABASE`
@@ -510,13 +510,13 @@ Allows executing [DROP](/reference/statements/drop) and [DETACH](/reference/stat
### TRUNCATE {#truncate}
-Allows executing [TRUNCATE](/reference/statements/truncate) queries.
+Allows executing [TRUNCATE](/core/reference/statements/truncate) queries.
Privilege level: `TABLE`.
### OPTIMIZE {#optimize}
-Allows executing [OPTIMIZE TABLE](/reference/statements/optimize) queries.
+Allows executing [OPTIMIZE TABLE](/core/reference/statements/optimize) queries.
Privilege level: `TABLE`.
@@ -536,7 +536,7 @@ A user has the `SHOW` privilege if it has any other privilege concerning the spe
### KILL QUERY {#kill-query}
-Allows executing [KILL](/reference/statements/kill#kill-query) queries according to the following hierarchy of privileges:
+Allows executing [KILL](/core/reference/statements/kill#kill-query) queries according to the following hierarchy of privileges:
Privilege level: `GLOBAL`.
@@ -577,7 +577,7 @@ The `ROLE ADMIN` privilege allows a user to assign and revoke any roles includin
### SYSTEM {#system}
-Allows a user to execute [SYSTEM](/reference/statements/system) queries according to the following hierarchy of privileges.
+Allows a user to execute [SYSTEM](/core/reference/statements/system) queries according to the following hierarchy of privileges.
- `SYSTEM`. Level: `GROUP`
- `SYSTEM SHUTDOWN`. Level: `GLOBAL`. Aliases: `SYSTEM KILL`, `SHUTDOWN`
@@ -607,7 +607,7 @@ The `SYSTEM RELOAD EMBEDDED DICTIONARIES` privilege implicitly granted by the `S
### INTROSPECTION {#introspection}
-Allows using [introspection](/concepts/features/performance/troubleshoot/sampling-query-profiler) functions.
+Allows using [introspection](/core/concepts/features/performance/troubleshoot/sampling-query-profiler) functions.
- `INTROSPECTION`. Level: `GROUP`. Aliases: `INTROSPECTION FUNCTIONS`
- `addressToLine`. Level: `GLOBAL`
@@ -617,7 +617,7 @@ Allows using [introspection](/concepts/features/performance/troubleshoot/samplin
### SOURCES {#sources}
-Allows using external data sources. Applies to [table engines](/reference/engines/table-engines) and [table functions](/reference/functions/table-functions).
+Allows using external data sources. Applies to [table engines](/core/reference/engines/table-engines) and [table functions](/core/reference/functions/table-functions).
- `READ`. Level: `GLOBAL_WITH_PARAMETER`
- `WRITE`. Level: `GLOBAL_WITH_PARAMETER`
@@ -650,8 +650,8 @@ Otherwise, you should use the syntax `GRANT AZURE ON *.* TO user` which is equiv
Examples:
-- To create a table with the [MySQL table engine](/reference/engines/table-engines/integrations/mysql), you need `CREATE TABLE (ON db.table_name)` and `MYSQL` privileges.
-- To use the [mysql table function](/reference/functions/table-functions/mysql), you need `CREATE TEMPORARY TABLE` and `MYSQL` privileges.
+- To create a table with the [MySQL table engine](/core/reference/engines/table-engines/integrations/mysql), you need `CREATE TABLE (ON db.table_name)` and `MYSQL` privileges.
+- To use the [mysql table function](/core/reference/functions/table-functions/mysql), you need `CREATE TEMPORARY TABLE` and `MYSQL` privileges.
### Source Filter Grants {#source-filter-grants}
@@ -722,7 +722,7 @@ GRANT CURRENT GRANTS(READ ON S3) TO alice
- `dictGet`. Aliases: `dictHas`, `dictGetHierarchy`, `dictIsIn`
-Allows a user to execute [dictGet](/reference/functions/regular-functions/ext-dict-functions#dictGet), [dictHas](/reference/functions/regular-functions/ext-dict-functions#dictHas), [dictGetHierarchy](/reference/functions/regular-functions/ext-dict-functions#dictGetHierarchy), [dictIsIn](/reference/functions/regular-functions/ext-dict-functions#dictIsIn) functions.
+Allows a user to execute [dictGet](/core/reference/functions/regular-functions/ext-dict-functions#dictGet), [dictHas](/core/reference/functions/regular-functions/ext-dict-functions#dictHas), [dictGetHierarchy](/core/reference/functions/regular-functions/ext-dict-functions#dictGetHierarchy), [dictIsIn](/core/reference/functions/regular-functions/ext-dict-functions#dictIsIn) functions.
Privilege level: `DICTIONARY`.
@@ -734,9 +734,9 @@ Privilege level: `DICTIONARY`.
### displaySecretsInShowAndSelect {#displaysecretsinshowandselect}
Allows a user to view secrets in `SHOW` and `SELECT` queries if both
-[`display_secrets_in_show_and_select` server setting](/reference/settings/server-settings/settings#display_secrets_in_show_and_select)
+[`display_secrets_in_show_and_select` server setting](/core/reference/settings/server-settings/settings#display_secrets_in_show_and_select)
and
-[`format_display_secrets_in_show_and_select` format setting](/reference/settings/formats#format_display_secrets_in_show_and_select)
+[`format_display_secrets_in_show_and_select` format setting](/core/reference/settings/formats#format_display_secrets_in_show_and_select)
are turned on.
### NAMED COLLECTION ADMIN {#named-collection-admin}
@@ -760,7 +760,7 @@ Assuming a named collection is called abc, we grant privilege CREATE NAMED COLLE
### TABLE ENGINE {#table-engine}
-Allows using a specified table engine when creating a table. Applies to [table engines](/reference/engines/table-engines).
+Allows using a specified table engine when creating a table. Applies to [table engines](/core/reference/engines/table-engines).
**Examples**
diff --git a/reference/statements/in.mdx b/core/reference/statements/in.mdx
similarity index 88%
rename from reference/statements/in.mdx
rename to core/reference/statements/in.mdx
index 8aa09d11..525bb12e 100644
--- a/reference/statements/in.mdx
+++ b/core/reference/statements/in.mdx
@@ -19,16 +19,16 @@ SELECT (CounterID, UserID) IN ((34, 123), (101500, 456)) FROM ...
If the left side is a single column that is in the index, and the right side is a set of constants, the system uses the index for processing the query.
-Don't list too many values explicitly (i.e. millions). If a data set is large, put it in a temporary table (for example, see the section [External data for query processing](/reference/engines/table-engines/special/external-data)), then use a subquery.
+Don't list too many values explicitly (i.e. millions). If a data set is large, put it in a temporary table (for example, see the section [External data for query processing](/core/reference/engines/table-engines/special/external-data)), then use a subquery.
The right side of the operator can be a set of constant expressions, a set of tuples with constant expressions (shown in the examples above), or the name of a database table or `SELECT` subquery in brackets.
ClickHouse allows types to differ in the left and the right parts of the `IN` subquery.
In this case, it converts the right side value to the type of the left side, as
-if the [accurateCastOrNull](/reference/functions/regular-functions/type-conversion-functions#accurateCastOrNull) function were applied to the right side.
+if the [accurateCastOrNull](/core/reference/functions/regular-functions/type-conversion-functions#accurateCastOrNull) function were applied to the right side.
-This means that the data type becomes [Nullable](/reference/data-types/nullable), and if the conversion
-cannot be performed, it returns [NULL](/reference/settings/formats#input_format_null_as_default).
+This means that the data type becomes [Nullable](/core/reference/data-types/nullable), and if the conversion
+cannot be performed, it returns [NULL](/core/reference/settings/formats#input_format_null_as_default).
**Example**
@@ -90,7 +90,7 @@ A subquery in the `IN` clause is always run just one time on a single server. Th
## NULL Processing {#null-processing}
-During request processing, the `IN` operator assumes that the result of an operation with [NULL](/reference/settings/formats#input_format_null_as_default) always equals `0`, regardless of whether `NULL` is on the right or left side of the operator. `NULL` values are not included in any dataset, do not correspond to each other and cannot be compared if [transform_null_in = 0](/reference/settings/session-settings#transform_null_in).
+During request processing, the `IN` operator assumes that the result of an operation with [NULL](/core/reference/settings/formats#input_format_null_as_default) always equals `0`, regardless of whether `NULL` is on the right or left side of the operator. `NULL` values are not included in any dataset, do not correspond to each other and cannot be compared if [transform_null_in = 0](/core/reference/settings/session-settings#transform_null_in).
Here is an example with the `t_null` table:
@@ -130,7 +130,7 @@ There are two options for `IN` operators with subqueries (similar to `JOIN` oper
****
-Remember that the algorithms described below may work differently depending on the [settings](/reference/settings/session-settings) `distributed_product_mode` setting.
+Remember that the algorithms described below may work differently depending on the [settings](/core/reference/settings/session-settings) `distributed_product_mode` setting.
When using the regular `IN`, the query is sent to remote servers, and each of them runs the subqueries in the `IN` or `JOIN` clause.
@@ -231,7 +231,7 @@ It also makes sense to specify a local table in the `GLOBAL IN` clause, in case
### Distributed Subqueries and max_rows_in_set {#distributed-subqueries-and-max_rows_in_set}
-You can use [`max_rows_in_set`](/reference/settings/session-settings#max_rows_in_set) and [`max_bytes_in_set`](/reference/settings/session-settings#max_bytes_in_set) to control how much data is transferred during distributed queries.
+You can use [`max_rows_in_set`](/core/reference/settings/session-settings#max_rows_in_set) and [`max_bytes_in_set`](/core/reference/settings/session-settings#max_bytes_in_set) to control how much data is transferred during distributed queries.
This is specially important if the `GLOBAL IN` query returns a large amount of data. Consider the following SQL:
@@ -239,7 +239,7 @@ This is specially important if the `GLOBAL IN` query returns a large amount of d
SELECT * FROM table1 WHERE col1 GLOBAL IN (SELECT col1 FROM table2 WHERE )
```
-If `some_predicate` is not selective enough, it will return a large amount of data and cause performance issues. In such cases, it is wise to limit the data transfer over the network. Also, note that [`set_overflow_mode`](/reference/settings/session-settings#set_overflow_mode) is set to `throw` (by default) meaning that an exception is raised when these thresholds are met.
+If `some_predicate` is not selective enough, it will return a large amount of data and cause performance issues. In such cases, it is wise to limit the data transfer over the network. Also, note that [`set_overflow_mode`](/core/reference/settings/session-settings#set_overflow_mode) is set to `throw` (by default) meaning that an exception is raised when these thresholds are met.
### Distributed Subqueries and max_parallel_replicas {#distributed-subqueries-and-max_parallel_replicas}
@@ -267,4 +267,4 @@ Therefore adding the [max_parallel_replicas](#distributed-subqueries-and-max_par
One workaround if `local_table_2` does not meet the requirements, is to use `GLOBAL IN` or `GLOBAL JOIN`.
-If a table doesn't have a sampling key, more flexible options for [parallel_replicas_custom_key](/reference/settings/session-settings#parallel_replicas_custom_key) can be used that can produce different and more optimal behaviour.
+If a table doesn't have a sampling key, more flexible options for [parallel_replicas_custom_key](/core/reference/settings/session-settings#parallel_replicas_custom_key) can be used that can produce different and more optimal behaviour.
diff --git a/core/reference/statements/index.mdx b/core/reference/statements/index.mdx
new file mode 100644
index 00000000..4bbf9314
--- /dev/null
+++ b/core/reference/statements/index.mdx
@@ -0,0 +1,9 @@
+---
+description: 'Documentation for ClickHouse SQL Statements'
+sidebarTitle: 'List of statements'
+slug: /sql-reference/statements/
+title: 'ClickHouse SQL Statements'
+doc_type: 'reference'
+---
+
+Users interact with ClickHouse using SQL statements. ClickHouse supports common SQL statements like [SELECT](/core/reference/statements/select) and [CREATE](/core/reference/statements/create), but it also provides specialized statements like [KILL](/core/reference/statements/kill) and [OPTIMIZE](/core/reference/statements/optimize).
diff --git a/reference/statements/insert-into.mdx b/core/reference/statements/insert-into.mdx
similarity index 79%
rename from reference/statements/insert-into.mdx
rename to core/reference/statements/insert-into.mdx
index 5987432e..0479b751 100644
--- a/reference/statements/insert-into.mdx
+++ b/core/reference/statements/insert-into.mdx
@@ -14,7 +14,7 @@ Inserts data into a table.
INSERT INTO [TABLE] [db.]table [(c1, c2, c3)] [SETTINGS ...] VALUES (v11, v12, v13), (v21, v22, v23), ...
```
-You can specify a list of columns to insert using the `(c1, c2, c3)`. You can also use an expression with column [matcher](/reference/statements/select#asterisk) such as `*` and/or [modifiers](/reference/statements/select#select-modifiers) such as [APPLY](/reference/statements/select/apply_modifier), [EXCEPT](/reference/statements/select/except_modifier), [REPLACE](/reference/statements/select/replace_modifier).
+You can specify a list of columns to insert using the `(c1, c2, c3)`. You can also use an expression with column [matcher](/core/reference/statements/select#asterisk) such as `*` and/or [modifiers](/core/reference/statements/select#select-modifiers) such as [APPLY](/core/reference/statements/select/apply_modifier), [EXCEPT](/core/reference/statements/select/except_modifier), [REPLACE](/core/reference/statements/select/replace_modifier).
For example, consider the table:
@@ -67,7 +67,7 @@ If a list of columns does not include all existing columns, the rest of the colu
- The values calculated from the `DEFAULT` expressions specified in the table definition.
- Zeros and empty strings, if `DEFAULT` expressions are not defined.
-Data can be passed to the INSERT in any [format](/reference/formats) supported by ClickHouse. The format must be specified explicitly in the query:
+Data can be passed to the INSERT in any [format](/core/reference/formats) supported by ClickHouse. The format must be specified explicitly in the query:
```sql
INSERT INTO [db.]table [(c1, c2, c3)] FORMAT format_name data_set
@@ -89,7 +89,7 @@ INSERT INTO t FORMAT TabSeparated
22 Qwerty
```
-You can insert data separately from the query by using the [command-line client](/concepts/features/tools-and-utilities/clickhouse-local) or the [HTTP interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http).
+You can insert data separately from the query by using the [command-line client](/core/concepts/features/tools-and-utilities/clickhouse-local) or the [HTTP interface](/core/concepts/features/interfaces/http).
If you want to specify `SETTINGS` for `INSERT` query then you have to do it _before_ the `FORMAT` clause since everything after `FORMAT format_name` is treated as data. For example:
@@ -101,7 +101,7 @@ INSERT INTO table SETTINGS ... FORMAT format_name data_set
## Constraints {#constraints}
-If a table has [constraints](/reference/statements/create/table#constraints), their expressions will be checked for each row of inserted data. If any of those constraints is not satisfied — the server will raise an exception containing the constraint name and expression, and the query will be stopped.
+If a table has [constraints](/core/reference/statements/create/table#constraints), their expressions will be checked for each row of inserted data. If any of those constraints is not satisfied — the server will raise an exception containing the constraint name and expression, and the query will be stopped.
## Data Type Validation {#data-type-validation}
@@ -157,9 +157,9 @@ None of the data formats except the Values format allow setting values to expres
Other queries for modifying data parts are not supported: `UPDATE`, `DELETE`, `REPLACE`, `MERGE`, `UPSERT`, `INSERT UPDATE`.
However, you can delete old data using `ALTER TABLE ... DROP PARTITION`.
-The `FORMAT` clause must be specified at the end of the query if the `SELECT` clause contains the table function [input()](/reference/functions/table-functions/input).
+The `FORMAT` clause must be specified at the end of the query if the `SELECT` clause contains the table function [input()](/core/reference/functions/table-functions/input).
-To insert a default value instead of `NULL` into a column with a non-nullable data type, enable the [insert_null_as_default](/reference/settings/session-settings#insert_null_as_default) setting.
+To insert a default value instead of `NULL` into a column with a non-nullable data type, enable the [insert_null_as_default](/core/reference/settings/session-settings#insert_null_as_default) setting.
`INSERT` also supports CTE (common table expression). For example, the following two statements are equivalent:
@@ -176,17 +176,17 @@ WITH y AS (SELECT * FROM numbers(10)) INSERT INTO x SELECT * FROM y;
INSERT INTO [TABLE] [db.]table [(c1, c2, c3)] FROM INFILE file_name [COMPRESSION type] [SETTINGS ...] [FORMAT format_name]
```
-Use the syntax above to insert data from a file, or files, stored on the **client** side. `file_name` and `type` are string literals. Input file [format](/reference/formats) must be set in the `FORMAT` clause.
+Use the syntax above to insert data from a file, or files, stored on the **client** side. `file_name` and `type` are string literals. Input file [format](/core/reference/formats) must be set in the `FORMAT` clause.
Compressed files are supported. The compression type is detected by the extension of the file name. Or it can be explicitly specified in a `COMPRESSION` clause. Supported types are: `'none'`, `'gzip'`, `'deflate'`, `'br'`, `'xz'`, `'zstd'`, `'lz4'`, `'bz2'`.
-This functionality is available in the [command-line client](/integrations/connectors/data-integrations/drivers-and-interfaces/client) and [clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local).
+This functionality is available in the [command-line client](/core/concepts/features/interfaces/client) and [clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local).
**Examples**
### Single file with FROM INFILE {#single-file-with-from-infile}
-Execute the following queries using [command-line client](/integrations/connectors/data-integrations/drivers-and-interfaces/client):
+Execute the following queries using [command-line client](/core/concepts/features/interfaces/client):
```bash title="Query"
echo 1,A > input.csv ; echo 2,B >> input.csv
@@ -214,7 +214,7 @@ clickhouse-client --query="SELECT * FROM infile_globs FORMAT PrettyCompact;"
```
-In addition to selecting multiple files with `*`, you can use ranges (`{1,2}` or `{1..9}`) and other [glob substitutions](/reference/functions/table-functions/file#globs-in-path). These three all would work with the example above:
+In addition to selecting multiple files with `*`, you can use ranges (`{1,2}` or `{1..9}`) and other [glob substitutions](/core/reference/functions/table-functions/file#globs-in-path). These three all would work with the example above:
```sql
INSERT INTO infile_globs FROM INFILE 'input_*.csv' FORMAT CSV;
@@ -225,7 +225,7 @@ INSERT INTO infile_globs FROM INFILE 'input_?.csv' FORMAT CSV;
## Inserting using a Table Function {#inserting-using-a-table-function}
-Data can be inserted into tables referenced by [table functions](/reference/functions/table-functions).
+Data can be inserted into tables referenced by [table functions](/core/reference/functions/table-functions).
**Syntax**
@@ -235,7 +235,7 @@ INSERT INTO [TABLE] FUNCTION table_func ...
**Example**
-The [remote](/reference/functions/table-functions/remote) table function is used in the following queries:
+The [remote](/core/reference/functions/table-functions/remote) table function is used in the following queries:
```sql title="Query"
CREATE TABLE simple_table (id UInt32, text String) ENGINE=MergeTree() ORDER BY id;
@@ -284,19 +284,19 @@ Performance will not decrease if:
### Asynchronous inserts {#asynchronous-inserts}
-It is possible to asynchronously insert data in small but frequent inserts. The data from such insertions is combined into batches and then safely inserted into a table. To use asynchronous inserts, enable the [`async_insert`](/reference/settings/session-settings#async_insert) setting.
+It is possible to asynchronously insert data in small but frequent inserts. The data from such insertions is combined into batches and then safely inserted into a table. To use asynchronous inserts, enable the [`async_insert`](/core/reference/settings/session-settings#async_insert) setting.
-Using `async_insert` or the [`Buffer` table engine](/reference/engines/table-engines/special/buffer) results in additional buffering.
+Using `async_insert` or the [`Buffer` table engine](/core/reference/engines/table-engines/special/buffer) results in additional buffering.
### Large or long-running inserts {#large-or-long-running-inserts}
-When you are inserting large amounts of data, ClickHouse will optimize write performance through a process called "squashing". Small blocks of inserted data in memory are merged and squashed into larger blocks before being written to disk. Squashing reduces the overhead associated with each write operation. In this process, inserted data will be available to query after ClickHouse completes writing each [`max_insert_block_size`](/reference/settings/session-settings#max_insert_block_size) rows.
+When you are inserting large amounts of data, ClickHouse will optimize write performance through a process called "squashing". Small blocks of inserted data in memory are merged and squashed into larger blocks before being written to disk. Squashing reduces the overhead associated with each write operation. In this process, inserted data will be available to query after ClickHouse completes writing each [`max_insert_block_size`](/core/reference/settings/session-settings#max_insert_block_size) rows.
**See Also**
-- [async_insert](/reference/settings/session-settings#async_insert)
-- [wait_for_async_insert](/reference/settings/session-settings#wait_for_async_insert)
-- [wait_for_async_insert_timeout](/reference/settings/session-settings#wait_for_async_insert_timeout)
-- [async_insert_max_data_size](/reference/settings/session-settings#async_insert_max_data_size)
-- [async_insert_busy_timeout_ms](/reference/settings/session-settings#async_insert_busy_timeout_max_ms)
-- [async_insert_stale_timeout_ms](/reference/settings/session-settings#async_insert_max_data_size)
+- [async_insert](/core/reference/settings/session-settings#async_insert)
+- [wait_for_async_insert](/core/reference/settings/session-settings#wait_for_async_insert)
+- [wait_for_async_insert_timeout](/core/reference/settings/session-settings#wait_for_async_insert_timeout)
+- [async_insert_max_data_size](/core/reference/settings/session-settings#async_insert_max_data_size)
+- [async_insert_busy_timeout_ms](/core/reference/settings/session-settings#async_insert_busy_timeout_max_ms)
+- [async_insert_stale_timeout_ms](/core/reference/settings/session-settings#async_insert_max_data_size)
diff --git a/reference/statements/kill.mdx b/core/reference/statements/kill.mdx
similarity index 87%
rename from reference/statements/kill.mdx
rename to core/reference/statements/kill.mdx
index 59b9a238..2beaf34b 100644
--- a/reference/statements/kill.mdx
+++ b/core/reference/statements/kill.mdx
@@ -90,7 +90,7 @@ KILL MUTATION
[FORMAT format]
```
-Tries to cancel and remove [mutations](/reference/statements/alter#mutations) that are currently executing. Mutations to cancel are selected from the [`system.mutations`](/reference/system-tables/mutations) table using the filter specified by the `WHERE` clause of the `KILL` query.
+Tries to cancel and remove [mutations](/core/reference/statements/alter#mutations) that are currently executing. Mutations to cancel are selected from the [`system.mutations`](/core/reference/system-tables/mutations) table using the filter specified by the `WHERE` clause of the `KILL` query.
A test query (`TEST`) only checks the user's rights and displays a list of mutations to stop.
@@ -142,5 +142,5 @@ The query is useful when a mutation is stuck and cannot finish (e.g. if some fu
Changes already made by the mutation are not rolled back.
-`is_killed=1` column (ClickHouse Cloud only) in the [system.mutations](/reference/system-tables/mutations) table does not necessarily mean the mutation is completely finalized. It is possible for a mutation to remain in a state where `is_killed=1` and `is_done=0` for an extended period. This can happen if another long-running mutation is blocking the killed mutation. This is a normal situation.
+`is_killed=1` column (ClickHouse Cloud only) in the [system.mutations](/core/reference/system-tables/mutations) table does not necessarily mean the mutation is completely finalized. It is possible for a mutation to remain in a state where `is_killed=1` and `is_done=0` for an extended period. This can happen if another long-running mutation is blocking the killed mutation. This is a normal situation.
diff --git a/reference/statements/move.mdx b/core/reference/statements/move.mdx
similarity index 100%
rename from reference/statements/move.mdx
rename to core/reference/statements/move.mdx
diff --git a/reference/statements/optimize.mdx b/core/reference/statements/optimize.mdx
similarity index 82%
rename from reference/statements/optimize.mdx
rename to core/reference/statements/optimize.mdx
index ab3a7972..e57cada0 100644
--- a/reference/statements/optimize.mdx
+++ b/core/reference/statements/optimize.mdx
@@ -6,7 +6,7 @@ title: 'OPTIMIZE Statement'
doc_type: 'reference'
---
-This query tries to initialize an unscheduled merge of data parts for tables. Note that we generally recommend against using `OPTIMIZE TABLE ... FINAL` (see these [docs](/concepts/best-practices/avoid-optimize-final)) as its use case is meant for administration, not for daily operations.
+This query tries to initialize an unscheduled merge of data parts for tables. Note that we generally recommend against using `OPTIMIZE TABLE ... FINAL` (see these [docs](/core/concepts/best-practices/avoid-optimize-final)) as its use case is meant for administration, not for daily operations.
`OPTIMIZE` can't fix the `Too many parts` error.
@@ -22,16 +22,16 @@ OPTIMIZE TABLE [db.]name [ON CLUSTER cluster] [PARTITION partition | PARTITION I
OPTIMIZE TABLE [db.]name DRY RUN PARTS 'part_name1', 'part_name2' [, ...] [DEDUPLICATE [BY expression]] [CLEANUP]
```
-The `OPTIMIZE` query is supported for [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) family (including [materialized views](/reference/statements/create/view#materialized-view)) and the [Buffer](/reference/engines/table-engines/special/buffer) engines. Other table engines aren't supported.
+The `OPTIMIZE` query is supported for [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family (including [materialized views](/core/reference/statements/create/view#materialized-view)) and the [Buffer](/core/reference/engines/table-engines/special/buffer) engines. Other table engines aren't supported.
-When `OPTIMIZE` is used with the [ReplicatedMergeTree](/reference/engines/table-engines/mergetree-family/replication) family of table engines, ClickHouse creates a task for merging and waits for execution on all replicas (if the [alter_sync](/reference/settings/session-settings#alter_sync) setting is set to `2`) or on current replica (if the [alter_sync](/reference/settings/session-settings#alter_sync) setting is set to `1`).
+When `OPTIMIZE` is used with the [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/replication) family of table engines, ClickHouse creates a task for merging and waits for execution on all replicas (if the [alter_sync](/core/reference/settings/session-settings#alter_sync) setting is set to `2`) or on current replica (if the [alter_sync](/core/reference/settings/session-settings#alter_sync) setting is set to `1`).
-- If `OPTIMIZE` does not perform a merge for any reason, it does not notify the client. To enable notifications, use the [optimize_throw_if_noop](/reference/settings/session-settings#optimize_throw_if_noop) setting.
-- If you specify a `PARTITION`, only the specified partition is optimized. [How to set partition expression](/reference/statements/alter/partition#how-to-set-partition-expression).
-- If you specify `FINAL` or `FORCE`, optimization is performed even when all the data is already in one part. You can control this behaviour with [optimize_skip_merged_partitions](/reference/settings/session-settings#optimize_skip_merged_partitions). Also, the merge is forced even if concurrent merges are performed.
+- If `OPTIMIZE` does not perform a merge for any reason, it does not notify the client. To enable notifications, use the [optimize_throw_if_noop](/core/reference/settings/session-settings#optimize_throw_if_noop) setting.
+- If you specify a `PARTITION`, only the specified partition is optimized. [How to set partition expression](/core/reference/statements/alter/partition#how-to-set-partition-expression).
+- If you specify `FINAL` or `FORCE`, optimization is performed even when all the data is already in one part. You can control this behaviour with [optimize_skip_merged_partitions](/core/reference/settings/session-settings#optimize_skip_merged_partitions). Also, the merge is forced even if concurrent merges are performed.
- If you specify `DEDUPLICATE`, then completely identical rows (unless by-clause is specified) will be deduplicated (all columns are compared), it makes sense only for the MergeTree engine.
-You can specify how long (in seconds) to wait for inactive replicas to execute `OPTIMIZE` queries by the [replication_wait_for_inactive_replica_timeout](/reference/settings/session-settings#replication_wait_for_inactive_replica_timeout) setting.
+You can specify how long (in seconds) to wait for inactive replicas to execute `OPTIMIZE` queries by the [replication_wait_for_inactive_replica_timeout](/core/reference/settings/session-settings#replication_wait_for_inactive_replica_timeout) setting.
If the `alter_sync` is set to `2` and some replicas are not active for more than the time, specified by the `replication_wait_for_inactive_replica_timeout` setting, then an exception `UNFINISHED` is thrown.
@@ -46,7 +46,7 @@ This is useful for:
- Reproducing merge-related bugs deterministically.
- Benchmarking merge performance.
-`DRY RUN` is only supported for [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) family tables. The `PARTS` keyword with a list of part names is required. All specified parts must exist, be active, and belong to the same partition.
+`DRY RUN` is only supported for [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family tables. The `PARTS` keyword with a list of part names is required. All specified parts must exist, be active, and belong to the same partition.
`DRY RUN` is incompatible with `FINAL` and `PARTITION`. It can be combined with `DEDUPLICATE` (with optional column specification) and `CLEANUP` (for `ReplacingMergeTree` tables).
@@ -56,7 +56,7 @@ This is useful for:
OPTIMIZE TABLE [db.]name DRY RUN PARTS 'part_name1', 'part_name2' [, ...] [DEDUPLICATE [BY expression]] [CLEANUP]
```
-By default, the resulting merged part is validated in a way similar to [`CHECK TABLE`](/reference/statements/check-table) query. This behavior is controlled by the [optimize_dry_run_check_part](/reference/settings/session-settings#optimize_dry_run_check_part) setting (enabled by default). Disabling it skips validation, which can be useful for benchmarking the merge itself.
+By default, the resulting merged part is validated in a way similar to [`CHECK TABLE`](/core/reference/statements/check-table) query. This behavior is controlled by the [optimize_dry_run_check_part](/core/reference/settings/session-settings#optimize_dry_run_check_part) setting (enabled by default). Disabling it skips validation, which can be useful for benchmarking the merge itself.
**Example**
@@ -87,10 +87,10 @@ ORDER BY name;
## BY expression {#by-expression}
-If you want to perform deduplication on custom set of columns rather than on all, you can specify list of columns explicitly or use any combination of [`*`](/reference/statements/select#asterisk), [`COLUMNS`](/reference/statements/select#select-clause) or [`EXCEPT`](/reference/statements/select/except_modifier) expressions. The explicitly written or implicitly expanded list of columns must include all columns specified in row ordering expression (both primary and sorting keys) and partitioning expression (partitioning key).
+If you want to perform deduplication on custom set of columns rather than on all, you can specify list of columns explicitly or use any combination of [`*`](/core/reference/statements/select#asterisk), [`COLUMNS`](/core/reference/statements/select#select-clause) or [`EXCEPT`](/core/reference/statements/select/except_modifier) expressions. The explicitly written or implicitly expanded list of columns must include all columns specified in row ordering expression (both primary and sorting keys) and partitioning expression (partitioning key).
-Notice that `*` behaves just like in `SELECT`: [MATERIALIZED](/reference/statements/create/view#materialized-view) and [ALIAS](/reference/statements/create/table#alias) columns are not used for expansion.
+Notice that `*` behaves just like in `SELECT`: [MATERIALIZED](/core/reference/statements/create/view#materialized-view) and [ALIAS](/core/reference/statements/create/table#alias) columns are not used for expansion.
Also, it is an error to specify empty list of columns, or write an expression that results in an empty list of columns, or deduplicate by an `ALIAS` column.
diff --git a/reference/statements/parallel_with.mdx b/core/reference/statements/parallel_with.mdx
similarity index 82%
rename from reference/statements/parallel_with.mdx
rename to core/reference/statements/parallel_with.mdx
index b51c93b5..b6945d5e 100644
--- a/reference/statements/parallel_with.mdx
+++ b/core/reference/statements/parallel_with.mdx
@@ -38,11 +38,11 @@ DROP TABLE table2;
## Settings {#settings}
-Setting [max_threads](/reference/settings/session-settings#max_threads) controls how many threads are spawned.
+Setting [max_threads](/core/reference/settings/session-settings#max_threads) controls how many threads are spawned.
## Comparison with UNION {#comparison-with-union}
-The `PARALLEL WITH` clause is a bit similar to [UNION](/reference/statements/select/union), which also executes its operands in parallel. However there are some differences:
+The `PARALLEL WITH` clause is a bit similar to [UNION](/core/reference/statements/select/union), which also executes its operands in parallel. However there are some differences:
- `PARALLEL WITH` doesn't return any results from executing its operands, it can only rethrow an exception from them if any;
- `PARALLEL WITH` doesn't require its operands to have the same set of result columns;
- `PARALLEL WITH` can execute any statements (not just `SELECT`).
diff --git a/reference/statements/rename.mdx b/core/reference/statements/rename.mdx
similarity index 93%
rename from reference/statements/rename.mdx
rename to core/reference/statements/rename.mdx
index c6aa71b2..601dc1e9 100644
--- a/reference/statements/rename.mdx
+++ b/core/reference/statements/rename.mdx
@@ -7,7 +7,7 @@ doc_type: 'reference'
---
Renames databases, tables, or dictionaries. Several entities can be renamed in a single query.
-Note that the `RENAME` query with several entities is non-atomic operation. To swap entities names atomically, use the [EXCHANGE](/reference/statements/exchange) statement.
+Note that the `RENAME` query with several entities is non-atomic operation. To swap entities names atomically, use the [EXCHANGE](/core/reference/statements/exchange) statement.
**Syntax**
@@ -61,4 +61,4 @@ RENAME DICTIONARY [db0.]dict_A TO [db1.]dict_B [,...] [ON CLUSTER cluster]
**See Also**
-- [Dictionaries](/reference/statements/create/dictionary)
+- [Dictionaries](/core/reference/statements/create/dictionary)
diff --git a/reference/statements/revoke.mdx b/core/reference/statements/revoke.mdx
similarity index 96%
rename from reference/statements/revoke.mdx
rename to core/reference/statements/revoke.mdx
index d868e7a5..0a3ddc7b 100644
--- a/reference/statements/revoke.mdx
+++ b/core/reference/statements/revoke.mdx
@@ -46,4 +46,4 @@ GRANT SELECT ON accounts.staff TO mira;
REVOKE SELECT(wage) ON accounts.staff FROM mira;
```
-[Original article](/reference/settings/session-settings)
+[Original article](/core/reference/settings/session-settings)
diff --git a/reference/statements/select/all.mdx b/core/reference/statements/select/all.mdx
similarity index 100%
rename from reference/statements/select/all.mdx
rename to core/reference/statements/select/all.mdx
diff --git a/reference/statements/select/apply_modifier.mdx b/core/reference/statements/select/apply_modifier.mdx
similarity index 100%
rename from reference/statements/select/apply_modifier.mdx
rename to core/reference/statements/select/apply_modifier.mdx
diff --git a/reference/statements/select/array-join.mdx b/core/reference/statements/select/array-join.mdx
similarity index 91%
rename from reference/statements/select/array-join.mdx
rename to core/reference/statements/select/array-join.mdx
index e0b083a9..c53cd830 100644
--- a/reference/statements/select/array-join.mdx
+++ b/core/reference/statements/select/array-join.mdx
@@ -8,7 +8,7 @@ doc_type: 'reference'
It is a common operation for tables that contain an array column to produce a new table that has a row with each individual array element of that initial column, while values of other columns are duplicated. This is the basic case of what `ARRAY JOIN` clause does.
-Its name comes from the fact that it can be looked at as executing `JOIN` with an array or nested data structure. The intent is similar to the [arrayJoin](/reference/functions/regular-functions/array-join) function, but the clause functionality is broader.
+Its name comes from the fact that it can be looked at as executing `JOIN` with an array or nested data structure. The intent is similar to the [arrayJoin](/core/reference/functions/regular-functions/array-join) function, but the clause functionality is broader.
Syntax:
@@ -29,7 +29,7 @@ Supported types of `ARRAY JOIN` are listed below:
### ARRAY JOIN and LEFT ARRAY JOIN {#array-join-left-array-join-examples}
-The examples below demonstrate the usage of the `ARRAY JOIN` and `LEFT ARRAY JOIN` clauses. Let's create a table with an [Array](/reference/data-types/array) type column and insert values into it:
+The examples below demonstrate the usage of the `ARRAY JOIN` and `LEFT ARRAY JOIN` clauses. Let's create a table with an [Array](/core/reference/data-types/array) type column and insert values into it:
```sql
CREATE TABLE arrays_test
@@ -221,7 +221,7 @@ ARRAY JOIN arr AS a, arrayEnumerate(arr) AS num, arrayMap(x -> x + 1, arr) AS ma
└───────┴─────────┴───┴─────┴────────┘
```
-The example below uses the [arrayEnumerate](/reference/functions/regular-functions/array-functions#arrayEnumerate) function:
+The example below uses the [arrayEnumerate](/core/reference/functions/regular-functions/array-functions#arrayEnumerate) function:
```sql
SELECT s, arr, a, num, arrayEnumerate(arr)
@@ -261,7 +261,7 @@ SETTINGS enable_unaligned_array_join = 1;
## ARRAY JOIN with Nested Data Structure {#array-join-with-nested-data-structure}
-`ARRAY JOIN` also works with [nested data structures](/reference/data-types/nested-data-structures):
+`ARRAY JOIN` also works with [nested data structures](/core/reference/data-types/nested-data-structures):
```sql
CREATE TABLE nested_test
@@ -354,7 +354,7 @@ ARRAY JOIN nest AS n;
└───────┴─────┴─────┴─────────┴────────────┘
```
-Example of using the [arrayEnumerate](/reference/functions/regular-functions/array-functions#arrayEnumerate) function:
+Example of using the [arrayEnumerate](/core/reference/functions/regular-functions/array-functions#arrayEnumerate) function:
```sql
SELECT s, `n.x`, `n.y`, `nest.x`, `nest.y`, num
@@ -374,11 +374,11 @@ ARRAY JOIN nest AS n, arrayEnumerate(`nest.x`) AS num;
## Implementation Details {#implementation-details}
-The query execution order is optimized when running `ARRAY JOIN`. Although `ARRAY JOIN` must always be specified before the [WHERE](/reference/statements/select/where)/[PREWHERE](/reference/statements/select/prewhere) clause in a query, technically they can be performed in any order, unless result of `ARRAY JOIN` is used for filtering. The processing order is controlled by the query optimizer.
+The query execution order is optimized when running `ARRAY JOIN`. Although `ARRAY JOIN` must always be specified before the [WHERE](/core/reference/statements/select/where)/[PREWHERE](/core/reference/statements/select/prewhere) clause in a query, technically they can be performed in any order, unless result of `ARRAY JOIN` is used for filtering. The processing order is controlled by the query optimizer.
### Incompatibility with short-circuit function evaluation {#incompatibility-with-short-circuit-function-evaluation}
-[Short-circuit function evaluation](/reference/settings/session-settings#short_circuit_function_evaluation) is a feature that optimizes the execution of complex expressions in specific functions such as `if`, `multiIf`, `and`, and `or`. It prevents potential exceptions, such as division by zero, from occurring during the execution of these functions.
+[Short-circuit function evaluation](/core/reference/settings/session-settings#short_circuit_function_evaluation) is a feature that optimizes the execution of complex expressions in specific functions such as `if`, `multiIf`, `and`, and `or`. It prevents potential exceptions, such as division by zero, from occurring during the execution of these functions.
`arrayJoin` is always executed and not supported for short circuit function evaluation. That's because it's a unique function processed separately from all other functions during query analysis and execution and requires additional logic that doesn't work with short circuit function execution. The reason is that the number of rows in the result depends on the arrayJoin result, and it's too complex and expensive to implement lazy execution of `arrayJoin`.
diff --git a/reference/statements/select/distinct.mdx b/core/reference/statements/select/distinct.mdx
similarity index 77%
rename from reference/statements/select/distinct.mdx
rename to core/reference/statements/select/distinct.mdx
index e07c06d4..f9e1941b 100644
--- a/reference/statements/select/distinct.mdx
+++ b/core/reference/statements/select/distinct.mdx
@@ -100,12 +100,12 @@ Take this implementation specificity into account when programming queries.
## Null Processing {#null-processing}
-`DISTINCT` works with [NULL](/reference/syntax#null) as if `NULL` were a specific value, and `NULL==NULL`. In other words, in the `DISTINCT` results, different combinations with `NULL` occur only once. It differs from `NULL` processing in most other contexts.
+`DISTINCT` works with [NULL](/core/reference/syntax#null) as if `NULL` were a specific value, and `NULL==NULL`. In other words, in the `DISTINCT` results, different combinations with `NULL` occur only once. It differs from `NULL` processing in most other contexts.
## Alternatives {#alternatives}
-It is possible to obtain the same result by applying [GROUP BY](/reference/statements/select/group-by) across the same set of values as specified as `SELECT` clause, without using any aggregate functions. But there are few differences from `GROUP BY` approach:
+It is possible to obtain the same result by applying [GROUP BY](/core/reference/statements/select/group-by) across the same set of values as specified as `SELECT` clause, without using any aggregate functions. But there are few differences from `GROUP BY` approach:
- `DISTINCT` can be applied together with `GROUP BY`.
-- When [ORDER BY](/reference/statements/select/order-by) is omitted and [LIMIT](/reference/statements/select/limit) is defined, the query stops running immediately after the required number of different rows has been read.
+- When [ORDER BY](/core/reference/statements/select/order-by) is omitted and [LIMIT](/core/reference/statements/select/limit) is defined, the query stops running immediately after the required number of different rows has been read.
- Data blocks are output as they are processed, without waiting for the entire query to finish running.
diff --git a/reference/statements/select/except.mdx b/core/reference/statements/select/except.mdx
similarity index 98%
rename from reference/statements/select/except.mdx
rename to core/reference/statements/select/except.mdx
index 700c5f99..61165838 100644
--- a/reference/statements/select/except.mdx
+++ b/core/reference/statements/select/except.mdx
@@ -202,5 +202,5 @@ WHERE price < 10;
**See Also**
-- [UNION](/reference/statements/select/union)
-- [INTERSECT](/reference/statements/select/intersect)
+- [UNION](/core/reference/statements/select/union)
+- [INTERSECT](/core/reference/statements/select/intersect)
diff --git a/reference/statements/select/except_modifier.mdx b/core/reference/statements/select/except_modifier.mdx
similarity index 100%
rename from reference/statements/select/except_modifier.mdx
rename to core/reference/statements/select/except_modifier.mdx
diff --git a/reference/statements/select/format.mdx b/core/reference/statements/select/format.mdx
similarity index 51%
rename from reference/statements/select/format.mdx
rename to core/reference/statements/select/format.mdx
index dc93e863..0795504c 100644
--- a/reference/statements/select/format.mdx
+++ b/core/reference/statements/select/format.mdx
@@ -6,13 +6,13 @@ title: 'FORMAT Clause'
doc_type: 'reference'
---
-ClickHouse supports a wide range of [serialization formats](/reference/formats) that can be used on query results among other things. There are multiple ways to choose a format for `SELECT` output, one of them is to specify `FORMAT format` at the end of query to get resulting data in any specific format.
+ClickHouse supports a wide range of [serialization formats](/core/reference/formats) that can be used on query results among other things. There are multiple ways to choose a format for `SELECT` output, one of them is to specify `FORMAT format` at the end of query to get resulting data in any specific format.
Specific format might be used either for convenience, integration with other systems or performance gain.
## Default Format {#default-format}
-If the `FORMAT` clause is omitted, the default format is used, which depends on both the settings and the interface used for accessing the ClickHouse server. For the [HTTP interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http) and the [command-line client](/integrations/connectors/data-integrations/drivers-and-interfaces/client) in batch mode, the default format is `TabSeparated`. For the command-line client in interactive mode, the default format is `PrettyCompact` (it produces compact human-readable tables).
+If the `FORMAT` clause is omitted, the default format is used, which depends on both the settings and the interface used for accessing the ClickHouse server. For the [HTTP interface](/core/concepts/features/interfaces/http) and the [command-line client](/core/concepts/features/interfaces/client) in batch mode, the default format is `TabSeparated`. For the command-line client in interactive mode, the default format is `PrettyCompact` (it produces compact human-readable tables).
## Implementation Details {#implementation-details}
diff --git a/reference/statements/select/from.mdx b/core/reference/statements/select/from.mdx
similarity index 79%
rename from reference/statements/select/from.mdx
rename to core/reference/statements/select/from.mdx
index f3a54e51..6a3dea05 100644
--- a/reference/statements/select/from.mdx
+++ b/core/reference/statements/select/from.mdx
@@ -8,11 +8,11 @@ doc_type: 'reference'
The `FROM` clause specifies the source to read data from:
-- [Table](/reference/engines/table-engines)
-- [Subquery](/reference/statements/select)
-- [Table function](/reference/functions/table-functions)
+- [Table](/core/reference/engines/table-engines)
+- [Subquery](/core/reference/statements/select)
+- [Table function](/core/reference/functions/table-functions)
-[JOIN](/reference/statements/select/join) and [ARRAY JOIN](/reference/statements/select/array-join) clauses may also be used to extend the functionality of the `FROM` clause.
+[JOIN](/core/reference/statements/select/join) and [ARRAY JOIN](/core/reference/statements/select/array-join) clauses may also be used to extend the functionality of the `FROM` clause.
Subquery is another `SELECT` query that may be specified in parenthesis inside `FROM` clause.
@@ -22,9 +22,9 @@ A SQL standard `VALUES` clause can also be used as a table expression:
SELECT * FROM (VALUES (1, 'a'), (2, 'b'), (3, 'c')) AS t(id, val);
```
-See [Values table function](/reference/functions/table-functions/values#sql-standard-values-clause) for more details.
+See [Values table function](/core/reference/functions/table-functions/values#sql-standard-values-clause) for more details.
-The `FROM` can contain multiple data sources, separated by commas, which is equivalent of performing [CROSS JOIN](/reference/statements/select/join) on them.
+The `FROM` can contain multiple data sources, separated by commas, which is equivalent of performing [CROSS JOIN](/core/reference/statements/select/join) on them.
`FROM` can optionally appear before a `SELECT` clause. This is a ClickHouse-specific extension of standard SQL which makes `SELECT` statements easier to read. Example:
@@ -44,7 +44,7 @@ It is applicable when selecting data from tables using the following table engin
- `CollapsingMergeTree`
- `VersionedCollapsingMergeTree`
-`SELECT` queries with `FINAL` are executed in parallel. The [max_final_threads](/reference/settings/session-settings#max_final_threads) setting limits the number of threads used.
+`SELECT` queries with `FINAL` are executed in parallel. The [max_final_threads](/core/reference/settings/session-settings#max_final_threads) setting limits the number of threads used.
### Drawbacks {#drawbacks}
@@ -57,7 +57,7 @@ Queries that use `FINAL` execute slightly slower than similar queries that do no
As an alternative to using `FINAL`, it is sometimes possible to use different queries that assume the background processes of the `MergeTree` engine have not yet occurred and deal with it by applying an aggregation (for example, to discard duplicates). If you need to use `FINAL` in your queries in order to get the required results, it is okay to do so but be aware of the additional processing required.
-`FINAL` can be applied automatically using [FINAL](/reference/settings/session-settings#final) setting to all tables in a query using a session or a user profile.
+`FINAL` can be applied automatically using [FINAL](/core/reference/settings/session-settings#final) setting to all tables in a query using a session or a user profile.
### Example Usage {#example-usage}
diff --git a/reference/statements/select/group-by.mdx b/core/reference/statements/select/group-by.mdx
similarity index 83%
rename from reference/statements/select/group-by.mdx
rename to core/reference/statements/select/group-by.mdx
index 82b71a48..b82b27ad 100644
--- a/reference/statements/select/group-by.mdx
+++ b/core/reference/statements/select/group-by.mdx
@@ -9,10 +9,10 @@ doc_type: 'reference'
`GROUP BY` clause switches the `SELECT` query into an aggregation mode, which works as follows:
- `GROUP BY` clause contains a list of expressions (or a single expression, which is considered to be the list of length one). This list acts as a "grouping key", while each individual expression will be referred to as a "key expression".
-- All the expressions in the [SELECT](/reference/statements/select), [HAVING](/reference/statements/select/having), and [ORDER BY](/reference/statements/select/order-by) clauses **must** be calculated based on key expressions **or** on [aggregate functions](/reference/functions/aggregate-functions) over non-key expressions (including plain columns). In other words, each column selected from the table must be used either in a key expression or inside an aggregate function, but not both.
+- All the expressions in the [SELECT](/core/reference/statements/select), [HAVING](/core/reference/statements/select/having), and [ORDER BY](/core/reference/statements/select/order-by) clauses **must** be calculated based on key expressions **or** on [aggregate functions](/core/reference/functions/aggregate-functions) over non-key expressions (including plain columns). In other words, each column selected from the table must be used either in a key expression or inside an aggregate function, but not both.
- Result of aggregating `SELECT` query will contain as many rows as there were unique values of "grouping key" in source table. Usually, this significantly reduces the row count, often by orders of magnitude, but not necessarily: row count stays the same if all "grouping key" values were distinct.
-When you want to group data in the table by column numbers instead of column names, enable the setting [enable_positional_arguments](/reference/settings/session-settings#enable_positional_arguments).
+When you want to group data in the table by column numbers instead of column names, enable the setting [enable_positional_arguments](/core/reference/settings/session-settings#enable_positional_arguments).
There's an additional way to run aggregation over a table. If a query contains table columns only inside aggregate functions, the `GROUP BY clause` can be omitted, and aggregation by an empty set of keys is assumed. Such queries always return exactly one row.
@@ -20,7 +20,7 @@ There's an additional way to run aggregation over a table. If a query contains t
## NULL Processing {#null-processing}
-For grouping, ClickHouse interprets [NULL](/reference/syntax#null) as a value, and `NULL==NULL`. It differs from `NULL` processing in most other contexts.
+For grouping, ClickHouse interprets [NULL](/core/reference/syntax#null) as a value, and `NULL==NULL`. It differs from `NULL` processing in most other contexts.
Here's an example to show what this means.
@@ -59,7 +59,7 @@ The subtotals are calculated in the reverse order: at first subtotals are calcul
In the subtotals rows the values of already "grouped" key expressions are set to `0` or empty line.
-Mind that [HAVING](/reference/statements/select/having) clause can affect the subtotals results.
+Mind that [HAVING](/core/reference/statements/select/having) clause can affect the subtotals results.
**Example**
@@ -116,7 +116,7 @@ SELECT year, month, day, count(*) FROM t GROUP BY year, month, day WITH ROLLUP;
**See also**
-- [group_by_use_nulls](/reference/settings/session-settings#group_by_use_nulls) setting for SQL standard compatibility.
+- [group_by_use_nulls](/core/reference/settings/session-settings#group_by_use_nulls) setting for SQL standard compatibility.
## CUBE Modifier {#cube-modifier}
@@ -125,7 +125,7 @@ SELECT year, month, day, count(*) FROM t GROUP BY year, month, day WITH ROLLUP;
In the subtotals rows the values of all "grouped" key expressions are set to `0` or empty line.
-Mind that [HAVING](/reference/statements/select/having) clause can affect the subtotals results.
+Mind that [HAVING](/core/reference/statements/select/having) clause can affect the subtotals results.
**Example**
@@ -209,7 +209,7 @@ SELECT year, month, day, count(*) FROM t GROUP BY year, month, day WITH CUBE;
**See also**
-- [group_by_use_nulls](/reference/settings/session-settings#group_by_use_nulls) setting for SQL standard compatibility.
+- [group_by_use_nulls](/core/reference/settings/session-settings#group_by_use_nulls) setting for SQL standard compatibility.
## WITH TOTALS Modifier {#with-totals-modifier}
@@ -227,7 +227,7 @@ This extra row is only produced in `JSON*`, `TabSeparated*`, and `Pretty*` forma
totals is output in the results of `SELECT` queries, and is not output in `INSERT INTO ... SELECT`.
-`WITH TOTALS` can be run in different ways when [HAVING](/reference/statements/select/having) is present. The behavior depends on the `totals_mode` setting.
+`WITH TOTALS` can be run in different ways when [HAVING](/core/reference/statements/select/having) is present. The behavior depends on the `totals_mode` setting.
### Configuring Totals Processing {#configuring-totals-processing}
@@ -245,7 +245,7 @@ The other alternatives include only the rows that pass through HAVING in 'totals
If `max_rows_to_group_by` and `group_by_overflow_mode = 'any'` are not used, all variations of `after_having` are the same, and you can use any of them (for example, `after_having_auto`).
-You can use `WITH TOTALS` in subqueries, including subqueries in the [JOIN](/reference/statements/select/join) clause (in this case, the respective total values are combined).
+You can use `WITH TOTALS` in subqueries, including subqueries in the [JOIN](/core/reference/statements/select/join) clause (in this case, the respective total values are combined).
## GROUP BY ALL {#group-by-all}
@@ -357,7 +357,7 @@ GROUPING SETS
**See also**
-- [group_by_use_nulls](/reference/settings/session-settings#group_by_use_nulls) setting for SQL standard compatibility.
+- [group_by_use_nulls](/core/reference/settings/session-settings#group_by_use_nulls) setting for SQL standard compatibility.
## Implementation Details {#implementation-details}
@@ -365,17 +365,17 @@ Aggregation is one of the most important features of a column-oriented DBMS, and
### GROUP BY Optimization Depending on Table Sorting Key {#group-by-optimization-depending-on-table-sorting-key}
-The aggregation can be performed more effectively, if a table is sorted by some key, and `GROUP BY` expression contains at least prefix of sorting key or injective functions. In this case when a new key is read from table, the in-between result of aggregation can be finalized and sent to client. This behaviour is switched on by the [optimize_aggregation_in_order](/reference/settings/session-settings#optimize_aggregation_in_order) setting. Such optimization reduces memory usage during aggregation, but in some cases may slow down the query execution.
+The aggregation can be performed more effectively, if a table is sorted by some key, and `GROUP BY` expression contains at least prefix of sorting key or injective functions. In this case when a new key is read from table, the in-between result of aggregation can be finalized and sent to client. This behaviour is switched on by the [optimize_aggregation_in_order](/core/reference/settings/session-settings#optimize_aggregation_in_order) setting. Such optimization reduces memory usage during aggregation, but in some cases may slow down the query execution.
### GROUP BY in External Memory {#group-by-in-external-memory}
You can enable dumping temporary data to the disk to restrict memory usage during `GROUP BY`.
-The [max_bytes_before_external_group_by](/reference/settings/session-settings#max_bytes_before_external_group_by) setting determines the threshold RAM consumption for dumping `GROUP BY` temporary data to the file system. If set to 0 (the default), it is disabled.
-Alternatively, you can set [max_bytes_ratio_before_external_group_by](/reference/settings/session-settings#max_bytes_ratio_before_external_group_by), which allows to use `GROUP BY` in external memory only once the query reaches certain threshold of used memory.
+The [max_bytes_before_external_group_by](/core/reference/settings/session-settings#max_bytes_before_external_group_by) setting determines the threshold RAM consumption for dumping `GROUP BY` temporary data to the file system. If set to 0 (the default), it is disabled.
+Alternatively, you can set [max_bytes_ratio_before_external_group_by](/core/reference/settings/session-settings#max_bytes_ratio_before_external_group_by), which allows to use `GROUP BY` in external memory only once the query reaches certain threshold of used memory.
When using `max_bytes_before_external_group_by`, we recommend that you set `max_memory_usage` about twice as high (or `max_bytes_ratio_before_external_group_by=0.5`). This is necessary because there are two stages to aggregation: reading the data and forming intermediate data (1) and merging the intermediate data (2). Dumping data to the file system can only occur during stage 1. If the temporary data wasn't dumped, then stage 2 might require up to the same amount of memory as in stage 1.
-For example, if [max_memory_usage](/reference/settings/session-settings#max_memory_usage) was set to 10000000000 and you want to use external aggregation, it makes sense to set `max_bytes_before_external_group_by` to 10000000000, and `max_memory_usage` to 20000000000. When external aggregation is triggered (if there was at least one dump of temporary data), maximum consumption of RAM is only slightly more than `max_bytes_before_external_group_by`.
+For example, if [max_memory_usage](/core/reference/settings/session-settings#max_memory_usage) was set to 10000000000 and you want to use external aggregation, it makes sense to set `max_bytes_before_external_group_by` to 10000000000, and `max_memory_usage` to 20000000000. When external aggregation is triggered (if there was at least one dump of temporary data), maximum consumption of RAM is only slightly more than `max_bytes_before_external_group_by`.
With distributed query processing, external aggregation is performed on remote servers. In order for the requester server to use only a small amount of RAM, set `distributed_aggregation_memory_efficient` to 1.
@@ -383,4 +383,4 @@ When merging data flushed to the disk, as well as when merging results from remo
When external aggregation is enabled, if there was less than `max_bytes_before_external_group_by` of data (i.e. data was not flushed), the query runs just as fast as without external aggregation. If any temporary data was flushed, the run time will be several times longer (approximately three times).
-If you have an [ORDER BY](/reference/statements/select/order-by) with a [LIMIT](/reference/statements/select/limit) after `GROUP BY`, then the amount of used RAM depends on the amount of data in `LIMIT`, not in the whole table. But if the `ORDER BY` does not have `LIMIT`, do not forget to enable external sorting (`max_bytes_before_external_sort`).
+If you have an [ORDER BY](/core/reference/statements/select/order-by) with a [LIMIT](/core/reference/statements/select/limit) after `GROUP BY`, then the amount of used RAM depends on the amount of data in `LIMIT`, not in the whole table. But if the `ORDER BY` does not have `LIMIT`, do not forget to enable external sorting (`max_bytes_before_external_sort`).
diff --git a/reference/statements/select/having.mdx b/core/reference/statements/select/having.mdx
similarity index 82%
rename from reference/statements/select/having.mdx
rename to core/reference/statements/select/having.mdx
index 98b26b1b..881962b4 100644
--- a/reference/statements/select/having.mdx
+++ b/core/reference/statements/select/having.mdx
@@ -6,7 +6,7 @@ title: 'HAVING Clause'
doc_type: 'reference'
---
-Allows filtering the aggregation results produced by [GROUP BY](/reference/statements/select/group-by). It is similar to the [WHERE](/reference/statements/select/where) clause, but the difference is that `WHERE` is performed before aggregation, while `HAVING` is performed after it.
+Allows filtering the aggregation results produced by [GROUP BY](/core/reference/statements/select/group-by). It is similar to the [WHERE](/core/reference/statements/select/where) clause, but the difference is that `WHERE` is performed before aggregation, while `HAVING` is performed after it.
It is possible to reference aggregation results from `SELECT` clause in `HAVING` clause by their alias. Alternatively, `HAVING` clause can filter on results of additional aggregates that are not returned in query results.
diff --git a/reference/statements/select/index.mdx b/core/reference/statements/select/index.mdx
similarity index 75%
rename from reference/statements/select/index.mdx
rename to core/reference/statements/select/index.mdx
index bc346a2e..2751ea15 100644
--- a/reference/statements/select/index.mdx
+++ b/core/reference/statements/select/index.mdx
@@ -6,7 +6,7 @@ title: 'SELECT Query'
doc_type: 'reference'
---
-`SELECT` queries perform data retrieval. By default, the requested data is returned to the client, while in conjunction with [INSERT INTO](/reference/statements/insert-into) it can be forwarded to a different table.
+`SELECT` queries perform data retrieval. By default, the requested data is returned to the client, while in conjunction with [INSERT INTO](/core/reference/statements/insert-into) it can be forwarded to a different table.
## Syntax {#syntax}
@@ -36,30 +36,30 @@ All clauses are optional, except for the required list of expressions immediatel
Specifics of each optional clause are covered in separate sections, which are listed in the same order as they are executed:
-- [WITH clause](/reference/statements/select/with)
+- [WITH clause](/core/reference/statements/select/with)
- [SELECT clause](#select-clause)
-- [DISTINCT clause](/reference/statements/select/distinct)
-- [FROM clause](/reference/statements/select/from)
-- [SAMPLE clause](/reference/statements/select/sample)
-- [JOIN clause](/reference/statements/select/join)
-- [PREWHERE clause](/reference/statements/select/prewhere)
-- [WHERE clause](/reference/statements/select/where)
-- [WINDOW clause](/reference/functions/window-functions)
-- [GROUP BY clause](/reference/statements/select/group-by)
-- [LIMIT BY clause](/reference/statements/select/limit-by)
-- [HAVING clause](/reference/statements/select/having)
-- [QUALIFY clause](/reference/statements/select/qualify)
-- [LIMIT clause](/reference/statements/select/limit)
-- [OFFSET clause](/reference/statements/select/offset)
-- [UNION clause](/reference/statements/select/union)
-- [INTERSECT clause](/reference/statements/select/intersect)
-- [EXCEPT clause](/reference/statements/select/except)
-- [INTO OUTFILE clause](/reference/statements/select/into-outfile)
-- [FORMAT clause](/reference/statements/select/format)
+- [DISTINCT clause](/core/reference/statements/select/distinct)
+- [FROM clause](/core/reference/statements/select/from)
+- [SAMPLE clause](/core/reference/statements/select/sample)
+- [JOIN clause](/core/reference/statements/select/join)
+- [PREWHERE clause](/core/reference/statements/select/prewhere)
+- [WHERE clause](/core/reference/statements/select/where)
+- [WINDOW clause](/core/reference/functions/window-functions)
+- [GROUP BY clause](/core/reference/statements/select/group-by)
+- [LIMIT BY clause](/core/reference/statements/select/limit-by)
+- [HAVING clause](/core/reference/statements/select/having)
+- [QUALIFY clause](/core/reference/statements/select/qualify)
+- [LIMIT clause](/core/reference/statements/select/limit)
+- [OFFSET clause](/core/reference/statements/select/offset)
+- [UNION clause](/core/reference/statements/select/union)
+- [INTERSECT clause](/core/reference/statements/select/intersect)
+- [EXCEPT clause](/core/reference/statements/select/except)
+- [INTO OUTFILE clause](/core/reference/statements/select/into-outfile)
+- [FORMAT clause](/core/reference/statements/select/format)
## SELECT Clause {#select-clause}
-[Expressions](/reference/syntax#expressions) specified in the `SELECT` clause are calculated after all the operations in the clauses described above are finished. These expressions work as if they apply to separate rows in the result. If expressions in the `SELECT` clause contain aggregate functions, then ClickHouse processes aggregate functions and expressions used as their arguments during the [GROUP BY](/reference/statements/select/group-by) aggregation.
+[Expressions](/core/reference/syntax#expressions) specified in the `SELECT` clause are calculated after all the operations in the clauses described above are finished. These expressions work as if they apply to separate rows in the result. If expressions in the `SELECT` clause contain aggregate functions, then ClickHouse processes aggregate functions and expressions used as their arguments during the [GROUP BY](/core/reference/statements/select/group-by) aggregation.
If you want to include all columns in the result, use the asterisk (`*`) symbol. For example, `SELECT * FROM ...`.
@@ -138,7 +138,7 @@ In all other cases, we do not recommend using the asterisk, since it only gives
In addition to results, you can also get minimum and maximum values for the results columns. To do this, set the **extremes** setting to 1. Minimums and maximums are calculated for numeric types, dates, and dates with times. For other columns, the default values are output.
-An extra two rows are calculated – the minimums and maximums, respectively. These extra two rows are output in `XML`, `JSON*`, `TabSeparated*`, `CSV*`, `Vertical`, `Template` and `Pretty*` [formats](/reference/formats), separate from the other rows. They are not output for other formats.
+An extra two rows are calculated – the minimums and maximums, respectively. These extra two rows are output in `XML`, `JSON*`, `TabSeparated*`, `CSV*`, `Vertical`, `Template` and `Pretty*` [formats](/core/reference/formats), separate from the other rows. They are not output for other formats.
In `JSON*` and `XML` formats, the extreme values are output in a separate 'extremes' field. In `TabSeparated*`, `CSV*` and `Vertical` formats, the row comes after the main result, and after 'totals' if present. It is preceded by an empty row (after the other data). In `Pretty*` formats, the row is output as a separate table after the main result, and after `totals` if present. In `Template` format the extreme values are output according to specified template.
@@ -148,7 +148,7 @@ Extreme values are calculated for rows before `LIMIT`, but after `LIMIT BY`. How
You can use synonyms (`AS` aliases) in any part of a query.
-The `GROUP BY`, `ORDER BY`, and `LIMIT BY` clauses can support positional arguments. To enable this, switch on the [enable_positional_arguments](/reference/settings/session-settings#enable_positional_arguments) setting. Then, for example, `ORDER BY 1,2` will be sorting rows in the table on the first and then the second column.
+The `GROUP BY`, `ORDER BY`, and `LIMIT BY` clauses can support positional arguments. To enable this, switch on the [enable_positional_arguments](/core/reference/settings/session-settings#enable_positional_arguments) setting. Then, for example, `ORDER BY 1,2` will be sorting rows in the table on the first and then the second column.
## Implementation Details {#implementation-details}
@@ -176,9 +176,9 @@ You can use the following modifiers in `SELECT` queries.
| Modifier | Description |
|-------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [`APPLY`](/reference/statements/select/apply_modifier) | Allows you to invoke some function for each row returned by an outer table expression of a query. |
-| [`EXCEPT`](/reference/statements/select/except_modifier) | Specifies the names of one or more columns to exclude from the result. All matching column names are omitted from the output. |
-| [`REPLACE`](/reference/statements/select/replace_modifier) | Specifies one or more [expression aliases](/reference/syntax#expression-aliases). Each alias must match a column name from the `SELECT *` statement. In the output column list, the column that matches the alias is replaced by the expression in that `REPLACE`. This modifier does not change the names or order of columns. However, it can change the value and the value type. |
+| [`APPLY`](/core/reference/statements/select/apply_modifier) | Allows you to invoke some function for each row returned by an outer table expression of a query. |
+| [`EXCEPT`](/core/reference/statements/select/except_modifier) | Specifies the names of one or more columns to exclude from the result. All matching column names are omitted from the output. |
+| [`REPLACE`](/core/reference/statements/select/replace_modifier) | Specifies one or more [expression aliases](/core/reference/syntax#expression-aliases). Each alias must match a column name from the `SELECT *` statement. In the output column list, the column that matches the alias is replaced by the expression in that `REPLACE`. This modifier does not change the names or order of columns. However, it can change the value and the value type. |
### Modifier Combinations {#modifier-combinations}
@@ -214,7 +214,7 @@ SELECT * REPLACE(i + 1 AS i) EXCEPT (j) APPLY(sum) from columns_transformers;
You can specify the necessary settings right in the `SELECT` query. The setting value is applied only to this query and is reset to default or previous value after the query is executed.
-Other ways to make settings see [here](/concepts/features/configuration/settings/overview).
+Other ways to make settings see [here](/core/concepts/features/configuration/settings/overview).
For boolean settings set to true, you can use a shorthand syntax by omitting the value assignment. When only the setting name is specified, it is automatically set to `1` (true).
diff --git a/reference/statements/select/intersect.mdx b/core/reference/statements/select/intersect.mdx
similarity index 97%
rename from reference/statements/select/intersect.mdx
rename to core/reference/statements/select/intersect.mdx
index e1c0c374..52aa4bc3 100644
--- a/reference/statements/select/intersect.mdx
+++ b/core/reference/statements/select/intersect.mdx
@@ -146,5 +146,5 @@ WHERE price > 100;
**See Also**
-- [UNION](/reference/statements/select/union)
-- [EXCEPT](/reference/statements/select/except)
+- [UNION](/core/reference/statements/select/union)
+- [EXCEPT](/core/reference/statements/select/except)
diff --git a/reference/statements/select/into-outfile.mdx b/core/reference/statements/select/into-outfile.mdx
similarity index 75%
rename from reference/statements/select/into-outfile.mdx
rename to core/reference/statements/select/into-outfile.mdx
index 5b6259fb..b7757258 100644
--- a/reference/statements/select/into-outfile.mdx
+++ b/core/reference/statements/select/into-outfile.mdx
@@ -22,16 +22,16 @@ SELECT INTO OUTFILE file_name [AND STDOUT] [APPEND | TRUNCATE] [COMP
## Implementation Details {#implementation-details}
-- This functionality is available in the [command-line client](/integrations/connectors/data-integrations/drivers-and-interfaces/client) and [clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local). Thus a query sent via [HTTP interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http) will fail.
+- This functionality is available in the [command-line client](/core/concepts/features/interfaces/client) and [clickhouse-local](/core/concepts/features/tools-and-utilities/clickhouse-local). Thus a query sent via [HTTP interface](/core/concepts/features/interfaces/http) will fail.
- The query will fail if a file with the same file name already exists.
-- The default [output format](/reference/formats) is `TabSeparated` (like in the command-line client batch mode). Use [FORMAT](/reference/statements/select/format) clause to change it.
+- The default [output format](/core/reference/formats) is `TabSeparated` (like in the command-line client batch mode). Use [FORMAT](/core/reference/statements/select/format) clause to change it.
- If `AND STDOUT` is mentioned in the query then the output that is written to the file is also displayed on standard output. If used with compression, the plaintext is displayed on standard output.
- If `APPEND` is mentioned in the query then the output is appended to an existing file. If compression is used, append cannot be used.
- When writing to a file that already exists, `APPEND` or `TRUNCATE` must be used.
**Example**
-Execute the following query using [command-line client](/integrations/connectors/data-integrations/drivers-and-interfaces/client):
+Execute the following query using [command-line client](/core/concepts/features/interfaces/client):
```bash title="Query"
clickhouse-client --query="SELECT 1,'ABC' INTO OUTFILE 'select.gz' FORMAT CSV;"
diff --git a/reference/statements/select/join.mdx b/core/reference/statements/select/join.mdx
similarity index 89%
rename from reference/statements/select/join.mdx
rename to core/reference/statements/select/join.mdx
index 9654cd55..b6de66a7 100644
--- a/reference/statements/select/join.mdx
+++ b/core/reference/statements/select/join.mdx
@@ -35,7 +35,7 @@ All standard [SQL JOIN](https://en.wikipedia.org/wiki/Join_(SQL)) types are supp
- `JOIN` without a type specified implies `INNER`.
- The keyword `OUTER` can be safely omitted.
-- An alternative syntax for `CROSS JOIN` is specifying multiple tables in the [`FROM` clause](/reference/statements/select/from) separated by commas.
+- An alternative syntax for `CROSS JOIN` is specifying multiple tables in the [`FROM` clause](/core/reference/statements/select/from) separated by commas.
- If there are no matching columns for a `NATURAL JOIN`, it functions like a `CROSS JOIN`.
Additional join types available in ClickHouse are:
@@ -49,23 +49,23 @@ Additional join types available in ClickHouse are:
| `PASTE JOIN` | Performs a horizontal concatenation of two tables. |
-When [join_algorithm](/reference/settings/session-settings#join_algorithm) is set to `partial_merge`, `RIGHT JOIN` and `FULL JOIN` are supported only with `ALL` strictness (`SEMI`, `ANTI`, `ANY`, and `ASOF` are not supported).
+When [join_algorithm](/core/reference/settings/session-settings#join_algorithm) is set to `partial_merge`, `RIGHT JOIN` and `FULL JOIN` are supported only with `ALL` strictness (`SEMI`, `ANTI`, `ANY`, and `ASOF` are not supported).
## Settings {#settings}
-The default join type can be overridden using [`join_default_strictness`](/reference/settings/session-settings#join_default_strictness) setting.
+The default join type can be overridden using [`join_default_strictness`](/core/reference/settings/session-settings#join_default_strictness) setting.
-The behavior of the ClickHouse server for `ANY JOIN` operations depends on the [`any_join_distinct_right_table_keys`](/reference/settings/session-settings#any_join_distinct_right_table_keys) setting.
+The behavior of the ClickHouse server for `ANY JOIN` operations depends on the [`any_join_distinct_right_table_keys`](/core/reference/settings/session-settings#any_join_distinct_right_table_keys) setting.
**See also**
-- [`join_algorithm`](/reference/settings/session-settings#join_algorithm)
-- [`join_any_take_last_row`](/reference/settings/session-settings#join_any_take_last_row)
-- [`join_use_nulls`](/reference/settings/session-settings#join_use_nulls)
-- [`partial_merge_join_rows_in_right_blocks`](/reference/settings/session-settings#partial_merge_join_rows_in_right_blocks)
-- [`join_on_disk_max_files_to_merge`](/reference/settings/session-settings#join_on_disk_max_files_to_merge)
-- [`any_join_distinct_right_table_keys`](/reference/settings/session-settings#any_join_distinct_right_table_keys)
+- [`join_algorithm`](/core/reference/settings/session-settings#join_algorithm)
+- [`join_any_take_last_row`](/core/reference/settings/session-settings#join_any_take_last_row)
+- [`join_use_nulls`](/core/reference/settings/session-settings#join_use_nulls)
+- [`partial_merge_join_rows_in_right_blocks`](/core/reference/settings/session-settings#partial_merge_join_rows_in_right_blocks)
+- [`join_on_disk_max_files_to_merge`](/core/reference/settings/session-settings#join_on_disk_max_files_to_merge)
+- [`any_join_distinct_right_table_keys`](/core/reference/settings/session-settings#any_join_distinct_right_table_keys)
Use the `cross_to_inner_join_rewrite` setting to define the behavior when ClickHouse fails to rewrite a `CROSS JOIN` as an `INNER JOIN`. The default value is `1`, which allows the join to continue but it will be slower. Set `cross_to_inner_join_rewrite` to `0` if you want an error to be thrown, and set it to `2` to not run the cross joins but instead force a rewrite of all comma/cross joins. If the rewriting fails when the value is `2`, you will receive an error message stating "Please, try to simplify `WHERE` section".
@@ -282,7 +282,7 @@ SELECT A.name, B.score FROM A LEFT JOIN B ON isNotDistinctFrom(A.id, B.id)
This JOIN algorithm requires a special column in tables. This column:
- Must contain an ordered sequence.
-- Can be one of the following types: [Int, UInt](/reference/data-types/int-uint), [Float](/reference/data-types/float), [Date](/reference/data-types/date), [DateTime](/reference/data-types/datetime), [Decimal](/reference/data-types/decimal).
+- Can be one of the following types: [Int, UInt](/core/reference/data-types/int-uint), [Float](/core/reference/data-types/float), [Date](/core/reference/data-types/date), [DateTime](/core/reference/data-types/datetime), [Decimal](/core/reference/data-types/decimal).
- For the `hash` join algorithm it can't be the only column in the `JOIN` clause.
Syntax `ASOF JOIN ... ON`:
@@ -326,7 +326,7 @@ For example, consider the following tables:
`ASOF JOIN` is supported only by `hash` and `full_sorting_merge` join algorithms.
-It's **not** supported in the [Join](/reference/engines/table-engines/special/join) table engine.
+It's **not** supported in the [Join](/core/reference/engines/table-engines/special/join) table engine.
## PASTE JOIN usage {#paste-join-usage}
@@ -393,7 +393,7 @@ There are two ways to execute a JOIN involving distributed tables:
- When using a normal `JOIN`, the query is sent to remote servers. Subqueries are run on each of them in order to make the right table, and the join is performed with this table. In other words, the right table is formed on each server separately.
- When using `GLOBAL ... JOIN`, first the requestor server runs a subquery to calculate one side of the join and collects the result into a temporary table. This temporary table is then passed to each remote server, and queries are run on them using the temporary data that was transmitted. For `LEFT` and `INNER` joins, the right table is calculated as the subquery. For `RIGHT` joins, the left table is calculated instead, since the right table is the one being preserved and should be read from shards.
-Be careful when using `GLOBAL`. For more information, see the [Distributed subqueries](/reference/statements/in#distributed-subqueries) section.
+Be careful when using `GLOBAL`. For more information, see the [Distributed subqueries](/core/reference/statements/in#distributed-subqueries) section.
## Implicit type conversion {#implicit-type-conversion}
@@ -435,9 +435,9 @@ returns the set:
### Processing of empty or NULL cells {#processing-of-empty-or-null-cells}
-While joining tables, the empty cells may appear. The setting [join_use_nulls](/reference/settings/session-settings#join_use_nulls) define how ClickHouse fills these cells.
+While joining tables, the empty cells may appear. The setting [join_use_nulls](/core/reference/settings/session-settings#join_use_nulls) define how ClickHouse fills these cells.
-If the `JOIN` keys are [Nullable](/reference/data-types/nullable) fields, the rows where at least one of the keys has the value [NULL](/reference/syntax#null) are not joined.
+If the `JOIN` keys are [Nullable](/core/reference/data-types/nullable) fields, the rows where at least one of the keys has the value [NULL](/core/reference/syntax#null) are not joined.
### Syntax {#syntax}
@@ -461,22 +461,22 @@ For `ON`, `WHERE`, and `GROUP BY` clauses:
When running a `JOIN`, there is no optimization of the order of execution in relation to other stages of the query. The join (a search in the right table) is run before filtering in `WHERE` and before aggregation.
-Each time a query is run with the same `JOIN`, the subquery is run again because the result is not cached. To avoid this, use the special [Join](/reference/engines/table-engines/special/join) table engine, which is a prepared array for joining that is always in RAM.
+Each time a query is run with the same `JOIN`, the subquery is run again because the result is not cached. To avoid this, use the special [Join](/core/reference/engines/table-engines/special/join) table engine, which is a prepared array for joining that is always in RAM.
-In some cases, it is more efficient to use [IN](/reference/statements/in) instead of `JOIN`.
+In some cases, it is more efficient to use [IN](/core/reference/statements/in) instead of `JOIN`.
-If you need a `JOIN` for joining with dimension tables (these are relatively small tables that contain dimension properties, such as names for advertising campaigns), a `JOIN` might not be very convenient due to the fact that the right table is re-accessed for every query. For such cases, there is a "dictionaries" feature that you should use instead of `JOIN`. For more information, see the [Dictionaries](/reference/statements/create/dictionary) section.
+If you need a `JOIN` for joining with dimension tables (these are relatively small tables that contain dimension properties, such as names for advertising campaigns), a `JOIN` might not be very convenient due to the fact that the right table is re-accessed for every query. For such cases, there is a "dictionaries" feature that you should use instead of `JOIN`. For more information, see the [Dictionaries](/core/reference/statements/create/dictionary) section.
### Memory limitations {#memory-limitations}
-By default, ClickHouse uses the [hash join](https://en.wikipedia.org/wiki/Hash_join) algorithm. ClickHouse takes the right_table and creates a hash table for it in RAM. If `join_algorithm = 'auto'` is enabled, then after some threshold of memory consumption, ClickHouse falls back to [merge](https://en.wikipedia.org/wiki/Sort-merge_join) join algorithm. For `JOIN` algorithms description see the [join_algorithm](/reference/settings/session-settings#join_algorithm) setting.
+By default, ClickHouse uses the [hash join](https://en.wikipedia.org/wiki/Hash_join) algorithm. ClickHouse takes the right_table and creates a hash table for it in RAM. If `join_algorithm = 'auto'` is enabled, then after some threshold of memory consumption, ClickHouse falls back to [merge](https://en.wikipedia.org/wiki/Sort-merge_join) join algorithm. For `JOIN` algorithms description see the [join_algorithm](/core/reference/settings/session-settings#join_algorithm) setting.
If you need to restrict `JOIN` operation memory consumption use the following settings:
-- [max_rows_in_join](/reference/settings/session-settings#max_rows_in_join) — Limits number of rows in the hash table.
-- [max_bytes_in_join](/reference/settings/session-settings#max_bytes_in_join) — Limits size of the hash table.
+- [max_rows_in_join](/core/reference/settings/session-settings#max_rows_in_join) — Limits number of rows in the hash table.
+- [max_bytes_in_join](/core/reference/settings/session-settings#max_bytes_in_join) — Limits size of the hash table.
-When any of these limits is reached, ClickHouse acts as the [join_overflow_mode](/reference/settings/session-settings#join_overflow_mode)
+When any of these limits is reached, ClickHouse acts as the [join_overflow_mode](/core/reference/settings/session-settings#join_overflow_mode)
setting instructs.
## Examples {#examples}
diff --git a/reference/statements/select/limit-by.mdx b/core/reference/statements/select/limit-by.mdx
similarity index 80%
rename from reference/statements/select/limit-by.mdx
rename to core/reference/statements/select/limit-by.mdx
index 77feec77..cd1fb059 100644
--- a/reference/statements/select/limit-by.mdx
+++ b/core/reference/statements/select/limit-by.mdx
@@ -6,22 +6,22 @@ title: 'LIMIT BY Clause'
doc_type: 'reference'
---
-A query with the `LIMIT n BY expressions` clause selects the first `n` rows for each distinct value of `expressions`. The key for `LIMIT BY` can contain any number of [expressions](/reference/syntax#expressions).
+A query with the `LIMIT n BY expressions` clause selects the first `n` rows for each distinct value of `expressions`. The key for `LIMIT BY` can contain any number of [expressions](/core/reference/syntax#expressions).
ClickHouse supports the following syntax variants:
- `LIMIT [offset_value, ]n BY expressions`
- `LIMIT n OFFSET offset_value BY expressions`
-During query processing, ClickHouse selects data ordered by sorting key. The sorting key is set explicitly using an [ORDER BY](/reference/statements/select/order-by) clause or implicitly as a property of the table engine (row order is only guaranteed when using [ORDER BY](/reference/statements/select/order-by), otherwise the row blocks will not be ordered due to multi-threading). Then ClickHouse applies `LIMIT n BY expressions` and returns the first `n` rows for each distinct combination of `expressions`. If `OFFSET` is specified, then for each data block that belongs to a distinct combination of `expressions`, ClickHouse skips `offset_value` number of rows from the beginning of the block and returns a maximum of `n` rows as a result. If `offset_value` is bigger than the number of rows in the data block, ClickHouse returns zero rows from the block.
+During query processing, ClickHouse selects data ordered by sorting key. The sorting key is set explicitly using an [ORDER BY](/core/reference/statements/select/order-by) clause or implicitly as a property of the table engine (row order is only guaranteed when using [ORDER BY](/core/reference/statements/select/order-by), otherwise the row blocks will not be ordered due to multi-threading). Then ClickHouse applies `LIMIT n BY expressions` and returns the first `n` rows for each distinct combination of `expressions`. If `OFFSET` is specified, then for each data block that belongs to a distinct combination of `expressions`, ClickHouse skips `offset_value` number of rows from the beginning of the block and returns a maximum of `n` rows as a result. If `offset_value` is bigger than the number of rows in the data block, ClickHouse returns zero rows from the block.
****
-`LIMIT BY` is not related to [LIMIT](/reference/statements/select/limit). They can both be used in the same query.
+`LIMIT BY` is not related to [LIMIT](/core/reference/statements/select/limit). They can both be used in the same query.
-If you want to use column numbers instead of column names in the `LIMIT BY` clause, enable the setting [enable_positional_arguments](/reference/settings/session-settings#enable_positional_arguments).
+If you want to use column numbers instead of column names in the `LIMIT BY` clause, enable the setting [enable_positional_arguments](/core/reference/settings/session-settings#enable_positional_arguments).
## Examples {#examples}
@@ -76,7 +76,7 @@ LIMIT 5 BY domain, device_type
LIMIT 100;
```
-`LIMIT BY` also works with negative limits and offsets. Similar to the [negative LIMIT clause](/reference/statements/select/limit#negative-limits), you can use negative values with `LIMIT BY` to select rows from the *end* of each group.
+`LIMIT BY` also works with negative limits and offsets. Similar to the [negative LIMIT clause](/core/reference/statements/select/limit#negative-limits), you can use negative values with `LIMIT BY` to select rows from the *end* of each group.
```sql
SELECT * FROM limit_by ORDER BY id, val LIMIT -2 BY id;
diff --git a/reference/statements/select/limit.mdx b/core/reference/statements/select/limit.mdx
similarity index 85%
rename from reference/statements/select/limit.mdx
rename to core/reference/statements/select/limit.mdx
index 05de6560..4fd707b2 100644
--- a/reference/statements/select/limit.mdx
+++ b/core/reference/statements/select/limit.mdx
@@ -64,7 +64,7 @@ Use decimal values between 0 and 1 to select a percentage of rows:
| `LIMIT 0.25 OFFSET 0.5` | Third quartile (25% of rows after skipping the first 50%) |
-- Fractions must be [Float64](/reference/data-types/float) values greater than 0 and less than 1.
+- Fractions must be [Float64](/core/reference/data-types/float) values greater than 0 and less than 1.
- Fractional row counts are rounded to the next whole number.
@@ -141,14 +141,14 @@ Skipping the first 2 rows and taking 3 would normally return `1, 1, 2`, but the
`WITH TIES` is not supported with negative limits.
-This modifier can be combined with the [`ORDER BY ... WITH FILL`](/reference/statements/select/order-by#order-by-expr-with-fill-modifier) modifier.
+This modifier can be combined with the [`ORDER BY ... WITH FILL`](/core/reference/statements/select/order-by#order-by-expr-with-fill-modifier) modifier.
## Considerations {#considerations}
-**Non-deterministic results:** Without an [`ORDER BY`](/reference/statements/select/order-by) clause, the rows returned may be arbitrary and vary between query executions.
+**Non-deterministic results:** Without an [`ORDER BY`](/core/reference/statements/select/order-by) clause, the rows returned may be arbitrary and vary between query executions.
-**Server-side limit:** The number of rows returned can also be affected by the [limit](/reference/settings/session-settings#limit) setting.
+**Server-side limit:** The number of rows returned can also be affected by the [limit](/core/reference/settings/session-settings#limit) setting.
## See also {#see-also}
-- [LIMIT BY](/reference/statements/select/limit-by) — Limits rows per group of values, useful for getting top N results within each category.
+- [LIMIT BY](/core/reference/statements/select/limit-by) — Limits rows per group of values, useful for getting top N results within each category.
diff --git a/reference/statements/select/offset.mdx b/core/reference/statements/select/offset.mdx
similarity index 89%
rename from reference/statements/select/offset.mdx
rename to core/reference/statements/select/offset.mdx
index 7ec89bbb..d68f3656 100644
--- a/reference/statements/select/offset.mdx
+++ b/core/reference/statements/select/offset.mdx
@@ -28,12 +28,12 @@ Example:
• `OFFSET 0.1` - skips the first 10% of the result.
> **Note**
-> • The fraction must be a [Float64](/reference/data-types/float) number less than 1 and greater than zero.
+> • The fraction must be a [Float64](/core/reference/data-types/float) number less than 1 and greater than zero.
> • If a fractional number of rows results from the calculation, it is rounded up to the next whole number.
The `FETCH` specifies the maximum number of rows that can be in the result of a query.
-The `ONLY` option is used to return rows that immediately follow the rows omitted by the `OFFSET`. In this case the `FETCH` is an alternative to the [LIMIT](/reference/statements/select/limit) clause. For example, the following query
+The `ONLY` option is used to return rows that immediately follow the rows omitted by the `OFFSET`. In this case the `FETCH` is an alternative to the [LIMIT](/core/reference/statements/select/limit) clause. For example, the following query
```sql
SELECT * FROM test_fetch ORDER BY a OFFSET 1 ROW FETCH FIRST 3 ROWS ONLY;
@@ -56,7 +56,7 @@ According to the standard, the `OFFSET` clause must come before the `FETCH` clau
****
-The real offset can also depend on the [offset](/reference/settings/session-settings#offset) setting.
+The real offset can also depend on the [offset](/core/reference/settings/session-settings#offset) setting.
## Examples {#examples}
diff --git a/reference/statements/select/order-by.mdx b/core/reference/statements/select/order-by.mdx
similarity index 89%
rename from reference/statements/select/order-by.mdx
rename to core/reference/statements/select/order-by.mdx
index 248e57c1..d843ba40 100644
--- a/reference/statements/select/order-by.mdx
+++ b/core/reference/statements/select/order-by.mdx
@@ -12,8 +12,8 @@ The `ORDER BY` clause contains
- a list of numbers referring to columns in the `SELECT` clause, e.g. `ORDER BY 2, 1`, or
- `ALL` which means all columns of the `SELECT` clause, e.g. `ORDER BY ALL`.
-To disable sorting by column numbers, set setting [enable_positional_arguments](/reference/settings/session-settings#enable_positional_arguments) = 0.
-To disable sorting by `ALL`, set setting [enable_order_by_all](/reference/settings/session-settings#enable_order_by_all) = 0.
+To disable sorting by column numbers, set setting [enable_positional_arguments](/core/reference/settings/session-settings#enable_positional_arguments) = 0.
+To disable sorting by `ALL`, set setting [enable_order_by_all](/core/reference/settings/session-settings#enable_order_by_all) = 0.
The `ORDER BY` clause can be attributed by a `DESC` (descending) or `ASC` (ascending) modifier which determines the sorting direction.
Unless an explicit sort order is specified, `ASC` is used by default.
@@ -70,15 +70,15 @@ When floating point numbers are sorted, NaNs are separate from the other values.
## Collation Support {#collation-support}
-For sorting by [String](/reference/data-types/string) values, you can specify collation (comparison). Example: `ORDER BY SearchPhrase COLLATE 'tr'` - for sorting by keyword in ascending order, using the Turkish alphabet, case insensitive, assuming that strings are UTF-8 encoded. `COLLATE` can be specified or not for each expression in ORDER BY independently. If `ASC` or `DESC` is specified, `COLLATE` is specified after it. When using `COLLATE`, sorting is always case-insensitive.
+For sorting by [String](/core/reference/data-types/string) values, you can specify collation (comparison). Example: `ORDER BY SearchPhrase COLLATE 'tr'` - for sorting by keyword in ascending order, using the Turkish alphabet, case insensitive, assuming that strings are UTF-8 encoded. `COLLATE` can be specified or not for each expression in ORDER BY independently. If `ASC` or `DESC` is specified, `COLLATE` is specified after it. When using `COLLATE`, sorting is always case-insensitive.
-Collate is supported in [LowCardinality](/reference/data-types/lowcardinality), [Nullable](/reference/data-types/nullable), [Array](/reference/data-types/array) and [Tuple](/reference/data-types/tuple).
+Collate is supported in [LowCardinality](/core/reference/data-types/lowcardinality), [Nullable](/core/reference/data-types/nullable), [Array](/core/reference/data-types/array) and [Tuple](/core/reference/data-types/tuple).
We only recommend using `COLLATE` for final sorting of a small number of rows, since sorting with `COLLATE` is less efficient than normal sorting by bytes.
## Collation Examples {#collation-examples}
-Example only with [String](/reference/data-types/string) values:
+Example only with [String](/core/reference/data-types/string) values:
Input table:
@@ -106,7 +106,7 @@ SELECT * FROM collate_test ORDER BY s ASC COLLATE 'en';
└───┴──────┘
```
-Example with [Nullable](/reference/data-types/nullable):
+Example with [Nullable](/core/reference/data-types/nullable):
Input table:
@@ -138,7 +138,7 @@ SELECT * FROM collate_test ORDER BY s ASC COLLATE 'en';
└───┴──────┘
```
-Example with [Array](/reference/data-types/array):
+Example with [Array](/core/reference/data-types/array):
Input table:
@@ -170,7 +170,7 @@ SELECT * FROM collate_test ORDER BY s ASC COLLATE 'en';
└───┴───────────────┘
```
-Example with [LowCardinality](/reference/data-types/lowcardinality) string:
+Example with [LowCardinality](/core/reference/data-types/lowcardinality) string:
Input table:
@@ -202,7 +202,7 @@ SELECT * FROM collate_test ORDER BY s ASC COLLATE 'en';
└───┴─────┘
```
-Example with [Tuple](/reference/data-types/tuple):
+Example with [Tuple](/core/reference/data-types/tuple):
```response title="Response"
┌─x─┬─s───────┐
@@ -234,7 +234,7 @@ SELECT * FROM collate_test ORDER BY s ASC COLLATE 'en';
## Implementation Details {#implementation-details}
-Less RAM is used if a small enough [LIMIT](/reference/statements/select/limit) is specified in addition to `ORDER BY`. Otherwise, the amount of memory spent is proportional to the volume of data for sorting. For distributed query processing, if [GROUP BY](/reference/statements/select/group-by) is omitted, sorting is partially done on remote servers, and the results are merged on the requestor server. This means that for distributed sorting, the volume of data to sort can be greater than the amount of memory on a single server.
+Less RAM is used if a small enough [LIMIT](/core/reference/statements/select/limit) is specified in addition to `ORDER BY`. Otherwise, the amount of memory spent is proportional to the volume of data for sorting. For distributed query processing, if [GROUP BY](/core/reference/statements/select/group-by) is omitted, sorting is partially done on remote servers, and the results are merged on the requestor server. This means that for distributed sorting, the volume of data to sort can be greater than the amount of memory on a single server.
If there is not enough RAM, it is possible to perform sorting in external memory (creating temporary files on a disk). Use the setting `max_bytes_before_external_sort` for this purpose. If it is set to 0 (the default), external sorting is disabled. If it is enabled, when the volume of data to sort reaches the specified number of bytes, the collected data is sorted and dumped into a temporary file. After all data is read, all the sorted files are merged and the results are output. Files are written to the `/var/lib/clickhouse/tmp/` directory in the config (by default, but you can use the `tmp_path` parameter to change this setting). You can also use spilling to disk only if query exceeds memory limits, i.e. `max_bytes_ratio_before_external_sort=0.6` will enable spilling to disk only once the query hits `60%` memory limit (user/sever).
@@ -244,27 +244,27 @@ External sorting works much less effectively than sorting in RAM.
## Optimization of Data Reading {#optimization-of-data-reading}
- If `ORDER BY` expression has a prefix that coincides with the table sorting key, you can optimize the query by using the [optimize_read_in_order](/reference/settings/session-settings#optimize_read_in_order) setting.
+ If `ORDER BY` expression has a prefix that coincides with the table sorting key, you can optimize the query by using the [optimize_read_in_order](/core/reference/settings/session-settings#optimize_read_in_order) setting.
- When the `optimize_read_in_order` setting is enabled, the ClickHouse server uses the table index and reads the data in order of the `ORDER BY` key. This allows to avoid reading all data in case of specified [LIMIT](/reference/statements/select/limit). So queries on big data with small limit are processed faster.
+ When the `optimize_read_in_order` setting is enabled, the ClickHouse server uses the table index and reads the data in order of the `ORDER BY` key. This allows to avoid reading all data in case of specified [LIMIT](/core/reference/statements/select/limit). So queries on big data with small limit are processed faster.
-Optimization works with both `ASC` and `DESC` and does not work together with [GROUP BY](/reference/statements/select/group-by) clause and [FINAL](/reference/statements/select/from#final-modifier) modifier.
+Optimization works with both `ASC` and `DESC` and does not work together with [GROUP BY](/core/reference/statements/select/group-by) clause and [FINAL](/core/reference/statements/select/from#final-modifier) modifier.
When the `optimize_read_in_order` setting is disabled, the ClickHouse server does not use the table index while processing `SELECT` queries.
-Consider disabling `optimize_read_in_order` manually, when running queries that have `ORDER BY` clause, large `LIMIT` and [WHERE](/reference/statements/select/where) condition that requires to read huge amount of records before queried data is found.
+Consider disabling `optimize_read_in_order` manually, when running queries that have `ORDER BY` clause, large `LIMIT` and [WHERE](/core/reference/statements/select/where) condition that requires to read huge amount of records before queried data is found.
Optimization is supported in the following table engines:
-- [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) (including [materialized views](/reference/statements/create/view#materialized-view)),
-- [Merge](/reference/engines/table-engines/special/merge),
-- [Buffer](/reference/engines/table-engines/special/buffer)
+- [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) (including [materialized views](/core/reference/statements/create/view#materialized-view)),
+- [Merge](/core/reference/engines/table-engines/special/merge),
+- [Buffer](/core/reference/engines/table-engines/special/buffer)
In `MaterializedView`-engine tables the optimization works with views like `SELECT ... FROM merge_tree_table ORDER BY pk`. But it is not supported in the queries like `SELECT ... FROM view ORDER BY pk` if the view query does not have the `ORDER BY` clause.
## ORDER BY Expr WITH FILL Modifier {#order-by-expr-with-fill-modifier}
-This modifier also can be combined with [LIMIT ... WITH TIES modifier](/reference/statements/select/limit#limit--with-ties-modifier).
+This modifier also can be combined with [LIMIT ... WITH TIES modifier](/core/reference/statements/select/limit#limit--with-ties-modifier).
`WITH FILL` modifier can be set after `ORDER BY expr` with optional `FROM expr`, `TO expr` and `STEP expr` parameters.
All missed values of `expr` column will be filled sequentially and other columns will be filled as defaults.
@@ -279,7 +279,7 @@ ORDER BY expr [WITH FILL] [FROM const_expr] [TO const_expr] [STEP const_numeric_
`WITH FILL` can be applied for fields with Numeric (all kinds of float, decimal, int) or Date/DateTime types. When applied for `String` fields, missed values are filled with empty strings.
When `FROM const_expr` not defined sequence of filling use minimal `expr` field value from `ORDER BY`.
When `TO const_expr` not defined sequence of filling use maximum `expr` field value from `ORDER BY`.
-When `STEP const_numeric_expr` defined then `const_numeric_expr` interprets `as is` for numeric types, as `days` for Date type, as `seconds` for DateTime type. It also supports [INTERVAL](/reference/data-types/special-data-types/interval) data type representing time and date intervals.
+When `STEP const_numeric_expr` defined then `const_numeric_expr` interprets `as is` for numeric types, as `days` for Date type, as `seconds` for DateTime type. It also supports [INTERVAL](/core/reference/data-types/special-data-types/interval) data type representing time and date intervals.
When `STEP const_numeric_expr` omitted then sequence of filling use `1.0` for numeric type, `1 day` for Date type and `1 second` for DateTime type.
When `STALENESS const_numeric_expr` is defined, the query will generate rows until the difference from the previous row in the original data exceeds `const_numeric_expr`.
`INTERPOLATE` can be applied to columns not participating in `ORDER BY WITH FILL`. Such columns are filled based on previous fields values by applying `expr`. If `expr` is not present will repeat previous value. Omitted list will result in including all allowed columns.
diff --git a/reference/statements/select/prewhere.mdx b/core/reference/statements/select/prewhere.mdx
similarity index 72%
rename from reference/statements/select/prewhere.mdx
rename to core/reference/statements/select/prewhere.mdx
index 41a25375..83ef8f6a 100644
--- a/reference/statements/select/prewhere.mdx
+++ b/core/reference/statements/select/prewhere.mdx
@@ -6,7 +6,7 @@ title: 'PREWHERE Clause'
doc_type: 'reference'
---
-Prewhere is an optimization to apply filtering more efficiently. It is enabled by default even if `PREWHERE` clause is not specified explicitly. It works by automatically moving part of [WHERE](/reference/statements/select/where) condition to prewhere stage. The role of `PREWHERE` clause is only to control this optimization if you think that you know how to do it better than it happens by default.
+Prewhere is an optimization to apply filtering more efficiently. It is enabled by default even if `PREWHERE` clause is not specified explicitly. It works by automatically moving part of [WHERE](/core/reference/statements/select/where) condition to prewhere stage. The role of `PREWHERE` clause is only to control this optimization if you think that you know how to do it better than it happens by default.
With prewhere optimization, at first only the columns necessary for executing prewhere expression are read. Then the other columns are read that are needed for running the rest of the query, but only those blocks where the prewhere expression is `true` at least for some rows. If there are a lot of blocks where prewhere expression is `false` for all rows and prewhere needs less columns than other parts of query, this often allows to read a lot less data from disk for query execution.
@@ -16,9 +16,9 @@ The clause has the same meaning as the `WHERE` clause. The difference is in whic
A query may simultaneously specify `PREWHERE` and `WHERE`. In this case, `PREWHERE` precedes `WHERE`.
-If the [optimize_move_to_prewhere](/reference/settings/session-settings#optimize_move_to_prewhere) setting is set to 0, heuristics to automatically move parts of expressions from `WHERE` to `PREWHERE` are disabled.
+If the [optimize_move_to_prewhere](/core/reference/settings/session-settings#optimize_move_to_prewhere) setting is set to 0, heuristics to automatically move parts of expressions from `WHERE` to `PREWHERE` are disabled.
-If query has [FINAL](/reference/statements/select/from#final-modifier) modifier, the `PREWHERE` optimization is not always correct. It is enabled only if both settings [optimize_move_to_prewhere](/reference/settings/session-settings#optimize_move_to_prewhere) and [optimize_move_to_prewhere_if_final](/reference/settings/session-settings#optimize_move_to_prewhere_if_final) are turned on.
+If query has [FINAL](/core/reference/statements/select/from#final-modifier) modifier, the `PREWHERE` optimization is not always correct. It is enabled only if both settings [optimize_move_to_prewhere](/core/reference/settings/session-settings#optimize_move_to_prewhere) and [optimize_move_to_prewhere_if_final](/core/reference/settings/session-settings#optimize_move_to_prewhere_if_final) are turned on.
****
@@ -28,7 +28,7 @@ The `PREWHERE` section is executed before `FINAL`, so the results of `FROM ... F
## Limitations {#limitations}
-`PREWHERE` is only supported by tables from the [*MergeTree](/reference/engines/table-engines/mergetree-family) family.
+`PREWHERE` is only supported by tables from the [*MergeTree](/core/reference/engines/table-engines/mergetree-family) family.
## Example {#example}
diff --git a/reference/statements/select/qualify.mdx b/core/reference/statements/select/qualify.mdx
similarity index 85%
rename from reference/statements/select/qualify.mdx
rename to core/reference/statements/select/qualify.mdx
index 15628d96..9311f7e8 100644
--- a/reference/statements/select/qualify.mdx
+++ b/core/reference/statements/select/qualify.mdx
@@ -6,7 +6,7 @@ title: 'QUALIFY Clause'
doc_type: 'reference'
---
-Allows filtering window functions results. It is similar to the [WHERE](/reference/statements/select/where) clause, but the difference is that `WHERE` is performed before window functions evaluation, while `QUALIFY` is performed after it.
+Allows filtering window functions results. It is similar to the [WHERE](/core/reference/statements/select/where) clause, but the difference is that `WHERE` is performed before window functions evaluation, while `QUALIFY` is performed after it.
It is possible to reference window functions results from `SELECT` clause in `QUALIFY` clause by their alias. Alternatively, `QUALIFY` clause can filter on results of additional window functions that are not returned in query results.
diff --git a/reference/statements/select/replace_modifier.mdx b/core/reference/statements/select/replace_modifier.mdx
similarity index 90%
rename from reference/statements/select/replace_modifier.mdx
rename to core/reference/statements/select/replace_modifier.mdx
index 94913695..6a3d1157 100644
--- a/reference/statements/select/replace_modifier.mdx
+++ b/core/reference/statements/select/replace_modifier.mdx
@@ -7,7 +7,7 @@ keywords: ['REPLACE', 'modifier']
doc_type: 'reference'
---
-> Allows you to specify one or more [expression aliases](/reference/syntax#expression-aliases).
+> Allows you to specify one or more [expression aliases](/core/reference/syntax#expression-aliases).
Each alias must match a column name from the `SELECT *` statement. In the output column list, the column that matches
the alias is replaced by the expression in that `REPLACE`.
diff --git a/reference/statements/select/sample.mdx b/core/reference/statements/select/sample.mdx
similarity index 86%
rename from reference/statements/select/sample.mdx
rename to core/reference/statements/select/sample.mdx
index 9ec3abc8..3b8a1f4c 100644
--- a/reference/statements/select/sample.mdx
+++ b/core/reference/statements/select/sample.mdx
@@ -19,14 +19,14 @@ Approximated query processing can be useful in the following cases:
****
-You can only use sampling with the tables in the [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) family, and only if the sampling expression was specified during table creation (see [MergeTree engine](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table)).
+You can only use sampling with the tables in the [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family, and only if the sampling expression was specified during table creation (see [MergeTree engine](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table)).
The features of data sampling are listed below:
- Data sampling is a deterministic mechanism. The result of the same `SELECT .. SAMPLE` query is always the same.
-- Sampling works consistently for different tables. For tables with a single sampling key, a sample with the same coefficient always selects the same subset of possible data. For example, a sample of user IDs takes rows with the same subset of all the possible user IDs from different tables. This means that you can use the sample in subqueries in the [IN](/reference/statements/in) clause. Also, you can join samples using the [JOIN](/reference/statements/select/join) clause.
-- Sampling allows reading less data from a disk. Note that you must specify the sampling key correctly. For more information, see [Creating a MergeTree Table](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table).
+- Sampling works consistently for different tables. For tables with a single sampling key, a sample with the same coefficient always selects the same subset of possible data. For example, a sample of user IDs takes rows with the same subset of all the possible user IDs from different tables. This means that you can use the sample in subqueries in the [IN](/core/reference/statements/in) clause. Also, you can join samples using the [JOIN](/core/reference/statements/select/join) clause.
+- Sampling allows reading less data from a disk. Note that you must specify the sampling key correctly. For more information, see [Creating a MergeTree Table](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table).
For the `SAMPLE` clause the following syntax is supported:
@@ -66,7 +66,7 @@ Since the minimum unit for data reading is one granule (its size is set by the `
When using the `SAMPLE n` clause, you do not know which relative percent of data was processed. So you do not know the coefficient the aggregate functions should be multiplied by. Use the `_sample_factor` virtual column to get the approximate result.
-The `_sample_factor` column contains relative coefficients that are calculated dynamically. This column is created automatically when you [create](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) a table with the specified sampling key. The usage examples of the `_sample_factor` column are shown below.
+The `_sample_factor` column contains relative coefficients that are calculated dynamically. This column is created automatically when you [create](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) a table with the specified sampling key. The usage examples of the `_sample_factor` column are shown below.
Let's consider the table `visits`, which contains the statistics about site visits. The first example shows how to calculate the number of page views:
diff --git a/reference/statements/select/union.mdx b/core/reference/statements/select/union.mdx
similarity index 71%
rename from reference/statements/select/union.mdx
rename to core/reference/statements/select/union.mdx
index c9e489b2..72623d5a 100644
--- a/reference/statements/select/union.mdx
+++ b/core/reference/statements/select/union.mdx
@@ -29,9 +29,9 @@ Result columns are matched by their index (order inside `SELECT`). If column nam
Type casting is performed for unions. For example, if two queries being combined have the same field with non-`Nullable` and `Nullable` types from a compatible type, the resulting `UNION` has a `Nullable` type field.
-Queries that are parts of `UNION` can be enclosed in `()`. [ORDER BY](/reference/statements/select/order-by) and [LIMIT](/reference/statements/select/limit) are applied to separate queries, not to the final result. If you need to apply a conversion to the final result, you can put all the queries with `UNION` in a subquery in the [FROM](/reference/statements/select/from) clause.
+Queries that are parts of `UNION` can be enclosed in `()`. [ORDER BY](/core/reference/statements/select/order-by) and [LIMIT](/core/reference/statements/select/limit) are applied to separate queries, not to the final result. If you need to apply a conversion to the final result, you can put all the queries with `UNION` in a subquery in the [FROM](/core/reference/statements/select/from) clause.
-If you use `UNION` without explicitly specifying `UNION ALL` or `UNION DISTINCT`, you can specify the union mode using the [union_default_mode](/reference/settings/session-settings#union_default_mode) setting. The setting values can be `ALL`, `DISTINCT` or an empty string. However, if you use `UNION` with `union_default_mode` setting to empty string, it will throw an exception. The following examples demonstrate the results of queries with different values setting.
+If you use `UNION` without explicitly specifying `UNION ALL` or `UNION DISTINCT`, you can specify the union mode using the [union_default_mode](/core/reference/settings/session-settings#union_default_mode) setting. The setting values can be `ALL`, `DISTINCT` or an empty string. However, if you use `UNION` with `union_default_mode` setting to empty string, it will throw an exception. The following examples demonstrate the results of queries with different values setting.
```sql title="Query"
SET union_default_mode = 'DISTINCT';
@@ -74,5 +74,5 @@ Queries that are parts of `UNION/UNION ALL/UNION DISTINCT` can be run simultaneo
**See Also**
-- [insert_null_as_default](/reference/settings/session-settings#insert_null_as_default) setting.
-- [union_default_mode](/reference/settings/session-settings#union_default_mode) setting.
+- [insert_null_as_default](/core/reference/settings/session-settings#insert_null_as_default) setting.
+- [union_default_mode](/core/reference/settings/session-settings#union_default_mode) setting.
diff --git a/reference/statements/select/where.mdx b/core/reference/statements/select/where.mdx
similarity index 88%
rename from reference/statements/select/where.mdx
rename to core/reference/statements/select/where.mdx
index a6a1aa8a..c40c0e71 100644
--- a/reference/statements/select/where.mdx
+++ b/core/reference/statements/select/where.mdx
@@ -7,39 +7,39 @@ doc_type: 'reference'
keywords: ['WHERE']
---
-The `WHERE` clause allows you to filter the data that comes from the[`FROM`](/reference/statements/select/from) clause of `SELECT`.
+The `WHERE` clause allows you to filter the data that comes from the[`FROM`](/core/reference/statements/select/from) clause of `SELECT`.
If there is a `WHERE` clause, it must be followed by an expression of type `UInt8`.
Rows where this expression evaluates to `0` are excluded from further transformations or the result.
-The expression following the `WHERE` clause is often used with [comparison](/reference/operators#comparison-operators) and [logical operators](/reference/operators#operators-for-working-with-data-sets), or one of the many [regular functions](/reference/functions/regular-functions/regular-functions-index).
+The expression following the `WHERE` clause is often used with [comparison](/core/reference/operators#comparison-operators) and [logical operators](/core/reference/operators#operators-for-working-with-data-sets), or one of the many [regular functions](/core/reference/functions/regular-functions/regular-functions-index).
The `WHERE` expression is evaluated on the ability to use indexes and partition pruning, if the underlying table engine supports that.
**PREWHERE**
-There is also a filtering optimization called [`PREWHERE`](/reference/statements/select/prewhere).
+There is also a filtering optimization called [`PREWHERE`](/core/reference/statements/select/prewhere).
Prewhere is an optimization to apply filtering more efficiently.
It is enabled by default even if `PREWHERE` clause is not specified explicitly.
## Testing for `NULL` {#testing-for-null}
-If you need to test a value for [`NULL`](/reference/syntax#null), use:
-- [`IS NULL`](/reference/operators#is_null) or [`isNull`](/reference/functions/regular-functions/functions-for-nulls#isNull)
-- [`IS NOT NULL`](/reference/operators#is_not_null) or [`isNotNull`](/reference/functions/regular-functions/functions-for-nulls#isNotNull)
+If you need to test a value for [`NULL`](/core/reference/syntax#null), use:
+- [`IS NULL`](/core/reference/operators#is_null) or [`isNull`](/core/reference/functions/regular-functions/functions-for-nulls#isNull)
+- [`IS NOT NULL`](/core/reference/operators#is_not_null) or [`isNotNull`](/core/reference/functions/regular-functions/functions-for-nulls#isNotNull)
An expression with `NULL` will otherwise never pass.
## Filtering data with logical operators {#filtering-data-with-logical-operators}
-You can use the following [logical functions](/reference/functions/regular-functions/logical-functions#and) together with the `WHERE` clause for combining multiple conditions:
+You can use the following [logical functions](/core/reference/functions/regular-functions/logical-functions#and) together with the `WHERE` clause for combining multiple conditions:
-- [`and()`](/reference/functions/regular-functions/logical-functions#and) or `AND`
-- [`not()`](/reference/functions/regular-functions/logical-functions#not) or `NOT`
-- [`or()`](/reference/functions/regular-functions/logical-functions#or) or `NOT`
-- [`xor()`](/reference/functions/regular-functions/logical-functions#xor)
+- [`and()`](/core/reference/functions/regular-functions/logical-functions#and) or `AND`
+- [`not()`](/core/reference/functions/regular-functions/logical-functions#not) or `NOT`
+- [`or()`](/core/reference/functions/regular-functions/logical-functions#or) or `NOT`
+- [`xor()`](/core/reference/functions/regular-functions/logical-functions#xor)
## Using UInt8 columns as a condition {#using-uint8-columns-as-a-condition}
@@ -48,7 +48,7 @@ An example of this is given in the section [below](#example-uint8-column-as-cond
## Using comparison operators {#using-comparison-operators}
-The following [comparison operators](/reference/operators#comparison-operators) can be used:
+The following [comparison operators](/core/reference/operators#comparison-operators) can be used:
| Operator | Function | Description | Example |
|----------|----------|-------------|---------|
@@ -82,7 +82,7 @@ See ["Pattern matching and conditional expressions"](#examples-pattern-matching-
## Expression with literals, columns or subqueries {#expressions-with-literals-columns-subqueries}
-The expression following the `WHERE` clause can also include [literals](/reference/syntax#literals), columns or subqueries, which are nested `SELECT` statements that return values used in conditions.
+The expression following the `WHERE` clause can also include [literals](/core/reference/syntax#literals), columns or subqueries, which are nested `SELECT` statements that return values used in conditions.
| Type | Definition | Evaluation | Performance | Example |
|------|------------|------------|-------------|---------|
@@ -321,14 +321,14 @@ WHERE in_stock AND price < 400;
**7. Using the `IN` operator:**
-In the example below `(1, true)` is a [tuple](/reference/data-types/tuple).
+In the example below `(1, true)` is a [tuple](/core/reference/data-types/tuple).
```sql
SELECT * FROM products
WHERE in_stock IN (1, true);
```
-You can also use an [array](/reference/data-types/array) to do this:
+You can also use an [array](/core/reference/data-types/array) to do this:
```sql
SELECT * FROM products
diff --git a/reference/statements/select/with.mdx b/core/reference/statements/select/with.mdx
similarity index 93%
rename from reference/statements/select/with.mdx
rename to core/reference/statements/select/with.mdx
index 5deef9f8..e0be13cd 100644
--- a/reference/statements/select/with.mdx
+++ b/core/reference/statements/select/with.mdx
@@ -53,7 +53,7 @@ This is especially useful when the same CTE is referenced multiple times in a qu
Materialized CTEs are an **experimental** feature.
-They require the [analyzer](/guides/cloud-oss/performance-and-monitoring/analyzer) and the setting `enable_materialized_cte` to be enabled.
+They require the [analyzer](/core/guides/clickhouse/performance-and-monitoring/analyzer) and the setting `enable_materialized_cte` to be enabled.
### Syntax {#materialized-common-table-expressions-syntax}
@@ -162,7 +162,7 @@ SELECT count() FROM b AS l LEFT SEMI JOIN b AS r ON l.uid = r.uid;
### Restrictions {#materialized-cte-restrictions}
- **Experimental setting required**: The setting `enable_materialized_cte` must be enabled.
-- **Analyzer required**: Materialized CTEs only work with the [analyzer](/guides/cloud-oss/performance-and-monitoring/analyzer) enabled (`enable_analyzer = 1`).
+- **Analyzer required**: Materialized CTEs only work with the [analyzer](/core/guides/clickhouse/performance-and-monitoring/analyzer) enabled (`enable_analyzer = 1`).
- **Not supported with `RECURSIVE`**: Combining `MATERIALIZED` and `RECURSIVE` keywords is not allowed and results in an `UNSUPPORTED_METHOD` exception.
- **Correlated CTEs are forbidden**: A materialized CTE cannot reference columns from outer query scopes.
@@ -174,7 +174,7 @@ Common scalar expressions can be referenced in any place in the query.
If a common scalar expression references something other than a constant literal, the expression may lead to the presence of [free variables](https://en.wikipedia.org/wiki/Free_variables_and_bound_variables).
ClickHouse resolves any identifier in the closest scope possible, meaning that free variables can reference unexpected entities in case of name clashes or may lead to a correlated subquery.
-It is recommended to define CSE as a [lambda function](/reference/functions/regular-functions/overview#arrow-operator-and-lambda) (possible only with the [analyzer](/guides/cloud-oss/performance-and-monitoring/analyzer) enabled) binding all the used identifiers to achieve a more predictable behavior of expression identifiers resolution.
+It is recommended to define CSE as a [lambda function](/core/reference/functions/regular-functions/overview#arrow-operator-and-lambda) (possible only with the [analyzer](/core/guides/clickhouse/performance-and-monitoring/analyzer) enabled) binding all the used identifiers to achieve a more predictable behavior of expression identifiers resolution.
### Syntax {#common-scalar-expressions-syntax}
@@ -301,7 +301,7 @@ SELECT sum(number) FROM test_table;
```
-Recursive CTEs rely on the [query analyzer](/guides/cloud-oss/performance-and-monitoring/analyzer) introduced in version **`24.3`**. If you're using version **`24.3+`** and encounter a **`(UNKNOWN_TABLE)`** or **`(UNSUPPORTED_METHOD)`** exception, it suggests that the analyzer is disabled on your instance, role, or profile. To activate the analyzer, enable the setting **`allow_experimental_analyzer`** or update the **`compatibility`** setting to a more recent version.
+Recursive CTEs rely on the [query analyzer](/core/guides/clickhouse/performance-and-monitoring/analyzer) introduced in version **`24.3`**. If you're using version **`24.3+`** and encounter a **`(UNKNOWN_TABLE)`** or **`(UNSUPPORTED_METHOD)`** exception, it suggests that the analyzer is disabled on your instance, role, or profile. To activate the analyzer, enable the setting **`allow_experimental_analyzer`** or update the **`compatibility`** setting to a more recent version.
Starting from version `24.8` the analyzer has been fully promoted to production, and the setting `allow_experimental_analyzer` has been renamed to `enable_analyzer`.
diff --git a/reference/statements/set-role.mdx b/core/reference/statements/set-role.mdx
similarity index 100%
rename from reference/statements/set-role.mdx
rename to core/reference/statements/set-role.mdx
diff --git a/reference/statements/set.mdx b/core/reference/statements/set.mdx
similarity index 83%
rename from reference/statements/set.mdx
rename to core/reference/statements/set.mdx
index 7665a299..89b7ec03 100644
--- a/reference/statements/set.mdx
+++ b/core/reference/statements/set.mdx
@@ -10,7 +10,7 @@ doc_type: 'reference'
SET param = value
```
-Assigns `value` to the `param` [setting](/concepts/features/configuration/settings/overview) for the current session. You cannot change [server settings](/reference/settings/server-settings/settings) this way.
+Assigns `value` to the `param` [setting](/core/concepts/features/configuration/settings/overview) for the current session. You cannot change [server settings](/core/reference/settings/server-settings/settings) this way.
You can also set all the values from the specified settings profile in a single query.
@@ -47,7 +47,7 @@ SELECT getSetting('session_timezone');
The timezone value must be a valid name from the [IANA Time Zone Database](https://www.iana.org/time-zones). An invalid timezone name will result in an error.
-For more information about the `session_timezone` setting, see [session_timezone](/reference/settings/session-settings#session_timezone).
+For more information about the `session_timezone` setting, see [session_timezone](/core/reference/settings/session-settings#session_timezone).
## Setting query parameters {#setting-query-parameters}
@@ -71,6 +71,6 @@ AND name = {name: String};
Query parameters are particularly useful when the same query needs to be executed multiple times with different values.
-For more detailed information about query parameters, including usage with the `Identifier` type, see [Defining and Using Query Parameters](/reference/syntax#defining-and-using-query-parameters).
+For more detailed information about query parameters, including usage with the `Identifier` type, see [Defining and Using Query Parameters](/core/reference/syntax#defining-and-using-query-parameters).
-For more information, see [Settings](/reference/settings/session-settings).
+For more information, see [Settings](/core/reference/settings/session-settings).
diff --git a/reference/statements/show.mdx b/core/reference/statements/show.mdx
similarity index 87%
rename from reference/statements/show.mdx
rename to core/reference/statements/show.mdx
index 89770171..beb12372 100644
--- a/reference/statements/show.mdx
+++ b/core/reference/statements/show.mdx
@@ -10,10 +10,10 @@ doc_type: 'reference'
`SHOW CREATE (TABLE|DATABASE|USER)` hides secrets unless the following settings are turned on:
-- [`display_secrets_in_show_and_select`](/reference/settings/server-settings/settings#display_secrets_in_show_and_select) (server setting)
-- [`format_display_secrets_in_show_and_select` ](/reference/settings/formats#format_display_secrets_in_show_and_select) (format setting)
+- [`display_secrets_in_show_and_select`](/core/reference/settings/server-settings/settings#display_secrets_in_show_and_select) (server setting)
+- [`format_display_secrets_in_show_and_select` ](/core/reference/settings/formats#format_display_secrets_in_show_and_select) (format setting)
-Additionally, the user should have the [`displaySecretsInShowAndSelect`](/reference/statements/grant#displaysecretsinshowandselect) privilege.
+Additionally, the user should have the [`displaySecretsInShowAndSelect`](/core/reference/statements/grant#displaysecretsinshowandselect) privilege.
## SHOW CREATE TABLE | DICTIONARY | VIEW | DATABASE {#show-create-table--dictionary--view--database}
@@ -105,7 +105,7 @@ SHOW DATABASES LIMIT 2
### See also {#see-also}
-- [`CREATE DATABASE`](/reference/statements/create/database)
+- [`CREATE DATABASE`](/core/reference/statements/create/database)
## SHOW TABLES {#show-tables}
@@ -182,7 +182,7 @@ SHOW TABLES FROM system LIMIT 2
### See also {#see-also-1}
-- [`Create Tables`](/reference/statements/create/table)
+- [`Create Tables`](/core/reference/statements/create/table)
- [`SHOW CREATE TABLE`](#show-create-table--dictionary--view--database)
## SHOW COLUMNS {#show_columns}
@@ -235,11 +235,11 @@ SHOW COLUMNS FROM 'orders' LIKE 'delivery_%'
### See also {#see-also-2}
-- [`system.columns`](/reference/system-tables/columns)
+- [`system.columns`](/core/reference/system-tables/columns)
## SHOW DICTIONARIES {#show-dictionaries}
-The `SHOW DICTIONARIES` statement displays a list of [Dictionaries](/reference/statements/create/dictionary).
+The `SHOW DICTIONARIES` statement displays a list of [Dictionaries](/core/reference/statements/create/dictionary).
### Syntax {#syntax-4}
@@ -274,8 +274,8 @@ SHOW DICTIONARIES FROM db LIKE '%reg%' LIMIT 2
Displays a list of primary and data skipping indexes of a table.
-This statement mostly exists for compatibility with MySQL. System tables [`system.tables`](/reference/system-tables/tables) (for
-primary keys) and [`system.data_skipping_indices`](/reference/system-tables/data_skipping_indices) (for data skipping indices)
+This statement mostly exists for compatibility with MySQL. System tables [`system.tables`](/core/reference/system-tables/tables) (for
+primary keys) and [`system.data_skipping_indices`](/core/reference/system-tables/data_skipping_indices) (for data skipping indices)
provide equivalent information but in a fashion more native to ClickHouse.
### Syntax {#syntax-5}
@@ -330,12 +330,12 @@ SHOW INDEX FROM 'tbl'
### See also {#see-also-3}
-- [`system.tables`](/reference/system-tables/tables)
-- [`system.data_skipping_indices`](/reference/system-tables/data_skipping_indices)
+- [`system.tables`](/core/reference/system-tables/tables)
+- [`system.data_skipping_indices`](/core/reference/system-tables/data_skipping_indices)
## SHOW PROCESSLIST {#show-processlist}
-Outputs the content of the [`system.processes`](/reference/system-tables/processes) table, that contains a list of queries that are being processed at the moment, excluding `SHOW PROCESSLIST` queries.
+Outputs the content of the [`system.processes`](/core/reference/system-tables/processes) table, that contains a list of queries that are being processed at the moment, excluding `SHOW PROCESSLIST` queries.
### Syntax {#syntax-6}
@@ -371,7 +371,7 @@ The `FINAL` modifier merges all grants from the user and its granted roles (with
## SHOW CREATE USER {#show-create-user}
-The `SHOW CREATE USER` statement shows parameters which were used at [user creation](/reference/statements/create/user).
+The `SHOW CREATE USER` statement shows parameters which were used at [user creation](/core/reference/statements/create/user).
### Syntax {#syntax-8}
@@ -381,7 +381,7 @@ SHOW CREATE USER [name1 [, name2 ...] | CURRENT_USER]
## SHOW CREATE ROLE {#show-create-role}
-The `SHOW CREATE ROLE` statement shows parameters which were used at [role creation](/reference/statements/create/role).
+The `SHOW CREATE ROLE` statement shows parameters which were used at [role creation](/core/reference/statements/create/role).
### Syntax {#syntax-9}
@@ -391,7 +391,7 @@ SHOW CREATE ROLE name1 [, name2 ...]
## SHOW CREATE ROW POLICY {#show-create-row-policy}
-The `SHOW CREATE ROW POLICY` statement shows parameters which were used at [row policy creation](/reference/statements/create/row-policy).
+The `SHOW CREATE ROW POLICY` statement shows parameters which were used at [row policy creation](/core/reference/statements/create/row-policy).
### Syntax {#syntax-10}
@@ -401,7 +401,7 @@ SHOW CREATE [ROW] POLICY name ON [database1.]table1 [, [database2.]table2 ...]
## SHOW CREATE QUOTA {#show-create-quota}
-The `SHOW CREATE QUOTA` statement shows parameters which were used at [quota creation](/reference/statements/create/quota).
+The `SHOW CREATE QUOTA` statement shows parameters which were used at [quota creation](/core/reference/statements/create/quota).
### Syntax {#syntax-11}
@@ -411,7 +411,7 @@ SHOW CREATE QUOTA [name1 [, name2 ...] | CURRENT]
## SHOW CREATE SETTINGS PROFILE {#show-create-settings-profile}
-The `SHOW CREATE SETTINGS PROFILE` statement shows parameters which were used at [settings profile creation](/reference/statements/create/settings-profile).
+The `SHOW CREATE SETTINGS PROFILE` statement shows parameters which were used at [settings profile creation](/core/reference/statements/create/settings-profile).
### Syntax {#syntax-12}
@@ -421,8 +421,8 @@ SHOW CREATE [SETTINGS] PROFILE name1 [, name2 ...]
## SHOW USERS {#show-users}
-The `SHOW USERS` statement returns a list of [user account](/concepts/features/security/access-rights#user-account-management) names.
-To view user accounts parameters, see the system table [`system.users`](/reference/system-tables/users).
+The `SHOW USERS` statement returns a list of [user account](/core/concepts/features/security/access-rights#user-account-management) names.
+To view user accounts parameters, see the system table [`system.users`](/core/reference/system-tables/users).
### Syntax {#syntax-13}
@@ -432,9 +432,9 @@ SHOW USERS
## SHOW ROLES {#show-roles}
-The `SHOW ROLES` statement returns a list of [roles](/concepts/features/security/access-rights#role-management).
+The `SHOW ROLES` statement returns a list of [roles](/core/concepts/features/security/access-rights#role-management).
To view other parameters,
-see system tables [`system.roles`](/reference/system-tables/roles) and [`system.role_grants`](/reference/system-tables/role_grants).
+see system tables [`system.roles`](/core/reference/system-tables/roles) and [`system.role_grants`](/core/reference/system-tables/role_grants).
### Syntax {#syntax-14}
@@ -443,8 +443,8 @@ SHOW [CURRENT|ENABLED] ROLES
```
## SHOW PROFILES {#show-profiles}
-The `SHOW PROFILES` statement returns a list of [setting profiles](/concepts/features/security/access-rights#settings-profiles-management).
-To view user accounts parameters, see system table [`settings_profiles`](/reference/system-tables/settings_profiles).
+The `SHOW PROFILES` statement returns a list of [setting profiles](/core/concepts/features/security/access-rights#settings-profiles-management).
+To view user accounts parameters, see system table [`settings_profiles`](/core/reference/system-tables/settings_profiles).
### Syntax {#syntax-15}
@@ -454,8 +454,8 @@ SHOW [SETTINGS] PROFILES
## SHOW POLICIES {#show-policies}
-The `SHOW POLICIES` statement returns a list of [row policies](/concepts/features/security/access-rights#row-policy-management) for the specified table.
-To view user accounts parameters, see system table [`system.row_policies`](/reference/system-tables/row_policies).
+The `SHOW POLICIES` statement returns a list of [row policies](/core/concepts/features/security/access-rights#row-policy-management) for the specified table.
+To view user accounts parameters, see system table [`system.row_policies`](/core/reference/system-tables/row_policies).
### Syntax {#syntax-16}
@@ -465,8 +465,8 @@ SHOW [ROW] POLICIES [ON [db.]table]
## SHOW QUOTAS {#show-quotas}
-The `SHOW QUOTAS` statement returns a list of [quotas](/concepts/features/security/access-rights#quotas-management).
-To view quotas parameters, see the system table [`system.quotas`](/reference/system-tables/quotas).
+The `SHOW QUOTAS` statement returns a list of [quotas](/core/concepts/features/security/access-rights#quotas-management).
+To view quotas parameters, see the system table [`system.quotas`](/core/reference/system-tables/quotas).
### Syntax {#syntax-17}
@@ -476,8 +476,8 @@ SHOW QUOTAS
## SHOW QUOTA {#show-quota}
-The `SHOW QUOTA` statement returns a [quota](/concepts/features/configuration/server-config/quotas) consumption for all users or for current user.
-To view other parameters, see system tables [`system.quotas_usage`](/reference/system-tables/quotas_usage) and [`system.quota_usage`](/reference/system-tables/quota_usage).
+The `SHOW QUOTA` statement returns a [quota](/core/concepts/features/configuration/server-config/quotas) consumption for all users or for current user.
+To view other parameters, see system tables [`system.quotas_usage`](/core/reference/system-tables/quotas_usage) and [`system.quota_usage`](/core/reference/system-tables/quota_usage).
### Syntax {#syntax-18}
@@ -486,7 +486,7 @@ SHOW [CURRENT] QUOTA
```
## SHOW ACCESS {#show-access}
-The `SHOW ACCESS` statement shows all [users](/concepts/features/security/access-rights#user-account-management), [roles](/concepts/features/security/access-rights#role-management), [profiles](/concepts/features/security/access-rights#settings-profiles-management), etc. and all their [grants](/reference/statements/grant#privileges).
+The `SHOW ACCESS` statement shows all [users](/core/concepts/features/security/access-rights#user-account-management), [roles](/core/concepts/features/security/access-rights#role-management), [profiles](/core/concepts/features/security/access-rights#settings-profiles-management), etc. and all their [grants](/core/reference/statements/grant#privileges).
### Syntax {#syntax-19}
@@ -497,7 +497,7 @@ SHOW ACCESS
## SHOW CLUSTER(S) {#show-clusters}
The `SHOW CLUSTER(S)` statement returns a list of clusters.
-All available clusters are listed in the [`system.clusters`](/reference/system-tables/clusters) table.
+All available clusters are listed in the [`system.clusters`](/core/reference/system-tables/clusters) table.
The `SHOW CLUSTER name` query displays `cluster`, `shard_num`, `replica_num`, `host_name`, `host_address`, and `port` of the `system.clusters` table for the specified cluster name.
@@ -555,7 +555,7 @@ port: 9000
## SHOW SETTINGS {#show-settings}
The `SHOW SETTINGS` statement returns a list of system settings and their values.
-It selects data from the [`system.settings`](/reference/system-tables/settings) table.
+It selects data from the [`system.settings`](/core/reference/system-tables/settings) table.
### Syntax {#syntax-21}
@@ -621,7 +621,7 @@ SHOW SETTING
### See also {#see-also-4}
-- [`system.settings`](/reference/system-tables/settings) table
+- [`system.settings`](/core/reference/system-tables/settings) table
## SHOW FILESYSTEM CACHES {#show-filesystem-caches}
@@ -639,11 +639,11 @@ SHOW FILESYSTEM CACHES
### See also {#see-also-5}
-- [`system.settings`](/reference/system-tables/settings) table
+- [`system.settings`](/core/reference/system-tables/settings) table
## SHOW ENGINES {#show-engines}
-The `SHOW ENGINES` statement outputs the content of the [`system.table_engines`](/reference/system-tables/table_engines) table,
+The `SHOW ENGINES` statement outputs the content of the [`system.table_engines`](/core/reference/system-tables/table_engines) table,
that contains description of table engines supported by server and their feature support information.
### Syntax {#syntax-23}
@@ -654,11 +654,11 @@ SHOW ENGINES [INTO OUTFILE filename] [FORMAT format]
### See also {#see-also-6}
-- [system.table_engines](/reference/system-tables/table_engines) table
+- [system.table_engines](/core/reference/system-tables/table_engines) table
## SHOW FUNCTIONS {#show-functions}
-The `SHOW FUNCTIONS` statement outputs the content of the [`system.functions`](/reference/system-tables/functions) table.
+The `SHOW FUNCTIONS` statement outputs the content of the [`system.functions`](/core/reference/system-tables/functions) table.
### Syntax {#syntax-24}
@@ -670,12 +670,12 @@ If either `LIKE` or `ILIKE` clause is specified, the query returns a list of sys
### See Also {#see-also-7}
-- [`system.functions`](/reference/system-tables/functions) table
+- [`system.functions`](/core/reference/system-tables/functions) table
## SHOW MERGES {#show-merges}
The `SHOW MERGES` statement returns a list of merges.
-All merges are listed in the [`system.merges`](/reference/system-tables/merges) table:
+All merges are listed in the [`system.merges`](/core/reference/system-tables/merges) table:
| Column | Description |
|---------------------|------------------------------------------------------------|
@@ -718,7 +718,7 @@ SHOW MERGES LIKE 'your_t%' LIMIT 1;
## SHOW CREATE MASKING POLICY {#show-create-masking-policy}
-The `SHOW CREATE MASKING POLICY` statement shows parameters which were used at [masking policy creation](/reference/statements/create/masking-policy).
+The `SHOW CREATE MASKING POLICY` statement shows parameters which were used at [masking policy creation](/core/reference/statements/create/masking-policy).
### Syntax {#syntax-26}
diff --git a/reference/statements/system.mdx b/core/reference/statements/system.mdx
similarity index 85%
rename from reference/statements/system.mdx
rename to core/reference/statements/system.mdx
index 81aa69e9..dd8540b7 100644
--- a/reference/statements/system.mdx
+++ b/core/reference/statements/system.mdx
@@ -10,14 +10,14 @@ import CloudNotSupportedBadge from "/snippets/components/CloudNotSupportedBadge/
## SYSTEM RELOAD EMBEDDED DICTIONARIES {#reload-embedded-dictionaries}
-Reload all [Internal dictionaries](/reference/statements/create/dictionary).
+Reload all [Internal dictionaries](/core/reference/statements/create/dictionary).
By default, internal dictionaries are disabled.
Always returns `Ok.` regardless of the result of the internal dictionary update.
## SYSTEM RELOAD DICTIONARIES {#reload-dictionaries}
-The `SYSTEM RELOAD DICTIONARIES` query reloads dictionaries with a status of `LOADED` (see the `status` column of [`system.dictionaries`](/reference/system-tables/dictionaries)), i.e dictionaries that have been successfully loaded before.
-By default, dictionaries are loaded lazily (see [dictionaries_lazy_load](/reference/settings/server-settings/settings#dictionaries_lazy_load)), so instead of being loaded automatically at startup, they are initialized on first access through use of the [`dictGet`](/reference/functions/regular-functions/ext-dict-functions#dictGet) function or use of `SELECT` from tables with `ENGINE = Dictionary`.
+The `SYSTEM RELOAD DICTIONARIES` query reloads dictionaries with a status of `LOADED` (see the `status` column of [`system.dictionaries`](/core/reference/system-tables/dictionaries)), i.e dictionaries that have been successfully loaded before.
+By default, dictionaries are loaded lazily (see [dictionaries_lazy_load](/core/reference/settings/server-settings/settings#dictionaries_lazy_load)), so instead of being loaded automatically at startup, they are initialized on first access through use of the [`dictGet`](/core/reference/functions/regular-functions/ext-dict-functions#dictGet) function or use of `SELECT` from tables with `ENGINE = Dictionary`.
**Syntax**
@@ -67,7 +67,7 @@ SYSTEM RELOAD MODEL [ON CLUSTER cluster_name]
## SYSTEM RELOAD FUNCTIONS {#reload-functions}
-Reloads all registered [executable user defined functions](/reference/functions/regular-functions/udf#executable-user-defined-functions) or one of them from a configuration file.
+Reloads all registered [executable user defined functions](/core/reference/functions/regular-functions/udf#executable-user-defined-functions) or one of them from a configuration file.
**Syntax**
@@ -78,7 +78,7 @@ SYSTEM RELOAD FUNCTION [ON CLUSTER cluster_name] function_name
## SYSTEM RELOAD ASYNCHRONOUS METRICS {#reload-asynchronous-metrics}
-Re-calculates all [asynchronous metrics](/reference/system-tables/asynchronous_metrics). Since asynchronous metrics are periodically updated based on setting [asynchronous_metrics_update_period_s](/reference/settings/server-settings/settings), updating them manually using this statement is typically not necessary.
+Re-calculates all [asynchronous metrics](/core/reference/system-tables/asynchronous_metrics). Since asynchronous metrics are periodically updated based on setting [asynchronous_metrics_update_period_s](/core/reference/settings/server-settings/settings), updating them manually using this statement is typically not necessary.
```sql
SYSTEM RELOAD ASYNCHRONOUS METRICS [ON CLUSTER cluster_name]
@@ -149,13 +149,13 @@ Similar to `SYSTEM DROP REPLICA`, but removes the `Replicated` database replica
## SYSTEM CLEAR|DROP UNCOMPRESSED CACHE {#drop-uncompressed-cache}
Clears the uncompressed data cache.
-The uncompressed data cache is enabled/disabled with the query/user/profile-level setting [`use_uncompressed_cache`](/reference/settings/session-settings#use_uncompressed_cache).
-Its size can be configured using the server-level setting [`uncompressed_cache_size`](/reference/settings/server-settings/settings#uncompressed_cache_size).
+The uncompressed data cache is enabled/disabled with the query/user/profile-level setting [`use_uncompressed_cache`](/core/reference/settings/session-settings#use_uncompressed_cache).
+Its size can be configured using the server-level setting [`uncompressed_cache_size`](/core/reference/settings/server-settings/settings#uncompressed_cache_size).
## SYSTEM CLEAR|DROP COMPILED EXPRESSION CACHE {#drop-compiled-expression-cache}
Clears the compiled expression cache.
-The compiled expression cache is enabled/disabled with the query/user/profile-level setting [`compile_expressions`](/reference/settings/session-settings#compile_expressions).
+The compiled expression cache is enabled/disabled with the query/user/profile-level setting [`compile_expressions`](/core/reference/settings/session-settings#compile_expressions).
## SYSTEM CLEAR|DROP QUERY CONDITION CACHE {#drop-query-condition-cache}
@@ -168,16 +168,16 @@ SYSTEM CLEAR QUERY CACHE;
SYSTEM CLEAR QUERY CACHE TAG ''
````
-Clears the [query cache](/concepts/features/performance/caches/query-cache).
+Clears the [query cache](/core/concepts/features/performance/caches/query-cache).
If a tag is specified, only query cache entries with the specified tag are deleted.
## SYSTEM CLEAR|DROP FORMAT SCHEMA CACHE {#system-drop-schema-format}
-Clears cache for schemas loaded from [`format_schema_path`](/reference/settings/server-settings/settings#format_schema_path).
+Clears cache for schemas loaded from [`format_schema_path`](/core/reference/settings/server-settings/settings#format_schema_path).
Supported targets:
- Protobuf: Removes imported Protobuf message definitions from memory.
-- Files: Deletes cached schema files stored locally in the [`format_schema_path`](/reference/settings/server-settings/settings#format_schema_path), generated when `format_schema_source` is set to `query`.
+- Files: Deletes cached schema files stored locally in the [`format_schema_path`](/core/reference/settings/server-settings/settings#format_schema_path), generated when `format_schema_source` is set to `query`.
Note: If no target is specified, both caches are cleared.
```sql
@@ -234,8 +234,8 @@ address at the prolog and epilog of those functions that are longer than 200 ins
### SYSTEM INSTRUMENT ADD {#instrument-add}
-Adds a new instrumentation point. Functions instrumented can be inspected in the [`system.instrumentation`](/reference/system-tables/instrumentation) system table. More than one handler can be added for the same function, and they will be executed in the same order the instrumentation is added.
-The functions to be instrumented can be collected from [`system.symbols`](/reference/system-tables/symbols) system table.
+Adds a new instrumentation point. Functions instrumented can be inspected in the [`system.instrumentation`](/core/reference/system-tables/instrumentation) system table. More than one handler can be added for the same function, and they will be executed in the same order the instrumentation is added.
+The functions to be instrumented can be collected from [`system.symbols`](/core/reference/system-tables/symbols) system table.
There are three different kind of handlers to add to functions:
@@ -272,8 +272,8 @@ SYSTEM INSTRUMENT ADD 'QueryMetricLog::startQuery' SLEEP ENTRY 0 1
#### PROFILE {#instrument-add-profile}
Measures the time spent between `ENTRY` and `EXIT` of a function.
-The result of the profiling is stored in [`system.trace_log`](/reference/system-tables/trace_log) and can be converted
-to [Chrome Event Trace Format](/reference/system-tables/trace_log#chrome-event-trace-format).
+The result of the profiling is stored in [`system.trace_log`](/core/reference/system-tables/trace_log) and can be converted
+to [Chrome Event Trace Format](/core/reference/system-tables/trace_log#chrome-event-trace-format).
```sql
SYSTEM INSTRUMENT ADD 'QueryMetricLog::startQuery' PROFILE
@@ -305,11 +305,11 @@ or all instrumentation points that match a given function_name:
SYSTEM INSTRUMENT REMOVE 'QueryMetricLog::startQuery'
```
-The instrumentation point information can be collected from [`system.instrumentation`](/reference/system-tables/instrumentation) system table.
+The instrumentation point information can be collected from [`system.instrumentation`](/core/reference/system-tables/instrumentation) system table.
## Managing Distributed Tables {#managing-distributed-tables}
-ClickHouse can manage [distributed](/reference/engines/table-engines/special/distributed) tables. When a user inserts data into these tables, ClickHouse first creates a queue of the data that should be sent to cluster nodes, then asynchronously sends it. You can manage queue processing with the [`STOP DISTRIBUTED SENDS`](#stop-distributed-sends), [FLUSH DISTRIBUTED](#flush-distributed), and [`START DISTRIBUTED SENDS`](#start-distributed-sends) queries. You can also synchronously insert distributed data with the [`distributed_foreground_insert`](/reference/settings/session-settings#distributed_foreground_insert) setting.
+ClickHouse can manage [distributed](/core/reference/engines/table-engines/special/distributed) tables. When a user inserts data into these tables, ClickHouse first creates a queue of the data that should be sent to cluster nodes, then asynchronously sends it. You can manage queue processing with the [`STOP DISTRIBUTED SENDS`](#stop-distributed-sends), [FLUSH DISTRIBUTED](#flush-distributed), and [`START DISTRIBUTED SENDS`](#start-distributed-sends) queries. You can also synchronously insert distributed data with the [`distributed_foreground_insert`](/core/reference/settings/session-settings#distributed_foreground_insert) setting.
### SYSTEM STOP DISTRIBUTED SENDS {#stop-distributed-sends}
@@ -320,7 +320,7 @@ SYSTEM STOP DISTRIBUTED SENDS [db.] [ON CLUSTER cluster_
```
-In case of [`prefer_localhost_replica`](/reference/settings/session-settings#prefer_localhost_replica) is enabled (the default), the data to local shard will be inserted anyway.
+In case of [`prefer_localhost_replica`](/core/reference/settings/session-settings#prefer_localhost_replica) is enabled (the default), the data to local shard will be inserted anyway.
### SYSTEM FLUSH DISTRIBUTED {#flush-distributed}
@@ -372,7 +372,7 @@ SYSTEM START LISTEN [ON CLUSTER cluster_name] [QUERIES ALL | QUERIES DEFAULT | Q
## Managing MergeTree Tables {#managing-mergetree-tables}
-ClickHouse can manage background processes in [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) tables.
+ClickHouse can manage background processes in [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables.
### SYSTEM STOP MERGES {#stop-merges}
@@ -402,7 +402,7 @@ SYSTEM START MERGES [ON CLUSTER cluster_name] [ON VOLUME | [db.]me
-Provides possibility to stop background delete old data according to [TTL expression](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl) for tables in the MergeTree family:
+Provides possibility to stop background delete old data according to [TTL expression](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl) for tables in the MergeTree family:
Returns `Ok.` even if table does not exist or table has not MergeTree engine. Returns error when database does not exist:
```sql
@@ -413,7 +413,7 @@ SYSTEM STOP TTL MERGES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_n
-Provides possibility to start background delete old data according to [TTL expression](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl) for tables in the MergeTree family:
+Provides possibility to start background delete old data according to [TTL expression](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl) for tables in the MergeTree family:
Returns `Ok.` even if table does not exist. Returns error when database does not exist:
```sql
@@ -422,7 +422,7 @@ SYSTEM START TTL MERGES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_
### SYSTEM STOP MOVES {#stop-moves}
-Provides possibility to stop background move data according to [TTL table expression with TO VOLUME or TO DISK clause](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-table-ttl) for tables in the MergeTree family:
+Provides possibility to stop background move data according to [TTL table expression with TO VOLUME or TO DISK clause](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-table-ttl) for tables in the MergeTree family:
Returns `Ok.` even if table does not exist. Returns error when database does not exist:
```sql
@@ -431,7 +431,7 @@ SYSTEM STOP MOVES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_name]
### SYSTEM START MOVES {#start-moves}
-Provides possibility to start background move data according to [TTL table expression with TO VOLUME and TO DISK clause](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-table-ttl) for tables in the MergeTree family:
+Provides possibility to start background move data according to [TTL table expression with TO VOLUME and TO DISK clause](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-table-ttl) for tables in the MergeTree family:
Returns `Ok.` even if table does not exist. Returns error when database does not exist:
```sql
@@ -440,7 +440,7 @@ SYSTEM START MOVES [ON CLUSTER cluster_name] [[db.]merge_tree_family_table_name]
### SYSTEM SYSTEM UNFREEZE {#query_language-system-unfreeze}
-Clears a frozen backup with the specified name from all the disks. See more about unfreezing separate parts in [ALTER TABLE table_name UNFREEZE WITH NAME ](/reference/statements/alter/partition#unfreeze-partition)
+Clears a frozen backup with the specified name from all the disks. See more about unfreezing separate parts in [ALTER TABLE table_name UNFREEZE WITH NAME ](/core/reference/statements/alter/partition#unfreeze-partition)
```sql
SYSTEM UNFREEZE WITH NAME
@@ -456,7 +456,7 @@ SYSTEM WAIT LOADING PARTS [ON CLUSTER cluster_name] [db.]merge_tree_family_table
## Managing ReplicatedMergeTree Tables {#managing-replicatedmergetree-tables}
-ClickHouse can manage background replication related processes in [ReplicatedMergeTree](/reference/engines/table-engines/mergetree-family/replication) tables.
+ClickHouse can manage background replication related processes in [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/replication) tables.
### SYSTEM STOP FETCHES {#stop-fetches}
@@ -546,7 +546,7 @@ After running this statement the `[db.]replicated_merge_tree_family_table_name`
### SYNC DATABASE REPLICA {#sync-database-replica}
-Waits until the specified [replicated database](/reference/engines/database-engines/replicated) applies all schema changes from the DDL queue of that database.
+Waits until the specified [replicated database](/core/reference/engines/database-engines/replicated) applies all schema changes from the DDL queue of that database.
**Syntax**
```sql
@@ -691,9 +691,9 @@ SYSTEM UNLOAD PRIMARY KEY
## Managing Refreshable Materialized Views {#managing-refreshable-materialized-views}
-Commands to control background tasks performed by [Refreshable Materialized Views](/reference/statements/create/view#refreshable-materialized-view)
+Commands to control background tasks performed by [Refreshable Materialized Views](/core/reference/statements/create/view#refreshable-materialized-view)
-Keep an eye on [`system.view_refreshes`](/reference/system-tables/view_refreshes) while using them.
+Keep an eye on [`system.view_refreshes`](/core/reference/system-tables/view_refreshes) while using them.
### SYSTEM STOP [REPLICATED] VIEW, STOP VIEWS {#stop-view-stop-views}
@@ -775,7 +775,7 @@ SYSTEM CANCEL VIEW [db.]name
## SYSTEM FLUSH OBJECT STORAGE QUEUE {#flush-object-storage-queue}
-Blocks until the given file has been processed or permanently failed by the given [S3Queue](/reference/engines/table-engines/integrations/s3queue) or [AzureQueue](/reference/engines/table-engines/integrations/azure-queue) table. Returns immediately if the file was already processed. Raises an error if the file has permanently failed (all retries exhausted).
+Blocks until the given file has been processed or permanently failed by the given [S3Queue](/core/reference/engines/table-engines/integrations/s3queue) or [AzureQueue](/core/reference/engines/table-engines/integrations/azure-queue) table. Returns immediately if the file was already processed. Raises an error if the file has permanently failed (all retries exhausted).
```sql
SYSTEM FLUSH OBJECT STORAGE QUEUE [db.]table_name PATH 'path'
diff --git a/reference/statements/truncate.mdx b/core/reference/statements/truncate.mdx
similarity index 84%
rename from reference/statements/truncate.mdx
rename to core/reference/statements/truncate.mdx
index cc15a902..8ff543ee 100644
--- a/reference/statements/truncate.mdx
+++ b/core/reference/statements/truncate.mdx
@@ -20,9 +20,9 @@ TRUNCATE TABLE [IF EXISTS] [db.]name [ON CLUSTER cluster] [SYNC]
| `ON CLUSTER cluster`| Runs the command across a specified cluster. |
| `SYNC` | Makes the truncation synchronous across replicas when using replicated tables. If omitted, truncation happens asynchronously by default. |
-You can use the [alter_sync](/reference/settings/session-settings#alter_sync) setting to set up waiting for actions to be executed on replicas.
+You can use the [alter_sync](/core/reference/settings/session-settings#alter_sync) setting to set up waiting for actions to be executed on replicas.
-You can specify how long (in seconds) to wait for inactive replicas to execute `TRUNCATE` queries with the [replication_wait_for_inactive_replica_timeout](/reference/settings/session-settings#replication_wait_for_inactive_replica_timeout) setting.
+You can specify how long (in seconds) to wait for inactive replicas to execute `TRUNCATE` queries with the [replication_wait_for_inactive_replica_timeout](/core/reference/settings/session-settings#replication_wait_for_inactive_replica_timeout) setting.
****
@@ -32,11 +32,11 @@ If the `alter_sync` is set to `2` and some replicas are not active for more than
The `TRUNCATE TABLE` query is **not supported** for the following table engines:
-- [`View`](/reference/engines/table-engines/special/view)
-- [`File`](/reference/engines/table-engines/special/file)
-- [`URL`](/reference/engines/table-engines/special/url)
-- [`Buffer`](/reference/engines/table-engines/special/buffer)
-- [`Null`](/reference/engines/table-engines/special/null)
+- [`View`](/core/reference/engines/table-engines/special/view)
+- [`File`](/core/reference/engines/table-engines/special/file)
+- [`URL`](/core/reference/engines/table-engines/special/url)
+- [`Buffer`](/core/reference/engines/table-engines/special/buffer)
+- [`Null`](/core/reference/engines/table-engines/special/null)
## TRUNCATE ALL TABLES {#truncate-all-tables}
```sql
diff --git a/reference/statements/undrop.mdx b/core/reference/statements/undrop.mdx
similarity index 96%
rename from reference/statements/undrop.mdx
rename to core/reference/statements/undrop.mdx
index 4498166f..fac6b178 100644
--- a/reference/statements/undrop.mdx
+++ b/core/reference/statements/undrop.mdx
@@ -15,7 +15,7 @@ a system table called `system.dropped_tables`.
If you have a materialized view without a `TO` clause associated with the dropped table, then you will also have to UNDROP the inner table of that view.
-Also see [DROP TABLE](/reference/statements/drop)
+Also see [DROP TABLE](/core/reference/statements/drop)
Syntax:
diff --git a/reference/statements/update.mdx b/core/reference/statements/update.mdx
similarity index 68%
rename from reference/statements/update.mdx
rename to core/reference/statements/update.mdx
index cdf5d066..58ec987e 100644
--- a/reference/statements/update.mdx
+++ b/core/reference/statements/update.mdx
@@ -17,8 +17,8 @@ If you run into problems, kindly open an issue in the [ClickHouse repository](ht
The lightweight `UPDATE` statement updates rows in a table `[db.]table` that match the expression `filter_expr`.
-It is called "lightweight update" to contrast it to the [`ALTER TABLE ... UPDATE`](/reference/statements/alter/update) query, which is a heavyweight process that rewrites entire columns in data parts.
-It is only available for the [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree) table engine family.
+It is called "lightweight update" to contrast it to the [`ALTER TABLE ... UPDATE`](/core/reference/statements/alter/update) query, which is a heavyweight process that rewrites entire columns in data parts.
+It is only available for the [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree) table engine family.
```sql
UPDATE [db.]table [ON CLUSTER cluster] SET column1 = expr1 [, ...] [IN PARTITION partition_expr] WHERE filter_expr;
@@ -48,13 +48,13 @@ The updated values are:
## Lightweight updates requirements {#lightweight-update-requirements}
-Lightweight updates are supported for [`MergeTree`](/reference/engines/table-engines/mergetree-family/mergetree), [`ReplacingMergeTree`](/reference/engines/table-engines/mergetree-family/replacingmergetree), [`CollapsingMergeTree`](/reference/engines/table-engines/mergetree-family/collapsingmergetree), [`VersionedCollapsingMergeTree`](/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) engines and their [`Replicated`](/reference/engines/table-engines/mergetree-family/replication) and [`Shared`](/products/cloud/features/infrastructure/shared-merge-tree) versions.
+Lightweight updates are supported for [`MergeTree`](/core/reference/engines/table-engines/mergetree-family/mergetree), [`ReplacingMergeTree`](/core/reference/engines/table-engines/mergetree-family/replacingmergetree), [`CollapsingMergeTree`](/core/reference/engines/table-engines/mergetree-family/collapsingmergetree), [`VersionedCollapsingMergeTree`](/core/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree) engines and their [`Replicated`](/core/reference/engines/table-engines/mergetree-family/replication) and [`Shared`](/products/cloud/features/infrastructure/shared-merge-tree) versions.
-To use lightweight updates, materialization of `_block_number` and `_block_offset` columns must be enabled using table settings [`enable_block_number_column`](/reference/settings/merge-tree-settings#enable_block_number_column) and [`enable_block_offset_column`](/reference/settings/merge-tree-settings#enable_block_offset_column).
+To use lightweight updates, materialization of `_block_number` and `_block_offset` columns must be enabled using table settings [`enable_block_number_column`](/core/reference/settings/merge-tree-settings#enable_block_number_column) and [`enable_block_offset_column`](/core/reference/settings/merge-tree-settings#enable_block_offset_column).
## Lightweight deletes {#lightweight-delete}
-A [lightweight `DELETE`](/reference/statements/delete) query can be run as a lightweight `UPDATE` instead of a `ALTER UPDATE` mutation. The implementation of lightweight `DELETE` is controlled by setting [`lightweight_delete_mode`](/reference/settings/session-settings#lightweight_delete_mode).
+A [lightweight `DELETE`](/core/reference/statements/delete) query can be run as a lightweight `UPDATE` instead of a `ALTER UPDATE` mutation. The implementation of lightweight `DELETE` is controlled by setting [`lightweight_delete_mode`](/core/reference/settings/session-settings#lightweight_delete_mode).
## Performance considerations {#performance-considerations}
@@ -66,14 +66,14 @@ A [lightweight `DELETE`](/reference/statements/delete) query can be run as a lig
**Potential performance impacts:**
- Adds an overhead to `SELECT` queries that need to apply patches
-- [Skipping indexes](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) will not be used for columns in data parts that have patches to be applied. [Projections](/reference/engines/table-engines/mergetree-family/mergetree#projections) will not be used if there are patch parts for table, including for data parts that don't have patches to be applied.
+- [Skipping indexes](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes) will not be used for columns in data parts that have patches to be applied. [Projections](/core/reference/engines/table-engines/mergetree-family/mergetree#projections) will not be used if there are patch parts for table, including for data parts that don't have patches to be applied.
- Small updates which are too frequent may lead to a "too many parts" error. It is recommended to batch several updates into a single query, for example by putting ids for updates in a single `IN` clause in the `WHERE` clause
-- Lightweight updates are designed to update small amounts of rows (up to about 10% of the table). If you need to update a larger amount, it is recommended to use the [`ALTER TABLE ... UPDATE`](/reference/statements/alter/update) mutation
+- Lightweight updates are designed to update small amounts of rows (up to about 10% of the table). If you need to update a larger amount, it is recommended to use the [`ALTER TABLE ... UPDATE`](/core/reference/statements/alter/update) mutation
## Concurrent operations {#concurrent-operations}
Lightweight updates don't wait for currently running merges/mutations to complete unlike heavy mutations.
-The consistency of concurrent lightweight updates is controlled by settings [`update_sequential_consistency`](/reference/settings/session-settings#update_sequential_consistency) and [`update_parallel_mode`](/reference/settings/session-settings#update_parallel_mode).
+The consistency of concurrent lightweight updates is controlled by settings [`update_sequential_consistency`](/core/reference/settings/session-settings#update_sequential_consistency) and [`update_parallel_mode`](/core/reference/settings/session-settings#update_parallel_mode).
## Update permissions {#update-permissions}
@@ -94,7 +94,7 @@ Patch parts are the same as the regular parts, but contain only updated columns
On average it gives about 40 bytes (uncompressed data) of overhead per updated row in the patch parts.
System columns help to find rows in the original part which should be updated.
-System columns are related to the [virtual columns](/reference/engines/table-engines/mergetree-family/mergetree#virtual-columns) in the original part, which are added for reading if patch parts should be applied.
+System columns are related to the [virtual columns](/core/reference/engines/table-engines/mergetree-family/mergetree#virtual-columns) in the original part, which are added for reading if patch parts should be applied.
Patch parts are sorted by `_part` and `_part_offset`.
Patch parts belong to different partitions than the original part.
@@ -102,7 +102,7 @@ The partition id of the patch part is `patch-`, `SET y = 1 WHERE ` and `SET x = 1, y = 1 WHERE ` will create three patch parts in three different partitions.
-Patch parts can be merged among themselves to reduce the amount of applied patches on `SELECT` queries and reduce the overhead. Merging of patch parts uses the [replacing](/reference/engines/table-engines/mergetree-family/replacingmergetree) merge algorithm with `_data_version` as a version column.
+Patch parts can be merged among themselves to reduce the amount of applied patches on `SELECT` queries and reduce the overhead. Merging of patch parts uses the [replacing](/core/reference/engines/table-engines/mergetree-family/replacingmergetree) merge algorithm with `_data_version` as a version column.
Therefore patch parts always store the latest version for each updated row in the part.
Lightweight updates don't wait for currently running merges and mutations to finish and always use a current snapshot of data parts to execute an update and produce a patch part.
@@ -120,6 +120,6 @@ The join mode is slower and requires more memory than the merge mode, but it is
## Related Content {#related-content}
-- [`ALTER UPDATE`](/reference/statements/alter/update) - Heavy `UPDATE` operations
-- [Lightweight `DELETE`](/reference/statements/delete) - Lightweight `DELETE` operations
-- [`APPLY PATCHES`](/reference/statements/alter/apply-patches) - Force physical materialization of patches to data parts (mutation operation)
+- [`ALTER UPDATE`](/core/reference/statements/alter/update) - Heavy `UPDATE` operations
+- [Lightweight `DELETE`](/core/reference/statements/delete) - Lightweight `DELETE` operations
+- [`APPLY PATCHES`](/core/reference/statements/alter/apply-patches) - Force physical materialization of patches to data parts (mutation operation)
diff --git a/reference/statements/use.mdx b/core/reference/statements/use.mdx
similarity index 100%
rename from reference/statements/use.mdx
rename to core/reference/statements/use.mdx
diff --git a/reference/statements/watch.mdx b/core/reference/statements/watch.mdx
similarity index 100%
rename from reference/statements/watch.mdx
rename to core/reference/statements/watch.mdx
diff --git a/reference/syntax.mdx b/core/reference/syntax.mdx
similarity index 92%
rename from reference/syntax.mdx
rename to core/reference/syntax.mdx
index e439eae4..7532913f 100644
--- a/reference/syntax.mdx
+++ b/core/reference/syntax.mdx
@@ -29,7 +29,7 @@ and the data `(1, 'Hello, world'), (2, 'abc'), (3, 'def')` is parsed by the data
You can also turn on the full parser for the data
-by using the [`input_format_values_interpret_expressions`](/reference/settings/formats#input_format_values_interpret_expressions) setting.
+by using the [`input_format_values_interpret_expressions`](/core/reference/settings/formats#input_format_values_interpret_expressions) setting.
When the aforementioned setting is set to `1`,
ClickHouse first tries to parse values with the fast stream parser.
@@ -37,18 +37,18 @@ If it fails, ClickHouse tries to use the full parser for the data, treating it l
The data can have any format.
-When a query is received, the server calculates no more than [max_query_size](/reference/settings/session-settings#max_query_size) bytes of the request in RAM
+When a query is received, the server calculates no more than [max_query_size](/core/reference/settings/session-settings#max_query_size) bytes of the request in RAM
(by default, 1 MB), and the rest is stream parsed.
This is to allow for avoiding issues with large `INSERT` queries, which is the recommended way to insert your data in ClickHouse.
-When using the [`Values`](/reference/formats/Values) format in an `INSERT` query,
+When using the [`Values`](/core/reference/formats/Values) format in an `INSERT` query,
it may appear that data is parsed the same as for expressions in a `SELECT` query however this is not the case.
The `Values` format is much more limited.
The rest of this section covers the full parser.
-For more information about format parsers, see the [Formats](/reference/formats) section.
+For more information about format parsers, see the [Formats](/core/reference/formats) section.
## Spaces {#spaces}
@@ -90,7 +90,7 @@ Keywords are **case-insensitive** when they correspond to:
- Implementation in some popular DBMS (MySQL or Postgres). For example, `DateTime` is the same as `datetime`.
-You can check whether a data type name is case-sensitive in the [system.data_type_families](/reference/system-tables/data_type_families) table.
+You can check whether a data type name is case-sensitive in the [system.data_type_families](/core/reference/system-tables/data_type_families) table.
In contrast to standard SQL, all other keywords (including functions names) are **case-sensitive**.
@@ -111,7 +111,7 @@ Identifiers are:
- Cluster, database, table, partition, and column names.
- [Functions](#functions).
-- [Data types](/reference/data-types).
+- [Data types](/core/reference/data-types).
- [Expression aliases](#expression-aliases).
Identifiers can be quoted or non-quoted, although the latter is preferred.
@@ -223,7 +223,7 @@ This bypasses the above algorithm and parses the integer with a routine that sup
Otherwise, the literal will be parsed as a floating-point number and thus subject to loss of precision due to truncation.
-For more information, see [Data types](/reference/data-types).
+For more information, see [Data types](/core/reference/data-types).
Underscores `_` inside numeric literals are ignored and can be used for better readability.
@@ -252,20 +252,20 @@ An array must consist of at least one item, and a tuple must have at least two i
There is a separate case when tuples appear in the `IN` clause of a `SELECT` query.
-Query results can include tuples, but tuples cannot be saved to a database (except for tables using the [Memory](/reference/engines/table-engines/special/memory) engine).
+Query results can include tuples, but tuples cannot be saved to a database (except for tables using the [Memory](/core/reference/engines/table-engines/special/memory) engine).
### NULL {#null}
`NULL` is used to indicate that a value is missing.
-To store `NULL` in a table field, it must be of the [Nullable](/reference/data-types/nullable) type.
+To store `NULL` in a table field, it must be of the [Nullable](/core/reference/data-types/nullable) type.
The following should be noted for `NULL`:
-- Depending on the data format (input or output), `NULL` may have a different representation. For more information, see [data formats](/reference/formats).
+- Depending on the data format (input or output), `NULL` may have a different representation. For more information, see [data formats](/core/reference/formats).
- `NULL` processing is nuanced. For example, if at least one of the arguments of a comparison operation is `NULL`, the result of this operation is also `NULL`. The same is true for multiplication, addition, and other operations. We recommend to read the documentation for each operation.
-- In queries, you can check `NULL` using the [`IS NULL`](/reference/functions/regular-functions/functions-for-nulls#isNull) and [`IS NOT NULL`](/reference/functions/regular-functions/functions-for-nulls#isNotNull) operators and the related functions `isNull` and `isNotNull`.
+- In queries, you can check `NULL` using the [`IS NULL`](/core/reference/functions/regular-functions/functions-for-nulls#isNull) and [`IS NOT NULL`](/core/reference/functions/regular-functions/functions-for-nulls#isNotNull) operators and the related functions `isNull` and `isNotNull`.
### Heredoc {#heredoc}
@@ -371,8 +371,8 @@ now()
```
There are also:
-- [Regular functions](/reference/functions/regular-functions/overview).
-- [Aggregate functions](/reference/functions/aggregate-functions).
+- [Regular functions](/core/reference/functions/regular-functions/overview).
+- [Aggregate functions](/core/reference/functions/aggregate-functions).
Some aggregate functions can contain two lists of arguments in brackets. For example:
@@ -409,9 +409,9 @@ Data types and table engines in the `CREATE` query are written the same way as i
In other words, they may or may not contain an argument list in brackets.
For more information, see the sections:
-- [Data types](/reference/data-types)
-- [Table engines](/reference/engines/table-engines)
-- [CREATE](/reference/statements/create).
+- [Data types](/core/reference/data-types)
+- [Table engines](/core/reference/engines/table-engines)
+- [CREATE](/core/reference/statements/create).
## Expressions {#expressions}
@@ -444,7 +444,7 @@ The parts of the syntax above are explained below.
| Part of syntax | Description | Example | Notes |
|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `AS` | The keyword for defining aliases. You can define the alias for a table name or a column name in a `SELECT` clause without using the `AS` keyword.| `SELECT table_name_alias.column_name FROM table_name table_name_alias`. | In the [CAST](/reference/functions/regular-functions/type-conversion-functions#CAST) function, the `AS` keyword has another meaning. See the description of the function. |
+| `AS` | The keyword for defining aliases. You can define the alias for a table name or a column name in a `SELECT` clause without using the `AS` keyword.| `SELECT table_name_alias.column_name FROM table_name table_name_alias`. | In the [CAST](/core/reference/functions/regular-functions/type-conversion-functions#CAST) function, the `AS` keyword has another meaning. See the description of the function. |
| `expr` | Any expression supported by ClickHouse. | `SELECT column_name * 2 AS double FROM some_table` | |
| `alias` | Name for `expr`. Aliases should comply with the [identifiers](#identifiers) syntax. | `SELECT "table t".column_name FROM table_name AS "table t"`. | |
@@ -494,10 +494,10 @@ ClickHouse substituted the literal `b` in the expression `argMax(a, b)` with the
This substitution caused the exception.
-You can change this default behavior by setting [prefer_column_name_to_alias](/reference/settings/session-settings#prefer_column_name_to_alias) to `1`.
+You can change this default behavior by setting [prefer_column_name_to_alias](/core/reference/settings/session-settings#prefer_column_name_to_alias) to `1`.
## Asterisk {#asterisk}
In a `SELECT` query, an asterisk can replace the expression.
-For more information, see the section [SELECT](/reference/statements/select#asterisk).
+For more information, see the section [SELECT](/core/reference/statements/select#asterisk).
diff --git a/reference/system-tables/aggregate_function_combinators.mdx b/core/reference/system-tables/aggregate_function_combinators.mdx
similarity index 76%
rename from reference/system-tables/aggregate_function_combinators.mdx
rename to core/reference/system-tables/aggregate_function_combinators.mdx
index abb411e1..a00c62f1 100644
--- a/reference/system-tables/aggregate_function_combinators.mdx
+++ b/core/reference/system-tables/aggregate_function_combinators.mdx
@@ -13,6 +13,6 @@ Contains a list of all available aggregate function combinators, which could be
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — The name of the combinator.
-- `is_internal` ([UInt8](/reference/data-types)) — Whether this combinator is for internal usage only.
+- `name` ([String](/core/reference/data-types)) — The name of the combinator.
+- `is_internal` ([UInt8](/core/reference/data-types)) — Whether this combinator is for internal usage only.
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/aggregated_zookeeper_log.mdx b/core/reference/system-tables/aggregated_zookeeper_log.mdx
similarity index 53%
rename from reference/system-tables/aggregated_zookeeper_log.mdx
rename to core/reference/system-tables/aggregated_zookeeper_log.mdx
index 074c03ad..bfa15bf1 100644
--- a/reference/system-tables/aggregated_zookeeper_log.mdx
+++ b/core/reference/system-tables/aggregated_zookeeper_log.mdx
@@ -11,27 +11,27 @@ doc_type: 'reference'
This table contains aggregated statistics of ZooKeeper operations (e.g. number of operations, average latency, errors) grouped by `(session_id, parent_path, operation, component, is_subrequest)` and periodically flushed to disk.
-Unlike [system.zookeeper_log](/reference/system-tables/zookeeper_log) which logs every individual request and response, this table aggregates operations into groups, making it much more lightweight and therefore more suitable for production workloads.
+Unlike [system.zookeeper_log](/core/reference/system-tables/zookeeper_log) which logs every individual request and response, this table aggregates operations into groups, making it much more lightweight and therefore more suitable for production workloads.
Operations that are part of a `Multi` or `MultiRead` batch are tracked separately via the `is_subrequest` column. Subrequests have zero latency because the total latency is attributed to the enclosing `Multi`/`MultiRead` operation.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Hostname of the server.
-- `event_date` ([Date](/reference/data-types/date)) — Date the group was flushed.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Time the group was flushed.
-- `session_id` ([Int64](/reference/data-types/int-uint)) — Session id.
-- `parent_path` ([String](/reference/data-types/string)) — Prefix of the path.
-- `operation` ([Enum16('Close' = -11, 'Error' = -1, 'Watch' = 0, 'Create' = 1, 'Remove' = 2, 'Exists' = 3, 'Get' = 4, 'Set' = 5, 'GetACL' = 6, 'SetACL' = 7, 'SimpleList' = 8, 'Sync' = 9, 'Heartbeat' = 11, 'List' = 12, 'Check' = 13, 'Multi' = 14, 'Create2' = 15, 'Reconfig' = 16, 'CheckWatch' = 17, 'RemoveWatch' = 18, 'MultiRead' = 22, 'Auth' = 100, 'SetWatch' = 101, 'SetWatch2' = 105, 'AddWatch' = 106, 'FilteredList' = 500, 'CheckNotExists' = 501, 'CreateIfNotExists' = 502, 'RemoveRecursive' = 503, 'CheckStat' = 504, 'TryRemove' = 505, 'FilteredListWithStatsAndData' = 506, 'ListRecursive' = 507, 'SessionID' = 997)](/reference/data-types/enum)) — Type of ZooKeeper operation.
-- `is_subrequest` ([UInt8](/reference/data-types/int-uint)) — Whether this operation was a subrequest inside a Multi or MultiRead operation.
-- `count` ([UInt32](/reference/data-types/int-uint)) — Number of operations in the (session_id, parent_path, operation, component, is_subrequest) group.
-- `errors` ([Map(Enum8('ZNOWATCHER' = -121, 'ZNOTREADONLY' = -119, 'ZSESSIONMOVED' = -118, 'ZNOTHING' = -117, 'ZCLOSING' = -116, 'ZAUTHFAILED' = -115, 'ZINVALIDACL' = -114, 'ZINVALIDCALLBACK' = -113, 'ZSESSIONEXPIRED' = -112, 'ZNOTEMPTY' = -111, 'ZNODEEXISTS' = -110, 'ZNOCHILDRENFOREPHEMERALS' = -108, 'ZBADVERSION' = -103, 'ZNOAUTH' = -102, 'ZNONODE' = -101, 'ZAPIERROR' = -100, 'ZOUTOFMEMORY' = -10, 'ZINVALIDSTATE' = -9, 'ZBADARGUMENTS' = -8, 'ZOPERATIONTIMEOUT' = -7, 'ZUNIMPLEMENTED' = -6, 'ZMARSHALLINGERROR' = -5, 'ZCONNECTIONLOSS' = -4, 'ZDATAINCONSISTENCY' = -3, 'ZRUNTIMEINCONSISTENCY' = -2, 'ZSYSTEMERROR' = -1, 'ZOK' = 0), UInt32)](/reference/data-types/map)) — Errors in the (session_id, parent_path, operation, component, is_subrequest) group.
-- `average_latency` ([Float64](/reference/data-types/float)) — Average latency across all operations in (session_id, parent_path, operation, component, is_subrequest) group, in microseconds. Subrequests have zero latency because the latency is attributed to the enclosing Multi or MultiRead operation.
-- `component` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Component that caused the event.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date the group was flushed.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Time the group was flushed.
+- `session_id` ([Int64](/core/reference/data-types/int-uint)) — Session id.
+- `parent_path` ([String](/core/reference/data-types/string)) — Prefix of the path.
+- `operation` ([Enum16('Close' = -11, 'Error' = -1, 'Watch' = 0, 'Create' = 1, 'Remove' = 2, 'Exists' = 3, 'Get' = 4, 'Set' = 5, 'GetACL' = 6, 'SetACL' = 7, 'SimpleList' = 8, 'Sync' = 9, 'Heartbeat' = 11, 'List' = 12, 'Check' = 13, 'Multi' = 14, 'Create2' = 15, 'Reconfig' = 16, 'CheckWatch' = 17, 'RemoveWatch' = 18, 'MultiRead' = 22, 'Auth' = 100, 'SetWatch' = 101, 'SetWatch2' = 105, 'AddWatch' = 106, 'FilteredList' = 500, 'CheckNotExists' = 501, 'CreateIfNotExists' = 502, 'RemoveRecursive' = 503, 'CheckStat' = 504, 'TryRemove' = 505, 'FilteredListWithStatsAndData' = 506, 'ListRecursive' = 507, 'SessionID' = 997)](/core/reference/data-types/enum)) — Type of ZooKeeper operation.
+- `is_subrequest` ([UInt8](/core/reference/data-types/int-uint)) — Whether this operation was a subrequest inside a Multi or MultiRead operation.
+- `count` ([UInt32](/core/reference/data-types/int-uint)) — Number of operations in the (session_id, parent_path, operation, component, is_subrequest) group.
+- `errors` ([Map(Enum8('ZNOWATCHER' = -121, 'ZNOTREADONLY' = -119, 'ZSESSIONMOVED' = -118, 'ZNOTHING' = -117, 'ZCLOSING' = -116, 'ZAUTHFAILED' = -115, 'ZINVALIDACL' = -114, 'ZINVALIDCALLBACK' = -113, 'ZSESSIONEXPIRED' = -112, 'ZNOTEMPTY' = -111, 'ZNODEEXISTS' = -110, 'ZNOCHILDRENFOREPHEMERALS' = -108, 'ZBADVERSION' = -103, 'ZNOAUTH' = -102, 'ZNONODE' = -101, 'ZAPIERROR' = -100, 'ZOUTOFMEMORY' = -10, 'ZINVALIDSTATE' = -9, 'ZBADARGUMENTS' = -8, 'ZOPERATIONTIMEOUT' = -7, 'ZUNIMPLEMENTED' = -6, 'ZMARSHALLINGERROR' = -5, 'ZCONNECTIONLOSS' = -4, 'ZDATAINCONSISTENCY' = -3, 'ZRUNTIMEINCONSISTENCY' = -2, 'ZSYSTEMERROR' = -1, 'ZOK' = 0), UInt32)](/core/reference/data-types/map)) — Errors in the (session_id, parent_path, operation, component, is_subrequest) group.
+- `average_latency` ([Float64](/core/reference/data-types/float)) — Average latency across all operations in (session_id, parent_path, operation, component, is_subrequest) group, in microseconds. Subrequests have zero latency because the latency is attributed to the enclosing Multi or MultiRead operation.
+- `component` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Component that caused the event.
{/*AUTOGENERATED_END*/}
## See also {#see-also}
-- [system.zookeeper_log](/reference/system-tables/zookeeper_log) — Detailed per-request ZooKeeper log.
-- [ZooKeeper](/guides/oss/best-practices/tips#zookeeper)
+- [system.zookeeper_log](/core/reference/system-tables/zookeeper_log) — Detailed per-request ZooKeeper log.
+- [ZooKeeper](/core/guides/oss/best-practices/tips#zookeeper)
diff --git a/core/reference/system-tables/asynchronous_insert_log.mdx b/core/reference/system-tables/asynchronous_insert_log.mdx
new file mode 100644
index 00000000..bcbf5750
--- /dev/null
+++ b/core/reference/system-tables/asynchronous_insert_log.mdx
@@ -0,0 +1,74 @@
+---
+description: 'System table containing information about async inserts. Each entry
+ represents an insert query buffered into an async insert query.'
+keywords: ['system table', 'asynchronous_insert_log']
+slug: /operations/system-tables/asynchronous_insert_log
+title: 'system.asynchronous_insert_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about async inserts. Each entry represents an insert query buffered into an async insert query.
+
+To start logging configure parameters in the [asynchronous_insert_log](/core/reference/settings/server-settings/settings#asynchronous_insert_log) section.
+
+The flushing period of data is set in `flush_interval_milliseconds` parameter of the [asynchronous_insert_log](/core/reference/settings/server-settings/settings#asynchronous_insert_log) server settings section. To force flushing, use the [SYSTEM FLUSH LOGS](/core/reference/statements/system#flush-logs) query.
+
+ClickHouse does not delete data from the table automatically. See [Introduction](/core/reference/system-tables/overview#system-tables-introduction) for more details.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — The date when the async insert happened.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — The date and time when the async insert finished execution.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — The date and time when the async insert finished execution with microseconds precision.
+- `query` ([String](/core/reference/data-types/string)) — Query string.
+- `database` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The name of the database the table is in.
+- `table` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Table name.
+- `format` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Format name.
+- `query_id` ([String](/core/reference/data-types/string)) — ID of the initial query.
+- `bytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of inserted bytes.
+- `rows` ([UInt64](/core/reference/data-types/int-uint)) — Number of inserted rows.
+- `exception` ([String](/core/reference/data-types/string)) — Exception message.
+- `status` ([Enum8('Ok' = 0, 'ParsingError' = 1, 'FlushError' = 2)](/core/reference/data-types/enum)) — Status of the insert. Values: 'Ok' = 0 — Successful insert, 'ParsingError' = 1 — Exception when parsing the data, 'FlushError' = 2 — Exception when flushing the data.
+- `data_kind` ([Enum8('Parsed' = 0, 'Preprocessed' = 1)](/core/reference/data-types/enum)) — The status of the data. Value: 'Parsed' and 'Preprocessed'.
+- `flush_time` ([DateTime](/core/reference/data-types/datetime)) — The date and time when the flush happened.
+- `flush_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — The date and time when the flush happened with microseconds precision.
+- `flush_query_id` ([String](/core/reference/data-types/string)) — ID of the flush query.
+- `timeout_milliseconds` ([UInt64](/core/reference/data-types/int-uint)) — The adaptive timeout calculated for this entry.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.asynchronous_insert_log LIMIT 1 \G;
+```
+
+```text title="Response"
+hostname: clickhouse.eu-central1.internal
+event_date: 2023-06-08
+event_time: 2023-06-08 10:08:53
+event_time_microseconds: 2023-06-08 10:08:53.199516
+query: INSERT INTO public.data_guess (user_id, datasource_id, timestamp, path, type, num, str) FORMAT CSV
+database: public
+table: data_guess
+format: CSV
+query_id: b46cd4c4-0269-4d0b-99f5-d27668c6102e
+bytes: 133223
+exception:
+status: Ok
+flush_time: 2023-06-08 10:08:55
+flush_time_microseconds: 2023-06-08 10:08:55.139676
+flush_query_id: cd2c1e43-83f5-49dc-92e4-2fbc7f8d3716
+```
+
+## See Also {#see-also}
+
+- [system.query_log](/core/reference/system-tables/query_log) — Description of the `query_log` system table which contains common information about queries execution.
+- [system.asynchronous_inserts](/core/reference/system-tables/asynchronous_inserts) — This table contains information about pending asynchronous inserts in queue.
diff --git a/core/reference/system-tables/asynchronous_inserts.mdx b/core/reference/system-tables/asynchronous_inserts.mdx
new file mode 100644
index 00000000..dcffb31c
--- /dev/null
+++ b/core/reference/system-tables/asynchronous_inserts.mdx
@@ -0,0 +1,53 @@
+---
+description: 'System table containing information about pending asynchronous inserts
+ in queue.'
+keywords: ['system table', 'asynchronous_inserts']
+slug: /operations/system-tables/asynchronous_inserts
+title: 'system.asynchronous_inserts'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about pending asynchronous inserts in queue.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `query` ([String](/core/reference/data-types)) — Query text.
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `format` ([String](/core/reference/data-types)) — Format name.
+- `first_update` ([DateTime64(6)](/core/reference/data-types)) — First insert time with microseconds resolution.
+- `total_bytes` ([UInt64](/core/reference/data-types)) — Total number of bytes waiting in the queue.
+- `entries.query_id` ([Array(String)](/core/reference/data-types)) — Array of query ids of the inserts waiting in the queue.
+- `entries.bytes` ([Array(UInt64)](/core/reference/data-types)) — Array of bytes of each insert query waiting in the queue.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.asynchronous_inserts LIMIT 1 \G;
+```
+
+```text title="Response"
+Row 1:
+──────
+query: INSERT INTO public.data_guess (user_id, datasource_id, timestamp, path, type, num, str) FORMAT CSV
+database: public
+table: data_guess
+format: CSV
+first_update: 2023-06-08 10:08:54.199606
+total_bytes: 133223
+entries.query_id: ['b46cd4c4-0269-4d0b-99f5-d27668c6102e']
+entries.bytes: [133223]
+```
+
+## See also {#see-also}
+
+- [system.query_log](/core/reference/system-tables/query_log) — Description of the `query_log` system table which contains common information about queries execution.
+- [system.asynchronous_insert_log](/core/reference/system-tables/asynchronous_insert_log) — This table contains information about async inserts performed.
diff --git a/reference/system-tables/asynchronous_loader.mdx b/core/reference/system-tables/asynchronous_loader.mdx
similarity index 54%
rename from reference/system-tables/asynchronous_loader.mdx
rename to core/reference/system-tables/asynchronous_loader.mdx
index 1461cb4a..2e91fca0 100644
--- a/reference/system-tables/asynchronous_loader.mdx
+++ b/core/reference/system-tables/asynchronous_loader.mdx
@@ -18,28 +18,28 @@ Contains information and status for recent asynchronous jobs (e.g. for tables lo
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `job` ([String](/reference/data-types)) — Job name (may be not unique).
-- `job_id` ([UInt64](/reference/data-types)) — Unique ID of the job.
-- `dependencies` ([Array(UInt64)](/reference/data-types)) — List of IDs of jobs that should be done before this job.
-- `dependencies_left` ([UInt64](/reference/data-types)) — Current number of dependencies left to be done.
-- `status` ([Enum8('PENDING' = 0, 'OK' = 1, 'FAILED' = 2, 'CANCELED' = 3)](/reference/data-types)) — Current load status of a job: PENDING: Load job is not started yet. OK: Load job executed and was successful. FAILED: Load job executed and failed. CANCELED: Load job is not going to be executed due to removal or dependency failure.
-- `is_executing` ([UInt8](/reference/data-types)) — The job is currently being executed by a worker.
-- `is_blocked` ([UInt8](/reference/data-types)) — The job waits for its dependencies to be done.
-- `is_ready` ([UInt8](/reference/data-types)) — The job is ready to be executed and waits for a worker.
-- `elapsed` ([Float64](/reference/data-types)) — Seconds elapsed since start of execution. Zero if job is not started. Total execution time if job finished.
-- `pool_id` ([UInt64](/reference/data-types)) — ID of a pool currently assigned to the job.
-- `pool` ([String](/reference/data-types)) — Name of `pool_id` pool.
-- `priority` ([Int64](/reference/data-types)) — Priority of `pool_id` pool.
-- `execution_pool_id` ([UInt64](/reference/data-types)) — ID of a pool the job is executed in. Equals initially assigned pool before execution starts.
-- `execution_pool` ([String](/reference/data-types)) — Name of `execution_pool_id` pool.
-- `execution_priority` ([Int64](/reference/data-types)) — Priority of execution_pool_id pool.
-- `ready_seqno` ([Nullable(UInt64)](/reference/data-types)) — Not null for ready jobs. Worker pulls the next job to be executed from a ready queue of its pool. If there are multiple ready jobs, then job with the lowest value of `ready_seqno` is picked.
-- `waiters` ([UInt64](/reference/data-types)) — The number of threads waiting on this job.
-- `exception` ([Nullable(String)](/reference/data-types)) — Not null for failed and canceled jobs. Holds error message raised during query execution or error leading to cancelling of this job along with dependency failure chain of job names.
-- `schedule_time` ([DateTime64(6)](/reference/data-types)) — Time when job was created and scheduled to be executed (usually with all its dependencies).
-- `enqueue_time` ([Nullable(DateTime64(6))](/reference/data-types)) — Time when job became ready and was enqueued into a ready queue of it's pool. Null if the job is not ready yet.
-- `start_time` ([Nullable(DateTime64(6))](/reference/data-types)) — Time when worker dequeues the job from ready queue and start its execution. Null if the job is not started yet.
-- `finish_time` ([Nullable(DateTime64(6))](/reference/data-types)) — Time when job execution is finished. Null if the job is not finished yet.
+- `job` ([String](/core/reference/data-types)) — Job name (may be not unique).
+- `job_id` ([UInt64](/core/reference/data-types)) — Unique ID of the job.
+- `dependencies` ([Array(UInt64)](/core/reference/data-types)) — List of IDs of jobs that should be done before this job.
+- `dependencies_left` ([UInt64](/core/reference/data-types)) — Current number of dependencies left to be done.
+- `status` ([Enum8('PENDING' = 0, 'OK' = 1, 'FAILED' = 2, 'CANCELED' = 3)](/core/reference/data-types)) — Current load status of a job: PENDING: Load job is not started yet. OK: Load job executed and was successful. FAILED: Load job executed and failed. CANCELED: Load job is not going to be executed due to removal or dependency failure.
+- `is_executing` ([UInt8](/core/reference/data-types)) — The job is currently being executed by a worker.
+- `is_blocked` ([UInt8](/core/reference/data-types)) — The job waits for its dependencies to be done.
+- `is_ready` ([UInt8](/core/reference/data-types)) — The job is ready to be executed and waits for a worker.
+- `elapsed` ([Float64](/core/reference/data-types)) — Seconds elapsed since start of execution. Zero if job is not started. Total execution time if job finished.
+- `pool_id` ([UInt64](/core/reference/data-types)) — ID of a pool currently assigned to the job.
+- `pool` ([String](/core/reference/data-types)) — Name of `pool_id` pool.
+- `priority` ([Int64](/core/reference/data-types)) — Priority of `pool_id` pool.
+- `execution_pool_id` ([UInt64](/core/reference/data-types)) — ID of a pool the job is executed in. Equals initially assigned pool before execution starts.
+- `execution_pool` ([String](/core/reference/data-types)) — Name of `execution_pool_id` pool.
+- `execution_priority` ([Int64](/core/reference/data-types)) — Priority of execution_pool_id pool.
+- `ready_seqno` ([Nullable(UInt64)](/core/reference/data-types)) — Not null for ready jobs. Worker pulls the next job to be executed from a ready queue of its pool. If there are multiple ready jobs, then job with the lowest value of `ready_seqno` is picked.
+- `waiters` ([UInt64](/core/reference/data-types)) — The number of threads waiting on this job.
+- `exception` ([Nullable(String)](/core/reference/data-types)) — Not null for failed and canceled jobs. Holds error message raised during query execution or error leading to cancelling of this job along with dependency failure chain of job names.
+- `schedule_time` ([DateTime64(6)](/core/reference/data-types)) — Time when job was created and scheduled to be executed (usually with all its dependencies).
+- `enqueue_time` ([Nullable(DateTime64(6))](/core/reference/data-types)) — Time when job became ready and was enqueued into a ready queue of it's pool. Null if the job is not ready yet.
+- `start_time` ([Nullable(DateTime64(6))](/core/reference/data-types)) — Time when worker dequeues the job from ready queue and start its execution. Null if the job is not started yet.
+- `finish_time` ([Nullable(DateTime64(6))](/core/reference/data-types)) — Time when job execution is finished. Null if the job is not finished yet.
{/*AUTOGENERATED_END*/}
A pending job might be in one of the following states:
diff --git a/reference/system-tables/asynchronous_metric_log.mdx b/core/reference/system-tables/asynchronous_metric_log.mdx
similarity index 59%
rename from reference/system-tables/asynchronous_metric_log.mdx
rename to core/reference/system-tables/asynchronous_metric_log.mdx
index 8176bbb7..377575f9 100644
--- a/reference/system-tables/asynchronous_metric_log.mdx
+++ b/core/reference/system-tables/asynchronous_metric_log.mdx
@@ -18,11 +18,11 @@ Contains the historical values for `system.asynchronous_metrics`, which are save
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
-- `event_date` ([Date](/reference/data-types/date)) — Event date.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Event time.
-- `metric` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Metric name.
-- `value` ([Float64](/reference/data-types/float)) — Metric value.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `metric` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Metric name.
+- `value` ([Float64](/core/reference/data-types/float)) — Metric value.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -59,6 +59,6 @@ value: 0
**See Also**
-- [asynchronous_metric_log setting](/reference/settings/server-settings/settings#asynchronous_metric_log) — Enabling and disabling the setting.
-- [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) — Contains metrics, calculated periodically in the background.
-- [system.metric_log](/reference/system-tables/metric_log) — Contains history of metrics values from tables `system.metrics` and `system.events`, periodically flushed to disk.
+- [asynchronous_metric_log setting](/core/reference/settings/server-settings/settings#asynchronous_metric_log) — Enabling and disabling the setting.
+- [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) — Contains metrics, calculated periodically in the background.
+- [system.metric_log](/core/reference/system-tables/metric_log) — Contains history of metrics values from tables `system.metrics` and `system.events`, periodically flushed to disk.
diff --git a/reference/system-tables/asynchronous_metrics.mdx b/core/reference/system-tables/asynchronous_metrics.mdx
similarity index 98%
rename from reference/system-tables/asynchronous_metrics.mdx
rename to core/reference/system-tables/asynchronous_metrics.mdx
index ae80e79c..897c01bd 100644
--- a/reference/system-tables/asynchronous_metrics.mdx
+++ b/core/reference/system-tables/asynchronous_metrics.mdx
@@ -18,9 +18,9 @@ Contains metrics that are calculated periodically in the background. For example
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `metric` ([String](/reference/data-types/string)) — Metric name.
-- `value` ([Float64](/reference/data-types/float)) — Metric value.
-- `description` ([String](/reference/data-types/string) - Metric description)
+- `metric` ([String](/core/reference/data-types/string)) — Metric name.
+- `value` ([Float64](/core/reference/data-types/float)) — Metric value.
+- `description` ([String](/core/reference/data-types/string) - Metric description)
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -672,7 +672,7 @@ An internal metric of the low-level memory allocator (jemalloc). See https://jem
**See Also**
-- [Monitoring](/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
-- [system.metrics](/reference/system-tables/metrics) — Contains instantly calculated metrics.
-- [system.events](/reference/system-tables/events) — Contains a number of events that have occurred.
-- [system.metric_log](/reference/system-tables/metric_log) — Contains a history of metrics values from tables `system.metrics` and `system.events`.
+- [Monitoring](/core/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
+- [system.metrics](/core/reference/system-tables/metrics) — Contains instantly calculated metrics.
+- [system.events](/core/reference/system-tables/events) — Contains a number of events that have occurred.
+- [system.metric_log](/core/reference/system-tables/metric_log) — Contains a history of metrics values from tables `system.metrics` and `system.events`.
diff --git a/core/reference/system-tables/azure_queue_log.mdx b/core/reference/system-tables/azure_queue_log.mdx
new file mode 100644
index 00000000..00796bf7
--- /dev/null
+++ b/core/reference/system-tables/azure_queue_log.mdx
@@ -0,0 +1,34 @@
+---
+description: 'Contains log entries with information about files processed by the AzureQueue engine.
+
+It is safe to truncate or drop this table at any time.'
+keywords: ['system table', 'azure_queue_log']
+slug: /operations/system-tables/azure_queue_log
+title: 'system.azure_queue_log'
+doc_type: 'reference'
+---
+
+Contains log entries with information about files processed by the AzureQueue engine.
+
+It is safe to truncate or drop this table at any time.
+
+Columns:
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date of writing this log row
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time of writing this log row
+- `database` ([String](/core/reference/data-types/string)) — The name of the database where the queue table (`S3Queue` or `AzureQueue`) lives.
+- `table` ([String](/core/reference/data-types/string)) — The name of the queue table (`S3Queue` or `AzureQueue`).
+- `uuid` ([String](/core/reference/data-types/string)) — The UUID of the queue table (`S3Queue` or `AzureQueue`).
+- `file_name` ([String](/core/reference/data-types/string)) — File name of the processing file.
+- `rows_processed` ([UInt64](/core/reference/data-types/int-uint)) — Number of processed rows.
+- `status` ([Enum8('Processed' = 0, 'Failed' = 1)](/core/reference/data-types/enum)) — Status of the processing file.
+- `processing_start_time` ([Nullable(DateTime)](/core/reference/data-types/nullable)) — Time of the start of processing the file.
+- `processing_end_time` ([Nullable(DateTime)](/core/reference/data-types/nullable)) — Time of the end of processing the file.
+- `exception` ([String](/core/reference/data-types/string)) — Exception message if happened.
+- `commit_id` ([UInt64](/core/reference/data-types/int-uint)) — Id of the transaction in which this file was committed.
+- `commit_time` ([DateTime](/core/reference/data-types/datetime)) — Time of committing file in keeper (as either failed or processed).
+- `transaction_start_time` ([DateTime](/core/reference/data-types/datetime)) — Time when the whole processing transaction started.
+- `get_object_time_ms` ([UInt64](/core/reference/data-types/int-uint)) — Time which took us to find the object in object storage.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/azure_queue_metadata_cache.mdx b/core/reference/system-tables/azure_queue_metadata_cache.mdx
new file mode 100644
index 00000000..98fddcf8
--- /dev/null
+++ b/core/reference/system-tables/azure_queue_metadata_cache.mdx
@@ -0,0 +1,24 @@
+---
+description: 'Contains in-memory state of AzureQueue metadata and currently processed rows per file.'
+keywords: ['system table', 'azure_queue_metadata_cache']
+slug: /operations/system-tables/azure_queue_metadata_cache
+title: 'system.azure_queue_metadata_cache'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains in-memory state of AzureQueue metadata and currently processed rows per file.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `zookeeper_path` ([String](/core/reference/data-types)) — Path in zookeeper to metadata
+- `file_path` ([String](/core/reference/data-types)) — File path of a file which is being processed
+- `file_name` ([String](/core/reference/data-types)) — File name of a file which is being processed
+- `rows_processed` ([UInt64](/core/reference/data-types)) — Currently processed number of rows
+- `status` ([String](/core/reference/data-types)) — Status of processing: Processed, Processing, Failed
+- `processing_start_time` ([Nullable(DateTime)](/core/reference/data-types)) — Time at which processing of the file started
+- `processing_end_time` ([Nullable(DateTime)](/core/reference/data-types)) — Time at which processing of the file ended
+- `exception` ([String](/core/reference/data-types)) — Exception which happened during processing
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/azure_queue_settings.mdx b/core/reference/system-tables/azure_queue_settings.mdx
new file mode 100644
index 00000000..4f331da3
--- /dev/null
+++ b/core/reference/system-tables/azure_queue_settings.mdx
@@ -0,0 +1,26 @@
+---
+description: 'System table containing information about settings of AzureQueue tables.
+ Available from server version `24.10`.'
+keywords: ['system table', 'azure_queue_settings']
+slug: /operations/system-tables/azure_queue_settings
+title: 'system.azure_queue_settings'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about settings of [AzureQueue](/core/reference/engines/table-engines/integrations/azure-queue) tables.
+Available from `24.10` server version.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Database of the table with AzureQueue engine.
+- `table` ([String](/core/reference/data-types)) — Name of the table with AzureQueue engine.
+- `name` ([String](/core/reference/data-types)) — Setting name.
+- `value` ([String](/core/reference/data-types)) — Setting value.
+- `type` ([String](/core/reference/data-types)) — Setting type (implementation specific string value).
+- `changed` ([UInt8](/core/reference/data-types)) — 1 if the setting was explicitly defined in the config or explicitly changed.
+- `description` ([String](/core/reference/data-types)) — Setting description.
+- `alterable` ([UInt8](/core/reference/data-types)) — Shows whether the current user can change the setting via ALTER TABLE MODIFY SETTING: 0 — Current user can't change the setting, 1 — Current user can change the setting.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/background_schedule_pool.mdx b/core/reference/system-tables/background_schedule_pool.mdx
new file mode 100644
index 00000000..cbf81f12
--- /dev/null
+++ b/core/reference/system-tables/background_schedule_pool.mdx
@@ -0,0 +1,57 @@
+---
+description: 'System table containing information about tasks in background schedule pools.'
+keywords: ['system table', 'background_schedule_pool']
+slug: /operations/system-tables/background_schedule_pool
+title: 'system.background_schedule_pool'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about tasks in background schedule pools. Background schedule pools are used for executing periodic tasks such as distributed sends, buffer flushes, and message broker operations.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `pool` ([String](/core/reference/data-types)) — Pool name. Possible values: `schedule` — general purpose schedule pool, `buffer_flush` — pool for flushing Buffer table data, `distributed` — pool for distributed table operations, `message_broker` — pool for message broker operations.
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `table_uuid` ([UUID](/core/reference/data-types)) — Table UUID.
+- `query_id` ([String](/core/reference/data-types)) — Query ID (if executing now). Note: this is not a real query, but a randomly generated ID for matching logs in `system.text_log`.
+- `elapsed_ms` ([UInt64](/core/reference/data-types)) — Task execution time (if executing now).
+- `log_name` ([String](/core/reference/data-types)) — Log name for the task.
+- `deactivated` ([UInt8](/core/reference/data-types)) — Whether the task is deactivated (always false, since deactivated tasks are removed from the pool).
+- `scheduled` ([UInt8](/core/reference/data-types)) — Whether the task is scheduled for execution.
+- `delayed` ([UInt8](/core/reference/data-types)) — Whether the task is scheduled with delay.
+- `executing` ([UInt8](/core/reference/data-types)) — Whether the task is currently executing.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.background_schedule_pool LIMIT 5 FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+pool: distributed
+database: default
+table: data
+table_uuid: 00000000-0000-0000-0000-000000000000
+query_id:
+elapsed_ms: 0
+log_name: BackgroundJobsAssignee:DataProcessing
+deactivated: 0
+scheduled: 1
+delayed: 0
+executing: 0
+```
+
+## See also {#see-also}
+
+- [system.background_schedule_pool_log](/core/reference/system-tables/background_schedule_pool_log) — Contains history of background schedule pool task executions.
diff --git a/core/reference/system-tables/background_schedule_pool_log.mdx b/core/reference/system-tables/background_schedule_pool_log.mdx
new file mode 100644
index 00000000..cd5cb71e
--- /dev/null
+++ b/core/reference/system-tables/background_schedule_pool_log.mdx
@@ -0,0 +1,63 @@
+---
+description: 'System table containing history of background schedule pool task executions.'
+keywords: ['system table', 'background_schedule_pool_log']
+slug: /operations/system-tables/background_schedule_pool_log
+title: 'system.background_schedule_pool_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+The `system.background_schedule_pool_log` table is created only if the [background_schedule_pool_log](/core/reference/settings/server-settings/settings#background_schedule_pool_log) server setting is specified.
+
+This table contains the history of background schedule pool task executions. Background schedule pools are used for executing periodic tasks such as distributed sends, buffer flushes, and message broker operations.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Event time with microseconds precision.
+- `query_id` ([String](/core/reference/data-types/string)) — Identifier of the query associated with the background task.
+- `database` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the database.
+- `table` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the table.
+- `table_uuid` ([UUID](/core/reference/data-types/uuid)) — UUID of the table the background task belongs to.
+- `log_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the background task.
+- `duration_ms` ([UInt64](/core/reference/data-types/int-uint)) — Duration of the task execution in milliseconds.
+- `error` ([UInt16](/core/reference/data-types/int-uint)) — The error code of the occurred exception.
+- `exception` ([String](/core/reference/data-types/string)) — Text message of the occurred error.
+{/*AUTOGENERATED_END*/}
+
+The `system.background_schedule_pool_log` table is created after the first background task execution.
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.background_schedule_pool_log LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+event_date: 2025-12-18
+event_time: 2025-12-18 10:30:15
+event_time_microseconds: 2025-12-18 10:30:15.123456
+query_id:
+database: default
+table: data
+table_uuid: 00000000-0000-0000-0000-000000000000
+log_name: default.data
+duration_ms: 42
+error: 0
+exception:
+```
+
+## See also {#see-also}
+
+- [system.background_schedule_pool](/core/reference/system-tables/background_schedule_pool) — Contains information about currently scheduled tasks in background schedule pools.
diff --git a/reference/system-tables/backup_log.mdx b/core/reference/system-tables/backup_log.mdx
similarity index 71%
rename from reference/system-tables/backup_log.mdx
rename to core/reference/system-tables/backup_log.mdx
index c5a42add..35e0fa5b 100644
--- a/reference/system-tables/backup_log.mdx
+++ b/core/reference/system-tables/backup_log.mdx
@@ -18,25 +18,25 @@ Contains logging entries with information about `BACKUP` and `RESTORE` operation
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
-- `event_date` ([Date](/reference/data-types/date)) — Date of the entry.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Time of the entry.
-- `event_time_microseconds` ([DateTime64(6)](/reference/data-types/datetime64)) — Time of the entry with microseconds precision.
-- `id` ([String](/reference/data-types/string)) — Identifier of the backup or restore operation.
-- `name` ([String](/reference/data-types/string)) — Name of the backup storage (the contents of the FROM or TO clause).
-- `base_backup_name` ([String](/reference/data-types/string)) — The name of base backup in case incremental one.
-- `query_id` ([String](/reference/data-types/string)) — The ID of a query associated with a backup operation.
-- `status` ([Enum8('CREATING_BACKUP' = 0, 'BACKUP_CREATED' = 1, 'BACKUP_FAILED' = 2, 'RESTORING' = 3, 'RESTORED' = 4, 'RESTORE_FAILED' = 5, 'BACKUP_CANCELLED' = 6, 'RESTORE_CANCELLED' = 7)](/reference/data-types/enum)) — Operation status.
-- `error` ([String](/reference/data-types/string)) — Error message of the failed operation (empty string for successful operations).
-- `start_time` ([DateTime64(6)](/reference/data-types/datetime64)) — Start time of the operation.
-- `end_time` ([DateTime64(6)](/reference/data-types/datetime64)) — End time of the operation.
-- `num_files` ([UInt64](/reference/data-types/int-uint)) — Number of files stored in the backup.
-- `total_size` ([UInt64](/reference/data-types/int-uint)) — Total size of files stored in the backup.
-- `num_entries` ([UInt64](/reference/data-types/int-uint)) — Number of entries in the backup, i.e. the number of files inside the folder if the backup is stored as a folder, or the number of files inside the archive if the backup is stored as an archive. It is not the same as `num_files` if it's an incremental backup or if it contains empty files or duplicates. The following is always true: `num_entries ≤ num_files`.
-- `uncompressed_size` ([UInt64](/reference/data-types/int-uint)) — Uncompressed size of the backup.
-- `compressed_size` ([UInt64](/reference/data-types/int-uint)) — Compressed size of the backup. If the backup is not stored as an archive it equals to uncompressed_size.
-- `files_read` ([UInt64](/reference/data-types/int-uint)) — Number of files read during the restore operation.
-- `bytes_read` ([UInt64](/reference/data-types/int-uint)) — Total size of files read during the restore operation.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of the entry.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Time of the entry.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Time of the entry with microseconds precision.
+- `id` ([String](/core/reference/data-types/string)) — Identifier of the backup or restore operation.
+- `name` ([String](/core/reference/data-types/string)) — Name of the backup storage (the contents of the FROM or TO clause).
+- `base_backup_name` ([String](/core/reference/data-types/string)) — The name of base backup in case incremental one.
+- `query_id` ([String](/core/reference/data-types/string)) — The ID of a query associated with a backup operation.
+- `status` ([Enum8('CREATING_BACKUP' = 0, 'BACKUP_CREATED' = 1, 'BACKUP_FAILED' = 2, 'RESTORING' = 3, 'RESTORED' = 4, 'RESTORE_FAILED' = 5, 'BACKUP_CANCELLED' = 6, 'RESTORE_CANCELLED' = 7)](/core/reference/data-types/enum)) — Operation status.
+- `error` ([String](/core/reference/data-types/string)) — Error message of the failed operation (empty string for successful operations).
+- `start_time` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Start time of the operation.
+- `end_time` ([DateTime64(6)](/core/reference/data-types/datetime64)) — End time of the operation.
+- `num_files` ([UInt64](/core/reference/data-types/int-uint)) — Number of files stored in the backup.
+- `total_size` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files stored in the backup.
+- `num_entries` ([UInt64](/core/reference/data-types/int-uint)) — Number of entries in the backup, i.e. the number of files inside the folder if the backup is stored as a folder, or the number of files inside the archive if the backup is stored as an archive. It is not the same as `num_files` if it's an incremental backup or if it contains empty files or duplicates. The following is always true: `num_entries ≤ num_files`.
+- `uncompressed_size` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed size of the backup.
+- `compressed_size` ([UInt64](/core/reference/data-types/int-uint)) — Compressed size of the backup. If the backup is not stored as an archive it equals to uncompressed_size.
+- `files_read` ([UInt64](/core/reference/data-types/int-uint)) — Number of files read during the restore operation.
+- `bytes_read` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files read during the restore operation.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -164,4 +164,4 @@ SELECT * FROM system.backups ORDER BY start_time
## See Also {#see-also}
-- [Backup and Restore](/concepts/features/backup-restore/overview)
+- [Backup and Restore](/core/concepts/features/backup-restore/overview)
diff --git a/core/reference/system-tables/backups.mdx b/core/reference/system-tables/backups.mdx
new file mode 100644
index 00000000..4f5e866c
--- /dev/null
+++ b/core/reference/system-tables/backups.mdx
@@ -0,0 +1,33 @@
+---
+description: 'System table containing logging entries with information about `BACKUP`
+ and `RESTORE` operations.'
+keywords: ['system table', 'backups']
+slug: /operations/system-tables/backups
+title: 'system.backups'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains a list of all `BACKUP` or `RESTORE` operations with their current states and other properties. Note, that table is not persistent and it shows only operations executed after the last server restart.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `id` ([String](/core/reference/data-types)) — Operation ID, can be either passed via SETTINGS id=... or be randomly generated UUID.
+- `name` ([String](/core/reference/data-types)) — Operation name, a string like `Disk('backups', 'my_backup')`
+- `base_backup_name` ([String](/core/reference/data-types)) — Base Backup Operation name, a string like `Disk('backups', 'my_base_backup')`
+- `query_id` ([String](/core/reference/data-types)) — Query ID of a query that started backup.
+- `status` ([Enum8('CREATING_BACKUP' = 0, 'BACKUP_CREATED' = 1, 'BACKUP_FAILED' = 2, 'RESTORING' = 3, 'RESTORED' = 4, 'RESTORE_FAILED' = 5, 'BACKUP_CANCELLED' = 6, 'RESTORE_CANCELLED' = 7)](/core/reference/data-types)) — Status of backup or restore operation.
+- `error` ([String](/core/reference/data-types)) — The error message if any.
+- `start_time` ([DateTime64(6)](/core/reference/data-types)) — The time when operation started.
+- `end_time` ([DateTime64(6)](/core/reference/data-types)) — The time when operation finished.
+- `num_files` ([UInt64](/core/reference/data-types)) — The number of files stored in the backup.
+- `total_size` ([UInt64](/core/reference/data-types)) — The total size of files stored in the backup.
+- `num_entries` ([UInt64](/core/reference/data-types)) — The number of entries in the backup, i.e. the number of files inside the folder if the backup is stored as a folder.
+- `uncompressed_size` ([UInt64](/core/reference/data-types)) — The uncompressed size of the backup.
+- `compressed_size` ([UInt64](/core/reference/data-types)) — The compressed size of the backup.
+- `files_read` ([UInt64](/core/reference/data-types)) — Returns the number of files read during RESTORE from this backup.
+- `bytes_read` ([UInt64](/core/reference/data-types)) — Returns the total size of files read during RESTORE from this backup.
+- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types)) — All the profile events captured during this operation.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/blob_storage_log.mdx b/core/reference/system-tables/blob_storage_log.mdx
new file mode 100644
index 00000000..3c8f9a3c
--- /dev/null
+++ b/core/reference/system-tables/blob_storage_log.mdx
@@ -0,0 +1,69 @@
+---
+description: 'System table containing logging entries with information about various
+ blob storage operations such as uploads and deletes.'
+keywords: ['system table', 'blob_storage_log']
+slug: /operations/system-tables/blob_storage_log
+title: 'system.blob_storage_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains logging entries with information about various blob storage operations such as uploads and deletes.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of the event.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Time of the event.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Time of the event with microseconds precision.
+- `event_type` ([Enum8('Upload' = 1, 'Delete' = 2, 'MultiPartUploadCreate' = 3, 'MultiPartUploadWrite' = 4, 'MultiPartUploadComplete' = 5, 'MultiPartUploadAbort' = 6, 'Read' = 7)](/core/reference/data-types/enum)) — Type of the event. Possible values: 'Upload', 'Delete', 'MultiPartUploadCreate', 'MultiPartUploadWrite', 'MultiPartUploadComplete', 'MultiPartUploadAbort', 'Read'
+- `query_id` ([String](/core/reference/data-types/string)) — Identifier of the query associated with the event, if any.
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint)) — Identifier of the thread performing the operation.
+- `thread_name` ([String](/core/reference/data-types/string)) — Name of the thread performing the operation.
+- `disk_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the associated disk.
+- `bucket` ([String](/core/reference/data-types/string)) — Name of the bucket.
+- `remote_path` ([String](/core/reference/data-types/string)) — Path to the remote resource.
+- `local_path` ([String](/core/reference/data-types/string)) — Path to the metadata file on the local system, which references the remote resource.
+- `data_size` ([UInt64](/core/reference/data-types/int-uint)) — Size of the data involved in the upload event.
+- `elapsed_microseconds` ([UInt64](/core/reference/data-types/int-uint)) — Elapsed time for the operation, in microseconds.
+- `error_code` ([Int32](/core/reference/data-types/int-uint)) — Error code of the operation. 0 if there was no error.
+- `error` ([String](/core/reference/data-types/string)) — Error message associated with the event, if any.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+Suppose a blob storage operation uploads a file, and an event is logged:
+
+```sql
+SELECT * FROM system.blob_storage_log WHERE query_id = '7afe0450-504d-4e4b-9a80-cd9826047972' ORDER BY event_date, event_time_microseconds \G
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+event_date: 2023-10-31
+event_time: 2023-10-31 16:03:40
+event_time_microseconds: 2023-10-31 16:03:40.481437
+event_type: Upload
+query_id: 7afe0450-504d-4e4b-9a80-cd9826047972
+thread_id: 2381740
+disk_name: disk_s3
+bucket: bucket1
+remote_path: rrr/kxo/tbnqtrghgtnxkzgtcrlutwuslgawe
+local_path: store/654/6549e8b3-d753-4447-8047-d462df6e6dbe/tmp_insert_all_1_1_0/checksums.txt
+data_size: 259
+error:
+```
+
+In this example, upload operation was associated with the `INSERT` query with ID `7afe0450-504d-4e4b-9a80-cd9826047972`. The local metadata file `store/654/6549e8b3-d753-4447-8047-d462df6e6dbe/tmp_insert_all_1_1_0/checksums.txt` refers to remote path `rrr/kxo/tbnqtrghgtnxkzgtcrlutwuslgawe` in bucket `bucket1` on disk `disk_s3`, with a size of 259 bytes.
+
+## See also {#see-also}
+
+- [External Disks for Storing Data](/core/concepts/features/configuration/server-config/storing-data)
diff --git a/reference/system-tables/build_options.mdx b/core/reference/system-tables/build_options.mdx
similarity index 84%
rename from reference/system-tables/build_options.mdx
rename to core/reference/system-tables/build_options.mdx
index c1a5d9de..5c315f3e 100644
--- a/reference/system-tables/build_options.mdx
+++ b/core/reference/system-tables/build_options.mdx
@@ -13,8 +13,8 @@ Contains information about the ClickHouse server's build options.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Name of the build option.
-- `value` ([String](/reference/data-types)) — Value of the build option.
+- `name` ([String](/core/reference/data-types)) — Name of the build option.
+- `value` ([String](/core/reference/data-types)) — Value of the build option.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/certificates.mdx b/core/reference/system-tables/certificates.mdx
new file mode 100644
index 00000000..bd46ae20
--- /dev/null
+++ b/core/reference/system-tables/certificates.mdx
@@ -0,0 +1,27 @@
+---
+description: 'Contains information about available certificates and their sources.'
+keywords: ['system table', 'certificates']
+slug: /operations/system-tables/certificates
+title: 'system.certificates'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about available certificates and their sources.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `version` ([Int32](/core/reference/data-types)) — Version of the certificate. Values are 0 for v1, 1 for v2, 2 for v3.
+- `serial_number` ([Nullable(String)](/core/reference/data-types)) — Serial Number of the certificate assigned by the issuer.
+- `signature_algo` ([Nullable(String)](/core/reference/data-types)) — Signature Algorithm - an algorithm used by the issuer to sign this certificate.
+- `issuer` ([Nullable(String)](/core/reference/data-types)) — Issuer - a unique identifier for the Certificate Authority issuing this certificate.
+- `not_before` ([Nullable(String)](/core/reference/data-types)) — The beginning of the time window when this certificate is valid.
+- `not_after` ([Nullable(String)](/core/reference/data-types)) — The end of the time window when this certificate is valid.
+- `subject` ([Nullable(String)](/core/reference/data-types)) — Subject - identifies the owner of the public key.
+- `pkey_algo` ([Nullable(String)](/core/reference/data-types)) — Public Key Algorithm defines the algorithm the public key can be used with.
+- `path` ([String](/core/reference/data-types)) — Path to the file or directory containing this certificate.
+- `default` ([UInt8](/core/reference/data-types)) — Certificate is in the default certificate location.
+- `protocol` ([String](/core/reference/data-types)) — Protocol name if certificate is from per-protocol TLS config, otherwise empty.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/clusters.mdx b/core/reference/system-tables/clusters.mdx
new file mode 100644
index 00000000..8c64ecc1
--- /dev/null
+++ b/core/reference/system-tables/clusters.mdx
@@ -0,0 +1,93 @@
+---
+description: 'System table containing information about clusters available in the
+ config file and the servers defined in them.'
+keywords: ['system table', 'clusters']
+slug: /operations/system-tables/clusters
+title: 'system.clusters'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about clusters available in the config file and the servers in them.
+
+## Columns {#Columns}
+
+{/*AUTOGENERATED_START*/}
+- `cluster` ([String](/core/reference/data-types)) — The cluster name.
+- `shard_num` ([UInt32](/core/reference/data-types)) — The shard number in the cluster, starting from 1.
+- `shard_name` ([String](/core/reference/data-types)) — The name of the shard in the cluster.
+- `shard_weight` ([UInt32](/core/reference/data-types)) — The relative weight of the shard when writing data.
+- `internal_replication` ([UInt8](/core/reference/data-types)) — Flag that indicates whether this host is a part on ensemble which can replicate the data on its own.
+- `replica_num` ([UInt32](/core/reference/data-types)) — The replica number in the shard, starting from 1.
+- `host_name` ([String](/core/reference/data-types)) — The host name, as specified in the config.
+- `host_address` ([String](/core/reference/data-types)) — The host IP address obtained from DNS.
+- `port` ([UInt16](/core/reference/data-types)) — The port to use for connecting to the server.
+- `is_local` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the host is local.
+- `user` ([String](/core/reference/data-types)) — The name of the user for connecting to the server.
+- `default_database` ([String](/core/reference/data-types)) — The default database name.
+- `errors_count` ([UInt32](/core/reference/data-types)) — The number of times this host failed to reach replica.
+- `slowdowns_count` ([UInt32](/core/reference/data-types)) — The number of slowdowns that led to changing replica when establishing a connection with hedged requests.
+- `estimated_recovery_time` ([UInt32](/core/reference/data-types)) — Seconds remaining until the replica error count is zeroed and it is considered to be back to normal.
+- `database_shard_name` ([String](/core/reference/data-types)) — The name of the `Replicated` database shard (for clusters that belong to a `Replicated` database).
+- `database_replica_name` ([String](/core/reference/data-types)) — The name of the `Replicated` database replica (for clusters that belong to a `Replicated` database).
+- `is_shared_catalog_cluster` ([UInt8](/core/reference/data-types)) — Bool indicating if the cluster belongs to shared catalog.
+- `is_active` ([Nullable(UInt8)](/core/reference/data-types)) — The status of the Replicated database replica (for clusters that belong to a Replicated database): 1 means 'replica is online', 0 means 'replica is offline', NULL means 'unknown'.
+- `unsynced_after_recovery` ([Nullable(UInt8)](/core/reference/data-types)) — Indicates if a Replicated database replica has replication lag more than max_replication_lag_to_enqueue after creating or recovering the replica.
+- `replication_lag` ([Nullable(UInt32)](/core/reference/data-types)) — The replication lag of the `Replicated` database replica (for clusters that belong to a Replicated database).
+- `recovery_time` ([Nullable(UInt64)](/core/reference/data-types)) — The recovery time of the `Replicated` database replica (for clusters that belong to a Replicated database), in milliseconds.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.clusters LIMIT 2 FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+cluster: test_cluster_two_shards
+shard_num: 1
+shard_name: shard_01
+shard_weight: 1
+replica_num: 1
+host_name: 127.0.0.1
+host_address: 127.0.0.1
+port: 9000
+is_local: 1
+user: default
+default_database:
+errors_count: 0
+slowdowns_count: 0
+estimated_recovery_time: 0
+database_shard_name:
+database_replica_name:
+is_active: NULL
+
+Row 2:
+──────
+cluster: test_cluster_two_shards
+shard_num: 2
+shard_name: shard_02
+shard_weight: 1
+replica_num: 1
+host_name: 127.0.0.2
+host_address: 127.0.0.2
+port: 9000
+is_local: 0
+user: default
+default_database:
+errors_count: 0
+slowdowns_count: 0
+estimated_recovery_time: 0
+database_shard_name:
+database_replica_name:
+is_active: NULL
+```
+
+## See also {#see-also}
+
+- [Table engine Distributed](/core/reference/engines/table-engines/special/distributed)
+- [distributed_replica_error_cap setting](/core/reference/settings/session-settings#distributed_replica_error_cap)
+- [distributed_replica_error_half_life setting](/core/reference/settings/session-settings#distributed_replica_error_half_life)
diff --git a/reference/system-tables/codecs.mdx b/core/reference/system-tables/codecs.mdx
similarity index 51%
rename from reference/system-tables/codecs.mdx
rename to core/reference/system-tables/codecs.mdx
index 62b4d76a..44f0375b 100644
--- a/reference/system-tables/codecs.mdx
+++ b/core/reference/system-tables/codecs.mdx
@@ -16,14 +16,14 @@ You can use this table to get information about the available compression and en
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Codec name.
-- `method_byte` ([UInt8](/reference/data-types)) — Byte which indicates codec in compressed file.
-- `is_compression` ([UInt8](/reference/data-types)) — True if this codec compresses something. Otherwise it can be just a transformation that helps compression.
-- `is_generic_compression` ([UInt8](/reference/data-types)) — The codec is a generic compression algorithm like lz4, zstd.
-- `is_encryption` ([UInt8](/reference/data-types)) — The codec encrypts.
-- `is_timeseries_codec` ([UInt8](/reference/data-types)) — The codec is for floating point timeseries codec.
-- `is_experimental` ([UInt8](/reference/data-types)) — The codec is experimental.
-- `description` ([String](/reference/data-types)) — A high-level description of the codec.
+- `name` ([String](/core/reference/data-types)) — Codec name.
+- `method_byte` ([UInt8](/core/reference/data-types)) — Byte which indicates codec in compressed file.
+- `is_compression` ([UInt8](/core/reference/data-types)) — True if this codec compresses something. Otherwise it can be just a transformation that helps compression.
+- `is_generic_compression` ([UInt8](/core/reference/data-types)) — The codec is a generic compression algorithm like lz4, zstd.
+- `is_encryption` ([UInt8](/core/reference/data-types)) — The codec encrypts.
+- `is_timeseries_codec` ([UInt8](/core/reference/data-types)) — The codec is for floating point timeseries codec.
+- `is_experimental` ([UInt8](/core/reference/data-types)) — The codec is experimental.
+- `description` ([String](/core/reference/data-types)) — A high-level description of the codec.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/collations.mdx b/core/reference/system-tables/collations.mdx
similarity index 73%
rename from reference/system-tables/collations.mdx
rename to core/reference/system-tables/collations.mdx
index aeb3589e..62c2b162 100644
--- a/reference/system-tables/collations.mdx
+++ b/core/reference/system-tables/collations.mdx
@@ -13,6 +13,6 @@ Contains a list of all available collations for alphabetical comparison of strin
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Name of the collation.
-- `language` ([Nullable(String)](/reference/data-types)) — The language.
+- `name` ([String](/core/reference/data-types)) — Name of the collation.
+- `language` ([Nullable(String)](/core/reference/data-types)) — The language.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/columns.mdx b/core/reference/system-tables/columns.mdx
new file mode 100644
index 00000000..c058f633
--- /dev/null
+++ b/core/reference/system-tables/columns.mdx
@@ -0,0 +1,99 @@
+---
+description: 'System table containing information about columns in all tables'
+keywords: ['system table', 'columns']
+slug: /operations/system-tables/columns
+title: 'system.columns'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about columns in all tables.
+
+You can use this table to get information similar to the [DESCRIBE TABLE](/core/reference/statements/describe-table) query, but for multiple tables at once.
+
+Columns from [temporary tables](/core/reference/statements/create/table#temporary-tables) are visible in the `system.columns` only in those session where they have been created. They are shown with the empty `database` field.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `name` ([String](/core/reference/data-types)) — Column name.
+- `type` ([String](/core/reference/data-types)) — Column type.
+- `position` ([UInt64](/core/reference/data-types)) — Ordinal position of a column in a table starting with 1.
+- `default_kind` ([String](/core/reference/data-types)) — Expression type (DEFAULT, MATERIALIZED, ALIAS) for the default value, or an empty string if it is not defined.
+- `default_expression` ([String](/core/reference/data-types)) — Expression for the default value, or an empty string if it is not defined.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — The size of compressed data, in bytes.
+- `data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — The size of decompressed data, in bytes.
+- `marks_bytes` ([UInt64](/core/reference/data-types)) — The size of marks, in bytes.
+- `comment` ([String](/core/reference/data-types)) — Comment on the column, or an empty string if it is not defined.
+- `is_in_partition_key` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the column is in the partition expression.
+- `is_in_sorting_key` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the column is in the sorting key expression.
+- `is_in_primary_key` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the column is in the primary key expression.
+- `is_in_sampling_key` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the column is in the sampling key expression.
+- `compression_codec` ([String](/core/reference/data-types)) — Compression codec name.
+- `character_octet_length` ([Nullable(UInt64)](/core/reference/data-types)) — Maximum length in bytes for binary data, character data, or text data and images. In ClickHouse makes sense only for FixedString data type. Otherwise, the NULL value is returned.
+- `numeric_precision` ([Nullable(UInt64)](/core/reference/data-types)) — Accuracy of approximate numeric data, exact numeric data, integer data, or monetary data. In ClickHouse it is bit width for integer types and decimal precision for Decimal types. Otherwise, the NULL value is returned.
+- `numeric_precision_radix` ([Nullable(UInt64)](/core/reference/data-types)) — The base of the number system is the accuracy of approximate numeric data, exact numeric data, integer data or monetary data. In ClickHouse it's 2 for integer types and 10 for Decimal types. Otherwise, the NULL value is returned.
+- `numeric_scale` ([Nullable(UInt64)](/core/reference/data-types)) — The scale of approximate numeric data, exact numeric data, integer data, or monetary data. In ClickHouse makes sense only for Decimal types. Otherwise, the NULL value is returned.
+- `datetime_precision` ([Nullable(UInt64)](/core/reference/data-types)) — Decimal precision of DateTime64 data type. For other data types, the NULL value is returned.
+- `serialization_hint` ([Nullable(String)](/core/reference/data-types)) — A hint for column to choose serialization on inserts according to statistics.
+- `statistics` ([String](/core/reference/data-types)) — The types of statistics created in this columns.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.columns LIMIT 2 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+database: INFORMATION_SCHEMA
+table: COLUMNS
+name: table_catalog
+type: String
+position: 1
+default_kind:
+default_expression:
+data_compressed_bytes: 0
+data_uncompressed_bytes: 0
+marks_bytes: 0
+comment:
+is_in_partition_key: 0
+is_in_sorting_key: 0
+is_in_primary_key: 0
+is_in_sampling_key: 0
+compression_codec:
+character_octet_length: ᴺᵁᴸᴸ
+numeric_precision: ᴺᵁᴸᴸ
+numeric_precision_radix: ᴺᵁᴸᴸ
+numeric_scale: ᴺᵁᴸᴸ
+datetime_precision: ᴺᵁᴸᴸ
+
+Row 2:
+──────
+database: INFORMATION_SCHEMA
+table: COLUMNS
+name: table_schema
+type: String
+position: 2
+default_kind:
+default_expression:
+data_compressed_bytes: 0
+data_uncompressed_bytes: 0
+marks_bytes: 0
+comment:
+is_in_partition_key: 0
+is_in_sorting_key: 0
+is_in_primary_key: 0
+is_in_sampling_key: 0
+compression_codec:
+character_octet_length: ᴺᵁᴸᴸ
+numeric_precision: ᴺᵁᴸᴸ
+numeric_precision_radix: ᴺᵁᴸᴸ
+numeric_scale: ᴺᵁᴸᴸ
+datetime_precision: ᴺᵁᴸᴸ
+```
diff --git a/reference/system-tables/completions.mdx b/core/reference/system-tables/completions.mdx
similarity index 53%
rename from reference/system-tables/completions.mdx
rename to core/reference/system-tables/completions.mdx
index f6e1d1a3..25b51762 100644
--- a/reference/system-tables/completions.mdx
+++ b/core/reference/system-tables/completions.mdx
@@ -13,7 +13,7 @@ Contains a list of completion tokens.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `word` ([String](/reference/data-types)) — Completion token.
-- `context` ([String](/reference/data-types)) — Token entity kind (e.g. table).
-- `belongs` ([Nullable(String)](/reference/data-types)) — Token for entity, this token belongs to (e.g. name of owning database).
+- `word` ([String](/core/reference/data-types)) — Completion token.
+- `context` ([String](/core/reference/data-types)) — Token entity kind (e.g. table).
+- `belongs` ([Nullable(String)](/core/reference/data-types)) — Token for entity, this token belongs to (e.g. name of owning database).
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/contributors.mdx b/core/reference/system-tables/contributors.mdx
similarity index 92%
rename from reference/system-tables/contributors.mdx
rename to core/reference/system-tables/contributors.mdx
index 4f0b0440..2536ed92 100644
--- a/reference/system-tables/contributors.mdx
+++ b/core/reference/system-tables/contributors.mdx
@@ -13,7 +13,7 @@ Contains information about contributors. The order is random at query execution
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Contributor (author) name from git log.
+- `name` ([String](/core/reference/data-types)) — Contributor (author) name from git log.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/crash_log.mdx b/core/reference/system-tables/crash_log.mdx
new file mode 100644
index 00000000..e675c44d
--- /dev/null
+++ b/core/reference/system-tables/crash_log.mdx
@@ -0,0 +1,67 @@
+---
+description: 'System table containing information about stack traces for fatal errors.'
+keywords: ['system table', 'crash_log']
+slug: /operations/system-tables/crash_log
+title: 'system.crash_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about stack traces for fatal errors. The table does not exist in the database by default, it is created only when fatal errors occur.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The hostname where the crash occurred.
+- `event_date` ([Date](/core/reference/data-types/date)) — The date of the crash.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — The time of the crash.
+- `timestamp_ns` ([UInt64](/core/reference/data-types/int-uint)) — Timestamp of the event with nanoseconds.
+- `signal` ([Int32](/core/reference/data-types/int-uint)) — Signal number.
+- `signal_code` ([Int32](/core/reference/data-types/int-uint)) — Signal code. Provides additional context about the signal cause.
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint)) — Thread ID.
+- `query_id` ([String](/core/reference/data-types/string)) — Query ID.
+- `query` ([String](/core/reference/data-types/string)) — Query text that was being executed when the crash occurred.
+- `trace` ([Array(UInt64)](/core/reference/data-types/array)) — Stack trace at the moment of crash. Each element is a virtual memory address inside ClickHouse server process.
+- `trace_full` ([Array(String)](/core/reference/data-types/array)) — Stack trace at the moment of crash. Each element contains a called method inside ClickHouse server process.
+- `fault_address` ([Nullable(UInt64)](/core/reference/data-types/nullable)) — Memory address that caused the fault.
+- `fault_access_type` ([String](/core/reference/data-types/string)) — Type of memory access that caused the fault (e.g., 'read', 'write').
+- `signal_description` ([String](/core/reference/data-types/string)) — Human-readable description based on signal_code (e.g., 'Address not mapped to object').
+- `current_exception_trace_full` ([Array(String)](/core/reference/data-types/array)) — Current exception stack trace with symbolized frames (std::terminate crashes only).
+- `version` ([String](/core/reference/data-types/string)) — ClickHouse server version.
+- `revision` ([UInt32](/core/reference/data-types/int-uint)) — ClickHouse server revision.
+- `build_id` ([String](/core/reference/data-types/string)) — BuildID that is generated by compiler.
+- `git_hash` ([String](/core/reference/data-types/string)) — Git commit hash of the ClickHouse source code.
+- `architecture` ([String](/core/reference/data-types/string)) — CPU architecture (e.g., x86_64, aarch64).
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.crash_log ORDER BY event_time DESC LIMIT 1;
+```
+
+```text title="Response"
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+event_date: 2020-10-14
+event_time: 2020-10-14 15:47:40
+timestamp_ns: 1602679660271312710
+signal: 11
+thread_id: 23624
+query_id: 428aab7c-8f5c-44e9-9607-d16b44467e69
+trace: [188531193,...]
+trace_full: ['3. DB::(anonymous namespace)::FunctionFormatReadableTimeDelta::executeImpl(std::__1::vector >&, std::__1::vector > const&, unsigned long, unsigned long) const @ 0xb3cc1f9 in /home/username/work/ClickHouse/build/programs/clickhouse',...]
+version: ClickHouse 20.11.1.1
+revision: 54442
+build_id:
+```
+
+## See also {#see-also}
+
+- [trace_log](/core/reference/system-tables/trace_log) system table
diff --git a/reference/system-tables/current_roles.mdx b/core/reference/system-tables/current_roles.mdx
similarity index 61%
rename from reference/system-tables/current_roles.mdx
rename to core/reference/system-tables/current_roles.mdx
index 520367dc..56ce8ed8 100644
--- a/reference/system-tables/current_roles.mdx
+++ b/core/reference/system-tables/current_roles.mdx
@@ -13,7 +13,7 @@ Contains active roles of a current user. `SET ROLE` changes the contents of this
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `role_name` ([String](/reference/data-types)) — Role name.
-- `with_admin_option` ([UInt8](/reference/data-types)) — 1 if the role has ADMIN OPTION privilege.
-- `is_default` ([UInt8](/reference/data-types)) — 1 if role is set to be a default.
+- `role_name` ([String](/core/reference/data-types)) — Role name.
+- `with_admin_option` ([UInt8](/core/reference/data-types)) — 1 if the role has ADMIN OPTION privilege.
+- `is_default` ([UInt8](/core/reference/data-types)) — 1 if role is set to be a default.
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/dashboards.mdx b/core/reference/system-tables/dashboards.mdx
similarity index 88%
rename from reference/system-tables/dashboards.mdx
rename to core/reference/system-tables/dashboards.mdx
index ac30a78c..d8f1acb3 100644
--- a/reference/system-tables/dashboards.mdx
+++ b/core/reference/system-tables/dashboards.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-Contains queries used by `/dashboard` page accessible though [HTTP interface](/integrations/connectors/data-integrations/drivers-and-interfaces/http).
+Contains queries used by `/dashboard` page accessible though [HTTP interface](/core/concepts/features/interfaces/http).
This table can be useful for monitoring and troubleshooting. The table contains a row for every chart in a dashboard.
@@ -20,9 +20,9 @@ This can be useful to create custom dashboards.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `dashboard` ([String](/reference/data-types)) — The dashboard name.
-- `title` ([String](/reference/data-types)) — The title of a chart.
-- `query` ([String](/reference/data-types)) — The query to obtain data to be displayed.
+- `dashboard` ([String](/core/reference/data-types)) — The dashboard name.
+- `title` ([String](/core/reference/data-types)) — The title of a chart.
+- `query` ([String](/core/reference/data-types)) — The query to obtain data to be displayed.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/data_skipping_indices.mdx b/core/reference/system-tables/data_skipping_indices.mdx
similarity index 56%
rename from reference/system-tables/data_skipping_indices.mdx
rename to core/reference/system-tables/data_skipping_indices.mdx
index a9aba8d8..ecf1fa03 100644
--- a/reference/system-tables/data_skipping_indices.mdx
+++ b/core/reference/system-tables/data_skipping_indices.mdx
@@ -14,17 +14,17 @@ Contains information about existing data skipping indices in all the tables.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `database` ([String](/reference/data-types)) — Database name.
-- `table` ([String](/reference/data-types)) — Table name.
-- `name` ([String](/reference/data-types)) — Index name.
-- `type` ([String](/reference/data-types)) — Index type.
-- `type_full` ([String](/reference/data-types)) — Index type expression from create statement.
-- `expr` ([String](/reference/data-types)) — Expression for the index calculation.
-- `creation` ([Enum8('Explicit' = 0, 'Implicit' = 1)](/reference/data-types)) — Whether the index was created implicitly (via add_minmax_index_for_numeric_columns or similar)
-- `granularity` ([UInt64](/reference/data-types)) — The number of granules in the block.
-- `data_compressed_bytes` ([UInt64](/reference/data-types)) — The size of compressed data, in bytes.
-- `data_uncompressed_bytes` ([UInt64](/reference/data-types)) — The size of decompressed data, in bytes.
-- `marks_bytes` ([UInt64](/reference/data-types)) — The size of marks, in bytes.
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `name` ([String](/core/reference/data-types)) — Index name.
+- `type` ([String](/core/reference/data-types)) — Index type.
+- `type_full` ([String](/core/reference/data-types)) — Index type expression from create statement.
+- `expr` ([String](/core/reference/data-types)) — Expression for the index calculation.
+- `creation` ([Enum8('Explicit' = 0, 'Implicit' = 1)](/core/reference/data-types)) — Whether the index was created implicitly (via add_minmax_index_for_numeric_columns or similar)
+- `granularity` ([UInt64](/core/reference/data-types)) — The number of granules in the block.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — The size of compressed data, in bytes.
+- `data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — The size of decompressed data, in bytes.
+- `marks_bytes` ([UInt64](/core/reference/data-types)) — The size of marks, in bytes.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/data_type_families.mdx b/core/reference/system-tables/data_type_families.mdx
similarity index 69%
rename from reference/system-tables/data_type_families.mdx
rename to core/reference/system-tables/data_type_families.mdx
index ba7b6dec..9a525f17 100644
--- a/reference/system-tables/data_type_families.mdx
+++ b/core/reference/system-tables/data_type_families.mdx
@@ -8,14 +8,14 @@ doc_type: 'reference'
## Description {#description}
-Contains information about supported [data types](/reference/data-types).
+Contains information about supported [data types](/core/reference/data-types).
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Data type name.
-- `case_insensitive` ([UInt8](/reference/data-types)) — Property that shows whether you can use a data type name in a query in case insensitive manner or not. For example, `Date` and `date` are both valid.
-- `alias_to` ([String](/reference/data-types)) — Data type name for which `name` is an alias.
+- `name` ([String](/core/reference/data-types)) — Data type name.
+- `case_insensitive` ([UInt8](/core/reference/data-types)) — Property that shows whether you can use a data type name in a query in case insensitive manner or not. For example, `Date` and `date` are both valid.
+- `alias_to` ([String](/core/reference/data-types)) — Data type name for which `name` is an alias.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -41,4 +41,4 @@ SELECT * FROM system.data_type_families WHERE alias_to = 'String'
## See also {#see-also}
-- [Syntax](/reference/syntax) — Information about supported syntax.
+- [Syntax](/core/reference/syntax) — Information about supported syntax.
diff --git a/reference/system-tables/database_engines.mdx b/core/reference/system-tables/database_engines.mdx
similarity index 89%
rename from reference/system-tables/database_engines.mdx
rename to core/reference/system-tables/database_engines.mdx
index 832f2b04..3312afa6 100644
--- a/reference/system-tables/database_engines.mdx
+++ b/core/reference/system-tables/database_engines.mdx
@@ -14,7 +14,7 @@ Contains the list of database engines supported by the server.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — The name of database engine.
+- `name` ([String](/core/reference/data-types)) — The name of database engine.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/database_replicas.mdx b/core/reference/system-tables/database_replicas.mdx
new file mode 100644
index 00000000..558f2f98
--- /dev/null
+++ b/core/reference/system-tables/database_replicas.mdx
@@ -0,0 +1,49 @@
+---
+description: 'System table containing information about and status of replicated database.'
+keywords: ['system table', 'database_replicas']
+slug: /operations/system-tables/database_replicas
+title: 'system.database_replicas'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information of each Replicated database replicas.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — The name of the Replicated database is in.
+- `is_readonly` ([UInt8](/core/reference/data-types)) — Whether the database replica is in read-only mode.
+- `max_log_ptr` ([Int32](/core/reference/data-types)) — Maximum entry number in the log of general activity.
+- `replica_name` ([String](/core/reference/data-types)) — Replica name in ClickHouse Keeper.
+- `replica_path` ([String](/core/reference/data-types)) — Path to replica data in ClickHouse Keeper.
+- `zookeeper_path` ([String](/core/reference/data-types)) — Path to database data in ClickHouse Keeper.
+- `shard_name` ([String](/core/reference/data-types)) — The name of the shard in the cluster.
+- `log_ptr` ([Int32](/core/reference/data-types)) — Maximum entry number in the log of general activity that the replica copied to its execution queue, plus one.
+- `total_replicas` ([UInt32](/core/reference/data-types)) — The total number of known replicas of this database.
+- `zookeeper_exception` ([String](/core/reference/data-types)) — The last exception message, got if the error happened when fetching the info from ClickHouse Keeper.
+- `is_session_expired` ([UInt8](/core/reference/data-types)) — The session with ClickHouse Keeper has expired. Basically the same as `is_readonly`.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.database_replicas FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+database: db_2
+is_readonly: 0
+max_log_ptr: 2
+replica_name: replica1
+replica_path: /test/db_2/replicas/shard1|replica1
+zookeeper_path: /test/db_2
+shard_name: shard1
+log_ptr: 2
+total_replicas: 1
+zookeeper_exception:
+is_session_expired: 0
+```
diff --git a/reference/system-tables/databases.mdx b/core/reference/system-tables/databases.mdx
similarity index 85%
rename from reference/system-tables/databases.mdx
rename to core/reference/system-tables/databases.mdx
index f46b418a..92ca04e5 100644
--- a/reference/system-tables/databases.mdx
+++ b/core/reference/system-tables/databases.mdx
@@ -14,14 +14,14 @@ Contains information about the databases that are available to the current user.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Database name.
-- `engine` ([String](/reference/data-types)) — Database engine.
-- `data_path` ([String](/reference/data-types)) — Data path.
-- `metadata_path` ([String](/reference/data-types)) — Metadata path.
-- `uuid` ([UUID](/reference/data-types)) — Database UUID.
-- `engine_full` ([String](/reference/data-types)) — Parameters of the database engine.
-- `comment` ([String](/reference/data-types)) — Database comment.
-- `is_external` ([UInt8](/reference/data-types)) — Database is external (i.e. PostgreSQL/DataLakeCatalog).
+- `name` ([String](/core/reference/data-types)) — Database name.
+- `engine` ([String](/core/reference/data-types)) — Database engine.
+- `data_path` ([String](/core/reference/data-types)) — Data path.
+- `metadata_path` ([String](/core/reference/data-types)) — Metadata path.
+- `uuid` ([UUID](/core/reference/data-types)) — Database UUID.
+- `engine_full` ([String](/core/reference/data-types)) — Parameters of the database engine.
+- `comment` ([String](/core/reference/data-types)) — Database comment.
+- `is_external` ([UInt8](/core/reference/data-types)) — Database is external (i.e. PostgreSQL/DataLakeCatalog).
{/*AUTOGENERATED_END*/}
The `name` column from this system table is used for implementing the `SHOW DATABASES` query.
diff --git a/reference/system-tables/dead_letter_queue.mdx b/core/reference/system-tables/dead_letter_queue.mdx
similarity index 58%
rename from reference/system-tables/dead_letter_queue.mdx
rename to core/reference/system-tables/dead_letter_queue.mdx
index 7403e8b2..1130d74c 100644
--- a/reference/system-tables/dead_letter_queue.mdx
+++ b/core/reference/system-tables/dead_letter_queue.mdx
@@ -13,31 +13,31 @@ Contains information about messages received via a streaming engine and parsed w
Logging is enabled by specifying `dead_letter_queue` for the engine specific `handle_error_mode` setting.
-The flushing period of data is set in `flush_interval_milliseconds` parameter of the [dead_letter_queue](/reference/settings/server-settings/settings#dead_letter_queue) server settings section. To force flushing, use the [SYSTEM FLUSH LOGS](/reference/statements/system#flush-logs) query.
+The flushing period of data is set in `flush_interval_milliseconds` parameter of the [dead_letter_queue](/core/reference/settings/server-settings/settings#dead_letter_queue) server settings section. To force flushing, use the [SYSTEM FLUSH LOGS](/core/reference/statements/system#flush-logs) query.
-ClickHouse does not delete data from the table automatically. See [Introduction](/reference/system-tables/overview#system-tables-introduction) for more details.
+ClickHouse does not delete data from the table automatically. See [Introduction](/core/reference/system-tables/overview#system-tables-introduction) for more details.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `table_engine` ([Enum8('Kafka' = 1, 'RabbitMQ' = 2)](/reference/data-types/enum)) — Stream type. Possible values: 'Kafka', 'RabbitMQ'.
-- `event_date` ([Date](/reference/data-types/date)) — Message consuming date.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Message consuming date and time.
-- `event_time_microseconds` ([DateTime64(6)](/reference/data-types/datetime64)) — Query starting time with microseconds precision.
-- `database` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — ClickHouse database Kafka table belongs to.
-- `table` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — ClickHouse table name.
-- `error` ([String](/reference/data-types/string)) — Error text.
-- `raw_message` ([String](/reference/data-types/string)) — Message body.
-- `kafka_topic_name` ([String](/reference/data-types/string)) — Kafka topic name.
-- `kafka_partition` ([UInt64](/reference/data-types/int-uint)) — Kafka partition of the topic.
-- `kafka_offset` ([UInt64](/reference/data-types/int-uint)) — Kafka offset of the message.
-- `kafka_key` ([String](/reference/data-types/string)) — Kafka key of the message.
-- `rabbitmq_exchange_name` ([String](/reference/data-types/string)) — RabbitMQ exchange name.
-- `rabbitmq_message_id` ([String](/reference/data-types/string)) — RabbitMQ message id.
-- `rabbitmq_message_timestamp` ([DateTime](/reference/data-types/datetime)) — RabbitMQ message timestamp.
-- `rabbitmq_message_redelivered` ([UInt8](/reference/data-types/int-uint)) — RabbitMQ redelivered flag.
-- `rabbitmq_message_delivery_tag` ([UInt64](/reference/data-types/int-uint)) — RabbitMQ delivery tag.
-- `rabbitmq_channel_id` ([String](/reference/data-types/string)) — RabbitMQ channel id.
+- `table_engine` ([Enum8('Kafka' = 1, 'RabbitMQ' = 2)](/core/reference/data-types/enum)) — Stream type. Possible values: 'Kafka', 'RabbitMQ'.
+- `event_date` ([Date](/core/reference/data-types/date)) — Message consuming date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Message consuming date and time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Query starting time with microseconds precision.
+- `database` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — ClickHouse database Kafka table belongs to.
+- `table` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — ClickHouse table name.
+- `error` ([String](/core/reference/data-types/string)) — Error text.
+- `raw_message` ([String](/core/reference/data-types/string)) — Message body.
+- `kafka_topic_name` ([String](/core/reference/data-types/string)) — Kafka topic name.
+- `kafka_partition` ([UInt64](/core/reference/data-types/int-uint)) — Kafka partition of the topic.
+- `kafka_offset` ([UInt64](/core/reference/data-types/int-uint)) — Kafka offset of the message.
+- `kafka_key` ([String](/core/reference/data-types/string)) — Kafka key of the message.
+- `rabbitmq_exchange_name` ([String](/core/reference/data-types/string)) — RabbitMQ exchange name.
+- `rabbitmq_message_id` ([String](/core/reference/data-types/string)) — RabbitMQ message id.
+- `rabbitmq_message_timestamp` ([DateTime](/core/reference/data-types/datetime)) — RabbitMQ message timestamp.
+- `rabbitmq_message_redelivered` ([UInt8](/core/reference/data-types/int-uint)) — RabbitMQ redelivered flag.
+- `rabbitmq_message_delivery_tag` ([UInt64](/core/reference/data-types/int-uint)) — RabbitMQ delivery tag.
+- `rabbitmq_channel_id` ([String](/core/reference/data-types/string)) — RabbitMQ channel id.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -124,5 +124,5 @@ rabbitmq_channel_id:
## See also {#see-also}
-- [Kafka](/reference/engines/table-engines/integrations/kafka) - Kafka Engine
-- [system.kafka_consumers](/reference/system-tables/kafka_consumers) — Description of the `kafka_consumers` system table which contains information like statistics and errors about Kafka consumers.
+- [Kafka](/core/reference/engines/table-engines/integrations/kafka) - Kafka Engine
+- [system.kafka_consumers](/core/reference/system-tables/kafka_consumers) — Description of the `kafka_consumers` system table which contains information like statistics and errors about Kafka consumers.
diff --git a/reference/system-tables/delta_metadata_log.mdx b/core/reference/system-tables/delta_metadata_log.mdx
similarity index 67%
rename from reference/system-tables/delta_metadata_log.mdx
rename to core/reference/system-tables/delta_metadata_log.mdx
index 50e8e170..4c38ed09 100644
--- a/reference/system-tables/delta_metadata_log.mdx
+++ b/core/reference/system-tables/delta_metadata_log.mdx
@@ -23,7 +23,7 @@ This table is primarily intended for debugging purposes.
### Controlling log verbosity {#controlling-log-verbosity}
-You can control which metadata events are logged using the [`delta_lake_log_metadata`](/reference/settings/session-settings#delta_lake_log_metadata) setting.
+You can control which metadata events are logged using the [`delta_lake_log_metadata`](/core/reference/settings/session-settings#delta_lake_log_metadata) setting.
To log all metadata used in the current query:
@@ -40,11 +40,11 @@ WHERE query_id = '{previous_query_id}';
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
-- `event_date` ([Date](/reference/data-types/date)) — Date of the entry.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Event time.
-- `query_id` ([String](/reference/data-types/string)) — Query id.
-- `table_path` ([String](/reference/data-types/string)) — Table path.
-- `file_path` ([String](/reference/data-types/string)) — File path.
-- `content` ([String](/reference/data-types/string)) — Content in a JSON format.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of the entry.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `query_id` ([String](/core/reference/data-types/string)) — Query id.
+- `table_path` ([String](/core/reference/data-types/string)) — Table path.
+- `file_path` ([String](/core/reference/data-types/string)) — File path.
+- `content` ([String](/core/reference/data-types/string)) — Content in a JSON format.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/detached_parts.mdx b/core/reference/system-tables/detached_parts.mdx
new file mode 100644
index 00000000..dbe877f7
--- /dev/null
+++ b/core/reference/system-tables/detached_parts.mdx
@@ -0,0 +1,35 @@
+---
+description: 'System table containing information about detached parts of MergeTree
+ tables'
+keywords: ['system table', 'detached_parts']
+slug: /operations/system-tables/detached_parts
+title: 'system.detached_parts'
+doc_type: 'reference'
+---
+
+## Description {#purpose}
+
+Contains information about detached parts of [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables. The `reason` column specifies why the part was detached.
+
+For user-detached parts, the reason is empty. Such parts can be attached with [ALTER TABLE ATTACH PARTITION\|PART](/core/reference/statements/alter/partition#attach-partitionpart) command.
+
+For the description of other columns, see [system.parts](/core/reference/system-tables/parts).
+
+If part name is invalid, values of some columns may be `NULL`. Such parts can be deleted with [ALTER TABLE DROP DETACHED PART](/core/reference/statements/alter/partition#drop-detached-partitionpart).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — The name of the database this part belongs to.
+- `table` ([String](/core/reference/data-types)) — The name of the table this part belongs to.
+- `partition_id` ([Nullable(String)](/core/reference/data-types)) — The identifier of the partition this part belongs to.
+- `name` ([String](/core/reference/data-types)) — The name of the part.
+- `bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the data part files in bytes.
+- `modification_time` ([DateTime](/core/reference/data-types)) — The time the directory with the data part was modified. This usually corresponds to the time when detach happened.
+- `disk` ([String](/core/reference/data-types)) — The name of the disk that stores this data part.
+- `path` ([String](/core/reference/data-types)) — The path of the disk to the file of this data part.
+- `reason` ([Nullable(String)](/core/reference/data-types)) — The explanation why this part was detached.
+- `min_block_number` ([Nullable(Int64)](/core/reference/data-types)) — The minimum number of data parts that make up the current part after merging.
+- `max_block_number` ([Nullable(Int64)](/core/reference/data-types)) — The maximum number of data parts that make up the current part after merging.
+- `level` ([Nullable(UInt32)](/core/reference/data-types)) — Depth of the merge tree. Zero means that the current part was created by insert rather than by merging other parts.
+{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/detached_tables.mdx b/core/reference/system-tables/detached_tables.mdx
similarity index 63%
rename from reference/system-tables/detached_tables.mdx
rename to core/reference/system-tables/detached_tables.mdx
index ea4b66d8..bc5fea3f 100644
--- a/reference/system-tables/detached_tables.mdx
+++ b/core/reference/system-tables/detached_tables.mdx
@@ -13,11 +13,11 @@ Contains information about each detached table.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `database` ([String](/reference/data-types)) — The name of the database the table is in.
-- `table` ([String](/reference/data-types)) — Table name.
-- `uuid` ([UUID](/reference/data-types)) — Table uuid (Atomic database).
-- `metadata_path` ([String](/reference/data-types)) — Path to the table metadata in the file system.
-- `is_permanently` ([UInt8](/reference/data-types)) — Table was detached permanently.
+- `database` ([String](/core/reference/data-types)) — The name of the database the table is in.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `uuid` ([UUID](/core/reference/data-types)) — Table uuid (Atomic database).
+- `metadata_path` ([String](/core/reference/data-types)) — Path to the table metadata in the file system.
+- `is_permanently` ([UInt8](/core/reference/data-types)) — Table was detached permanently.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/dictionaries.mdx b/core/reference/system-tables/dictionaries.mdx
new file mode 100644
index 00000000..ee9eca9e
--- /dev/null
+++ b/core/reference/system-tables/dictionaries.mdx
@@ -0,0 +1,107 @@
+---
+description: 'System table containing information about dictionaries'
+keywords: ['system table', 'dictionaries']
+slug: /operations/system-tables/dictionaries
+title: 'system.dictionaries'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about [dictionaries](/core/reference/statements/create/dictionary).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Name of the database containing the dictionary created by DDL query. Empty string for other dictionaries.
+- `name` ([String](/core/reference/data-types)) — Dictionary name.
+- `uuid` ([UUID](/core/reference/data-types)) — Dictionary UUID.
+- `status` ([Enum8('NOT_LOADED' = 0, 'LOADED' = 1, 'FAILED' = 2, 'LOADING' = 3, 'FAILED_AND_RELOADING' = 4, 'LOADED_AND_RELOADING' = 5, 'NOT_EXIST' = 6)](/core/reference/data-types)) — Dictionary status.Possible values:
+ - **NOT_LOADED** — Dictionary was not loaded because it was not used
+ - **LOADED** — Dictionary loaded successfully
+ - **FAILED** — Unable to load the dictionary as a result of an error
+ - **LOADING** — Dictionary is loading now
+ - **LOADED_AND_RELOADING** — Dictionary is loaded successfully
+ - **and is being reloaded right now (frequent reasons: SYSTEM RELOAD DICTIONARY query** —
+ - **timeout** —
+ - **dictionary config has changed)** —
+ - **FAILED_AND_RELOADING** — Could not load the dictionary as a result of an error and is loading now.
+- `origin` ([String](/core/reference/data-types)) — Path to the configuration file that describes the dictionary.
+- `type` ([String](/core/reference/data-types)) — Type of a dictionary allocation. Storing Dictionaries in Memory.
+- `key.names` ([Array(String)](/core/reference/data-types)) — Array of key names provided by the dictionary.
+- `key.types` ([Array(String)](/core/reference/data-types)) — Corresponding array of key types provided by the dictionary.
+- `attribute.names` ([Array(String)](/core/reference/data-types)) — Array of attribute names provided by the dictionary.
+- `attribute.types` ([Array(String)](/core/reference/data-types)) — Corresponding array of attribute types provided by the dictionary.
+- `bytes_allocated` ([UInt64](/core/reference/data-types)) — Amount of RAM allocated for the dictionary.
+- `hierarchical_index_bytes_allocated` ([UInt64](/core/reference/data-types)) — Amount of RAM allocated for hierarchical index.
+- `query_count` ([UInt64](/core/reference/data-types)) — Number of queries since the dictionary was loaded or since the last successful reboot.
+- `hit_rate` ([Float64](/core/reference/data-types)) — For cache dictionaries, the percentage of uses for which the value was in the cache.
+- `found_rate` ([Float64](/core/reference/data-types)) — The percentage of uses for which the value was found.
+- `element_count` ([UInt64](/core/reference/data-types)) — Number of items stored in the dictionary.
+- `load_factor` ([Float64](/core/reference/data-types)) — Percentage filled in the dictionary (for a hashed dictionary, the percentage filled in the hash table).
+- `source` ([String](/core/reference/data-types)) — Text describing the data source for the dictionary.
+- `lifetime_min` ([UInt64](/core/reference/data-types)) — Minimum lifetime of the dictionary in memory, after which ClickHouse tries to reload the dictionary (if invalidate_query is set, then only if it has changed). Set in seconds.
+- `lifetime_max` ([UInt64](/core/reference/data-types)) — Maximum lifetime of the dictionary in memory, after which ClickHouse tries to reload the dictionary (if invalidate_query is set, then only if it has changed). Set in seconds.
+- `loading_start_time` ([DateTime](/core/reference/data-types)) — Start time for loading the dictionary.
+- `last_successful_update_time` ([DateTime](/core/reference/data-types)) — End time for loading or updating the dictionary. Helps to monitor some troubles with dictionary sources and investigate the causes.
+- `error_count` ([UInt64](/core/reference/data-types)) — Number of errors since last successful loading. Helps to monitor some troubles with dictionary sources and investigate the causes.
+- `loading_duration` ([Float32](/core/reference/data-types)) — Duration of a dictionary loading.
+- `last_exception` ([String](/core/reference/data-types)) — Text of the error that occurs when creating or reloading the dictionary if the dictionary couldn't be created.
+- `comment` ([String](/core/reference/data-types)) — Text of the comment to dictionary.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+Configure the dictionary:
+
+```sql
+CREATE DICTIONARY dictionary_with_comment
+(
+ id UInt64,
+ value String
+)
+PRIMARY KEY id
+SOURCE(CLICKHOUSE(HOST 'localhost' PORT tcpPort() TABLE 'source_table'))
+LAYOUT(FLAT())
+LIFETIME(MIN 0 MAX 1000)
+COMMENT 'The temporary dictionary';
+```
+
+Make sure that the dictionary is loaded.
+
+```sql
+SELECT * FROM system.dictionaries LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+database: default
+name: dictionary_with_comment
+uuid: 4654d460-0d03-433a-8654-d4600d03d33a
+status: NOT_LOADED
+origin: 4654d460-0d03-433a-8654-d4600d03d33a
+type:
+key.names: ['id']
+key.types: ['UInt64']
+attribute.names: ['value']
+attribute.types: ['String']
+bytes_allocated: 0
+query_count: 0
+hit_rate: 0
+found_rate: 0
+element_count: 0
+load_factor: 0
+source:
+lifetime_min: 0
+lifetime_max: 0
+loading_start_time: 1970-01-01 00:00:00
+last_successful_update_time: 1970-01-01 00:00:00
+loading_duration: 0
+last_exception:
+comment: The temporary dictionary
+```
diff --git a/reference/system-tables/dimensional_metrics.mdx b/core/reference/system-tables/dimensional_metrics.mdx
similarity index 63%
rename from reference/system-tables/dimensional_metrics.mdx
rename to core/reference/system-tables/dimensional_metrics.mdx
index 24bda929..0073adab 100644
--- a/reference/system-tables/dimensional_metrics.mdx
+++ b/core/reference/system-tables/dimensional_metrics.mdx
@@ -18,10 +18,10 @@ This table contains dimensional metrics that can be calculated instantly and exp
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `metric` ([String](/reference/data-types)) — Metric name.
-- `value` ([Float64](/reference/data-types)) — Metric value.
-- `description` ([String](/reference/data-types)) — Metric description.
-- `labels` ([Map(String, String)](/reference/data-types)) — Metric labels.
+- `metric` ([String](/core/reference/data-types)) — Metric name.
+- `value` ([Float64](/core/reference/data-types)) — Metric value.
+- `description` ([String](/core/reference/data-types)) — Metric description.
+- `labels` ([Map(String, String)](/core/reference/data-types)) — Metric labels.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -51,7 +51,7 @@ Number of merge tree data parts, labelled by part state, part type, and whether
## See also {#see-also}
-- [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) — Contains periodically calculated metrics.
-- [system.events](/reference/system-tables/events) — Contains a number of events that occurred.
-- [system.metric_log](/reference/system-tables/metric_log) — Contains a history of metrics values from tables `system.metrics` and `system.events`.
-- [Monitoring](/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
+- [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) — Contains periodically calculated metrics.
+- [system.events](/core/reference/system-tables/events) — Contains a number of events that occurred.
+- [system.metric_log](/core/reference/system-tables/metric_log) — Contains a history of metrics values from tables `system.metrics` and `system.events`.
+- [Monitoring](/core/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
diff --git a/core/reference/system-tables/disks.mdx b/core/reference/system-tables/disks.mdx
new file mode 100644
index 00000000..380de8ca
--- /dev/null
+++ b/core/reference/system-tables/disks.mdx
@@ -0,0 +1,50 @@
+---
+description: 'System table containing information about disks defined in the server
+ configuration'
+keywords: ['system table', 'disks']
+slug: /operations/system-tables/disks
+title: 'system.disks'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about disks defined in the [server configuration](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes_configure).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — Name of a disk in the server configuration.
+- `path` ([String](/core/reference/data-types)) — Path to the mount point in the file system.
+- `free_space` ([UInt64](/core/reference/data-types)) — Free space on disk in bytes.
+- `total_space` ([UInt64](/core/reference/data-types)) — Disk volume in bytes.
+- `unreserved_space` ([UInt64](/core/reference/data-types)) — Free space which is not taken by reservations (free_space minus the size of reservations taken by merges, inserts, and other disk write operations currently running).
+- `keep_free_space` ([UInt64](/core/reference/data-types)) — Amount of disk space that should stay free on disk in bytes. Defined in the keep_free_space_bytes parameter of disk configuration.
+- `type` ([String](/core/reference/data-types)) — The disk type which tells where this disk stores the data - RAM, local drive or remote storage.
+- `object_storage_type` ([String](/core/reference/data-types)) — Type of object storage if disk type is object_storage
+- `metadata_type` ([String](/core/reference/data-types)) — Type of metadata storage if disk type is object_storage
+- `is_encrypted` ([UInt8](/core/reference/data-types)) — Flag which shows whether this disk encrypts the underlying data.
+- `is_read_only` ([UInt8](/core/reference/data-types)) — Flag which indicates that you can only perform read operations with this disk.
+- `is_write_once` ([UInt8](/core/reference/data-types)) — Flag which indicates if disk is write-once. Which means that it does support BACKUP to this disk, but does not support INSERT into MergeTree table on this disk.
+- `is_remote` ([UInt8](/core/reference/data-types)) — Flag which indicated what operations with this disk involve network interaction.
+- `is_broken` ([UInt8](/core/reference/data-types)) — Flag which indicates if disk is broken. Broken disks will have 0 space and cannot be used.
+- `cache_path` ([String](/core/reference/data-types)) — The path to the cache directory on local drive in case when the disk supports caching.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.disks;
+```
+
+```response
+┌─name────┬─path─────────────────┬───free_space─┬──total_space─┬─keep_free_space─┐
+│ default │ /var/lib/clickhouse/ │ 276392587264 │ 490652508160 │ 0 │
+└─────────┴──────────────────────┴──────────────┴──────────────┴─────────────────┘
+
+1 rows in set. Elapsed: 0.001 sec.
+```
diff --git a/reference/system-tables/distributed_ddl_queue.mdx b/core/reference/system-tables/distributed_ddl_queue.mdx
similarity index 58%
rename from reference/system-tables/distributed_ddl_queue.mdx
rename to core/reference/system-tables/distributed_ddl_queue.mdx
index 352e614a..aee04a73 100644
--- a/reference/system-tables/distributed_ddl_queue.mdx
+++ b/core/reference/system-tables/distributed_ddl_queue.mdx
@@ -9,26 +9,26 @@ doc_type: 'reference'
## Description {#description}
-Contains information about [distributed ddl queries (ON CLUSTER clause)](/reference/statements/distributed-ddl) that were executed on a cluster.
+Contains information about [distributed ddl queries (ON CLUSTER clause)](/core/reference/statements/distributed-ddl) that were executed on a cluster.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `entry` ([String](/reference/data-types)) — Query id.
-- `entry_version` ([Nullable(UInt8)](/reference/data-types)) — Version of the entry.
-- `initiator_host` ([Nullable(String)](/reference/data-types)) — Host that initiated the DDL operation.
-- `initiator_port` ([Nullable(UInt16)](/reference/data-types)) — Port used by the initiator.
-- `cluster` ([String](/reference/data-types)) — Cluster name, empty if not determined.
-- `query` ([String](/reference/data-types)) — Query executed.
-- `settings` ([Map(String, String)](/reference/data-types)) — Settings used in the DDL operation.
-- `query_create_time` ([DateTime](/reference/data-types)) — Query created time.
-- `host` ([Nullable(String)](/reference/data-types)) — Hostname.
-- `port` ([Nullable(UInt16)](/reference/data-types)) — Host Port.
-- `status` ([Nullable(Enum8('Inactive' = 0, 'Active' = 1, 'Finished' = 2, 'Removing' = 3, 'Unknown' = 4))](/reference/data-types)) — Status of the query.
-- `exception_code` ([Nullable(UInt16)](/reference/data-types)) — Exception code.
-- `exception_text` ([Nullable(String)](/reference/data-types)) — Exception message.
-- `query_finish_time` ([Nullable(DateTime)](/reference/data-types)) — Query finish time.
-- `query_duration_ms` ([Nullable(UInt64)](/reference/data-types)) — Duration of query execution (in milliseconds).
+- `entry` ([String](/core/reference/data-types)) — Query id.
+- `entry_version` ([Nullable(UInt8)](/core/reference/data-types)) — Version of the entry.
+- `initiator_host` ([Nullable(String)](/core/reference/data-types)) — Host that initiated the DDL operation.
+- `initiator_port` ([Nullable(UInt16)](/core/reference/data-types)) — Port used by the initiator.
+- `cluster` ([String](/core/reference/data-types)) — Cluster name, empty if not determined.
+- `query` ([String](/core/reference/data-types)) — Query executed.
+- `settings` ([Map(String, String)](/core/reference/data-types)) — Settings used in the DDL operation.
+- `query_create_time` ([DateTime](/core/reference/data-types)) — Query created time.
+- `host` ([Nullable(String)](/core/reference/data-types)) — Hostname.
+- `port` ([Nullable(UInt16)](/core/reference/data-types)) — Host Port.
+- `status` ([Nullable(Enum8('Inactive' = 0, 'Active' = 1, 'Finished' = 2, 'Removing' = 3, 'Unknown' = 4))](/core/reference/data-types)) — Status of the query.
+- `exception_code` ([Nullable(UInt16)](/core/reference/data-types)) — Exception code.
+- `exception_text` ([Nullable(String)](/core/reference/data-types)) — Exception message.
+- `query_finish_time` ([Nullable(DateTime)](/core/reference/data-types)) — Query finish time.
+- `query_duration_ms` ([Nullable(UInt64)](/core/reference/data-types)) — Duration of query execution (in milliseconds).
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/distribution_queue.mdx b/core/reference/system-tables/distribution_queue.mdx
new file mode 100644
index 00000000..fd236e33
--- /dev/null
+++ b/core/reference/system-tables/distribution_queue.mdx
@@ -0,0 +1,51 @@
+---
+description: 'System table containing information about local files that are in the
+ queue to be sent to the shards.'
+keywords: ['system table', 'distribution_queue']
+slug: /operations/system-tables/distribution_queue
+title: 'system.distribution_queue'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about local files that are in the queue to be sent to the shards. These local files contain new parts that are created by inserting new data into the Distributed table in asynchronous mode.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `data_path` ([String](/core/reference/data-types)) — Path to the folder with local files.
+- `is_blocked` ([UInt8](/core/reference/data-types)) — Flag indicates whether sending local files to the server is blocked.
+- `error_count` ([UInt64](/core/reference/data-types)) — Number of errors.
+- `data_files` ([UInt64](/core/reference/data-types)) — Number of local files in a folder.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Size of compressed data in local files, in bytes.
+- `broken_data_files` ([UInt64](/core/reference/data-types)) — Number of files that has been marked as broken (due to an error).
+- `broken_data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Size of compressed data in broken files, in bytes.
+- `last_exception` ([String](/core/reference/data-types)) — Text message about the last error that occurred (if any).
+- `last_exception_time` ([DateTime](/core/reference/data-types)) — Time when last exception occurred.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.distribution_queue LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+database: default
+table: dist
+data_path: ./store/268/268bc070-3aad-4b1a-9cf2-4987580161af/default@127%2E0%2E0%2E2:9000/
+is_blocked: 1
+error_count: 0
+data_files: 1
+data_compressed_bytes: 499
+last_exception:
+```
+
+## See also {#see-also}
+
+- [Distributed table engine](/core/reference/engines/table-engines/special/distributed)
diff --git a/reference/system-tables/dns_cache.mdx b/core/reference/system-tables/dns_cache.mdx
similarity index 52%
rename from reference/system-tables/dns_cache.mdx
rename to core/reference/system-tables/dns_cache.mdx
index 7ae5aff0..90943373 100644
--- a/reference/system-tables/dns_cache.mdx
+++ b/core/reference/system-tables/dns_cache.mdx
@@ -17,10 +17,10 @@ Contains information about cached DNS records.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([String](/reference/data-types)) — Hostname.
-- `ip_address` ([String](/reference/data-types)) — IP address.
-- `ip_family` ([Enum8('IPv4' = 0, 'IPv6' = 1, 'UNIX_LOCAL' = 2)](/reference/data-types)) — IP address family.
-- `cached_at` ([DateTime](/reference/data-types)) — Record cached timestamp.
+- `hostname` ([String](/core/reference/data-types)) — Hostname.
+- `ip_address` ([String](/core/reference/data-types)) — IP address.
+- `ip_family` ([Enum8('IPv4' = 0, 'IPv6' = 1, 'UNIX_LOCAL' = 2)](/core/reference/data-types)) — IP address family.
+- `cached_at` ([DateTime](/core/reference/data-types)) — Record cached timestamp.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -36,7 +36,7 @@ SELECT * FROM system.dns_cache;
## See also {#see-also}
-- [disable_internal_dns_cache setting](/reference/settings/server-settings/settings#disable_internal_dns_cache)
-- [dns_cache_max_entries setting](/reference/settings/server-settings/settings#dns_cache_max_entries)
-- [dns_cache_update_period setting](/reference/settings/server-settings/settings#dns_cache_update_period)
-- [dns_max_consecutive_failures setting](/reference/settings/server-settings/settings#dns_max_consecutive_failures)
+- [disable_internal_dns_cache setting](/core/reference/settings/server-settings/settings#disable_internal_dns_cache)
+- [dns_cache_max_entries setting](/core/reference/settings/server-settings/settings#dns_cache_max_entries)
+- [dns_cache_update_period setting](/core/reference/settings/server-settings/settings#dns_cache_update_period)
+- [dns_max_consecutive_failures setting](/core/reference/settings/server-settings/settings#dns_max_consecutive_failures)
diff --git a/reference/system-tables/dropped_tables.mdx b/core/reference/system-tables/dropped_tables.mdx
similarity index 59%
rename from reference/system-tables/dropped_tables.mdx
rename to core/reference/system-tables/dropped_tables.mdx
index 3dbba0b4..21d0be23 100644
--- a/reference/system-tables/dropped_tables.mdx
+++ b/core/reference/system-tables/dropped_tables.mdx
@@ -14,13 +14,13 @@ Contains information about tables that drop table has been executed on but for w
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `index` ([UInt32](/reference/data-types)) — Index in marked_dropped_tables queue.
-- `database` ([String](/reference/data-types)) — Database name.
-- `table` ([String](/reference/data-types)) — Table name.
-- `uuid` ([UUID](/reference/data-types)) — Table UUID.
-- `engine` ([String](/reference/data-types)) — Table engine name.
-- `metadata_dropped_path` ([String](/reference/data-types)) — Path of table's metadata file in metadata_dropped directory.
-- `table_dropped_time` ([DateTime](/reference/data-types)) — The time when the next attempt to remove table's data is scheduled on. Usually it's the table when the table was dropped plus `database_atomic_delay_before_drop_table_sec`.
+- `index` ([UInt32](/core/reference/data-types)) — Index in marked_dropped_tables queue.
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `uuid` ([UUID](/core/reference/data-types)) — Table UUID.
+- `engine` ([String](/core/reference/data-types)) — Table engine name.
+- `metadata_dropped_path` ([String](/core/reference/data-types)) — Path of table's metadata file in metadata_dropped directory.
+- `table_dropped_time` ([DateTime](/core/reference/data-types)) — The time when the next attempt to remove table's data is scheduled on. Usually it's the table when the table was dropped plus `database_atomic_delay_before_drop_table_sec`.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/dropped_tables_parts.mdx b/core/reference/system-tables/dropped_tables_parts.mdx
new file mode 100644
index 00000000..06a688b5
--- /dev/null
+++ b/core/reference/system-tables/dropped_tables_parts.mdx
@@ -0,0 +1,104 @@
+---
+description: 'System table containing information about parts of MergeTree dropped
+ tables from `system.dropped_tables`'
+keywords: ['system table', 'dropped_tables_parts']
+slug: /operations/system-tables/dropped_tables_parts
+title: 'system.dropped_tables_parts'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about parts of [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) dropped tables from [system.dropped_tables](/core/reference/system-tables/dropped_tables)
+
+The schema of this table is the same as [system.parts](/core/reference/system-tables/parts)
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `partition` ([String](/core/reference/data-types)) — Partition identifier (string representation derived from the table partition key expression).
+- `name` ([String](/core/reference/data-types)) —
+Name of the data part. The part naming structure can be used to determine many aspects of the data, ingest, and merge patterns. The part naming format is the following:
+
+```text
+____
+```
+
+* Definitions:
+ - `partition_id` - identifies the partition key
+ - `minimum_block_number` - identifies the minimum block number in the part. ClickHouse always merges continuous blocks
+ - `maximum_block_number` - identifies the maximum block number in the part
+ - `level` - incremented by one with each additional merge on the part. A level of 0 indicates this is a new part that has not been merged. It is important to remember that all parts in ClickHouse are always immutable
+ - `data_version` - optional value, incremented when a part is mutated (again, mutated data is always only written to a new part, since parts are immutable)
+
+- `uuid` ([UUID](/core/reference/data-types)) — The UUID of data part.
+- `part_type` ([String](/core/reference/data-types)) — The data part storing format. Possible values: `Wide` — each column is stored in a separate file, `Compact` — all columns are stored in one file. Data storing format is controlled by the `min_bytes_for_wide_part` and `min_rows_for_wide_part` settings of the MergeTree table.
+- `active` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the data part is active. If a data part is active, it's used in a table. Otherwise, it's about to be deleted. Inactive data parts appear after merging and mutating operations.
+- `marks` ([UInt64](/core/reference/data-types)) — The number of marks. To get the approximate number of rows in a data part, multiply marks by the index granularity (usually 8192) (this hint does not work for adaptive granularity).
+- `rows` ([UInt64](/core/reference/data-types)) — The number of rows.
+- `files` ([UInt64](/core/reference/data-types)) — The number of files in the data part.
+- `bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the data part files in bytes.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `primary_key_size` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by primary key values in the primary.idx/cidx file on disk.
+- `marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks.
+- `secondary_indices_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data for secondary indices in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `secondary_indices_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data for secondary indices in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `secondary_indices_marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks for secondary indices.
+- `modification_time` ([DateTime](/core/reference/data-types)) — The time the directory with the data part was modified. This usually corresponds to the time of data part creation.
+- `remove_time` ([DateTime](/core/reference/data-types)) — The time when the data part became inactive.
+- `refcount` ([UInt32](/core/reference/data-types)) — The number of places where the data part is used. A value greater than 2 indicates that the data part is used in queries or merges.
+- `min_date` ([Date](/core/reference/data-types)) — The minimum value of the date key in the data part.
+- `max_date` ([Date](/core/reference/data-types)) — The maximum value of the date key in the data part.
+- `min_time` ([DateTime](/core/reference/data-types)) — The minimum value of the date and time key in the data part.
+- `max_time` ([DateTime](/core/reference/data-types)) — The maximum value of the date and time key in the data part.
+- `partition_id` ([String](/core/reference/data-types)) — ID of the partition.
+- `min_block_number` ([Int64](/core/reference/data-types)) — The minimum number of data parts that make up the current part after merging.
+- `max_block_number` ([Int64](/core/reference/data-types)) — The maximum number of data parts that make up the current part after merging.
+- `level` ([UInt32](/core/reference/data-types)) — Depth of the merge tree. Zero means that the current part was created by insert rather than by merging other parts.
+- `data_version` ([UInt64](/core/reference/data-types)) — Number that is used to determine which mutations should be applied to the data part (mutations with a version higher than data_version).
+- `primary_key_bytes_in_memory` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by primary key values. Will be 0 when `primary_key_lazy_load` is enabled and the key is not loaded. When non-zero the bytes live in the part itself and are accounted within `jemalloc.mergetree_arena.active_bytes`. They are NEVER counted in `PrimaryIndexCacheBytes` — those are mutually exclusive per part: an index lives either in the part (this metric) or in the shared `PrimaryIndexCache` (the other), depending on `primary_key_lazy_load` and `use_primary_key_cache`.
+- `primary_key_bytes_in_memory_allocated` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) reserved for primary key values. Will be 0 when `primary_key_lazy_load` is enabled and the key is not loaded. When non-zero, included in `jemalloc.mergetree_arena.active_bytes`. See the note on `primary_key_bytes_in_memory` for the relationship with `PrimaryIndexCacheBytes`.
+- `index_granularity_bytes_in_memory` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by index granularity values (will be 0 in case of primary_key_lazy_load=1 and use_primary_key_cache=1). When non-zero the bytes are part-owned and accounted within `jemalloc.mergetree_arena.active_bytes`.
+- `index_granularity_bytes_in_memory_allocated` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) reserved for index granularity values (will be 0 in case of primary_key_lazy_load=1 and use_primary_key_cache=1). When non-zero, included in `jemalloc.mergetree_arena.active_bytes`.
+- `is_frozen` ([UInt8](/core/reference/data-types)) — Flag that shows that a partition data backup exists. 1, the backup exists. 0, the backup does not exist. For more details, see FREEZE PARTITION.
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `engine` ([String](/core/reference/data-types)) — Name of the table engine without parameters.
+- `disk_name` ([String](/core/reference/data-types)) — Name of a disk that stores the data part.
+- `path` ([String](/core/reference/data-types)) — Absolute path to the folder with data part files.
+- `hash_of_all_files` ([String](/core/reference/data-types)) — sipHash128 of compressed files.
+- `hash_of_uncompressed_files` ([String](/core/reference/data-types)) — sipHash128 of uncompressed files (files with marks, index file etc.).
+- `uncompressed_hash_of_compressed_files` ([String](/core/reference/data-types)) — sipHash128 of data in the compressed files as if they were uncompressed.
+- `delete_ttl_info_min` ([DateTime](/core/reference/data-types)) — The minimum value of the date and time key for TTL DELETE rule.
+- `delete_ttl_info_max` ([DateTime](/core/reference/data-types)) — The maximum value of the date and time key for TTL DELETE rule.
+- `move_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — Array of expressions. Each expression defines a TTL MOVE rule.
+- `move_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — Array of date and time values. Each element describes the minimum key value for a TTL MOVE rule.
+- `move_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — Array of date and time values. Each element describes the maximum key value for a TTL MOVE rule.
+- `default_compression_codec` ([String](/core/reference/data-types)) — The name of the codec used to compress this data part (in case when there is no explicit codec for columns).
+- `recompression_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `recompression_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `recompression_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `group_by_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `group_by_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `group_by_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `rows_where_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `rows_where_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `rows_where_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `projections` ([Array(String)](/core/reference/data-types)) — The list of projection names calculated for this part.
+- `visible` ([UInt8](/core/reference/data-types)) — Flag which indicated whether this part is visible for SELECT queries.
+- `creation_tid` ([Tuple(UInt64, UInt64, UUID)](/core/reference/data-types)) — ID of transaction that has created/is trying to create this object.
+- `removal_tid_lock` ([UInt64](/core/reference/data-types)) — Hash of removal_tid, used to lock an object for removal.
+- `removal_tid` ([Tuple(UInt64, UInt64, UUID)](/core/reference/data-types)) — ID of transaction that has removed/is trying to remove this object
+- `creation_csn` ([UInt64](/core/reference/data-types)) — CSN of transaction that has created this object
+- `removal_csn` ([UInt64](/core/reference/data-types)) — CSN of transaction that has removed this object
+- `has_lightweight_delete` ([UInt8](/core/reference/data-types)) — The flag which indicated whether the part has lightweight delete mask.
+- `last_removal_attempt_time` ([DateTime](/core/reference/data-types)) — The last time the server tried to delete this part.
+- `removal_state` ([String](/core/reference/data-types)) — The current state of part removal process.
+{/*AUTOGENERATED_END*/}
+
+## See Also {#see-also}
+
+- [MergeTree family](/core/reference/engines/table-engines/mergetree-family/mergetree)
+- [system.parts](/core/reference/system-tables/parts)
+- [system.dropped_tables](/core/reference/system-tables/dropped_tables)
diff --git a/reference/system-tables/enabled_roles.mdx b/core/reference/system-tables/enabled_roles.mdx
similarity index 56%
rename from reference/system-tables/enabled_roles.mdx
rename to core/reference/system-tables/enabled_roles.mdx
index 76f64a84..422b992c 100644
--- a/reference/system-tables/enabled_roles.mdx
+++ b/core/reference/system-tables/enabled_roles.mdx
@@ -14,8 +14,8 @@ Contains all active roles at the moment, including the current role of the curre
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `role_name` ([String](/reference/data-types)) — Role name.
-- `with_admin_option` ([UInt8](/reference/data-types)) — 1 if the role has ADMIN OPTION privilege.
-- `is_current` ([UInt8](/reference/data-types)) — Flag that shows whether `enabled_role` is a current role of a current user.
-- `is_default` ([UInt8](/reference/data-types)) — Flag that shows whether `enabled_role` is a default role.
+- `role_name` ([String](/core/reference/data-types)) — Role name.
+- `with_admin_option` ([UInt8](/core/reference/data-types)) — 1 if the role has ADMIN OPTION privilege.
+- `is_current` ([UInt8](/core/reference/data-types)) — Flag that shows whether `enabled_role` is a current role of a current user.
+- `is_default` ([UInt8](/core/reference/data-types)) — Flag that shows whether `enabled_role` is a default role.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/error_log.mdx b/core/reference/system-tables/error_log.mdx
new file mode 100644
index 00000000..4625dee4
--- /dev/null
+++ b/core/reference/system-tables/error_log.mdx
@@ -0,0 +1,60 @@
+---
+description: 'System table containing the history of error values from table `system.errors`,
+ periodically flushed to disk.'
+keywords: ['system table', 'error_log']
+slug: /operations/system-tables/system-error-log
+title: 'system.error_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains history of error values from table `system.errors`, periodically flushed to disk.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `code` ([Int32](/core/reference/data-types/int-uint)) — Error code.
+- `error` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Error name.
+- `value` ([UInt64](/core/reference/data-types/int-uint)) — Number of errors happened in time interval.
+- `remote` ([UInt8](/core/reference/data-types/int-uint)) — Remote exception (i.e. received during one of the distributed queries).
+- `last_error_time` ([DateTime](/core/reference/data-types/datetime)) — The time when the last error happened.
+- `last_error_message` ([String](/core/reference/data-types/string)) — Message for the last error.
+- `last_error_query_id` ([String](/core/reference/data-types/string)) — Id of a query that caused the last error (if available).
+- `last_error_trace` ([Array(UInt64)](/core/reference/data-types/array)) — A stack trace that represents a list of physical addresses where the called methods are stored.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.error_log LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.testing.internal
+event_date: 2025-11-11
+event_time: 2025-11-11 11:35:28
+code: 60
+error: UNKNOWN_TABLE
+value: 1
+remote: 0
+last_error_time: 2025-11-11 11:35:28
+last_error_message: Unknown table expression identifier 'system.table_not_exist' in scope SELECT * FROM system.table_not_exist
+last_error_query_id: 77ad9ece-3db7-4236-9b5a-f789bce4aa2e
+last_error_trace: [100506790044914,100506534488542,100506409937998,100506409936517,100506425182891,100506618154123,100506617994473,100506617990486,100506617988112,100506618341386,100506630272160,100506630266232,100506630276900,100506629795243,100506633519500,100506633495783,100506692143858,100506692248921,100506790779783,100506790781278,100506790390399,100506790380047,123814948752036,123814949330028]
+```
+
+## See Also {#see-also}
+
+- [error_log setting](/core/reference/settings/server-settings/settings#error_log) — Enabling and disabling the setting.
+- [system.errors](/core/reference/system-tables/errors) — Contains error codes with the number of times they have been triggered.
+- [Monitoring](/core/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
diff --git a/reference/system-tables/errors.mdx b/core/reference/system-tables/errors.mdx
similarity index 55%
rename from reference/system-tables/errors.mdx
rename to core/reference/system-tables/errors.mdx
index 954b3a6b..a7cfc6d3 100644
--- a/reference/system-tables/errors.mdx
+++ b/core/reference/system-tables/errors.mdx
@@ -15,20 +15,20 @@ import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
Contains error codes with the number of times they have been triggered.
-To show all possible error codes, including ones which were not triggered, set setting [system_events_show_zero_values](/reference/settings/session-settings#system_events_show_zero_values) to 1.
+To show all possible error codes, including ones which were not triggered, set setting [system_events_show_zero_values](/core/reference/settings/session-settings#system_events_show_zero_values) to 1.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Name of the error (errorCodeToName).
-- `code` ([Int32](/reference/data-types)) — Code number of the error.
-- `value` ([UInt64](/reference/data-types)) — The number of times this error happened.
-- `last_error_time` ([DateTime](/reference/data-types)) — The time when the last error happened.
-- `last_error_message` ([String](/reference/data-types)) — Message for the last error.
-- `last_error_format_string` ([String](/reference/data-types)) — Format string for the last error.
-- `last_error_trace` ([Array(UInt64)](/reference/data-types)) — A stack trace that represents a list of physical addresses where the called methods are stored.
-- `remote` ([UInt8](/reference/data-types)) — Remote exception (i.e. received during one of the distributed queries).
-- `query_id` ([String](/reference/data-types)) — Id of a query that caused an error (if available).
+- `name` ([String](/core/reference/data-types)) — Name of the error (errorCodeToName).
+- `code` ([Int32](/core/reference/data-types)) — Code number of the error.
+- `value` ([UInt64](/core/reference/data-types)) — The number of times this error happened.
+- `last_error_time` ([DateTime](/core/reference/data-types)) — The time when the last error happened.
+- `last_error_message` ([String](/core/reference/data-types)) — Message for the last error.
+- `last_error_format_string` ([String](/core/reference/data-types)) — Format string for the last error.
+- `last_error_trace` ([Array(UInt64)](/core/reference/data-types)) — A stack trace that represents a list of physical addresses where the called methods are stored.
+- `remote` ([UInt8](/core/reference/data-types)) — Remote exception (i.e. received during one of the distributed queries).
+- `query_id` ([String](/core/reference/data-types)) — Id of a query that caused an error (if available).
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/events.mdx b/core/reference/system-tables/events.mdx
similarity index 99%
rename from reference/system-tables/events.mdx
rename to core/reference/system-tables/events.mdx
index c7ff281f..89104f2e 100644
--- a/reference/system-tables/events.mdx
+++ b/core/reference/system-tables/events.mdx
@@ -18,9 +18,9 @@ Contains information about the number of events that have occurred in the system
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `event` ([String](/reference/data-types)) — Event name.
-- `value` ([UInt64](/reference/data-types)) — Number of events occurred.
-- `description` ([String](/reference/data-types)) — Event description.
+- `event` ([String](/core/reference/data-types)) — Event name.
+- `value` ([UInt64](/core/reference/data-types)) — Number of events occurred.
+- `description` ([String](/core/reference/data-types)) — Event description.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -41,10 +41,10 @@ SELECT * FROM system.events LIMIT 5
## See Also {#see-also}
-- [system.asynchronous_metrics](/reference/system-tables/asynchronous_metrics) — Contains periodically calculated metrics.
-- [system.metrics](/reference/system-tables/metrics) — Contains instantly calculated metrics.
-- [system.metric_log](/reference/system-tables/metric_log) — Contains a history of metrics values from tables `system.metrics` and `system.events`.
-- [Monitoring](/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
+- [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) — Contains periodically calculated metrics.
+- [system.metrics](/core/reference/system-tables/metrics) — Contains instantly calculated metrics.
+- [system.metric_log](/core/reference/system-tables/metric_log) — Contains a history of metrics values from tables `system.metrics` and `system.events`.
+- [Monitoring](/core/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
## Event descriptions {#event-descriptions}
diff --git a/reference/system-tables/fail_points.mdx b/core/reference/system-tables/fail_points.mdx
similarity index 76%
rename from reference/system-tables/fail_points.mdx
rename to core/reference/system-tables/fail_points.mdx
index 4b8154f5..6a53b2ed 100644
--- a/reference/system-tables/fail_points.mdx
+++ b/core/reference/system-tables/fail_points.mdx
@@ -15,9 +15,9 @@ Failpoints can be enabled and disabled at runtime using the `SYSTEM ENABLE FAILP
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Name of the failpoint.
-- `type` ([Enum8('once' = 0, 'regular' = 1, 'pauseable_once' = 2, 'pauseable' = 3)](/reference/data-types)) — Type of failpoint: 'once' fires a single time then auto-disables, 'regular' fires every time, 'pauseable_once' blocks execution once, 'pauseable' blocks execution every time until resumed.
-- `enabled` ([UInt8](/reference/data-types)) — Whether the failpoint is currently enabled (1) or disabled (0).
+- `name` ([String](/core/reference/data-types)) — Name of the failpoint.
+- `type` ([Enum8('once' = 0, 'regular' = 1, 'pauseable_once' = 2, 'pauseable' = 3)](/core/reference/data-types)) — Type of failpoint: 'once' fires a single time then auto-disables, 'regular' fires every time, 'pauseable_once' blocks execution once, 'pauseable' blocks execution every time until resumed.
+- `enabled` ([UInt8](/core/reference/data-types)) — Whether the failpoint is currently enabled (1) or disabled (0).
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/filesystem_cache.mdx b/core/reference/system-tables/filesystem_cache.mdx
new file mode 100644
index 00000000..f8719c67
--- /dev/null
+++ b/core/reference/system-tables/filesystem_cache.mdx
@@ -0,0 +1,33 @@
+---
+description: 'Contains information about all entries inside filesystem cache for remote objects.'
+keywords: ['system table', 'filesystem_cache']
+slug: /operations/system-tables/filesystem_cache
+title: 'system.filesystem_cache'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about all entries inside filesystem cache for remote objects.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `cache_name` ([String](/core/reference/data-types)) — Name of the cache object. Can be used in `SYSTEM DESCRIBE FILESYSTEM CACHE `, `SYSTEM DROP FILESYSTEM CACHE ` commands
+- `cache_base_path` ([String](/core/reference/data-types)) — Path to the base directory where all cache files (of a cache identified by `cache_name`) are stored.
+- `cache_path` ([String](/core/reference/data-types)) — Path to a particular cache file, corresponding to a file segment in a source file
+- `key` ([String](/core/reference/data-types)) — Cache key of the file segment
+- `file_segment_range_begin` ([UInt64](/core/reference/data-types)) — Offset corresponding to the beginning of the file segment range
+- `file_segment_range_end` ([UInt64](/core/reference/data-types)) — Offset corresponding to the (including) end of the file segment range
+- `size` ([UInt64](/core/reference/data-types)) — Size of the file segment
+- `state` ([String](/core/reference/data-types)) — File segment state (DOWNLOADED, DOWNLOADING, PARTIALLY_DOWNLOADED, ...)
+- `finished_download_time` ([DateTime](/core/reference/data-types)) — Time when file segment finished downloading.
+- `cache_hits` ([UInt64](/core/reference/data-types)) — Number of cache hits of corresponding file segment
+- `references` ([UInt64](/core/reference/data-types)) — Number of references to corresponding file segment. Value 1 means that nobody uses it at the moment (the only existing reference is in cache storage itself)
+- `downloaded_size` ([UInt64](/core/reference/data-types)) — Downloaded size of the file segment
+- `kind` ([String](/core/reference/data-types)) — File segment kind (used to distinguish between file segments added as a part of 'Temporary data in cache')
+- `unbound` ([UInt8](/core/reference/data-types)) — Internal implementation flag
+- `user_id` ([String](/core/reference/data-types)) — User id of the user which created the file segment
+- `segment_type` ([String](/core/reference/data-types)) — Type of the segment. Used to separate data files(`.json`, `.txt` and etc) from data file(`.bin`, mark files).
+- `file_size` ([Nullable(UInt64)](/core/reference/data-types)) — File size of the file to which current file segment belongs
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/filesystem_cache_log.mdx b/core/reference/system-tables/filesystem_cache_log.mdx
new file mode 100644
index 00000000..eaf6f3d4
--- /dev/null
+++ b/core/reference/system-tables/filesystem_cache_log.mdx
@@ -0,0 +1,32 @@
+---
+description: 'Contains a history of all events occurred with filesystem cache for objects on a remote filesystem.
+
+It is safe to truncate or drop this table at any time.'
+keywords: ['system table', 'filesystem_cache_log']
+slug: /operations/system-tables/filesystem_cache_log
+title: 'system.filesystem_cache_log'
+doc_type: 'reference'
+---
+
+Contains a history of all events occurred with filesystem cache for objects on a remote filesystem.
+
+It is safe to truncate or drop this table at any time.
+
+Columns:
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time
+- `query_id` ([String](/core/reference/data-types/string)) — Id of the query
+- `source_file_path` ([String](/core/reference/data-types/string)) — File segment path on filesystem
+- `file_segment_range` ([Tuple(UInt64, UInt64)](/core/reference/data-types/tuple)) — File segment range
+- `total_requested_range` ([Tuple(UInt64, UInt64)](/core/reference/data-types/tuple)) — Full read range
+- `key` ([String](/core/reference/data-types/string)) — File segment key
+- `offset` ([UInt64](/core/reference/data-types/int-uint)) — File segment offset
+- `size` ([UInt64](/core/reference/data-types/int-uint)) — Read size
+- `read_type` ([String](/core/reference/data-types/string)) — Read type: READ_FROM_CACHE, READ_FROM_FS_AND_DOWNLOADED_TO_CACHE, READ_FROM_FS_BYPASSING_CACHE
+- `read_from_cache_attempted` ([UInt8](/core/reference/data-types/int-uint)) — Whether reading from cache was attempted
+- `read_buffer_id` ([String](/core/reference/data-types/string)) — Internal implementation read buffer id
+- `user_id` ([String](/core/reference/data-types/string)) — User id of the user which created the file segment
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/filesystem_cache_settings.mdx b/core/reference/system-tables/filesystem_cache_settings.mdx
new file mode 100644
index 00000000..49b0ff17
--- /dev/null
+++ b/core/reference/system-tables/filesystem_cache_settings.mdx
@@ -0,0 +1,49 @@
+---
+description: 'Contains information about all filesystem cache settings'
+keywords: ['system table', 'filesystem_cache_settings']
+slug: /operations/system-tables/filesystem_cache_settings
+title: 'system.filesystem_cache_settings'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about all filesystem cache settings
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `cache_name` ([String](/core/reference/data-types)) — Cache name
+- `path` ([String](/core/reference/data-types)) — Cache directory path
+- `max_size` ([UInt64](/core/reference/data-types)) — Maximum cache size
+- `max_elements` ([UInt64](/core/reference/data-types)) — Maximum number of cache elements, e.g. file segments (limits number of files on filesystem)
+- `max_file_segment_size` ([UInt64](/core/reference/data-types)) — Maximum size of a single file segment
+- `boundary_alignment` ([UInt64](/core/reference/data-types)) — File segment alignment
+- `cache_on_write_operations` ([UInt8](/core/reference/data-types)) — Enables write-through cache (cache on INSERT and MERGE)
+- `cache_policy` ([String](/core/reference/data-types)) — Cache eviction policy
+- `slru_size_ratio` ([Float64](/core/reference/data-types)) — SLRU cache policy size ratio of protected to probationary elements
+- `background_download_threads` ([UInt64](/core/reference/data-types)) — Number of background download threads. Value 0 disables background download
+- `background_download_queue_size_limit` ([UInt64](/core/reference/data-types)) — Size of background download queue. Value 0 disables background download
+- `background_download_max_file_segment_size` ([UInt64](/core/reference/data-types)) — Maximum size which can be downloaded in background download
+- `load_metadata_threads` ([UInt64](/core/reference/data-types)) — Maximum number of threads used to load cache metadata at server startup
+- `load_metadata_asynchronously` ([UInt8](/core/reference/data-types)) — Enables asynchronous loading of metadata on server startup
+- `keep_free_space_size_ratio` ([Float64](/core/reference/data-types)) — A ratio of free space which cache would try to uphold in the background
+- `keep_free_space_elements_ratio` ([Float64](/core/reference/data-types)) — A ratio of free elements which cache would try to uphold in the background
+- `keep_free_space_remove_batch` ([UInt64](/core/reference/data-types)) — A remove batch size of cache elements made by background thread which upholds free space/elements ratio
+- `enable_filesystem_query_cache_limit` ([UInt8](/core/reference/data-types)) — Enable limiting maximum size of cache which can be written within a query
+- `cache_hits_threshold` ([UInt64](/core/reference/data-types)) — Deprecated setting
+- `enable_bypass_cache_with_threshold` ([UInt8](/core/reference/data-types)) — Undocumented. Not recommended for use
+- `bypass_cache_threshold` ([UInt64](/core/reference/data-types)) — Undocumented. Not recommended for use
+- `write_cache_per_user_id_directory` ([UInt8](/core/reference/data-types)) — Internal ClickHouse Cloud setting
+- `allow_dynamic_cache_resize` ([UInt8](/core/reference/data-types)) — Allow dynamic resize of filesystem cache
+- `dynamic_resize_lock_wait_ms` ([UInt64](/core/reference/data-types)) — Timeout in milliseconds to acquire the dynamic resize exclusive lock before skipping the resize attempt
+- `max_size_ratio_to_total_space` ([Float64](/core/reference/data-types)) — Ratio of `max_size` to total disk space
+- `skip_cache_on_disk_failure` ([UInt8](/core/reference/data-types)) — If true, bypass filesystem cache operations silently on disk IO errors. If false (default), disk IO errors are propagated as startup failures.
+- `use_split_cache` ([UInt8](/core/reference/data-types)) — Use separation of files to system/data.
+- `split_cache_ratio` ([Float64](/core/reference/data-types)) — Ratio of system segment to total size of cache for split_cache.
+- `overcommit_eviction_evict_step` ([UInt64](/core/reference/data-types)) — Eviction step in bytes for overcommit eviction policy. Used for keep_free_space_*_ratio settings
+- `check_cache_probability` ([Float64](/core/reference/data-types)) — Works only for debug or sanitizer build. Checks cache correctness by going through all cache and checking state of each cache element
+- `is_initialized` ([UInt8](/core/reference/data-types)) — Indicates whether cache was successfully initialized
+- `current_size` ([UInt64](/core/reference/data-types)) — Current cache size
+- `current_elements_num` ([UInt64](/core/reference/data-types)) — Current cache elements (file segments) number
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/filesystem_read_prefetches_log.mdx b/core/reference/system-tables/filesystem_read_prefetches_log.mdx
new file mode 100644
index 00000000..665dd9da
--- /dev/null
+++ b/core/reference/system-tables/filesystem_read_prefetches_log.mdx
@@ -0,0 +1,33 @@
+---
+description: 'Contains a history of all prefetches done during reading from MergeTree tables backed by a remote filesystem.
+
+It is safe to truncate or drop this table at any time.'
+keywords: ['system table', 'filesystem_read_prefetches_log']
+slug: /operations/system-tables/filesystem_read_prefetches_log
+title: 'system.filesystem_read_prefetches_log'
+doc_type: 'reference'
+---
+
+Contains a history of all prefetches done during reading from MergeTree tables backed by a remote filesystem.
+
+It is safe to truncate or drop this table at any time.
+
+Columns:
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality))
+- `event_date` ([Date](/core/reference/data-types/date))
+- `event_time` ([DateTime](/core/reference/data-types/datetime))
+- `query_id` ([String](/core/reference/data-types/string))
+- `path` ([String](/core/reference/data-types/string))
+- `offset` ([UInt64](/core/reference/data-types/int-uint))
+- `size` ([Int64](/core/reference/data-types/int-uint))
+- `prefetch_submit_time` ([DateTime64(6)](/core/reference/data-types/datetime64))
+- `priority` ([Int64](/core/reference/data-types/int-uint))
+- `prefetch_execution_start_time` ([DateTime64(6)](/core/reference/data-types/datetime64))
+- `prefetch_execution_end_time` ([DateTime64(6)](/core/reference/data-types/datetime64))
+- `prefetch_execution_time_us` ([UInt64](/core/reference/data-types/int-uint))
+- `state` ([String](/core/reference/data-types/string))
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint))
+- `reader_id` ([String](/core/reference/data-types/string))
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/formats.mdx b/core/reference/system-tables/formats.mdx
new file mode 100644
index 00000000..ee40d792
--- /dev/null
+++ b/core/reference/system-tables/formats.mdx
@@ -0,0 +1,29 @@
+---
+description: 'Contains a list of all the formats along with flags whether a format is suitable for input/output or whether it supports parallelization.'
+keywords: ['system table', 'formats']
+slug: /operations/system-tables/formats
+title: 'system.formats'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains a list of all the formats along with flags whether a format is suitable for input/output or whether it supports parallelization.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — Format name.
+- `is_input` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the format is suitable for data input.
+- `is_output` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the format is suitable for data output.
+- `supports_parallel_parsing` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the format supports parallel parsing.
+- `supports_parallel_formatting` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the format supports parallel formatting.
+- `is_tty_friendly` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the format usually displays fine in the terminal. For other formats, CLI will ask before output.
+- `content_type` ([String](/core/reference/data-types)) — HTTP Content-Type corresponding to the output format. May depend on the current format settings.
+- `supports_random_access` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the format supports random access in the input.
+- `has_schema_inference` ([UInt8](/core/reference/data-types)) — The format can dynamically determine the schema from the data (either from embedded header/metadata or from the piece of data).
+- `has_external_schema` ([UInt8](/core/reference/data-types)) — The format either has a fixed schema or accepts a predefined schema in its own format.
+- `prefers_large_blocks` ([UInt8](/core/reference/data-types)) — The format will write larger blocks into output and generate larger blocks on input.
+- `supports_append` ([UInt8](/core/reference/data-types)) — It's possible to append into a single file with this format.
+- `supports_subsets_of_columns` ([UInt8](/core/reference/data-types)) — The input format can recognize when certain columns are omitted.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/functions.mdx b/core/reference/system-tables/functions.mdx
new file mode 100644
index 00000000..b3f7cb05
--- /dev/null
+++ b/core/reference/system-tables/functions.mdx
@@ -0,0 +1,50 @@
+---
+description: 'System table containing information about normal and aggregate functions.'
+keywords: ['system table', 'functions']
+slug: /operations/system-tables/functions
+title: 'system.functions'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about normal and aggregate functions.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — The name of the function.
+- `is_aggregate` ([UInt8](/core/reference/data-types)) — Whether the function is an aggregate function.
+- `case_insensitive` ([UInt8](/core/reference/data-types)) — Whether the function name can be used case-insensitively.
+- `alias_to` ([String](/core/reference/data-types)) — The original function name, if the function name is an alias.
+- `create_query` ([String](/core/reference/data-types)) — Obsolete.
+- `origin` ([Enum8('System' = 0, 'SQLUserDefined' = 1, 'ExecutableUserDefined' = 2, 'WasmUserDefined' = 3)](/core/reference/data-types)) — Obsolete.
+- `description` ([String](/core/reference/data-types)) — A high-level description what the function does.
+- `syntax` ([String](/core/reference/data-types)) — Signature of the function.
+- `arguments` ([String](/core/reference/data-types)) — The function arguments.
+- `parameters` ([String](/core/reference/data-types)) — The function parameters (only for aggregate function).
+- `returned_value` ([String](/core/reference/data-types)) — What does the function return.
+- `examples` ([String](/core/reference/data-types)) — Usage example.
+- `introduced_in` ([String](/core/reference/data-types)) — ClickHouse version in which the function was first introduced.
+- `categories` ([String](/core/reference/data-types)) — The category of the function.
+- `deterministic` ([Nullable(UInt8)](/core/reference/data-types)) — Whether the function returns the same result for the same arguments. NULL when unknown (e.g. aggregate or user-defined functions).
+- `higher_order` ([Nullable(UInt8)](/core/reference/data-types)) — Whether the function is higher-order — i.e. accepts at least one lambda expression as an argument (e.g. arrayMap, arrayFilter, mapApply). NULL when unknown.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+ SELECT name, is_aggregate, deterministic, case_insensitive, alias_to FROM system.functions LIMIT 5;
+```
+
+```text title="Response"
+┌─name─────────────────────┬─is_aggregate─┬─deterministic─┬─case_insensitive─┬─alias_to─┐
+│ BLAKE3 │ 0 │ 1 │ 0 │ │
+│ sipHash128Reference │ 0 │ 1 │ 0 │ │
+│ mapExtractKeyLike │ 0 │ 1 │ 0 │ │
+│ sipHash128ReferenceKeyed │ 0 │ 1 │ 0 │ │
+│ mapPartialSort │ 0 │ 1 │ 0 │ │
+└──────────────────────────┴──────────────┴──────────────────┴──────────────────┴──────────┘
+
+5 rows in set. Elapsed: 0.002 sec.
+```
diff --git a/reference/system-tables/grants.mdx b/core/reference/system-tables/grants.mdx
similarity index 85%
rename from reference/system-tables/grants.mdx
rename to core/reference/system-tables/grants.mdx
index 0397188d..235a0359 100644
--- a/reference/system-tables/grants.mdx
+++ b/core/reference/system-tables/grants.mdx
@@ -14,13 +14,13 @@ Privileges granted to ClickHouse user accounts.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `user_name` ([Nullable(String)](/reference/data-types)) — User name.
-- `role_name` ([Nullable(String)](/reference/data-types)) — Role assigned to user account.
-- `access_type` ([Enum16('SHOW DATABASES' = 0, 'SHOW TABLES' = 1, 'CHECK' = 2, 'SHOW COLUMNS' = 3, 'SHOW DICTIONARIES' = 4, 'SHOW' = 5, 'SHOW FILESYSTEM CACHES' = 6, 'SELECT' = 7, 'INSERT' = 8, 'ALTER UPDATE' = 9, 'ALTER DELETE' = 10, 'ALTER ADD COLUMN' = 11, 'ALTER MODIFY COLUMN' = 12, 'ALTER DROP COLUMN' = 13, 'ALTER COMMENT COLUMN' = 14, 'ALTER CLEAR COLUMN' = 15, 'ALTER RENAME COLUMN' = 16, 'ALTER MATERIALIZE COLUMN' = 17, 'ALTER COLUMN' = 18, 'ALTER MODIFY COMMENT' = 19, 'ALTER MODIFY DATABASE COMMENT' = 20, 'ALTER ORDER BY' = 21, 'ALTER SAMPLE BY' = 22, 'ALTER ADD INDEX' = 23, 'ALTER DROP INDEX' = 24, 'ALTER MATERIALIZE INDEX' = 25, 'ALTER CLEAR INDEX' = 26, 'ALTER INDEX' = 27, 'ALTER ADD STATISTICS' = 28, 'ALTER DROP STATISTICS' = 29, 'ALTER MODIFY STATISTICS' = 30, 'ALTER MATERIALIZE STATISTICS' = 31, 'ALTER STATISTICS' = 32, 'ALTER ADD PROJECTION' = 33, 'ALTER DROP PROJECTION' = 34, 'ALTER MATERIALIZE PROJECTION' = 35, 'ALTER CLEAR PROJECTION' = 36, 'ALTER PROJECTION' = 37, 'ALTER ADD CONSTRAINT' = 38, 'ALTER DROP CONSTRAINT' = 39, 'ALTER CONSTRAINT' = 40, 'ALTER TTL' = 41, 'ALTER MATERIALIZE TTL' = 42, 'ALTER REWRITE PARTS' = 43, 'ALTER SETTINGS' = 44, 'ALTER MOVE PARTITION' = 45, 'ALTER FETCH PARTITION' = 46, 'ALTER FREEZE PARTITION' = 47, 'ALTER UNLOCK SNAPSHOT' = 48, 'ALTER EXECUTE' = 49, 'ALTER DATABASE SETTINGS' = 50, 'ALTER NAMED COLLECTION' = 51, 'ALTER TABLE' = 52, 'ALTER DATABASE' = 53, 'ALTER VIEW MODIFY QUERY' = 54, 'ALTER VIEW MODIFY REFRESH' = 55, 'ALTER VIEW MODIFY SQL SECURITY' = 56, 'ALTER VIEW' = 57, 'ALTER' = 58, 'CREATE DATABASE' = 59, 'CREATE TABLE' = 60, 'CREATE VIEW' = 61, 'CREATE DICTIONARY' = 62, 'CREATE TEMPORARY TABLE' = 63, 'CREATE ARBITRARY TEMPORARY TABLE' = 64, 'CREATE TEMPORARY VIEW' = 65, 'CREATE FUNCTION' = 66, 'CREATE WORKLOAD' = 67, 'CREATE RESOURCE' = 68, 'CREATE NAMED COLLECTION' = 69, 'CREATE' = 70, 'DROP DATABASE' = 71, 'DROP TABLE' = 72, 'DROP VIEW' = 73, 'DROP DICTIONARY' = 74, 'DROP FUNCTION' = 75, 'DROP WORKLOAD' = 76, 'DROP RESOURCE' = 77, 'DROP NAMED COLLECTION' = 78, 'DROP' = 79, 'UNDROP TABLE' = 80, 'TRUNCATE' = 81, 'OPTIMIZE' = 82, 'BACKUP' = 83, 'KILL QUERY' = 84, 'KILL TRANSACTION' = 85, 'MOVE PARTITION BETWEEN SHARDS' = 86, 'CREATE USER' = 87, 'ALTER USER' = 88, 'DROP USER' = 89, 'CREATE ROLE' = 90, 'ALTER ROLE' = 91, 'DROP ROLE' = 92, 'ROLE ADMIN' = 93, 'CREATE ROW POLICY' = 94, 'ALTER ROW POLICY' = 95, 'DROP ROW POLICY' = 96, 'CREATE MASKING POLICY' = 97, 'ALTER MASKING POLICY' = 98, 'DROP MASKING POLICY' = 99, 'CREATE QUOTA' = 100, 'ALTER QUOTA' = 101, 'DROP QUOTA' = 102, 'CREATE SETTINGS PROFILE' = 103, 'ALTER SETTINGS PROFILE' = 104, 'DROP SETTINGS PROFILE' = 105, 'ALLOW SQL SECURITY NONE' = 106, 'SHOW USERS' = 107, 'SHOW ROLES' = 108, 'SHOW ROW POLICIES' = 109, 'SHOW QUOTAS' = 110, 'SHOW SETTINGS PROFILES' = 111, 'SHOW MASKING POLICIES' = 112, 'SHOW ACCESS' = 113, 'IMPERSONATE' = 114, 'ACCESS MANAGEMENT' = 115, 'SHOW NAMED COLLECTIONS' = 116, 'SHOW NAMED COLLECTIONS SECRETS' = 117, 'NAMED COLLECTION' = 118, 'NAMED COLLECTION ADMIN' = 119, 'SET DEFINER' = 120, 'TABLE ENGINE' = 121, 'SYSTEM SHUTDOWN' = 122, 'SYSTEM DROP DNS CACHE' = 123, 'SYSTEM DROP CONNECTIONS CACHE' = 124, 'SYSTEM PREWARM MARK CACHE' = 125, 'SYSTEM DROP MARK CACHE' = 126, 'SYSTEM DROP ICEBERG METADATA CACHE' = 127, 'SYSTEM DROP AVRO SCHEMA CACHE' = 128, 'SYSTEM DROP PARQUET METADATA CACHE' = 129, 'SYSTEM PREWARM PRIMARY INDEX CACHE' = 130, 'SYSTEM DROP PRIMARY INDEX CACHE' = 131, 'SYSTEM DROP UNCOMPRESSED CACHE' = 132, 'SYSTEM DROP VECTOR SIMILARITY INDEX CACHE' = 133, 'SYSTEM DROP TEXT INDEX TOKENS CACHE' = 134, 'SYSTEM DROP TEXT INDEX HEADER CACHE' = 135, 'SYSTEM DROP TEXT INDEX POSTINGS CACHE' = 136, 'SYSTEM DROP TEXT INDEX CACHES' = 137, 'SYSTEM DROP MMAP CACHE' = 138, 'SYSTEM DROP QUERY CONDITION CACHE' = 139, 'SYSTEM DROP QUERY CACHE' = 140, 'SYSTEM DROP COMPILED EXPRESSION CACHE' = 141, 'SYSTEM DROP FILESYSTEM CACHE' = 142, 'SYSTEM DROP DISTRIBUTED CACHE' = 143, 'SYSTEM SYNC FILESYSTEM CACHE' = 144, 'SYSTEM DROP PAGE CACHE' = 145, 'SYSTEM DROP SCHEMA CACHE' = 146, 'SYSTEM DROP FORMAT SCHEMA CACHE' = 147, 'SYSTEM DROP S3 CLIENT CACHE' = 148, 'SYSTEM DROP CACHE' = 149, 'SYSTEM RELOAD CONFIG' = 150, 'SYSTEM RELOAD USERS' = 151, 'SYSTEM RELOAD DICTIONARY' = 152, 'SYSTEM RELOAD MODEL' = 153, 'SYSTEM RELOAD FUNCTION' = 154, 'SYSTEM RELOAD EMBEDDED DICTIONARIES' = 155, 'SYSTEM RELOAD ASYNCHRONOUS METRICS' = 156, 'SYSTEM RECONNECT ZOOKEEPER' = 157, 'SYSTEM RELOAD' = 158, 'SYSTEM RESTART DISK' = 159, 'SYSTEM WAIT BLOBS CLEANUP' = 160, 'SYSTEM MERGES' = 161, 'SYSTEM TTL MERGES' = 162, 'SYSTEM FETCHES' = 163, 'SYSTEM MOVES' = 164, 'SYSTEM PULLING REPLICATION LOG' = 165, 'SYSTEM CLEANUP' = 166, 'SYSTEM VIEWS' = 167, 'SYSTEM DISTRIBUTED SENDS' = 168, 'SYSTEM REPLICATED SENDS' = 169, 'SYSTEM SENDS' = 170, 'SYSTEM REPLICATION QUEUES' = 171, 'SYSTEM VIRTUAL PARTS UPDATE' = 172, 'SYSTEM REDUCE BLOCKING PARTS' = 173, 'SYSTEM DROP REPLICA' = 174, 'SYSTEM SYNC REPLICA' = 175, 'SYSTEM REPLICA READINESS' = 176, 'SYSTEM RESTART REPLICA' = 177, 'SYSTEM RESTORE REPLICA' = 178, 'SYSTEM RESTORE DATABASE REPLICA' = 179, 'SYSTEM WAIT LOADING PARTS' = 180, 'SYSTEM SYNC DATABASE REPLICA' = 181, 'SYSTEM SYNC TRANSACTION LOG' = 182, 'SYSTEM SYNC FILE CACHE' = 183, 'SYSTEM FLUSH DISTRIBUTED' = 184, 'SYSTEM FLUSH LOGS' = 185, 'SYSTEM FLUSH ASYNC INSERT QUEUE' = 186, 'SYSTEM FLUSH OBJECT STORAGE QUEUE' = 187, 'SYSTEM FLUSH' = 188, 'SYSTEM THREAD FUZZER' = 189, 'SYSTEM UNFREEZE' = 190, 'SYSTEM UNLOCK SNAPSHOT' = 191, 'SYSTEM FAILPOINT' = 192, 'SYSTEM MEMORY' = 193, 'SYSTEM LISTEN' = 194, 'SYSTEM JEMALLOC' = 195, 'SYSTEM LOAD PRIMARY KEY' = 196, 'SYSTEM UNLOAD PRIMARY KEY' = 197, 'SYSTEM INSTRUMENT ADD' = 198, 'SYSTEM INSTRUMENT REMOVE' = 199, 'SYSTEM' = 200, 'dictGet' = 201, 'displaySecretsInShowAndSelect' = 202, 'addressToLine' = 203, 'addressToLineWithInlines' = 204, 'addressToSymbol' = 205, 'demangle' = 206, 'INTROSPECTION' = 207, 'READ' = 208, 'WRITE' = 209, 'CLUSTER' = 210, 'FILE' = 211, 'URL' = 212, 'REMOTE' = 213, 'MONGO' = 214, 'REDIS' = 215, 'MYSQL' = 216, 'POSTGRES' = 217, 'SQLITE' = 218, 'ODBC' = 219, 'JDBC' = 220, 'HDFS' = 221, 'S3' = 222, 'HIVE' = 223, 'AZURE' = 224, 'KAFKA' = 225, 'NATS' = 226, 'RABBITMQ' = 227, 'YTSAURUS' = 228, 'ARROW FLIGHT' = 229, 'SOURCES' = 230, 'ALL' = 231, 'NONE' = 232)](/reference/data-types)) — Access parameters for ClickHouse user account.
-- `access_object` ([String](/reference/data-types)) — Parameter for access_type. Contains: 1 - Name of the source type for READ/WRITE grants.2 - Name of the table engine for TABLE ENGINE grants.3 - Name of the user for grants like `SET DEFINER`.
-- `database` ([Nullable(String)](/reference/data-types)) — Name of a database.
-- `table` ([Nullable(String)](/reference/data-types)) — Name of a table.
-- `column` ([Nullable(String)](/reference/data-types)) — Name of a column to which access is granted.
-- `is_partial_revoke` ([UInt8](/reference/data-types)) — Logical value. It shows whether some privileges have been revoked. Possible values: 0 — The row describes a grant, 1 — The row describes a partial revoke.
-- `grant_option` ([UInt8](/reference/data-types)) — Permission is granted WITH GRANT OPTION.
+- `user_name` ([Nullable(String)](/core/reference/data-types)) — User name.
+- `role_name` ([Nullable(String)](/core/reference/data-types)) — Role assigned to user account.
+- `access_type` ([Enum16('SHOW DATABASES' = 0, 'SHOW TABLES' = 1, 'CHECK' = 2, 'SHOW COLUMNS' = 3, 'SHOW DICTIONARIES' = 4, 'SHOW' = 5, 'SHOW FILESYSTEM CACHES' = 6, 'SELECT' = 7, 'INSERT' = 8, 'ALTER UPDATE' = 9, 'ALTER DELETE' = 10, 'ALTER ADD COLUMN' = 11, 'ALTER MODIFY COLUMN' = 12, 'ALTER DROP COLUMN' = 13, 'ALTER COMMENT COLUMN' = 14, 'ALTER CLEAR COLUMN' = 15, 'ALTER RENAME COLUMN' = 16, 'ALTER MATERIALIZE COLUMN' = 17, 'ALTER COLUMN' = 18, 'ALTER MODIFY COMMENT' = 19, 'ALTER MODIFY DATABASE COMMENT' = 20, 'ALTER ORDER BY' = 21, 'ALTER SAMPLE BY' = 22, 'ALTER ADD INDEX' = 23, 'ALTER DROP INDEX' = 24, 'ALTER MATERIALIZE INDEX' = 25, 'ALTER CLEAR INDEX' = 26, 'ALTER INDEX' = 27, 'ALTER ADD STATISTICS' = 28, 'ALTER DROP STATISTICS' = 29, 'ALTER MODIFY STATISTICS' = 30, 'ALTER MATERIALIZE STATISTICS' = 31, 'ALTER STATISTICS' = 32, 'ALTER ADD PROJECTION' = 33, 'ALTER DROP PROJECTION' = 34, 'ALTER MATERIALIZE PROJECTION' = 35, 'ALTER CLEAR PROJECTION' = 36, 'ALTER PROJECTION' = 37, 'ALTER ADD CONSTRAINT' = 38, 'ALTER DROP CONSTRAINT' = 39, 'ALTER CONSTRAINT' = 40, 'ALTER TTL' = 41, 'ALTER MATERIALIZE TTL' = 42, 'ALTER REWRITE PARTS' = 43, 'ALTER SETTINGS' = 44, 'ALTER MOVE PARTITION' = 45, 'ALTER FETCH PARTITION' = 46, 'ALTER FREEZE PARTITION' = 47, 'ALTER UNLOCK SNAPSHOT' = 48, 'ALTER EXECUTE' = 49, 'ALTER DATABASE SETTINGS' = 50, 'ALTER NAMED COLLECTION' = 51, 'ALTER TABLE' = 52, 'ALTER DATABASE' = 53, 'ALTER VIEW MODIFY QUERY' = 54, 'ALTER VIEW MODIFY REFRESH' = 55, 'ALTER VIEW MODIFY SQL SECURITY' = 56, 'ALTER VIEW' = 57, 'ALTER' = 58, 'CREATE DATABASE' = 59, 'CREATE TABLE' = 60, 'CREATE VIEW' = 61, 'CREATE DICTIONARY' = 62, 'CREATE TEMPORARY TABLE' = 63, 'CREATE ARBITRARY TEMPORARY TABLE' = 64, 'CREATE TEMPORARY VIEW' = 65, 'CREATE FUNCTION' = 66, 'CREATE WORKLOAD' = 67, 'CREATE RESOURCE' = 68, 'CREATE NAMED COLLECTION' = 69, 'CREATE' = 70, 'DROP DATABASE' = 71, 'DROP TABLE' = 72, 'DROP VIEW' = 73, 'DROP DICTIONARY' = 74, 'DROP FUNCTION' = 75, 'DROP WORKLOAD' = 76, 'DROP RESOURCE' = 77, 'DROP NAMED COLLECTION' = 78, 'DROP' = 79, 'UNDROP TABLE' = 80, 'TRUNCATE' = 81, 'OPTIMIZE' = 82, 'BACKUP' = 83, 'KILL QUERY' = 84, 'KILL TRANSACTION' = 85, 'MOVE PARTITION BETWEEN SHARDS' = 86, 'CREATE USER' = 87, 'ALTER USER' = 88, 'DROP USER' = 89, 'CREATE ROLE' = 90, 'ALTER ROLE' = 91, 'DROP ROLE' = 92, 'ROLE ADMIN' = 93, 'CREATE ROW POLICY' = 94, 'ALTER ROW POLICY' = 95, 'DROP ROW POLICY' = 96, 'CREATE MASKING POLICY' = 97, 'ALTER MASKING POLICY' = 98, 'DROP MASKING POLICY' = 99, 'CREATE QUOTA' = 100, 'ALTER QUOTA' = 101, 'DROP QUOTA' = 102, 'CREATE SETTINGS PROFILE' = 103, 'ALTER SETTINGS PROFILE' = 104, 'DROP SETTINGS PROFILE' = 105, 'ALLOW SQL SECURITY NONE' = 106, 'SHOW USERS' = 107, 'SHOW ROLES' = 108, 'SHOW ROW POLICIES' = 109, 'SHOW QUOTAS' = 110, 'SHOW SETTINGS PROFILES' = 111, 'SHOW MASKING POLICIES' = 112, 'SHOW ACCESS' = 113, 'IMPERSONATE' = 114, 'ACCESS MANAGEMENT' = 115, 'SHOW NAMED COLLECTIONS' = 116, 'SHOW NAMED COLLECTIONS SECRETS' = 117, 'NAMED COLLECTION' = 118, 'NAMED COLLECTION ADMIN' = 119, 'SET DEFINER' = 120, 'TABLE ENGINE' = 121, 'SYSTEM SHUTDOWN' = 122, 'SYSTEM DROP DNS CACHE' = 123, 'SYSTEM DROP CONNECTIONS CACHE' = 124, 'SYSTEM PREWARM MARK CACHE' = 125, 'SYSTEM DROP MARK CACHE' = 126, 'SYSTEM DROP ICEBERG METADATA CACHE' = 127, 'SYSTEM DROP AVRO SCHEMA CACHE' = 128, 'SYSTEM DROP PARQUET METADATA CACHE' = 129, 'SYSTEM PREWARM PRIMARY INDEX CACHE' = 130, 'SYSTEM DROP PRIMARY INDEX CACHE' = 131, 'SYSTEM DROP UNCOMPRESSED CACHE' = 132, 'SYSTEM DROP VECTOR SIMILARITY INDEX CACHE' = 133, 'SYSTEM DROP TEXT INDEX TOKENS CACHE' = 134, 'SYSTEM DROP TEXT INDEX HEADER CACHE' = 135, 'SYSTEM DROP TEXT INDEX POSTINGS CACHE' = 136, 'SYSTEM DROP TEXT INDEX CACHES' = 137, 'SYSTEM DROP MMAP CACHE' = 138, 'SYSTEM DROP QUERY CONDITION CACHE' = 139, 'SYSTEM DROP QUERY CACHE' = 140, 'SYSTEM DROP COMPILED EXPRESSION CACHE' = 141, 'SYSTEM DROP FILESYSTEM CACHE' = 142, 'SYSTEM DROP DISTRIBUTED CACHE' = 143, 'SYSTEM SYNC FILESYSTEM CACHE' = 144, 'SYSTEM DROP PAGE CACHE' = 145, 'SYSTEM DROP SCHEMA CACHE' = 146, 'SYSTEM DROP FORMAT SCHEMA CACHE' = 147, 'SYSTEM DROP S3 CLIENT CACHE' = 148, 'SYSTEM DROP CACHE' = 149, 'SYSTEM RELOAD CONFIG' = 150, 'SYSTEM RELOAD USERS' = 151, 'SYSTEM RELOAD DICTIONARY' = 152, 'SYSTEM RELOAD MODEL' = 153, 'SYSTEM RELOAD FUNCTION' = 154, 'SYSTEM RELOAD EMBEDDED DICTIONARIES' = 155, 'SYSTEM RELOAD ASYNCHRONOUS METRICS' = 156, 'SYSTEM RECONNECT ZOOKEEPER' = 157, 'SYSTEM RELOAD' = 158, 'SYSTEM RESTART DISK' = 159, 'SYSTEM WAIT BLOBS CLEANUP' = 160, 'SYSTEM MERGES' = 161, 'SYSTEM TTL MERGES' = 162, 'SYSTEM FETCHES' = 163, 'SYSTEM MOVES' = 164, 'SYSTEM PULLING REPLICATION LOG' = 165, 'SYSTEM CLEANUP' = 166, 'SYSTEM VIEWS' = 167, 'SYSTEM DISTRIBUTED SENDS' = 168, 'SYSTEM REPLICATED SENDS' = 169, 'SYSTEM SENDS' = 170, 'SYSTEM REPLICATION QUEUES' = 171, 'SYSTEM VIRTUAL PARTS UPDATE' = 172, 'SYSTEM REDUCE BLOCKING PARTS' = 173, 'SYSTEM DROP REPLICA' = 174, 'SYSTEM SYNC REPLICA' = 175, 'SYSTEM REPLICA READINESS' = 176, 'SYSTEM RESTART REPLICA' = 177, 'SYSTEM RESTORE REPLICA' = 178, 'SYSTEM RESTORE DATABASE REPLICA' = 179, 'SYSTEM WAIT LOADING PARTS' = 180, 'SYSTEM SYNC DATABASE REPLICA' = 181, 'SYSTEM SYNC TRANSACTION LOG' = 182, 'SYSTEM SYNC FILE CACHE' = 183, 'SYSTEM FLUSH DISTRIBUTED' = 184, 'SYSTEM FLUSH LOGS' = 185, 'SYSTEM FLUSH ASYNC INSERT QUEUE' = 186, 'SYSTEM FLUSH OBJECT STORAGE QUEUE' = 187, 'SYSTEM FLUSH' = 188, 'SYSTEM THREAD FUZZER' = 189, 'SYSTEM UNFREEZE' = 190, 'SYSTEM UNLOCK SNAPSHOT' = 191, 'SYSTEM FAILPOINT' = 192, 'SYSTEM MEMORY' = 193, 'SYSTEM LISTEN' = 194, 'SYSTEM JEMALLOC' = 195, 'SYSTEM LOAD PRIMARY KEY' = 196, 'SYSTEM UNLOAD PRIMARY KEY' = 197, 'SYSTEM INSTRUMENT ADD' = 198, 'SYSTEM INSTRUMENT REMOVE' = 199, 'SYSTEM' = 200, 'dictGet' = 201, 'displaySecretsInShowAndSelect' = 202, 'addressToLine' = 203, 'addressToLineWithInlines' = 204, 'addressToSymbol' = 205, 'demangle' = 206, 'INTROSPECTION' = 207, 'READ' = 208, 'WRITE' = 209, 'CLUSTER' = 210, 'FILE' = 211, 'URL' = 212, 'REMOTE' = 213, 'MONGO' = 214, 'REDIS' = 215, 'MYSQL' = 216, 'POSTGRES' = 217, 'SQLITE' = 218, 'ODBC' = 219, 'JDBC' = 220, 'HDFS' = 221, 'S3' = 222, 'HIVE' = 223, 'AZURE' = 224, 'KAFKA' = 225, 'NATS' = 226, 'RABBITMQ' = 227, 'YTSAURUS' = 228, 'ARROW FLIGHT' = 229, 'SOURCES' = 230, 'ALL' = 231, 'NONE' = 232)](/core/reference/data-types)) — Access parameters for ClickHouse user account.
+- `access_object` ([String](/core/reference/data-types)) — Parameter for access_type. Contains: 1 - Name of the source type for READ/WRITE grants.2 - Name of the table engine for TABLE ENGINE grants.3 - Name of the user for grants like `SET DEFINER`.
+- `database` ([Nullable(String)](/core/reference/data-types)) — Name of a database.
+- `table` ([Nullable(String)](/core/reference/data-types)) — Name of a table.
+- `column` ([Nullable(String)](/core/reference/data-types)) — Name of a column to which access is granted.
+- `is_partial_revoke` ([UInt8](/core/reference/data-types)) — Logical value. It shows whether some privileges have been revoked. Possible values: 0 — The row describes a grant, 1 — The row describes a partial revoke.
+- `grant_option` ([UInt8](/core/reference/data-types)) — Permission is granted WITH GRANT OPTION.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/graphite_retentions.mdx b/core/reference/system-tables/graphite_retentions.mdx
new file mode 100644
index 00000000..f3171c07
--- /dev/null
+++ b/core/reference/system-tables/graphite_retentions.mdx
@@ -0,0 +1,27 @@
+---
+description: 'System table containing information about parameters `graphite_rollup`
+ which are used in tables with `GraphiteMergeTree` type engines.'
+keywords: ['system table', 'graphite_retentions']
+slug: /operations/system-tables/graphite_retentions
+title: 'system.graphite_retentions'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about parameters [graphite_rollup](/core/reference/settings/server-settings/settings#graphite) which are used in tables with [\*GraphiteMergeTree](/core/reference/engines/table-engines/mergetree-family/graphitemergetree) engines.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `config_name` ([String](/core/reference/data-types)) — graphite_rollup parameter name.
+- `rule_type` ([String](/core/reference/data-types)) — The rule type. Possible values: RuleTypeAll = 0 - default, with regex, compatible with old scheme; RuleTypePlain = 1 - plain metrics, with regex, compatible with old scheme; RuleTypeTagged = 2 - tagged metrics, with regex, compatible with old scheme; RuleTypeTagList = 3 - tagged metrics, with regex (converted to RuleTypeTagged from string like 'retention=10min ; env=(staging|prod)')
+- `regexp` ([String](/core/reference/data-types)) — A pattern for the metric name.
+- `function` ([String](/core/reference/data-types)) — The name of the aggregating function.
+- `age` ([UInt64](/core/reference/data-types)) — The minimum age of the data in seconds.
+- `precision` ([UInt64](/core/reference/data-types)) — How precisely to define the age of the data in seconds.
+- `priority` ([UInt16](/core/reference/data-types)) — Pattern priority.
+- `is_default` ([UInt8](/core/reference/data-types)) — Whether the pattern is the default.
+- `Tables.database` ([Array(String)](/core/reference/data-types)) — Array of names of database tables that use the `config_name` parameter.
+- `Tables.table` ([Array(String)](/core/reference/data-types)) — Array of table names that use the `config_name` parameter.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/histogram_metric_log.mdx b/core/reference/system-tables/histogram_metric_log.mdx
new file mode 100644
index 00000000..743305dd
--- /dev/null
+++ b/core/reference/system-tables/histogram_metric_log.mdx
@@ -0,0 +1,46 @@
+---
+description: 'System table containing periodic snapshots of histogram metrics, flushed to disk.'
+keywords: ['system table', 'histogram_metric_log']
+sidebarTitle: 'histogram_metric_log'
+slug: /operations/system-tables/histogram_metric_log
+title: 'system.histogram_metric_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+History of `system.histogram_metrics`. Snapshot taken every `collect_interval_milliseconds`, flushed to disk.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Event time with microseconds resolution.
+- `metric` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Metric name.
+- `labels` ([Map(LowCardinality(String), LowCardinality(String))](/core/reference/data-types/map)) — Metric labels.
+- `histogram` ([Map(Float64, UInt64)](/core/reference/data-types/map)) — Cumulative histogram: maps bucket upper bound to number of observations ≤ that bound; includes +inf as the final bucket.
+- `count` ([UInt64](/core/reference/data-types/int-uint)) — Total number of observations, equals histogram[+inf].
+- `sum` ([Float64](/core/reference/data-types/float)) — Sum of all observed values.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT event_time, metric, labels, histogram
+FROM system.histogram_metric_log
+WHERE metric = 'keeper_response_time_ms'
+ORDER BY event_time DESC
+LIMIT 1
+FORMAT Vertical;
+```
+
+## See Also {#see-also}
+
+- [system.histogram_metrics](/core/reference/system-tables/histogram_metrics) — Live histogram metrics.
+- [system.metric_log](/core/reference/system-tables/metric_log) — History of `system.metrics` and `system.events`.
diff --git a/reference/system-tables/histogram_metrics.mdx b/core/reference/system-tables/histogram_metrics.mdx
similarity index 99%
rename from reference/system-tables/histogram_metrics.mdx
rename to core/reference/system-tables/histogram_metrics.mdx
index a479118d..dc55d2f3 100644
--- a/reference/system-tables/histogram_metrics.mdx
+++ b/core/reference/system-tables/histogram_metrics.mdx
@@ -18,10 +18,10 @@ This table contains histogram metrics that can be calculated instantly and expor
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `metric` ([String](/reference/data-types)) — Metric name.
-- `value` ([Float64](/reference/data-types)) — Metric value.
-- `description` ([String](/reference/data-types)) — Metric description.
-- `labels` ([Map(String, String)](/reference/data-types)) — Metric labels.
+- `metric` ([String](/core/reference/data-types)) — Metric name.
+- `value` ([Float64](/core/reference/data-types)) — Metric value.
+- `description` ([String](/core/reference/data-types)) — Metric description.
+- `labels` ([Map(String, String)](/core/reference/data-types)) — Metric labels.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/iceberg_history.mdx b/core/reference/system-tables/iceberg_history.mdx
new file mode 100644
index 00000000..06636ede
--- /dev/null
+++ b/core/reference/system-tables/iceberg_history.mdx
@@ -0,0 +1,22 @@
+---
+description: 'System iceberg snapshot history'
+keywords: ['system iceberg_history']
+slug: /operations/system-tables/iceberg_history
+title: 'system.iceberg_history'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+This system table contain the snapshot history of Iceberg tables existing in ClickHouse. It will be empty if you don't have any Iceberg table in ClickHouse.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `made_current_at` ([Nullable(DateTime64(3))](/core/reference/data-types)) — Date & time when this snapshot was made current snapshot
+- `snapshot_id` ([UInt64](/core/reference/data-types)) — Snapshot id which is used to identify a snapshot.
+- `parent_id` ([UInt64](/core/reference/data-types)) — Parent id of this snapshot.
+- `is_current_ancestor` ([UInt8](/core/reference/data-types)) — Flag that indicates if this snapshot is an ancestor of the current snapshot.
+{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/iceberg_metadata_log.mdx b/core/reference/system-tables/iceberg_metadata_log.mdx
similarity index 72%
rename from reference/system-tables/iceberg_metadata_log.mdx
rename to core/reference/system-tables/iceberg_metadata_log.mdx
index d279bc0d..64c17040 100644
--- a/reference/system-tables/iceberg_metadata_log.mdx
+++ b/core/reference/system-tables/iceberg_metadata_log.mdx
@@ -23,7 +23,7 @@ This table is primarily intended for debugging purposes.
### Controlling log verbosity {#controlling-log-verbosity}
-You can control which metadata events are logged using the [`iceberg_metadata_log_level`](/reference/settings/session-settings#iceberg_metadata_log_level) setting.
+You can control which metadata events are logged using the [`iceberg_metadata_log_level`](/core/reference/settings/session-settings#iceberg_metadata_log_level) setting.
To log all metadata used in the current query:
@@ -49,7 +49,7 @@ FROM system.iceberg_metadata_log
WHERE query_id = '{previous_query_id}';
```
-See more information in the description of the [`iceberg_metadata_log_level`](/reference/settings/session-settings#iceberg_metadata_log_level) setting.
+See more information in the description of the [`iceberg_metadata_log_level`](/core/reference/settings/session-settings#iceberg_metadata_log_level) setting.
### Good To Know {#good-to-know}
@@ -62,16 +62,16 @@ See more information in the description of the [`iceberg_metadata_log_level`](/r
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
-- `event_date` ([Date](/reference/data-types/date)) — Date of the entry.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Event time.
-- `query_id` ([String](/reference/data-types/string)) — Query id.
-- `content_type` ([Enum8('None' = 0, 'Metadata' = 1, 'ManifestListMetadata' = 2, 'ManifestListEntry' = 3, 'ManifestFileMetadata' = 4, 'ManifestFileEntry' = 5)](/reference/data-types/enum)) — Content type.
-- `table_path` ([String](/reference/data-types/string)) — Table path.
-- `file_path` ([String](/reference/data-types/string)) — File path.
-- `content` ([String](/reference/data-types/string)) — Content in a JSON format (json file content, avro metadata or avro entry).
-- `row_in_file` ([Nullable(UInt64)](/reference/data-types/nullable)) — Row in file.
-- `pruning_status` ([Nullable(Enum8('NotPruned' = 0, 'PartitionPruned' = 1, 'MinMaxIndexPruned' = 2))](/reference/data-types/nullable)) — Status of partition pruning or min-max index pruning for the file.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of the entry.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `query_id` ([String](/core/reference/data-types/string)) — Query id.
+- `content_type` ([Enum8('None' = 0, 'Metadata' = 1, 'ManifestListMetadata' = 2, 'ManifestListEntry' = 3, 'ManifestFileMetadata' = 4, 'ManifestFileEntry' = 5)](/core/reference/data-types/enum)) — Content type.
+- `table_path` ([String](/core/reference/data-types/string)) — Table path.
+- `file_path` ([String](/core/reference/data-types/string)) — File path.
+- `content` ([String](/core/reference/data-types/string)) — Content in a JSON format (json file content, avro metadata or avro entry).
+- `row_in_file` ([Nullable(UInt64)](/core/reference/data-types/nullable)) — Row in file.
+- `pruning_status` ([Nullable(Enum8('NotPruned' = 0, 'PartitionPruned' = 1, 'MinMaxIndexPruned' = 2))](/core/reference/data-types/nullable)) — Status of partition pruning or min-max index pruning for the file.
{/*AUTOGENERATED_END*/}
### `content_type` values {#content-type-values}
@@ -84,6 +84,6 @@ See more information in the description of the [`iceberg_metadata_log_level`](/r
- `ManifestFileEntry`: Entry in a manifest file.
## See also {#see-also}
-- [Iceberg Table Engine](/reference/engines/table-engines/integrations/iceberg)
-- [Iceberg Table Function](/reference/functions/table-functions/iceberg)
-- [system.iceberg_history](/reference/system-tables/iceberg_history)
+- [Iceberg Table Engine](/core/reference/engines/table-engines/integrations/iceberg)
+- [Iceberg Table Function](/core/reference/functions/table-functions/iceberg)
+- [system.iceberg_history](/core/reference/system-tables/iceberg_history)
diff --git a/core/reference/system-tables/index.mdx b/core/reference/system-tables/index.mdx
new file mode 100644
index 00000000..7454b2da
--- /dev/null
+++ b/core/reference/system-tables/index.mdx
@@ -0,0 +1,180 @@
+---
+description: 'Overview of what system tables are and why they are useful.'
+keywords: ['system tables', 'overview']
+sidebarTitle: 'Overview'
+slug: /operations/system-tables/
+title: 'System Tables'
+doc_type: 'reference'
+---
+
+{/* The table of contents table for this page is automatically generated by
+https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh
+from the YAML front matter fields: slug, description, title.
+
+If you've spotted an error, please edit the YML frontmatter of the pages themselves.
+*/}
+
+{/*AUTOGENERATED_START*/}
+| Page | Description |
+|-----|-----|
+| [System Tables Overview](/core/reference/system-tables/overview) | Overview of what system tables are and why they are useful. |
+| [system.histogram_metric_log](/core/reference/system-tables/histogram_metric_log) | System table containing periodic snapshots of histogram metrics, flushed to disk. |
+| [INFORMATION_SCHEMA](/core/reference/system-tables/information_schema) | System database providing an almost standardized DBMS-agnostic view on metadata of database objects. |
+| [system.aggregate_function_combinators](/core/reference/system-tables/aggregate_function_combinators) | Contains a list of all available aggregate function combinators, which could be applied to aggregate functions and change the way they work. |
+| [system.aggregated_zookeeper_log](/core/reference/system-tables/aggregated_zookeeper_log) | System table containing aggregated statistics of ZooKeeper operations grouped by session, path, operation type, component, and subrequest flag. |
+| [system.asynchronous_insert_log](/core/reference/system-tables/asynchronous_insert_log) | System table containing information about async inserts. Each entry represents an insert query buffered into an async insert query. |
+| [system.asynchronous_loader](/core/reference/system-tables/asynchronous_loader) | System table containing information about and status of recent asynchronous jobs (e.g. for tables which are loading). The table contains a row for every job. |
+| [system.asynchronous_metric_log](/core/reference/system-tables/asynchronous_metric_log) | System table containing historical values for `system.asynchronous_metrics`, which are saved once per time interval (one second by default) |
+| [system.asynchronous_inserts](/core/reference/system-tables/asynchronous_inserts) | System table containing information about pending asynchronous inserts in queue. |
+| [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) | System table containing metrics that are calculated periodically in the background. For example, the amount of RAM in use. |
+| [system.azure_queue_settings](/core/reference/system-tables/azure_queue_settings) | System table containing information about settings of AzureQueue tables. Available from server version `24.10`. |
+| [system.azure_queue_metadata_cache](/core/reference/system-tables/azure_queue_metadata_cache) | Contains in-memory state of AzureQueue metadata and currently processed rows per file. |
+| [system.azure_queue_log](/core/reference/system-tables/azure_queue_log) | Contains log entries with information about files processed by the AzureQueue engine.
+It is safe to truncate or drop this table at any time. |
+| [system.background_schedule_pool_log](/core/reference/system-tables/background_schedule_pool_log) | System table containing history of background schedule pool task executions. |
+| [system.background_schedule_pool](/core/reference/system-tables/background_schedule_pool) | System table containing information about tasks in background schedule pools. |
+| [system.backup_log](/core/reference/system-tables/backup_log) | System table containing logging entries with information about `BACKUP` and `RESTORE` operations. |
+| [system.backups](/core/reference/system-tables/backups) | System table containing logging entries with information about `BACKUP` and `RESTORE` operations. |
+| [system.blob_storage_log](/core/reference/system-tables/blob_storage_log) | System table containing logging entries with information about various blob storage operations such as uploads and deletes. |
+| [system.build_options](/core/reference/system-tables/build_options) | System table containing information about ClickHouse server's build options. |
+| [system.certificates](/core/reference/system-tables/certificates) | Contains information about available certificates and their sources. |
+| [system.clusters](/core/reference/system-tables/clusters) | System table containing information about clusters available in the config file and the servers defined in them. |
+| [system.codecs](/core/reference/system-tables/codecs) | System table containing information about codecs in queue. |
+| [system.collations](/core/reference/system-tables/collations) | Contains a list of all available collations for alphabetical comparison of strings. |
+| [system.columns](/core/reference/system-tables/columns) | System table containing information about columns in all tables |
+| [system.completions](/core/reference/system-tables/completions) | Contains a list of completion tokens. |
+| [system.contributors](/core/reference/system-tables/contributors) | System table containing information about contributors. |
+| [system.crash_log](/core/reference/system-tables/crash_log) | System table containing information about stack traces for fatal errors. |
+| [system.current_roles](/core/reference/system-tables/current_roles) | System table containing active roles for the current user. |
+| [system.dashboards](/core/reference/system-tables/dashboards) | Contains queries used by `/dashboard` page accessible though the HTTP interface. useful for monitoring and troubleshooting. |
+| [system.data_skipping_indices](/core/reference/system-tables/data_skipping_indices) | System table containing information about existing data skipping indices in all the tables. |
+| [system.data_type_families](/core/reference/system-tables/data_type_families) | System table containing information about supported data types |
+| [system.database_engines](/core/reference/system-tables/database_engines) | System table containing a list of database engines supported by the server. |
+| [system.database_replicas](/core/reference/system-tables/database_replicas) | System table containing information about and status of replicated database. |
+| [system.databases](/core/reference/system-tables/databases) | System table containing information about the databases that are available to the current user. |
+| [system.dead_letter_queue](/core/reference/system-tables/dead_letter_queue) | System table containing information about messages received via a streaming engine and parsed with errors. |
+| [system.delta_lake_metadata_log](/core/reference/system-tables/delta_metadata_log) | System table containing information about metadata files read from Delta Lake tables. Each entry represents a root metadata JSON file. |
+| [system.detached_parts](/core/reference/system-tables/detached_parts) | System table containing information about detached parts of MergeTree tables |
+| [system.detached_tables](/core/reference/system-tables/detached_tables) | System table containing information about each detached table. |
+| [system.dictionaries](/core/reference/system-tables/dictionaries) | System table containing information about dictionaries |
+| [system.dimensional_metrics](/core/reference/system-tables/dimensional_metrics) | This table contains dimensional metrics that can be calculated instantly and exported in the Prometheus format. It is always up to date. |
+| [system.disks](/core/reference/system-tables/disks) | System table containing information about disks defined in the server configuration |
+| [system.distributed_ddl_queue](/core/reference/system-tables/distributed_ddl_queue) | System table containing information about distributed ddl queries (queries using the ON CLUSTER clause) that were executed on a cluster. |
+| [system.distribution_queue](/core/reference/system-tables/distribution_queue) | System table containing information about local files that are in the queue to be sent to the shards. |
+| [system.dns_cache](/core/reference/system-tables/dns_cache) | System table containing information about cached DNS records. |
+| [system.dropped_tables](/core/reference/system-tables/dropped_tables) | System table containing information about tables that drop table has been executed on but for which data cleanup has not yet been performed |
+| [system.dropped_tables_parts](/core/reference/system-tables/dropped_tables_parts) | System table containing information about parts of MergeTree dropped tables from `system.dropped_tables` |
+| [system.enabled_roles](/core/reference/system-tables/enabled_roles) | System table containing all active roles at the moment, including the current role of the current user and the granted roles for the current role |
+| [system.error_log](/core/reference/system-tables/error_log) | System table containing the history of error values from table `system.errors`, periodically flushed to disk. |
+| [system.errors](/core/reference/system-tables/errors) | System table containing error codes with the number of times they have been triggered. |
+| [system.events](/core/reference/system-tables/events) | System table containing information about the number of events that have occurred in the system. |
+| [system.fail_points](/core/reference/system-tables/fail_points) | Contains a list of all available failpoints with their type and current status. |
+| [system.filesystem_cache_settings](/core/reference/system-tables/filesystem_cache_settings) | Contains information about all filesystem cache settings |
+| [system.filesystem_read_prefetches_log](/core/reference/system-tables/filesystem_read_prefetches_log) | Contains a history of all prefetches done during reading from MergeTree tables backed by a remote filesystem.
+It is safe to truncate or drop this table at any time. |
+| [system.filesystem_cache_log](/core/reference/system-tables/filesystem_cache_log) | Contains a history of all events occurred with filesystem cache for objects on a remote filesystem.
+It is safe to truncate or drop this table at any time. |
+| [system.filesystem_cache](/core/reference/system-tables/filesystem_cache) | Contains information about all entries inside filesystem cache for remote objects. |
+| [system.formats](/core/reference/system-tables/formats) | Contains a list of all the formats along with flags whether a format is suitable for input/output or whether it supports parallelization. |
+| [system.functions](/core/reference/system-tables/functions) | System table containing information about normal and aggregate functions. |
+| [system.grants](/core/reference/system-tables/grants) | System table showing which privileges are granted to ClickHouse user accounts. |
+| [system.graphite_retentions](/core/reference/system-tables/graphite_retentions) | System table containing information about parameters `graphite_rollup` which are used in tables with `GraphiteMergeTree` type engines. |
+| [system.histogram_metrics](/core/reference/system-tables/histogram_metrics) | This table contains histogram metrics that can be calculated instantly and exported in the Prometheus format. It is always up to date. |
+| [system.iceberg_history](/core/reference/system-tables/iceberg_history) | System iceberg snapshot history |
+| [system.iceberg_metadata_log](/core/reference/system-tables/iceberg_metadata_log) | System table containing information about metadata files read from Iceberg tables. Each entry represents either a root metadata file, metadata extracted from an Avro file, or an entry of some Avro file. |
+| [system.instrumentation](/core/reference/system-tables/instrumentation) | System table containing the instrumentation points |
+| [system.jemalloc_stats](/core/reference/system-tables/jemalloc_stats) | Returns jemalloc statistics in a single row with a single column. Equivalent to SYSTEM JEMALLOC STATS command. |
+| [system.jemalloc_bins](/core/reference/system-tables/jemalloc_bins) | System table containing information about memory allocations done via jemalloc allocator in different size classes (bins) aggregated from all arenas. |
+| [system.jemalloc_profile_text](/core/reference/system-tables/jemalloc_profile_text) | Displays the symbolized jemalloc heap profile. Run 'SYSTEM JEMALLOC FLUSH PROFILE' to generate a profile first. |
+| [system.kafka_consumers](/core/reference/system-tables/kafka_consumers) | System table containing information about Kafka consumers. |
+| [system.keywords](/core/reference/system-tables/keywords) | Contains a list of all keywords used in ClickHouse parser. |
+| [system.licenses](/core/reference/system-tables/licenses) | System table containing licenses of third-party libraries that are located in the contrib directory of ClickHouse sources. |
+| [system.macros](/core/reference/system-tables/macros) | Contains a list of all macros defined in server configuration. |
+| [system.masking_policies](/core/reference/system-tables/masking_policies) | System table containing information about all masking policies in the system. |
+| [system.merge_tree_settings](/core/reference/system-tables/merge_tree_settings) | System table containing information about settings for MergeTree tables. |
+| [system.merges](/core/reference/system-tables/merges) | System table containing information about merges and part mutations currently in process for tables in the MergeTree family. |
+| [system.metric_log](/core/reference/system-tables/metric_log) | System table containing history of metrics values from tables `system.metrics` and `system.events`, periodically flushed to disk. |
+| [system.metrics](/core/reference/system-tables/metrics) | System table containing metrics which can be calculated instantly, or have a current value. |
+| [system.models](/core/reference/system-tables/models) | Contains a list of CatBoost models loaded into a LibraryBridge's memory along with time when it was loaded. |
+| [system.moves](/core/reference/system-tables/moves) | System table containing information about in-progress data part moves of MergeTree tables. Each data part movement is represented by a single row. |
+| [system.mutations](/core/reference/system-tables/mutations) | System table containing information about mutations of MergeTree tables and their progress. Each mutation command is represented by a single row. |
+| [system.named_collections](/core/reference/system-tables/named_collections) | Contains a list of all named collections which were created via SQL query or parsed from configuration file. |
+| [system.numbers_mt](/core/reference/system-tables/numbers_mt) | System table similar to `system.numbers` but reads are parallelized and numbers can be returned in any order. |
+| [system.numbers](/core/reference/system-tables/numbers) | System table containing a single UInt64 column named `number` that contains almost all the natural numbers starting from zero. |
+| [system.one](/core/reference/system-tables/one) | System table containing a single row with a single `dummy` UInt8 column containing the value 0. Similar to the `DUAL` table found in other DBMSs. |
+| [system.opentelemetry_span_log](/core/reference/system-tables/opentelemetry_span_log) | System table containing information about trace spans for executed queries. |
+| [system.part_moves_between_shards](/core/reference/system-tables/part_moves_between_shards) | Contains information about parts which are currently in a process of moving between shards and their progress. |
+| [system.part_log](/core/reference/system-tables/part_log) | System table containing information about events that occurred with data parts in the MergeTree family tables, such as adding or merging of data. |
+| [system.parts](/core/reference/system-tables/parts) | System table containing information about parts of MergeTree |
+| [system.parts_columns](/core/reference/system-tables/parts_columns) | System table containing information about parts and columns of MergeTree tables. |
+| [system.predicate_statistics_log](/core/reference/system-tables/predicate_statistics_log) | System table containing sampled filter and index selectivity statistics collected from `MergeTree` read pipelines during query execution. |
+| [system.primes](/core/reference/system-tables/primes) | System table containing a single UInt64 column named `prime` that contains prime numbers in ascending order, starting from 2. |
+| [system.privileges](/core/reference/system-tables/privileges) | Contains a list of all available privileges that could be granted to a user or role. |
+| [system.processes](/core/reference/system-tables/processes) | System table used for implementing the `SHOW PROCESSLIST` query. |
+| [system.processors_profile_log](/core/reference/system-tables/processors_profile_log) | System table containing profiling information on the processors level (which can be found in `EXPLAIN PIPELINE`) |
+| [system.projection_parts_columns](/core/reference/system-tables/projection_parts_columns) | System table containing information about columns in projection parts for tables of the MergeTree family |
+| [system.projection_parts](/core/reference/system-tables/projection_parts) | System table containing information about projection parts for tables of the MergeTree family. |
+| [system.projections](/core/reference/system-tables/projections) | System table containing information about existing projections in all tables. |
+| [system.query_views_log](/core/reference/system-tables/query_views_log) | System table containing information about the dependent views executed when running a query, for example, the view type or the execution time. |
+| [system.query_condition_cache](/core/reference/system-tables/query_condition_cache) | System table which shows the content of the query condition cache. |
+| [system.query_thread_log](/core/reference/system-tables/query_thread_log) | System table containing information about threads that execute queries, for example, thread name, thread start time, duration of query processing. |
+| [system.query_metric_log](/core/reference/system-tables/query_metric_log) | System table containing a history of memory and metric values from table `system.events` for individual queries, periodically flushed to disk. |
+| [system.query_log](/core/reference/system-tables/query_log) | System table containing information about executed queries, for example, start time, duration of processing, error messages. |
+| [system.query_cache](/core/reference/system-tables/query_cache) | System table which shows the content of the query cache. |
+| [system.quota_usage](/core/reference/system-tables/quota_usage) | System table containing formation about quota usage by the current user such as how much of the quota is used and how much is left. |
+| [system.quota_limits](/core/reference/system-tables/quota_limits) | System table containing information about maximums for all intervals of all quotas. Any number of rows or zero can correspond to one quota. |
+| [system.quotas_usage](/core/reference/system-tables/quotas_usage) | System table containing formation about quota usage by all users. |
+| [system.quotas](/core/reference/system-tables/quotas) | System table containing information about quotas. |
+| [system.remote_data_paths](/core/reference/system-tables/remote_data_paths) | System table containing information about data files stored on remote disks such as S3 or Azure Blob Storage. |
+| [system.replicas](/core/reference/system-tables/replicas) | System table containing information about and status of replicated tables residing on the local server. Useful for monitoring. |
+| [system.replicated_merge_tree_settings](/core/reference/system-tables/replicated_merge_tree_settings) | Contains a list of all ReplicatedMergeTree engine specific settings, their current and default values along with descriptions. You may change any of them in SETTINGS section in CREATE query. |
+| [system.replicated_fetches](/core/reference/system-tables/replicated_fetches) | System table containing information about currently running background fetches. |
+| [system.replication_queue](/core/reference/system-tables/replication_queue) | System table containing information about tasks from replication queues stored in ClickHouse Keeper, or ZooKeeper, for tables in the `ReplicatedMergeTree` family. |
+| [system.resources](/core/reference/system-tables/resources) | System table containing information about resources residing on the local server with one row for every resource. |
+| [system.rocksdb](/core/reference/system-tables/rocksdb) | Contains a list of metrics exposed from embedded RocksDB. |
+| [system.role_grants](/core/reference/system-tables/role_grants) | System table containing the role grants for users and roles. |
+| [system.roles](/core/reference/system-tables/roles) | System table containing information about configured roles. |
+| [system.row_policies](/core/reference/system-tables/row_policies) | System table containing filters for one particular table, as well as a list of roles and/or users which should use this row policy. |
+| [system.s3_queue_settings](/core/reference/system-tables/s3_queue_settings) | System table containing information about the settings of S3Queue tables. Available from server version `24.10`. |
+| [system.s3queue_metadata_cache](/core/reference/system-tables/s3queue_metadata_cache) | Contains in-memory state of S3Queue metadata and currently processed rows per file. |
+| [system.s3queue_log](/core/reference/system-tables/s3queue_log) | Contains log entries with information about files processed by the S3Queue engine.
+It is safe to truncate or drop this table at any time. |
+| [system.scheduler](/core/reference/system-tables/scheduler) | System table containing information about and status of scheduling nodes residing on the local server. |
+| [system.schema_inference_cache](/core/reference/system-tables/schema_inference_cache) | System table containing information about all cached file schemas. |
+| [system.server_settings](/core/reference/system-tables/server_settings) | System table containing formation about global settings for the server, which are specified in `config.xml`. |
+| [system.session_log](/core/reference/system-tables/session_log) | System table containing information about all successful and failed login and logout events. |
+| [system.settings](/core/reference/system-tables/settings) | System table containing information about session settings for current user. |
+| [system.settings_profile_elements](/core/reference/system-tables/settings_profile_elements) | System table which describes the content of the settings profile: constraints, roles and users that the setting applies to, parent settings profiles. |
+| [system.settings_changes](/core/reference/system-tables/settings_changes) | System table containing information about setting changes in previous ClickHouse versions. |
+| [system.settings_profiles](/core/reference/system-tables/settings_profiles) | System table which contains properties of configured setting profiles. |
+| [system.stack_trace](/core/reference/system-tables/stack_trace) | System table which contains stack traces of all server threads. Allows developers to introspect the server state. |
+| [system.storage_policies](/core/reference/system-tables/storage_policies) | System table containing information about storage policies and volumes which are defined in server configuration. |
+| [system.symbols](/core/reference/system-tables/symbols) | System table useful for C++ experts and ClickHouse engineers containing information for introspection of the `clickhouse` binary. |
+| [system.table_engines](/core/reference/system-tables/table_engines) | System table containing descriptions of table engines supported by the server and the features they support. |
+| [system.table_functions](/core/reference/system-tables/table_functions) | Contains a list of all available table functions with their descriptions. |
+| [system.tables](/core/reference/system-tables/tables) | System table containing metadata of each table that the server knows about. |
+| [system.text_log](/core/reference/system-tables/text_log) | System table containing logging entries. |
+| [system.time_zones](/core/reference/system-tables/time_zones) | System table containing a list of time zones that are supported by the ClickHouse server. |
+| [system.tokenizers](/core/reference/system-tables/tokenizers) | System table which shows all available tokenizers. |
+| [system.trace_log](/core/reference/system-tables/trace_log) | System table containing stack traces collected by the sampling query profiler. |
+| [system.transactions](/core/reference/system-tables/transactions) | Contains a list of transactions and their state. |
+| [system.transactions_info_log](/core/reference/system-tables/transactions_info_log) | Contains information about all transactions executed on a current server.
+It is safe to truncate or drop this table at any time. |
+| [system.unicode](/core/reference/system-tables/unicode) | System table containing a list of Unicode characters and their properties. |
+| [system.user_processes](/core/reference/system-tables/user_processes) | System table containing information useful for an overview of memory usage and ProfileEvents of users. |
+| [system.user_directories](/core/reference/system-tables/user_directories) | Contains the information about configured user directories - directories on the file system from which ClickHouse server is allowed to read user provided data. |
+| [system.user_defined_functions](/core/reference/system-tables/user_defined_functions) | System table containing loading status and configuration metadata for User-Defined Functions (UDFs). |
+| [system.users](/core/reference/system-tables/users) | System table containing a list of user accounts configured on the server. |
+| [system.view_refreshes](/core/reference/system-tables/view_refreshes) | System table containing information about Refreshable Materialized Views. |
+| [system.warnings](/core/reference/system-tables/system_warnings) | This table contains warning messages about clickhouse server. |
+| [system.warnings](/core/reference/system-tables/warnings) | Contains warnings about server configuration to be displayed by clickhouse-client right after it connects to the server. |
+| [system.workloads](/core/reference/system-tables/workloads) | System table containing information for workloads residing on the local server. |
+| [system.zeros](/core/reference/system-tables/zeros) | Produces unlimited number of non-materialized zeros. |
+| [system.zeros_mt](/core/reference/system-tables/zeros_mt) | Multithreaded version of system.zeros. |
+| [system.zookeeper_watches](/core/reference/system-tables/zookeeper_watches) | System table showing currently active ZooKeeper watches registered by this ClickHouse server. |
+| [system.zookeeper_info](/core/reference/system-tables/zookeeper_info) | System table which outputs introspection of all available keeper nodes. |
+| [system.zookeeper_log](/core/reference/system-tables/zookeeper_log) | System table containing information about the parameters of the request to the ZooKeeper server and the response from it. |
+| [system.zookeeper_connection](/core/reference/system-tables/zookeeper_connection) | System table which exists only if ZooKeeper is configured. Shows current connections to ZooKeeper (including auxiliary ZooKeepers). |
+| [system.zookeeper_connection_log](/core/reference/system-tables/zookeeper_connection_log) | Shows the history of ZooKeeper connections (including auxiliary ZooKeepers). |
+| [system.zookeeper](/core/reference/system-tables/zookeeper) | System table which exists only if ClickHouse Keeper or ZooKeeper are configured. It exposes data from the Keeper cluster defined in the config. |
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/information_schema.mdx b/core/reference/system-tables/information_schema.mdx
new file mode 100644
index 00000000..3268a7a1
--- /dev/null
+++ b/core/reference/system-tables/information_schema.mdx
@@ -0,0 +1,364 @@
+---
+description: 'System database providing an almost standardized DBMS-agnostic view
+ on metadata of database objects.'
+keywords: ['system database', 'information_schema']
+slug: /operations/system-tables/information_schema
+title: 'INFORMATION_SCHEMA'
+doc_type: 'reference'
+---
+
+`INFORMATION_SCHEMA` (or: `information_schema`) is a system database which provides a (somewhat) standardized, [DBMS-agnostic view](https://en.wikipedia.org/wiki/Information_schema) on metadata of database objects. The views in `INFORMATION_SCHEMA` are generally inferior to normal system tables but tools can use them to obtain basic information in a cross-DBMS manner. The structure and content of views in `INFORMATION_SCHEMA` is supposed to evolves in a backwards-compatible way, i.e. only new functionality is added but existing functionality is not changed or removed. In terms of internal implementation, views in `INFORMATION_SCHEMA` usually map to to normal system tables like [system.columns](/core/reference/system-tables/columns), [system.databases](/core/reference/system-tables/databases) and [system.tables](/core/reference/system-tables/tables).
+
+```sql
+SHOW TABLES FROM INFORMATION_SCHEMA;
+
+-- or:
+SHOW TABLES FROM information_schema;
+```
+
+```text
+┌─name────────────────────┐
+│ COLUMNS │
+│ KEY_COLUMN_USAGE │
+│ REFERENTIAL_CONSTRAINTS │
+│ SCHEMATA │
+| STATISTICS |
+│ TABLES │
+│ VIEWS │
+│ columns │
+│ key_column_usage │
+│ referential_constraints │
+│ schemata │
+| statistics |
+│ tables │
+│ views │
+└─────────────────────────┘
+```
+
+`INFORMATION_SCHEMA` contains the following views:
+
+- [COLUMNS](#columns)
+- [KEY_COLUMN_USAGE](#key_column_usage)
+- [REFERENTIAL_CONSTRAINTS](#referential_constraints)
+- [SCHEMATA](#schemata)
+- [STATISTICS](#statistics)
+- [TABLES](#tables)
+- [VIEWS](#views)
+
+Case-insensitive equivalent views, e.g. `INFORMATION_SCHEMA.columns` are provided for reasons of compatibility with other databases. The same applies to all the columns in these views - both lowercase (for example, `table_name`) and uppercase (`TABLE_NAME`) variants are provided.
+
+## COLUMNS {#columns}
+
+Contains columns read from the [system.columns](/core/reference/system-tables/columns) system table and columns that are not supported in ClickHouse or do not make sense (always `NULL`), but must be by the standard.
+
+Columns:
+
+{/*AUTOGENERATED_START*/}
+- `table_catalog` ([String](/core/reference/data-types/string)) — Currently unused.
+- `table_schema` ([String](/core/reference/data-types/string)) — Currently unused.
+- `table_name` ([String](/core/reference/data-types/string)) — Currently unused.
+- `non_unique` ([Int32](/core/reference/data-types/int-uint)) — Currently unused.
+- `index_schema` ([String](/core/reference/data-types/string)) — Currently unused.
+- `index_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused.
+- `seq_in_index` ([UInt32](/core/reference/data-types/int-uint)) — Currently unused.
+- `column_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused.
+- `collation` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused.
+- `cardinality` ([Nullable](/core/reference/data-types/nullable)([Int64](/core/reference/data-types/int-uint))) — Currently unused.
+- `sub_part` ([Nullable](/core/reference/data-types/nullable)([Int64](/core/reference/data-types/int-uint))) — Currently unused.
+- `packed` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused.
+- `nullable` ([String](/core/reference/data-types/string)) — Currently unused.
+- `index_type` ([String](/core/reference/data-types/string)) — Currently unused.
+- `comment` ([String](/core/reference/data-types/string)) — Currently unused.
+- `index_comment` ([String](/core/reference/data-types/string)) — Currently unused.
+- `is_visible` ([String](/core/reference/data-types/string)) — Currently unused.
+- `expression` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused.
+{/*AUTOGENERATED_END*/}
+
+**Example**
+
+```sql title="Query"
+SELECT table_catalog,
+ table_schema,
+ table_name,
+ column_name,
+ ordinal_position,
+ column_default,
+ is_nullable,
+ data_type,
+ character_maximum_length,
+ character_octet_length,
+ numeric_precision,
+ numeric_precision_radix,
+ numeric_scale,
+ datetime_precision,
+ character_set_catalog,
+ character_set_schema,
+ character_set_name,
+ collation_catalog,
+ collation_schema,
+ collation_name,
+ domain_catalog,
+ domain_schema,
+ domain_name,
+ column_comment,
+ column_type
+FROM INFORMATION_SCHEMA.COLUMNS
+WHERE (table_schema = currentDatabase() OR table_schema = '')
+ AND table_name NOT LIKE '%inner%'
+LIMIT 1
+FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+table_catalog: default
+table_schema: default
+table_name: describe_example
+column_name: id
+ordinal_position: 1
+column_default:
+is_nullable: 0
+data_type: UInt64
+character_maximum_length: ᴺᵁᴸᴸ
+character_octet_length: ᴺᵁᴸᴸ
+numeric_precision: 64
+numeric_precision_radix: 2
+numeric_scale: 0
+datetime_precision: ᴺᵁᴸᴸ
+character_set_catalog: ᴺᵁᴸᴸ
+character_set_schema: ᴺᵁᴸᴸ
+character_set_name: ᴺᵁᴸᴸ
+collation_catalog: ᴺᵁᴸᴸ
+collation_schema: ᴺᵁᴸᴸ
+collation_name: ᴺᵁᴸᴸ
+domain_catalog: ᴺᵁᴸᴸ
+domain_schema: ᴺᵁᴸᴸ
+domain_name: ᴺᵁᴸᴸ
+```
+
+## SCHEMATA {#schemata}
+
+Contains columns read from the [system.databases](/core/reference/system-tables/databases) system table and columns that are not supported in ClickHouse or do not make sense (always `NULL`), but must be by the standard.
+
+Columns:
+
+- `catalog_name` ([String](/core/reference/data-types/string)) — The name of the database.
+- `schema_name` ([String](/core/reference/data-types/string)) — The name of the database.
+- `schema_owner` ([String](/core/reference/data-types/string)) — Schema owner name, always `'default'`.
+- `default_character_set_catalog` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — `NULL`, not supported.
+- `default_character_set_schema` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — `NULL`, not supported.
+- `default_character_set_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — `NULL`, not supported.
+- `sql_path` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — `NULL`, not supported.
+
+**Example**
+
+```sql title="Query"
+SELECT catalog_name,
+ schema_name,
+ schema_owner,
+ default_character_set_catalog,
+ default_character_set_schema,
+ default_character_set_name,
+ sql_path
+FROM information_schema.schemata
+WHERE schema_name ILIKE 'information_schema'
+LIMIT 1
+FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+catalog_name: INFORMATION_SCHEMA
+schema_name: INFORMATION_SCHEMA
+schema_owner: default
+default_character_set_catalog: ᴺᵁᴸᴸ
+default_character_set_schema: ᴺᵁᴸᴸ
+default_character_set_name: ᴺᵁᴸᴸ
+sql_path: ᴺᵁᴸᴸ
+```
+
+## TABLES {#tables}
+
+Contains columns read from the [system.tables](/core/reference/system-tables/tables) system table.
+
+Columns:
+
+- `table_catalog` ([String](/core/reference/data-types/string)) — The name of the database in which the table is located.
+- `table_schema` ([String](/core/reference/data-types/string)) — The name of the database in which the table is located.
+- `table_name` ([String](/core/reference/data-types/string)) — Table name.
+- `table_type` ([String](/core/reference/data-types/string)) — Table type. Possible values:
+ - `BASE TABLE`
+ - `VIEW`
+ - `FOREIGN TABLE`
+ - `LOCAL TEMPORARY`
+ - `SYSTEM VIEW`
+- `table_rows` ([Nullable](/core/reference/data-types/nullable)([UInt64](/core/reference/data-types/int-uint))) — The total number of rows. NULL if it could not be determined.
+- `data_length` ([Nullable](/core/reference/data-types/nullable)([UInt64](/core/reference/data-types/int-uint))) — The size of the data on-disk. NULL if it could not be determined.
+- `index_length` ([Nullable](/core/reference/data-types/nullable)([UInt64](/core/reference/data-types/int-uint))) — The total size of the primary key, secondary indexes, and all marks.
+- `table_collation` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — The table default collation. Always `utf8mb4_0900_ai_ci`.
+- `table_comment` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — The comment used when creating the table.
+
+**Example**
+
+```sql title="Query"
+SELECT table_catalog,
+ table_schema,
+ table_name,
+ table_type,
+ table_collation,
+ table_comment
+FROM INFORMATION_SCHEMA.TABLES
+WHERE (table_schema = currentDatabase() OR table_schema = '')
+ AND table_name NOT LIKE '%inner%'
+LIMIT 1
+FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+table_catalog: default
+table_schema: default
+table_name: describe_example
+table_type: BASE TABLE
+table_collation: utf8mb4_0900_ai_ci
+table_comment:
+```
+
+## VIEWS {#views}
+
+Contains columns read from the [system.tables](/core/reference/system-tables/tables) system table, when the table engine [View](/core/reference/engines/table-engines/special/view) is used.
+
+Columns:
+
+{/*AUTOGENERATED_START*/}
+- `table_catalog` ([String](/core/reference/data-types/string)) — The name of the database in which the table is located.
+- `table_schema` ([String](/core/reference/data-types/string)) — The name of the database in which the table is located.
+- `table_name` ([String](/core/reference/data-types/string)) — Table name.
+- `view_definition` ([String](/core/reference/data-types/string)) — `SELECT` query for view.
+- `check_option` ([String](/core/reference/data-types/string)) — `NONE`, no checking.
+- `is_updatable` ([Enum8](/core/reference/data-types/enum)) — `NO`, the view is not updated.
+- `is_insertable_into` ([Enum8](/core/reference/data-types/enum)) — Shows whether the created view is [materialized](/core/reference/statements/create/view#materialized-view). Possible values:
+ - `NO` — The created view is not materialized.
+ - `YES` — The created view is materialized.
+- `is_trigger_updatable` ([Enum8](/core/reference/data-types/enum)) — `NO`, the trigger is not updated.
+- `is_trigger_deletable` ([Enum8](/core/reference/data-types/enum)) — `NO`, the trigger is not deleted.
+- `is_trigger_insertable_into` ([Enum8](/core/reference/data-types/enum)) — `NO`, no data is inserted into the trigger.
+{/*AUTOGENERATED_END*/}
+
+**Example**
+
+```sql title="Query"
+CREATE VIEW v (n Nullable(Int32), f Float64) AS SELECT n, f FROM t;
+CREATE MATERIALIZED VIEW mv ENGINE = Null AS SELECT * FROM system.one;
+SELECT table_catalog,
+ table_schema,
+ table_name,
+ view_definition,
+ check_option,
+ is_updatable,
+ is_insertable_into,
+ is_trigger_updatable,
+ is_trigger_deletable,
+ is_trigger_insertable_into
+FROM information_schema.views
+WHERE table_schema = currentDatabase()
+LIMIT 1
+FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+table_catalog: default
+table_schema: default
+table_name: mv
+view_definition: SELECT * FROM system.one
+check_option: NONE
+is_updatable: NO
+is_insertable_into: YES
+is_trigger_updatable: NO
+is_trigger_deletable: NO
+is_trigger_insertable_into: NO
+```
+
+## KEY_COLUMN_USAGE {#key_column_usage}
+
+Contains columns from the [system.tables](/core/reference/system-tables/tables) system table which are restricted by constraints.
+
+Columns:
+
+- `constraint_catalog` ([String](/core/reference/data-types/string)) — Currently unused. Always `def`.
+- `constraint_schema` ([String](/core/reference/data-types/string)) — The name of the schema (database) to which the constraint belongs.
+- `constraint_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — The name of the constraint.
+- `table_catalog` ([String](/core/reference/data-types/string)) — Currently unused. Always `def`.
+- `table_schema` ([String](/core/reference/data-types/string)) — The name of the schema (database) to which the table belongs.
+- `table_name` ([String](/core/reference/data-types/string)) — The name of the table that has the constraint.
+- `column_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — The name of the column that has the constraint.
+- `ordinal_position` ([UInt32](/core/reference/data-types/int-uint)) — Currently unused. Always `1`.
+- `position_in_unique_constraint` ([Nullable](/core/reference/data-types/nullable)([UInt32](/core/reference/data-types/int-uint))) — Currently unused. Always `NULL`.
+- `referenced_table_schema` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused. Always NULL.
+- `referenced_table_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused. Always NULL.
+- `referenced_column_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused. Always NULL.
+
+**Example**
+
+```sql title="Query"
+CREATE TABLE test (i UInt32, s String) ENGINE MergeTree ORDER BY i;
+SELECT constraint_catalog,
+ constraint_schema,
+ constraint_name,
+ table_catalog,
+ table_schema,
+ table_name,
+ column_name,
+ ordinal_position,
+ position_in_unique_constraint,
+ referenced_table_schema,
+ referenced_table_name,
+ referenced_column_name
+FROM information_schema.key_column_usage
+WHERE table_name = 'test'
+FORMAT Vertical;
+```
+
+```response title="Response"
+Row 1:
+──────
+constraint_catalog: def
+constraint_schema: default
+constraint_name: PRIMARY
+table_catalog: def
+table_schema: default
+table_name: test
+column_name: i
+ordinal_position: 1
+position_in_unique_constraint: ᴺᵁᴸᴸ
+referenced_table_schema: ᴺᵁᴸᴸ
+referenced_table_name: ᴺᵁᴸᴸ
+referenced_column_name: ᴺᵁᴸᴸ
+```
+
+## REFERENTIAL_CONSTRAINTS {#referential_constraints}
+
+Contains information about foreign keys. Currently returns an empty result (no rows) which is just enough to provide compatibility with 3rd party tools like Tableau Online.
+
+Columns:
+
+- `constraint_catalog` ([String](/core/reference/data-types/string)) — Currently unused.
+- `constraint_schema` ([String](/core/reference/data-types/string)) — Currently unused.
+- `constraint_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused.
+- `unique_constraint_catalog` ([String](/core/reference/data-types/string)) — Currently unused.
+- `unique_constraint_schema` ([String](/core/reference/data-types/string)) — Currently unused.
+- `unique_constraint_name` ([Nullable](/core/reference/data-types/nullable)([String](/core/reference/data-types/string))) — Currently unused.
+- `match_option` ([String](/core/reference/data-types/string)) — Currently unused.
+- `update_rule` ([String](/core/reference/data-types/string)) — Currently unused.
+- `delete_rule` ([String](/core/reference/data-types/string)) — Currently unused.
+- `table_name` ([String](/core/reference/data-types/string)) — Currently unused.
+- `referenced_table_name` ([String](/core/reference/data-types/string)) — Currently unused.
+
+## STATISTICS {#statistics}
+
+Provides information about table indexes. Currently returns an empty result (no rows) which is just enough to provide compatibility with 3rd party tools like Tableau Online.
diff --git a/reference/system-tables/instrumentation.mdx b/core/reference/system-tables/instrumentation.mdx
similarity index 65%
rename from reference/system-tables/instrumentation.mdx
rename to core/reference/system-tables/instrumentation.mdx
index 93512f15..d231676f 100644
--- a/reference/system-tables/instrumentation.mdx
+++ b/core/reference/system-tables/instrumentation.mdx
@@ -17,13 +17,13 @@ Contains the instrumentation points using LLVM's XRay feature.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `id` ([UInt32](/reference/data-types/int-uint)) — ID of the instrumentation point
-- `function_id` ([Int32](/reference/data-types/int-uint)) — ID assigned to the function in xray_instr_map section of elf-binary.
-- `function_name` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Name used to instrument the function.
-- `handler` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Handler that was patched into instrumentation points of the function.
-- `entry_type` ([Enum8('Entry' = 0, 'Exit' = 1, 'EntryAndExit' = 2)](/reference/data-types/enum)) — Entry type for the patch.
-- `symbol` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Complete and demangled symbol name.
-- `parameters` ([Array(Dynamic)](/reference/data-types/array)) — Parameters for the handler call.
+- `id` ([UInt32](/core/reference/data-types/int-uint)) — ID of the instrumentation point
+- `function_id` ([Int32](/core/reference/data-types/int-uint)) — ID assigned to the function in xray_instr_map section of elf-binary.
+- `function_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name used to instrument the function.
+- `handler` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Handler that was patched into instrumentation points of the function.
+- `entry_type` ([Enum8('Entry' = 0, 'Exit' = 1, 'EntryAndExit' = 2)](/core/reference/data-types/enum)) — Entry type for the patch.
+- `symbol` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Complete and demangled symbol name.
+- `parameters` ([Array(Dynamic)](/core/reference/data-types/array)) — Parameters for the handler call.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -68,6 +68,6 @@ parameters: [0.3]
## See Also {#see-also}
-- [SYSTEM INSTRUMENT](/reference/statements/system#instrument) — Add or remove instrumentation points.
-- [system.trace_log](/reference/system-tables/trace_log) — Inspect profiling log.
-- [system.symbols](/reference/system-tables/symbols) — Inspect symbols to add instrumentation points.
+- [SYSTEM INSTRUMENT](/core/reference/statements/system#instrument) — Add or remove instrumentation points.
+- [system.trace_log](/core/reference/system-tables/trace_log) — Inspect profiling log.
+- [system.symbols](/core/reference/system-tables/symbols) — Inspect symbols to add instrumentation points.
diff --git a/reference/system-tables/jemalloc_bins.mdx b/core/reference/system-tables/jemalloc_bins.mdx
similarity index 79%
rename from reference/system-tables/jemalloc_bins.mdx
rename to core/reference/system-tables/jemalloc_bins.mdx
index 7dbeb7f7..80114d7e 100644
--- a/reference/system-tables/jemalloc_bins.mdx
+++ b/core/reference/system-tables/jemalloc_bins.mdx
@@ -19,14 +19,14 @@ These statistics might not be absolutely accurate because of thread local cachin
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `index` ([UInt16](/reference/data-types)) — Index of the bin ordered by size.
-- `large` ([UInt8](/reference/data-types)) — True for large allocations and False for small.
-- `size` ([UInt64](/reference/data-types)) — Size of allocations in this bin.
-- `allocations` ([Int64](/reference/data-types)) — Number of allocations.
-- `deallocations` ([Int64](/reference/data-types)) — Number of deallocations.
-- `nregs` ([Int64](/reference/data-types)) — Number of regions per slab.
-- `curslabs` ([Int64](/reference/data-types)) — Current number of slabs.
-- `curregs` ([Int64](/reference/data-types)) — Current number of regions for this size class.
+- `index` ([UInt16](/core/reference/data-types)) — Index of the bin ordered by size.
+- `large` ([UInt8](/core/reference/data-types)) — True for large allocations and False for small.
+- `size` ([UInt64](/core/reference/data-types)) — Size of allocations in this bin.
+- `allocations` ([Int64](/core/reference/data-types)) — Number of allocations.
+- `deallocations` ([Int64](/core/reference/data-types)) — Number of deallocations.
+- `nregs` ([Int64](/core/reference/data-types)) — Number of regions per slab.
+- `curslabs` ([Int64](/core/reference/data-types)) — Current number of slabs.
+- `curregs` ([Int64](/core/reference/data-types)) — Current number of regions for this size class.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/jemalloc_profile_text.mdx b/core/reference/system-tables/jemalloc_profile_text.mdx
similarity index 83%
rename from reference/system-tables/jemalloc_profile_text.mdx
rename to core/reference/system-tables/jemalloc_profile_text.mdx
index b2a54959..29b3ad37 100644
--- a/reference/system-tables/jemalloc_profile_text.mdx
+++ b/core/reference/system-tables/jemalloc_profile_text.mdx
@@ -13,5 +13,5 @@ Displays the symbolized jemalloc heap profile. Run 'SYSTEM JEMALLOC FLUSH PROFIL
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `line` ([String](/reference/data-types)) — Line from the symbolized jemalloc heap profile.
+- `line` ([String](/core/reference/data-types)) — Line from the symbolized jemalloc heap profile.
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/jemalloc_stats.mdx b/core/reference/system-tables/jemalloc_stats.mdx
similarity index 82%
rename from reference/system-tables/jemalloc_stats.mdx
rename to core/reference/system-tables/jemalloc_stats.mdx
index 33f5c26a..7013227a 100644
--- a/reference/system-tables/jemalloc_stats.mdx
+++ b/core/reference/system-tables/jemalloc_stats.mdx
@@ -13,5 +13,5 @@ Returns jemalloc statistics in a single row with a single column. Equivalent to
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `stats` ([String](/reference/data-types)) — JEMalloc statistics output from malloc_stats_print.
+- `stats` ([String](/core/reference/data-types)) — JEMalloc statistics output from malloc_stats_print.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/kafka_consumers.mdx b/core/reference/system-tables/kafka_consumers.mdx
new file mode 100644
index 00000000..94732480
--- /dev/null
+++ b/core/reference/system-tables/kafka_consumers.mdx
@@ -0,0 +1,74 @@
+---
+description: 'System table containing information about Kafka consumers.'
+keywords: ['system table', 'kafka_consumers']
+slug: /operations/system-tables/kafka_consumers
+title: 'system.kafka_consumers'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about Kafka consumers.
+Applicable for [Kafka table engine](/core/reference/engines/table-engines/integrations/kafka) (native ClickHouse integration)
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Database of the table with Kafka Engine.
+- `table` ([String](/core/reference/data-types)) — Name of the table with Kafka Engine.
+- `consumer_id` ([String](/core/reference/data-types)) — Kafka consumer identifier. Note, that a table can have many consumers. Specified by `kafka_num_consumers` parameter.
+- `assignments.topic` ([Array(String)](/core/reference/data-types)) — Kafka topic.
+- `assignments.partition_id` ([Array(Int32)](/core/reference/data-types)) — Kafka partition id. Note, that only one consumer can be assigned to a partition.
+- `assignments.current_offset` ([Array(Int64)](/core/reference/data-types)) — Current offset.
+- `assignments.intent_size` ([Array(Nullable(Int64))](/core/reference/data-types)) — The number of pushed, but not yet committed messages in new StorageKafka.
+- `exceptions.time` ([Array(DateTime)](/core/reference/data-types)) — Timestamp when the 10 most recent exceptions were generated.
+- `exceptions.text` ([Array(String)](/core/reference/data-types)) — Text of 10 most recent exceptions.
+- `last_poll_time` ([DateTime](/core/reference/data-types)) — Timestamp of the most recent poll.
+- `num_messages_read` ([UInt64](/core/reference/data-types)) — Number of messages read by the consumer.
+- `last_commit_time` ([DateTime](/core/reference/data-types)) — Timestamp of the most recent poll.
+- `num_commits` ([UInt64](/core/reference/data-types)) — Total number of commits for the consumer.
+- `last_rebalance_time` ([DateTime](/core/reference/data-types)) — Timestamp of the most recent Kafka rebalance.
+- `num_rebalance_revocations` ([UInt64](/core/reference/data-types)) — Number of times the consumer was revoked its partitions.
+- `num_rebalance_assignments` ([UInt64](/core/reference/data-types)) — Number of times the consumer was assigned to Kafka cluster.
+- `is_currently_used` ([UInt8](/core/reference/data-types)) — The flag which shows whether the consumer is in use.
+- `last_used` ([DateTime64(6)](/core/reference/data-types)) — The last time this consumer was in use.
+- `rdkafka_stat` ([String](/core/reference/data-types)) — Library internal statistic. Set statistics_interval_ms to 0 disable, default is 3000 (once in three seconds).
+- `dependencies` ([Array(Array(String))](/core/reference/data-types)) — Transitive database dependencies.
+- `missing_dependencies` ([Array(Array(String))](/core/reference/data-types)) — Missing transitive database dependencies.
+{/*AUTOGENERATED_END*/}
+
+Example:
+
+```sql
+SELECT *
+FROM system.kafka_consumers
+FORMAT Vertical
+```
+
+```text
+Row 1:
+──────
+database: test
+table: kafka
+consumer_id: ClickHouse-instance-test-kafka-1caddc7f-f917-4bb1-ac55-e28bd103a4a0
+assignments.topic: ['system_kafka_cons']
+assignments.partition_id: [0]
+assignments.current_offset: [18446744073709550615]
+exceptions.time: []
+exceptions.text: []
+last_poll_time: 2006-11-09 18:47:47
+num_messages_read: 4
+last_commit_time: 2006-11-10 04:39:40
+num_commits: 1
+last_rebalance_time: 1970-01-01 00:00:00
+num_rebalance_revocations: 0
+num_rebalance_assignments: 1
+is_currently_used: 1
+rdkafka_stat: {...}
+dependencies: [['test.mv2','test.target2'],['test.mv1','test.target1']]
+missing_dependencies: []
+```
diff --git a/reference/system-tables/keywords.mdx b/core/reference/system-tables/keywords.mdx
similarity index 79%
rename from reference/system-tables/keywords.mdx
rename to core/reference/system-tables/keywords.mdx
index b5f35540..923ae013 100644
--- a/reference/system-tables/keywords.mdx
+++ b/core/reference/system-tables/keywords.mdx
@@ -13,5 +13,5 @@ Contains a list of all keywords used in ClickHouse parser.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `keyword` ([String](/reference/data-types)) — The keyword used in ClickHouse parser.
+- `keyword` ([String](/core/reference/data-types)) — The keyword used in ClickHouse parser.
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/licenses.mdx b/core/reference/system-tables/licenses.mdx
similarity index 79%
rename from reference/system-tables/licenses.mdx
rename to core/reference/system-tables/licenses.mdx
index 2fc50545..902af0b1 100644
--- a/reference/system-tables/licenses.mdx
+++ b/core/reference/system-tables/licenses.mdx
@@ -14,10 +14,10 @@ Contains licenses of third-party libraries that are located in the [contrib](htt
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `library_name` ([String](/reference/data-types)) — Name of the library.
-- `license_type` ([String](/reference/data-types)) — License type — e.g. Apache, MIT.
-- `license_path` ([String](/reference/data-types)) — Path to the file with the license text.
-- `license_text` ([String](/reference/data-types)) — License text.
+- `library_name` ([String](/core/reference/data-types)) — Name of the library.
+- `license_type` ([String](/core/reference/data-types)) — License type — e.g. Apache, MIT.
+- `license_path` ([String](/core/reference/data-types)) — Path to the file with the license text.
+- `license_text` ([String](/core/reference/data-types)) — License text.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/macros.mdx b/core/reference/system-tables/macros.mdx
similarity index 70%
rename from reference/system-tables/macros.mdx
rename to core/reference/system-tables/macros.mdx
index 971d0562..55fcf36f 100644
--- a/reference/system-tables/macros.mdx
+++ b/core/reference/system-tables/macros.mdx
@@ -13,6 +13,6 @@ Contains a list of all macros defined in server configuration.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `macro` ([String](/reference/data-types)) — The macro name.
-- `substitution` ([String](/reference/data-types)) — The substitution string.
+- `macro` ([String](/core/reference/data-types)) — The macro name.
+- `substitution` ([String](/core/reference/data-types)) — The substitution string.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/masking_policies.mdx b/core/reference/system-tables/masking_policies.mdx
new file mode 100644
index 00000000..b8dc85a5
--- /dev/null
+++ b/core/reference/system-tables/masking_policies.mdx
@@ -0,0 +1,32 @@
+---
+description: 'System table containing information about all masking policies in the system.'
+keywords: ['system table', 'masking_policies']
+slug: /operations/system-tables/masking_policies
+title: 'system.masking_policies'
+doc_type: 'reference'
+---
+
+import CloudOnlyBadge from "/snippets/components/CloudOnlyBadge/CloudOnlyBadge.jsx";
+
+
+
+## Description {#description}
+
+Contains information about all masking policies defined in the system.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types/string)) — Name of a masking policy. The full name format is `short_name ON database.table`.
+- `short_name` ([String](/core/reference/data-types/string)) — Short name of a masking policy. For example, if the full name is `mask_email ON mydb.mytable`, the short name is `mask_email`.
+- `database` ([String](/core/reference/data-types/string)) — Database name.
+- `table` ([String](/core/reference/data-types/string)) — Table name.
+- `id` ([UUID](/core/reference/data-types/uuid)) — Masking policy ID.
+- `storage` ([String](/core/reference/data-types/string)) — Name of the directory where the masking policy is stored.
+- `update_assignments` ([Nullable(String)](/core/reference/data-types/nullable)) — UPDATE assignments that define how data should be masked. For example: `email = '***masked***', phone = '***-***-****'`.
+- `where_condition` ([Nullable(String)](/core/reference/data-types/nullable)) — Optional WHERE condition that specifies when the masking should be applied.
+- `priority` ([Int64](/core/reference/data-types/int-uint)) — Priority for applying multiple masking policies. Higher priority policies are applied first. Default is 0.
+- `apply_to_all` ([UInt8](/core/reference/data-types/int-uint)) — Shows whether the masking policy applies to all roles and/or users. 1 if true, 0 otherwise.
+- `apply_to_list` ([Array(String)](/core/reference/data-types/array)) — List of the roles and/or users to which the masking policy is applied.
+- `apply_to_except` ([Array(String)](/core/reference/data-types/array)) — The masking policy is applied to all roles and/or users except the listed ones. Only populated when `apply_to_all` is 1.
+{/*AUTOGENERATED_END*/}
\ No newline at end of file
diff --git a/reference/system-tables/merge_tree_settings.mdx b/core/reference/system-tables/merge_tree_settings.mdx
similarity index 67%
rename from reference/system-tables/merge_tree_settings.mdx
rename to core/reference/system-tables/merge_tree_settings.mdx
index a76f75dd..9ec79160 100644
--- a/reference/system-tables/merge_tree_settings.mdx
+++ b/core/reference/system-tables/merge_tree_settings.mdx
@@ -13,18 +13,18 @@ Contains information about settings for `MergeTree` tables.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Setting name.
-- `value` ([String](/reference/data-types)) — Setting value.
-- `default` ([String](/reference/data-types)) — Setting default value.
-- `changed` ([UInt8](/reference/data-types)) — 1 if the setting was explicitly defined in the config or explicitly changed.
-- `description` ([String](/reference/data-types)) — Setting description.
-- `min` ([Nullable(String)](/reference/data-types)) — Minimum value of the setting, if any is set via constraints. If the setting has no minimum value, contains NULL.
-- `max` ([Nullable(String)](/reference/data-types)) — Maximum value of the setting, if any is set via constraints. If the setting has no maximum value, contains NULL.
-- `disallowed_values` ([Array(String)](/reference/data-types)) — List of disallowed values
-- `readonly` ([UInt8](/reference/data-types)) — Shows whether the current user can change the setting: 0 — Current user can change the setting, 1 — Current user can't change the setting.
-- `type` ([String](/reference/data-types)) — Setting type (implementation specific string value).
-- `is_obsolete` ([UInt8](/reference/data-types)) — Shows whether a setting is obsolete.
-- `tier` ([Enum8('Production' = 0, 'Obsolete' = 4, 'Experimental' = 8, 'Beta' = 12)](/reference/data-types)) —
+- `name` ([String](/core/reference/data-types)) — Setting name.
+- `value` ([String](/core/reference/data-types)) — Setting value.
+- `default` ([String](/core/reference/data-types)) — Setting default value.
+- `changed` ([UInt8](/core/reference/data-types)) — 1 if the setting was explicitly defined in the config or explicitly changed.
+- `description` ([String](/core/reference/data-types)) — Setting description.
+- `min` ([Nullable(String)](/core/reference/data-types)) — Minimum value of the setting, if any is set via constraints. If the setting has no minimum value, contains NULL.
+- `max` ([Nullable(String)](/core/reference/data-types)) — Maximum value of the setting, if any is set via constraints. If the setting has no maximum value, contains NULL.
+- `disallowed_values` ([Array(String)](/core/reference/data-types)) — List of disallowed values
+- `readonly` ([UInt8](/core/reference/data-types)) — Shows whether the current user can change the setting: 0 — Current user can change the setting, 1 — Current user can't change the setting.
+- `type` ([String](/core/reference/data-types)) — Setting type (implementation specific string value).
+- `is_obsolete` ([UInt8](/core/reference/data-types)) — Shows whether a setting is obsolete.
+- `tier` ([Enum8('Production' = 0, 'Obsolete' = 4, 'Experimental' = 8, 'Beta' = 12)](/core/reference/data-types)) —
Support level for this feature. ClickHouse features are organized in tiers, varying depending on the current status of their
development and the expectations one might have when using them:
* PRODUCTION: The feature is stable, safe to use and does not have issues interacting with other PRODUCTION features.
diff --git a/core/reference/system-tables/merges.mdx b/core/reference/system-tables/merges.mdx
new file mode 100644
index 00000000..61ce9957
--- /dev/null
+++ b/core/reference/system-tables/merges.mdx
@@ -0,0 +1,45 @@
+---
+description: 'System table containing information about merges and part mutations
+ currently in process for tables in the MergeTree family.'
+keywords: ['system table', 'merges']
+slug: /operations/system-tables/merges
+title: 'system.merges'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about merges and part mutations currently in process for tables in the MergeTree family.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — The name of the database the table is in.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `elapsed` ([Float64](/core/reference/data-types)) — The time elapsed (in seconds) since the merge started.
+- `progress` ([Float64](/core/reference/data-types)) — The percentage of completed work from 0 to 1.
+- `num_parts` ([UInt64](/core/reference/data-types)) — The number of parts to be merged.
+- `source_part_names` ([Array(String)](/core/reference/data-types)) — The list of source parts names.
+- `result_part_name` ([String](/core/reference/data-types)) — The name of the part that will be formed as the result of merging.
+- `source_part_paths` ([Array(String)](/core/reference/data-types)) — The list of paths for each source part.
+- `result_part_path` ([String](/core/reference/data-types)) — The path of the part that will be formed as the result of merging.
+- `partition_id` ([String](/core/reference/data-types)) — The identifier of the partition where the merge is happening.
+- `partition` ([String](/core/reference/data-types)) — The name of the partition
+- `is_mutation` ([UInt8](/core/reference/data-types)) — 1 if this process is a part mutation.
+- `total_size_bytes_compressed` ([UInt64](/core/reference/data-types)) — The total size of the compressed data in the merged chunks.
+- `total_size_bytes_uncompressed` ([UInt64](/core/reference/data-types)) — The total size of compressed data in the merged chunks.
+- `total_size_marks` ([UInt64](/core/reference/data-types)) — The total number of marks in the merged parts.
+- `bytes_read_uncompressed` ([UInt64](/core/reference/data-types)) — Number of bytes read, uncompressed.
+- `rows_read` ([UInt64](/core/reference/data-types)) — Number of rows read.
+- `bytes_written_uncompressed` ([UInt64](/core/reference/data-types)) — Number of bytes written, uncompressed.
+- `rows_written` ([UInt64](/core/reference/data-types)) — Number of rows written.
+- `columns_written` ([UInt64](/core/reference/data-types)) — Number of columns written (for Vertical merge algorithm).
+- `memory_usage` ([UInt64](/core/reference/data-types)) — Memory consumption of the merge process.
+- `thread_id` ([UInt64](/core/reference/data-types)) — Thread ID of the merge process.
+- `merge_type` ([String](/core/reference/data-types)) — The type of current merge. Empty if it's an mutation.
+- `merge_algorithm` ([String](/core/reference/data-types)) — The algorithm used in current merge. Empty if it's an mutation.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/metric_log.mdx b/core/reference/system-tables/metric_log.mdx
new file mode 100644
index 00000000..aedf4afd
--- /dev/null
+++ b/core/reference/system-tables/metric_log.mdx
@@ -0,0 +1,1814 @@
+---
+description: 'System table containing history of metrics values from tables `system.metrics`
+ and `system.events`, periodically flushed to disk.'
+keywords: ['system table', 'metric_log']
+slug: /operations/system-tables/metric_log
+title: 'system.metric_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains history of metrics values from tables `system.metrics` and `system.events`, periodically flushed to disk.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Event time with microseconds resolution.
+- `ProfileEvent_Query` ([UInt64](/core/reference/data-types/int-uint)) — Number of queries to be interpreted and potentially executed. Does not include queries that failed to parse or were rejected due to AST size limits, quota limits or limits on the number of simultaneously running queries. May include internal queries initiated by ClickHouse itself. Does not count subqueries.
+- `ProfileEvent_SelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as Query, but only for SELECT queries.
+- `ProfileEvent_InsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as Query, but only for INSERT queries.
+- `ProfileEvent_InitialQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as Query, but only counts initial queries (see is_initial_query).
+- `ProfileEvent_InitialSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as InitialQuery, but only for SELECT queries.
+- `ProfileEvent_QueriesWithSubqueries` ([UInt64](/core/reference/data-types/int-uint)) — Count queries with all subqueries
+- `ProfileEvent_SelectQueriesWithSubqueries` ([UInt64](/core/reference/data-types/int-uint)) — Count SELECT queries with all subqueries
+- `ProfileEvent_InsertQueriesWithSubqueries` ([UInt64](/core/reference/data-types/int-uint)) — Count INSERT queries with all subqueries
+- `ProfileEvent_SelectQueriesWithPrimaryKeyUsage` ([UInt64](/core/reference/data-types/int-uint)) — Count SELECT queries which use the primary key to evaluate the WHERE condition
+- `ProfileEvent_AsyncInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as InsertQuery, but only for asynchronous INSERT queries.
+- `ProfileEvent_AsyncInsertBytes` ([UInt64](/core/reference/data-types/int-uint)) — Data size in bytes of asynchronous INSERT queries.
+- `ProfileEvent_AsyncInsertRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows inserted by asynchronous INSERT queries.
+- `ProfileEvent_AsyncInsertCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a duplicate hash id has been found in asynchronous INSERT hash id cache.
+- `ProfileEvent_FailedInternalQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed internal queries.
+- `ProfileEvent_FailedInternalSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedInternalQuery, but only for SELECT queries.
+- `ProfileEvent_FailedInternalInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedInternalQuery, but only for INSERT queries.
+- `ProfileEvent_FailedInitialQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed initial queries.
+- `ProfileEvent_FailedInitialSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedInitialQuery, but only for SELECT queries.
+- `ProfileEvent_FailedQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of total failed queries, both internal and user queries.
+- `ProfileEvent_FailedSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedQuery, but only for SELECT queries.
+- `ProfileEvent_FailedInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedQuery, but only for INSERT queries.
+- `ProfileEvent_FailedAsyncInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed ASYNC INSERT queries.
+- `ProfileEvent_ASTFuzzerQueries` ([UInt64](/core/reference/data-types/int-uint)) — Number of fuzzed queries attempted by the server-side AST fuzzer.
+- `ProfileEvent_QueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of all queries.
+- `ProfileEvent_SelectQueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of SELECT queries.
+- `ProfileEvent_InsertQueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of INSERT queries.
+- `ProfileEvent_OtherQueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of queries that are not SELECT or INSERT.
+- `ProfileEvent_FileOpen` ([UInt64](/core/reference/data-types/int-uint)) — Number of files opened.
+- `ProfileEvent_Seek` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the 'lseek' function was called.
+- `ProfileEvent_ReadBufferFromFileDescriptorRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads (read/pread) from a file descriptor. Does not include sockets.
+- `ProfileEvent_ReadBufferFromFileDescriptorReadFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read (read/pread) from a file descriptor have failed.
+- `ProfileEvent_ReadBufferFromFileDescriptorReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from file descriptors. If the file is compressed, this will show the compressed data size.
+- `ProfileEvent_WriteBufferFromFileDescriptorWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of writes (write/pwrite) to a file descriptor. Does not include sockets.
+- `ProfileEvent_WriteBufferFromFileDescriptorWriteFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the write (write/pwrite) to a file descriptor have failed.
+- `ProfileEvent_WriteBufferFromFileDescriptorWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to file descriptors. If the file is compressed, this will show compressed data size.
+- `ProfileEvent_FileSync` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the F_FULLFSYNC/fsync/fdatasync function was called for files.
+- `ProfileEvent_DirectorySync` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the F_FULLFSYNC/fsync/fdatasync function was called for directories.
+- `ProfileEvent_FileSyncElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for F_FULLFSYNC/fsync/fdatasync syscall for files.
+- `ProfileEvent_DirectorySyncElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for F_FULLFSYNC/fsync/fdatasync syscall for directories.
+- `ProfileEvent_ReadCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes (the number of bytes before decompression) read from compressed sources (files, network).
+- `ProfileEvent_CompressedReadBufferBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed blocks (the blocks of data that are compressed independent of each other) read from compressed sources (files, network).
+- `ProfileEvent_CompressedReadBufferBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of uncompressed bytes (the number of bytes after decompression) read from compressed sources (files, network).
+- `ProfileEvent_CompressedReadBufferChecksumDoesntMatch` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the compressed block checksum did not match.
+- `ProfileEvent_CompressedReadBufferChecksumDoesntMatchSingleBitMismatch` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a compressed block checksum mismatch was caused by a single-bit difference.
+- `ProfileEvent_CompressedReadBufferChecksumDoesntMatchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent detecting bit-flips due to compressed block checksum mismatches.
+- `ProfileEvent_UncompressedCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has been found in the uncompressed cache (and decompression was avoided).
+- `ProfileEvent_UncompressedCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has not been found in the uncompressed cache (and required decompression).
+- `ProfileEvent_UncompressedCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from the uncompressed cache.
+- `ProfileEvent_PageCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has been found in the userspace page cache.
+- `ProfileEvent_PageCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has not been found in the userspace page cache.
+- `ProfileEvent_PageCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from the userspace page cache
+- `ProfileEvent_PageCacheResized` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the userspace page cache was auto-resized (typically happens a few times per second, controlled by memory_worker_period_ms).
+- `ProfileEvent_PageCacheOvercommitResize` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the userspace page cache was auto-resized to free memory during a memory allocation.
+- `ProfileEvent_PageCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from userspace page cache.
+- `ProfileEvent_MMappedFileCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has been found in the MMap cache (for the 'mmap' read_method), so we didn't have to mmap it again.
+- `ProfileEvent_MMappedFileCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has not been found in the MMap cache (for the 'mmap' read_method), so we had to mmap it again.
+- `ProfileEvent_OpenedFileCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has been found in the opened file cache, so we didn't have to open it again.
+- `ProfileEvent_OpenedFileCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has been found in the opened file cache, so we had to open it again.
+- `ProfileEvent_OpenedFileCacheMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Amount of time spent executing OpenedFileCache methods.
+- `ProfileEvent_AIOWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of writes with Linux or FreeBSD AIO interface
+- `ProfileEvent_AIOWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written with Linux or FreeBSD AIO interface
+- `ProfileEvent_AIORead` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads with Linux or FreeBSD AIO interface
+- `ProfileEvent_AIOReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read with Linux or FreeBSD AIO interface
+- `ProfileEvent_IOBufferAllocs` ([UInt64](/core/reference/data-types/int-uint)) — Number of allocations of IO buffers (for ReadBuffer/WriteBuffer).
+- `ProfileEvent_IOBufferAllocBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes allocated for IO buffers (for ReadBuffer/WriteBuffer).
+- `ProfileEvent_ArenaAllocChunks` ([UInt64](/core/reference/data-types/int-uint)) — Number of chunks allocated for memory Arena (used for GROUP BY and similar operations)
+- `ProfileEvent_ArenaAllocBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes allocated for memory Arena (used for GROUP BY and similar operations)
+- `ProfileEvent_FunctionExecute` ([UInt64](/core/reference/data-types/int-uint)) — Number of SQL ordinary function calls (SQL functions are called on per-block basis, so this number represents the number of blocks).
+- `ProfileEvent_TableFunctionExecute` ([UInt64](/core/reference/data-types/int-uint)) — Number of table function calls.
+- `ProfileEvent_DefaultImplementationForNullsRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows processed by default implementation for nulls in function execution
+- `ProfileEvent_DefaultImplementationForNullsRowsWithNulls` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows which contain null values processed by default implementation for nulls in function execution
+- `ProfileEvent_MarkCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has been found in the mark cache, so we didn't have to load a mark file.
+- `ProfileEvent_MarkCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has not been found in the mark cache, so we had to load a mark file in memory, which is a costly operation, adding to query latency.
+- `ProfileEvent_PrimaryIndexCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has been found in the primary index cache, so we didn't have to load a index file.
+- `ProfileEvent_PrimaryIndexCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has not been found in the primary index cache, so we had to load a index file in memory, which is a costly operation, adding to query latency.
+- `ProfileEvent_IcebergMetadataFilesCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times iceberg metadata files have been found in the cache.
+- `ProfileEvent_IcebergMetadataFilesCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times iceberg metadata files have not been found in the iceberg metadata cache and had to be read from (remote) disk.
+- `ProfileEvent_IcebergMetadataFilesCacheStaleMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times iceberg metadata files have been found in the cache, but were considered stale and had to be read from (remote) disk.
+- `ProfileEvent_IcebergMetadataFilesCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Approximate number of bytes evicted from the iceberg metadata cache.
+- `ProfileEvent_IcebergMetadataReadWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time data readers spend waiting for iceberg metadata files to be read and parsed, summed across all reader threads.
+- `ProfileEvent_ParquetMetadataCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times parquet metadata has been found in the cache.
+- `ProfileEvent_ParquetMetadataCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times parquet metadata has not been found in the cache and had to be read from disk.
+- `ProfileEvent_ParquetMetadataCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Approximate number of bytes evicted from the parquet metadata cache.
+- `ProfileEvent_IcebergIteratorInitializationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent on synchronous initialization of iceberg data iterators.
+- `ProfileEvent_IcebergMetadataUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent on synchronous initialization of iceberg data iterators.
+- `ProfileEvent_IcebergMetadataReturnedObjectInfos` ([UInt64](/core/reference/data-types/int-uint)) — Total number of returned object infos from iceberg iterator.
+- `ProfileEvent_IcebergMinMaxNonPrunedDeleteFiles` ([UInt64](/core/reference/data-types/int-uint)) — Total number of accepted data files-position delete file pairs by minmax analysis from pairs suitable by partitioning and sequence number.
+- `ProfileEvent_IcebergMinMaxPrunedDeleteFiles` ([UInt64](/core/reference/data-types/int-uint)) — Total number of accepted data files-position delete file pairs by minmax analysis from pairs suitable by partitioning and sequence number.
+- `ProfileEvent_VectorSimilarityIndexCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an index granule has been found in the vector index cache.
+- `ProfileEvent_VectorSimilarityIndexCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an index granule has not been found in the vector index cache and had to be read from disk.
+- `ProfileEvent_VectorSimilarityIndexCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Approximate number of bytes evicted from the vector index cache.
+- `ProfileEvent_TextIndexReadDictionaryBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index dictionary block has been read from disk.
+- `ProfileEvent_TextIndexTokensCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index token info has been found in the cache.
+- `ProfileEvent_TextIndexTokensCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index token info has not been found in the cache.
+- `ProfileEvent_TextIndexHeaderCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a header has been found in the cache.
+- `ProfileEvent_TextIndexHeaderCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a header has not been found in the cache.
+- `ProfileEvent_TextIndexPostingsCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index posting list has been found in the cache.
+- `ProfileEvent_TextIndexPostingsCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a a text index posting list has not been found in the cache.
+- `ProfileEvent_TextIndexReadSparseIndexBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a sparse index block has been read from the text index.
+- `ProfileEvent_TextIndexReaderTotalMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent reading the text index.
+- `ProfileEvent_TextIndexReadGranulesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent reading and analyzing granules of the text index.
+- `ProfileEvent_TextIndexReadPostings` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a posting list has been read from the text index.
+- `ProfileEvent_TextIndexUsedEmbeddedPostings` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a posting list embedded in the dictionary has been used.
+- `ProfileEvent_TextIndexUseHint` ([UInt64](/core/reference/data-types/int-uint)) — Number of index granules where a direct reading from the text index was added as hint and was used.
+- `ProfileEvent_TextIndexDiscardHint` ([UInt64](/core/reference/data-types/int-uint)) — Number of index granules where a direct reading from the text index was added as hint and was discarded due to low selectivity.
+- `ProfileEvent_TextIndexDiscardPatternScan` ([UInt64](/core/reference/data-types/int-uint)) — Number of times pattern-based dictionary scan in a text index was discarded because the number of posting lists to read exceeded the threshold.
+- `ProfileEvent_QueryConditionCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has been found in the query condition cache (and reading of marks can be skipped). Only updated for SELECT queries with SETTING use_query_condition_cache = 1.
+- `ProfileEvent_QueryConditionCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has not been found in the query condition cache (and reading of mark cannot be skipped). Only updated for SELECT queries with SETTING use_query_condition_cache = 1.
+- `ProfileEvent_QueryCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a query result has been found in the query cache (and query computation was avoided). Only updated for SELECT queries with SETTING use_query_cache = 1.
+- `ProfileEvent_QueryCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a query result has not been found in the query cache (and required query computation). Only updated for SELECT queries with SETTING use_query_cache = 1.
+- `ProfileEvent_QueryCacheAgeSeconds` ([UInt64](/core/reference/data-types/int-uint)) — The sum of ages of found query cache entries in seconds. The value is set both for hits and misses.
+- `ProfileEvent_QueryCacheReadRows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows read from the query cache.
+- `ProfileEvent_QueryCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of (uncompressed) bytes read from the query cache.
+- `ProfileEvent_QueryCacheWrittenRows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows saved into the query cache.
+- `ProfileEvent_QueryCacheWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of (uncompressed) bytes saved into the query cache
+- `ProfileEvent_CreatedReadBufferOrdinary` ([UInt64](/core/reference/data-types/int-uint)) — Number of times ordinary read buffer was created for reading data (while choosing among other read methods).
+- `ProfileEvent_CreatedReadBufferDirectIO` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer with O_DIRECT was created for reading data (while choosing among other read methods).
+- `ProfileEvent_CreatedReadBufferDirectIOFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer with O_DIRECT was attempted to be created for reading data (while choosing among other read methods), but the OS did not allow it (due to lack of filesystem support or other reasons) and we fallen back to the ordinary reading method.
+- `ProfileEvent_CreatedReadBufferMMap` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer using 'mmap' was created for reading data (while choosing among other read methods).
+- `ProfileEvent_CreatedReadBufferMMapFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer with 'mmap' was attempted to be created for reading data (while choosing among other read methods), but the OS did not allow it (due to lack of filesystem support or other reasons) and we fallen back to the ordinary reading method.
+- `ProfileEvent_DiskReadElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for read syscall. This include reads from page cache.
+- `ProfileEvent_DiskWriteElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for write syscall. This include writes to page cache.
+- `ProfileEvent_NetworkReceiveElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for data to receive or receiving data from network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_NetworkSendElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for data to send to network or sending data to network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_NetworkReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total number of bytes received from network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_NetworkSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total number of bytes send to network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_FilterPartsByVirtualColumnsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in filterPartsByVirtualColumns function.
+- `ProfileEvent_GlobalThreadPoolExpansions` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times new threads have been added to the global thread pool. This metric indicates the frequency of expansions in the global thread pool to accommodate increased processing demands.
+- `ProfileEvent_GlobalThreadPoolShrinks` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times the global thread pool has shrunk by removing threads. This occurs when the number of idle threads exceeds max_thread_pool_free_size, indicating adjustments in the global thread pool size in response to decreased thread utilization.
+- `ProfileEvent_GlobalThreadPoolThreadCreationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for new threads to start.
+- `ProfileEvent_GlobalThreadPoolLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time threads have spent waiting for locks in the global thread pool.
+- `ProfileEvent_GlobalThreadPoolJobs` ([UInt64](/core/reference/data-types/int-uint)) — Counts the number of jobs that have been pushed to the global thread pool.
+- `ProfileEvent_GlobalThreadPoolJobWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Measures the elapsed time from when a job is scheduled in the thread pool to when it is picked up for execution by a worker thread. This metric helps identify delays in job processing, indicating the responsiveness of the thread pool to new tasks.
+- `ProfileEvent_LocalThreadPoolExpansions` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times threads have been borrowed from the global thread pool to expand local thread pools.
+- `ProfileEvent_LocalThreadPoolShrinks` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times threads have been returned to the global thread pool from local thread pools.
+- `ProfileEvent_LocalThreadPoolThreadCreationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time local thread pools have spent waiting to borrow a thread from the global pool.
+- `ProfileEvent_LocalThreadPoolLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time threads have spent waiting for locks in the local thread pools.
+- `ProfileEvent_LocalThreadPoolJobs` ([UInt64](/core/reference/data-types/int-uint)) — Counts the number of jobs that have been pushed to the local thread pools.
+- `ProfileEvent_LocalThreadPoolBusyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time threads have spent executing the actual work.
+- `ProfileEvent_LocalThreadPoolJobWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Measures the elapsed time from when a job is scheduled in the thread pool to when it is picked up for execution by a worker thread. This metric helps identify delays in job processing, indicating the responsiveness of the thread pool to new tasks.
+- `ProfileEvent_DiskS3GetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 GET and SELECT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskS3GetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 GET and SELECT requests blocked by throttler.
+- `ProfileEvent_DiskS3GetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform DiskS3 GET and SELECT request throttling.
+- `ProfileEvent_DiskS3PutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 PUT, COPY, POST and LIST requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskS3PutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 PUT, COPY, POST and LIST requests blocked by throttler.
+- `ProfileEvent_DiskS3PutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform DiskS3 PUT, COPY, POST and LIST request throttling.
+- `ProfileEvent_S3GetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 GET and SELECT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_S3GetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 GET and SELECT requests blocked by throttler.
+- `ProfileEvent_S3GetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform S3 GET and SELECT request throttling.
+- `ProfileEvent_S3PutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 PUT, COPY, POST and LIST requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_S3PutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 PUT, COPY, POST and LIST requests blocked by throttler.
+- `ProfileEvent_S3PutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform S3 PUT, COPY, POST and LIST request throttling.
+- `ProfileEvent_ACMEAPIRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of ACME API requests issued.
+- `ProfileEvent_ACMECertificateOrders` ([UInt64](/core/reference/data-types/int-uint)) — Number of ACME certificate orders issued.
+- `ProfileEvent_DiskAzureReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure disk read requests.
+- `ProfileEvent_DiskAzureReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read requests.
+- `ProfileEvent_DiskAzureReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read request errors.
+- `ProfileEvent_DiskAzureReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read requests throttled.
+- `ProfileEvent_DiskAzureReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read request redirects.
+- `ProfileEvent_DiskAzureWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure disk write requests.
+- `ProfileEvent_DiskAzureWriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write requests.
+- `ProfileEvent_DiskAzureWriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write request errors.
+- `ProfileEvent_DiskAzureWriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write requests throttled.
+- `ProfileEvent_DiskAzureWriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write request redirects.
+- `ProfileEvent_AzureReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure read requests.
+- `ProfileEvent_AzureReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read requests.
+- `ProfileEvent_AzureReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read request errors.
+- `ProfileEvent_AzureReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read requests throttled.
+- `ProfileEvent_AzureReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read request redirects.
+- `ProfileEvent_AzureWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure write requests.
+- `ProfileEvent_AzureWriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write requests.
+- `ProfileEvent_AzureWriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write request errors.
+- `ProfileEvent_AzureWriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write requests throttled.
+- `ProfileEvent_AzureWriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write request redirects.
+- `ProfileEvent_AzureGetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure GET requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_AzureGetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure GET requests blocked by throttler.
+- `ProfileEvent_AzureGetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure GET request throttling.
+- `ProfileEvent_DiskAzureGetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk GET requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskAzureGetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk GET requests blocked by throttler.
+- `ProfileEvent_DiskAzureGetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure disk GET request throttling.
+- `ProfileEvent_AzurePutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure PUT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_AzurePutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure PUT requests blocked by throttler.
+- `ProfileEvent_AzurePutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure PUT request throttling.
+- `ProfileEvent_DiskAzurePutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk PUT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskAzurePutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk PUT requests blocked by throttler.
+- `ProfileEvent_DiskAzurePutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure disk PUT request throttling.
+- `ProfileEvent_RemoteReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_read_network_bandwidth_for_server'/'max_remote_read_network_bandwidth' throttler.
+- `ProfileEvent_RemoteReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_read_network_bandwidth_for_server'/'max_remote_read_network_bandwidth' throttling.
+- `ProfileEvent_RemoteWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_write_network_bandwidth_for_server'/'max_remote_write_network_bandwidth' throttler.
+- `ProfileEvent_RemoteWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_write_network_bandwidth_for_server'/'max_remote_write_network_bandwidth' throttling.
+- `ProfileEvent_LocalReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_read_bandwidth_for_server'/'max_local_read_bandwidth' throttler.
+- `ProfileEvent_LocalReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_read_bandwidth_for_server'/'max_local_read_bandwidth' throttling.
+- `ProfileEvent_LocalWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_write_bandwidth_for_server'/'max_local_write_bandwidth' throttler.
+- `ProfileEvent_LocalWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_write_bandwidth_for_server'/'max_local_write_bandwidth' throttling.
+- `ProfileEvent_BackupThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_backup_bandwidth_for_server' throttler.
+- `ProfileEvent_BackupThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_backup_bandwidth_for_server' throttling.
+- `ProfileEvent_MergesThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_merges_bandwidth_for_server' throttler.
+- `ProfileEvent_MergesThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_merges_bandwidth_for_server' throttling.
+- `ProfileEvent_MutationsThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_mutations_bandwidth_for_server' throttler.
+- `ProfileEvent_MutationsThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_mutations_bandwidth_for_server' throttling.
+- `ProfileEvent_UserThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_network_bandwidth_for_user' throttler.
+- `ProfileEvent_UserThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_network_bandwidth_for_user' throttling.
+- `ProfileEvent_AllUsersThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_network_bandwidth_for_all_users' throttler.
+- `ProfileEvent_AllUsersThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_network_bandwidth_for_all_users' throttling.
+- `ProfileEvent_QueryRemoteReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_read_network_bandwidth' throttler.
+- `ProfileEvent_QueryRemoteReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_read_network_bandwidth' throttling.
+- `ProfileEvent_QueryRemoteWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_write_network_bandwidth' throttler.
+- `ProfileEvent_QueryRemoteWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_write_network_bandwidth' throttling.
+- `ProfileEvent_QueryLocalReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_read_bandwidth' throttler.
+- `ProfileEvent_QueryLocalReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_read_bandwidth' throttling.
+- `ProfileEvent_QueryLocalWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_write_bandwidth' throttler.
+- `ProfileEvent_QueryLocalWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_write_bandwidth' throttling.
+- `ProfileEvent_QueryBackupThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_backup_bandwidth' throttler.
+- `ProfileEvent_QueryBackupThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_backup_bandwidth' throttling.
+- `ProfileEvent_DistrCacheReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_distributed_cache_read_bandwidth_for_server' throttler.
+- `ProfileEvent_DistrCacheReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_distributed_cache_read_bandwidth_for_server' throttling.
+- `ProfileEvent_DistrCacheWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_distributed_cache_write_bandwidth_for_server' throttler.
+- `ProfileEvent_DistrCacheWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_distributed_cache_write_bandwidth_for_server' throttling.
+- `ProfileEvent_ThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform all throttling settings.
+- `ProfileEvent_ReadTasksWithAppliedPatches` ([UInt64](/core/reference/data-types/int-uint)) — Total number of read tasks for which there was any patch part applied
+- `ProfileEvent_PatchesAppliedInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied patch parts among all read tasks
+- `ProfileEvent_PatchesMergeAppliedInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied patch parts with Merge mode among all read tasks
+- `ProfileEvent_PatchesJoinAppliedInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied patch parts with Join mode among all read tasks
+- `ProfileEvent_PatchesReadRows` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows read from patch parts
+- `ProfileEvent_PatchesReadUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total number of uncompressed bytes read from patch parts
+- `ProfileEvent_PatchesJoinRowsAddedToHashTable` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows added to hash tables when applying patch parts with Join mode
+- `ProfileEvent_ApplyPatchesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent applying patch parts to blocks
+- `ProfileEvent_ReadPatchesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent reading patch parts
+- `ProfileEvent_BuildPatchesMergeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent building indexes for applying patch parts with Merge mode
+- `ProfileEvent_BuildPatchesJoinMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent building indexes and hash tables for applying patch parts with Join mode
+- `ProfileEvent_AnalyzePatchRangesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent analyzing index of patch parts
+- `ProfileEvent_ReadTasksWithAppliedMutationsOnFly` ([UInt64](/core/reference/data-types/int-uint)) — Total number of read tasks for which there was any mutation applied on fly
+- `ProfileEvent_MutationsAppliedOnFlyInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied mutations on-fly among all read tasks
+- `ProfileEvent_PatchesAcquireLockTries` ([UInt64](/core/reference/data-types/int-uint)) — Total number of tries to acquire lock for executing lightweight updates
+- `ProfileEvent_PatchesAcquireLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of microseconds spent to acquire lock for executing lightweight updates
+- `ProfileEvent_DiskObjectStorageWaitBlobRemovalMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for pending blob removal after committing metadata transaction
+- `ProfileEvent_SchedulerIOReadRequests` ([UInt64](/core/reference/data-types/int-uint)) — Resource requests passed through scheduler for IO reads.
+- `ProfileEvent_SchedulerIOReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through scheduler for IO reads.
+- `ProfileEvent_SchedulerIOReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting on resource requests for IO reads.
+- `ProfileEvent_SchedulerIOWriteRequests` ([UInt64](/core/reference/data-types/int-uint)) — Resource requests passed through scheduler for IO writes.
+- `ProfileEvent_SchedulerIOWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through scheduler for IO writes.
+- `ProfileEvent_SchedulerIOWriteWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting on resource requests for IO writes.
+- `ProfileEvent_QueryMaskingRulesMatch` ([UInt64](/core/reference/data-types/int-uint)) — Number of times query masking rules was successfully matched.
+- `ProfileEvent_ReplicatedPartFetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part was downloaded from replica of a ReplicatedMergeTree table.
+- `ProfileEvent_ReplicatedPartFailedFetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part was failed to download from replica of a ReplicatedMergeTree table.
+- `ProfileEvent_ObsoleteReplicatedParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part was covered by another data part that has been fetched from a replica (so, we have marked a covered data part as obsolete and no longer needed).
+- `ProfileEvent_ReplicatedPartMerges` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data parts of ReplicatedMergeTree tables were successfully merged.
+- `ProfileEvent_ReplicatedPartFetchesOfMerged` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we prefer to download already merged part from replica of ReplicatedMergeTree table instead of performing a merge ourself (usually we prefer doing a merge ourself to save network traffic). This happens when we have not all source parts to perform a merge or when the data part is old enough.
+- `ProfileEvent_ReplicatedPartMutations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data parts of ReplicatedMergeTree tables were successfully mutated.
+- `ProfileEvent_ReplicatedPartChecks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we had to perform advanced search for a data part on replicas or to clarify the need of an existing data part.
+- `ProfileEvent_ReplicatedPartChecksFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the advanced search for a data part on replicas did not give result or when unexpected part has been found and moved away.
+- `ProfileEvent_ReplicatedDataLoss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part that we wanted doesn't exist on any replica (even on replicas that are offline right now). That data parts are definitely lost. This is normal due to asynchronous replication (if quorum inserts were not enabled), when the replica on which the data part was written was failed and when it became online after fail it doesn't contain that data part.
+- `ProfileEvent_ReplicatedCoveredPartsInZooKeeperOnStart` ([UInt64](/core/reference/data-types/int-uint)) — For debugging purposes. Number of parts in ZooKeeper that have a covering part, but doesn't exist on disk. Checked on server start.
+- `ProfileEvent_QuorumParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts written with quorum. It counts as one part for sync insert and maybe up to async inserts count for insert which flushes async inserts.
+- `ProfileEvent_QuorumWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for quorum during inserts.
+- `ProfileEvent_QuorumFailedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of inserts failed due to quorum not reaching.
+- `ProfileEvent_InsertedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows INSERTed to all tables.
+- `ProfileEvent_InsertedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes (uncompressed; for columns as they stored in memory) INSERTed to all tables.
+- `ProfileEvent_DelayedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a MergeTree table was throttled due to high number of active data parts for partition.
+- `ProfileEvent_RejectedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a MergeTree table was rejected with 'Too many parts' exception due to high number of active data parts for partition.
+- `ProfileEvent_DelayedInsertsMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of milliseconds spent while the INSERT of a block to a MergeTree table was throttled due to high number of active data parts for partition.
+- `ProfileEvent_DelayedMutations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the mutation of a MergeTree table was throttled due to high number of unfinished mutations for table.
+- `ProfileEvent_RejectedMutations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the mutation of a MergeTree table was rejected with 'Too many mutations' exception due to high number of unfinished mutations for table.
+- `ProfileEvent_DelayedMutationsMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of milliseconds spent while the mutation of a MergeTree table was throttled due to high number of unfinished mutations for table.
+- `ProfileEvent_RejectedLightweightUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Number of time the lightweight update was rejected due to too many uncompressed bytes in patches.
+- `ProfileEvent_DistributedDelayedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a Distributed table was throttled due to high number of pending bytes.
+- `ProfileEvent_DistributedRejectedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a Distributed table was rejected with 'Too many bytes' exception due to high number of pending bytes.
+- `ProfileEvent_DistributedDelayedInsertsMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of milliseconds spent while the INSERT of a block to a Distributed table was throttled due to high number of pending bytes.
+- `ProfileEvent_DuplicatedInsertedBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of the synchronous inserts to a *MergeTree table was deduplicated.
+- `ProfileEvent_SelfDuplicatedAsyncInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of async inserts in the INSERTed block to a ReplicatedMergeTree table was self deduplicated.
+- `ProfileEvent_DuplicatedAsyncInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of async inserts in the INSERTed block to a ReplicatedMergeTree table was deduplicated.
+- `ProfileEvent_DuplicationElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent checking for duplication of INSERTed blocks to *MergeTree tables.
+- `ProfileEvent_ZooKeeperInit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times connection with ZooKeeper has been established.
+- `ProfileEvent_ZooKeeperTransactions` ([UInt64](/core/reference/data-types/int-uint)) — Number of ZooKeeper operations, which include both read and write operations as well as multi-transactions.
+- `ProfileEvent_ZooKeeperList` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'list' (getChildren) requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperListRecursive` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'listRecursive' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperCreate` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'create' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperRemove` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'remove' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperExists` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'exists' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperGet` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'get' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperSet` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'set' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperMulti` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'multi' requests to ZooKeeper (compound transactions).
+- `ProfileEvent_ZooKeeperMultiRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of read 'multi' requests to ZooKeeper (compound transactions).
+- `ProfileEvent_ZooKeeperMultiWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of write 'multi' requests to ZooKeeper (compound transactions).
+- `ProfileEvent_ZooKeeperCheck` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'check' requests to ZooKeeper. Usually they don't make sense in isolation, only as part of a complex transaction.
+- `ProfileEvent_ZooKeeperSync` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'sync' requests to ZooKeeper. These requests are rarely needed or usable.
+- `ProfileEvent_ZooKeeperReconfig` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'reconfig' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperClose` ([UInt64](/core/reference/data-types/int-uint)) — Number of times connection with ZooKeeper has been closed voluntary.
+- `ProfileEvent_ZooKeeperGetACL` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'getACL' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperWatchResponse` ([UInt64](/core/reference/data-types/int-uint)) — Number of times watch notification has been received from ZooKeeper.
+- `ProfileEvent_ZooKeeperUserExceptions` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while working with ZooKeeper related to the data (no node, bad version or similar).
+- `ProfileEvent_ZooKeeperHardwareExceptions` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while working with ZooKeeper related to network (connection loss or similar).
+- `ProfileEvent_ZooKeeperOtherExceptions` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while working with ZooKeeper other than ZooKeeperUserExceptions and ZooKeeperHardwareExceptions.
+- `ProfileEvent_ZooKeeperWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Number of microseconds spent waiting for responses from ZooKeeper after creating a request, summed across all the requesting threads.
+- `ProfileEvent_ZooKeeperBytesSent` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes send over network while communicating with ZooKeeper.
+- `ProfileEvent_ZooKeeperBytesReceived` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received over network while communicating with ZooKeeper.
+- `ProfileEvent_DistributedConnectionTries` ([UInt64](/core/reference/data-types/int-uint)) — Total count of distributed connection attempts.
+- `ProfileEvent_DistributedConnectionUsable` ([UInt64](/core/reference/data-types/int-uint)) — Total count of successful distributed connections to a usable server (with required table, but maybe stale).
+- `ProfileEvent_DistributedConnectionFailTry` ([UInt64](/core/reference/data-types/int-uint)) — Total count when distributed connection fails with retry.
+- `ProfileEvent_DistributedConnectionMissingTable` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we rejected a replica from a distributed query, because it did not contain a table needed for the query.
+- `ProfileEvent_DistributedConnectionStaleReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we rejected a replica from a distributed query, because some table needed for a query had replication lag higher than the configured threshold.
+- `ProfileEvent_DistributedConnectionSkipReadOnlyReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas skipped during INSERT into Distributed table due to replicas being read-only
+- `ProfileEvent_DistributedConnectionFailAtAll` ([UInt64](/core/reference/data-types/int-uint)) — Total count when distributed connection fails after all retries finished.
+- `ProfileEvent_Shards` ([UInt64](/core/reference/data-types/int-uint)) — The number of shards involved in a query, summed across all distributed tables and table functions. A single host is counted multiple times if it appears in multiple tables. The number counts the total expected number of shards, which includes skipped shards with the `skip_unavailable_shards` setting.
+- `ProfileEvent_HedgedRequestsChangeReplica` ([UInt64](/core/reference/data-types/int-uint)) — Total count when timeout for changing replica expired in hedged requests.
+- `ProfileEvent_SuspendSendingQueryToShard` ([UInt64](/core/reference/data-types/int-uint)) — Total count when sending query to shard was suspended when async_query_sending_for_remote is enabled.
+- `ProfileEvent_CompileFunction` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a compilation of generated LLVM code (to create fused function for complex expressions) was initiated.
+- `ProfileEvent_CompiledFunctionExecute` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a compiled function was executed.
+- `ProfileEvent_CompileExpressionsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for compilation of expressions to LLVM code.
+- `ProfileEvent_CompileExpressionsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes used for expressions compilation.
+- `ProfileEvent_ExecuteShellCommand` ([UInt64](/core/reference/data-types/int-uint)) — Number of shell command executions.
+- `ProfileEvent_ExternalProcessingCompressedBytesTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed bytes written by external processing (sorting/aggregating/joining)
+- `ProfileEvent_ExternalProcessingUncompressedBytesTotal` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written by external processing (sorting/aggregating/joining)
+- `ProfileEvent_ExternalProcessingFilesTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of files used by external processing (sorting/aggregating/joining)
+- `ProfileEvent_ExternalSortWritePart` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a temporary file was written to disk for sorting in external memory.
+- `ProfileEvent_ExternalSortMerge` ([UInt64](/core/reference/data-types/int-uint)) — Number of times temporary files were merged for sorting in external memory.
+- `ProfileEvent_ExternalSortCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed bytes written for sorting in external memory.
+- `ProfileEvent_ExternalSortUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written for sorting in external memory.
+- `ProfileEvent_ExternalAggregationWritePart` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a temporary file was written to disk for aggregation in external memory.
+- `ProfileEvent_ExternalAggregationMerge` ([UInt64](/core/reference/data-types/int-uint)) — Number of times temporary files were merged for aggregation in external memory.
+- `ProfileEvent_ExternalAggregationCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to disk for aggregation in external memory.
+- `ProfileEvent_ExternalAggregationUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written to disk for aggregation in external memory.
+- `ProfileEvent_ExternalJoinWritePart` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a temporary file was written to disk for JOIN in external memory.
+- `ProfileEvent_ExternalJoinMerge` ([UInt64](/core/reference/data-types/int-uint)) — Number of times temporary files were merged for JOIN in external memory.
+- `ProfileEvent_ExternalJoinCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed bytes written for JOIN in external memory.
+- `ProfileEvent_ExternalJoinUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written for JOIN in external memory.
+- `ProfileEvent_IcebergPartitionPrunedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of skipped files during Iceberg partition pruning
+- `ProfileEvent_IcebergTrivialCountOptimizationApplied` ([UInt64](/core/reference/data-types/int-uint)) — Trivial count optimization applied while reading from Iceberg
+- `ProfileEvent_IcebergVersionHintUsed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times version-hint.text has been used.
+- `ProfileEvent_IcebergMinMaxIndexPrunedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of skipped files by using MinMax index in Iceberg
+- `ProfileEvent_JoinBuildTableRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows in the build table for a JOIN operation.
+- `ProfileEvent_JoinProbeTableRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows in the probe table for a JOIN operation.
+- `ProfileEvent_JoinResultRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows in the result of a JOIN operation.
+- `ProfileEvent_JoinNonJoinedTransformBlockCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks emitted by NonJoinedBlocksTransform.
+- `ProfileEvent_JoinNonJoinedTransformRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-joined rows emitted by NonJoinedBlocksTransform.
+- `ProfileEvent_JoinDelayedJoinedTransformBlockCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks emitted by DelayedJoinedBlocksWorkerTransform.
+- `ProfileEvent_JoinDelayedJoinedTransformRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows emitted by DelayedJoinedBlocksWorkerTransform.
+- `ProfileEvent_JoinSpillingHashJoinSwitchedToGraceJoin` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a (Concurrent)HashJoin was switched to GraceHashJoin due to memory limit in SpillingHashJoin.
+- `ProfileEvent_JoinReorderMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent executing JOIN reordering algorithm.
+- `ProfileEvent_JoinOptimizeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent executing JOIN plan optimizations.
+- `ProfileEvent_QueryPlanOptimizeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent executing query plan optimizations.
+- `ProfileEvent_DeltaLakePartitionPrunedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of skipped files during DeltaLake partition pruning
+- `ProfileEvent_DeltaLakeSnapshotInitializations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a DeltaLake table snapshot was initialized (loaded from object storage)
+- `ProfileEvent_DeltaLakeScannedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files scanned during DeltaLake scan callbacks
+- `ProfileEvent_SlowRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads from a file that were slow. This indicate system overload. Thresholds are controlled by read_backoff_* settings.
+- `ProfileEvent_ReadBackoff` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the number of query processing threads was lowered due to slow reads.
+- `ProfileEvent_ReplicaPartialShutdown` ([UInt64](/core/reference/data-types/int-uint)) — How many times Replicated table has to deinitialize its state due to session expiration in ZooKeeper. The state is reinitialized every time when ZooKeeper is available again.
+- `ProfileEvent_IndexAnalysisRounds` ([UInt64](/core/reference/data-types/int-uint)) — Number of times index analysis was performed within the query.
+- `ProfileEvent_SelectedParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts selected to read from a MergeTree table.
+- `ProfileEvent_SelectedPartsTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of total data parts before selecting which ones to read from a MergeTree table.
+- `ProfileEvent_SelectedRanges` ([UInt64](/core/reference/data-types/int-uint)) — Number of (non-adjacent) ranges in all data parts selected to read from a MergeTree table.
+- `ProfileEvent_SelectedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Number of marks (index granules) selected to read from a MergeTree table.
+- `ProfileEvent_SelectedMarksTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of total marks (index granules) before selecting which ones to read from a MergeTree table.
+- `ProfileEvent_SelectedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows SELECTed from all tables.
+- `ProfileEvent_SelectedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes (uncompressed; for columns as they stored in memory) SELECTed from all tables.
+- `ProfileEvent_RowsReadByMainReader` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows read from MergeTree tables by the main reader (after PREWHERE step).
+- `ProfileEvent_RowsReadByPrewhereReaders` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows read from MergeTree tables (in total) by prewhere readers.
+- `ProfileEvent_LoadedDataParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts loaded by MergeTree tables during initialization.
+- `ProfileEvent_LoadedDataPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Microseconds spent by MergeTree tables for loading data parts during initialization.
+- `ProfileEvent_FilteringMarksWithPrimaryKeyProcessedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Total marks processed during PK analysis.
+- `ProfileEvent_FilteringMarksWithPrimaryKeyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent filtering parts by PK.
+- `ProfileEvent_FilteringMarksWithSecondaryKeysMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent filtering parts by skip indexes.
+- `ProfileEvent_DistributedIndexAnalysisMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent during distributed index analysis
+- `ProfileEvent_DistributedIndexAnalysisScheduledReplicas` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas (local replica will be accounted once) to which distributed index analysis has been scheduled
+- `ProfileEvent_DistributedIndexAnalysisReplicaUnavailable` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distributed index analysis failed on one of replicas without fallback (failed during connect)
+- `ProfileEvent_DistributedIndexAnalysisReplicaFallback` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distributed index analysis failed on one of replicas with fallback to local replica
+- `ProfileEvent_DistributedIndexAnalysisParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts send for distributed index analysis
+- `ProfileEvent_DistributedIndexAnalysisMissingParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of missing parts during distributed index analysis that will be resolved locally
+- `ProfileEvent_WaitMarksLoadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent loading marks
+- `ProfileEvent_BackgroundLoadingMarksTasks` ([UInt64](/core/reference/data-types/int-uint)) — Number of background tasks for loading marks
+- `ProfileEvent_MarksTasksFromCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of times marks were loaded synchronously because they were already present in the cache.
+- `ProfileEvent_LoadingMarksTasksCanceled` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background tasks for loading marks were canceled
+- `ProfileEvent_LoadedMarksFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of mark files loaded.
+- `ProfileEvent_LoadedMarksCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of marks loaded (total across columns).
+- `ProfileEvent_LoadedMarksMemoryBytes` ([UInt64](/core/reference/data-types/int-uint)) — Size of in-memory representations of loaded marks.
+- `ProfileEvent_MarkCacheEvictedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from the mark cache.
+- `ProfileEvent_MarkCacheEvictedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Number of marks evicted from the mark cache.
+- `ProfileEvent_MarkCacheEvictedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of mark files evicted from the mark cache.
+- `ProfileEvent_LoadedPrimaryIndexFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of primary index files loaded.
+- `ProfileEvent_LoadedPrimaryIndexRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows of primary key loaded.
+- `ProfileEvent_LoadedPrimaryIndexBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows of primary key loaded.
+- `ProfileEvent_Merge` ([UInt64](/core/reference/data-types/int-uint)) — Number of launched background merges.
+- `ProfileEvent_MergeSourceParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of source parts scheduled for merges.
+- `ProfileEvent_MergedRows` ([UInt64](/core/reference/data-types/int-uint)) — Rows read for background merges. This is the number of rows before merge.
+- `ProfileEvent_MergedColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of columns merged during the horizontal stage of merges.
+- `ProfileEvent_GatheredColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of columns gathered during the vertical stage of merges.
+- `ProfileEvent_MergedProjections` ([UInt64](/core/reference/data-types/int-uint)) — Number of projections merged (not rebuilt) during MergeTree merges.
+- `ProfileEvent_RebuiltProjections` ([UInt64](/core/reference/data-types/int-uint)) — Number of projections rebuilt from scratch during MergeTree merges.
+- `ProfileEvent_MergedUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) that was read for background merges. This is the number before merge.
+- `ProfileEvent_MergeWrittenRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows written during the merge.
+- `ProfileEvent_MergeTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for background merges
+- `ProfileEvent_MergeExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of background merges
+- `ProfileEvent_MergeCommitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for committing merge results (part renaming, checksum verification, ZooKeeper updates)
+- `ProfileEvent_MergeHorizontalStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for horizontal stage of background merges
+- `ProfileEvent_MergeHorizontalStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of horizontal stage of background merges
+- `ProfileEvent_MergeVerticalStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for vertical stage of background merges
+- `ProfileEvent_MergeVerticalStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of vertical stage of background merges
+- `ProfileEvent_MergeTextIndexStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for text index stage of background merges
+- `ProfileEvent_MergeTextIndexStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of text index stage of background merges
+- `ProfileEvent_MergeProjectionStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for projection stage of background merges
+- `ProfileEvent_MergeProjectionStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of projection stage of background merges
+- `ProfileEvent_MergePrewarmStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for prewarm stage of background merges
+- `ProfileEvent_MergePrewarmStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of prewarm stage of background merges
+- `ProfileEvent_MergesRejectedByMemoryLimit` ([UInt64](/core/reference/data-types/int-uint)) — Number of background merges rejected due to memory limit
+- `ProfileEvent_MergingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while merging sorted columns
+- `ProfileEvent_AggregatingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while aggregating sorted columns
+- `ProfileEvent_CoalescingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while coalescing sorted columns
+- `ProfileEvent_CollapsingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while collapsing sorted columns
+- `ProfileEvent_ReplacingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while replacing sorted columns
+- `ProfileEvent_SummingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while summing sorted columns
+- `ProfileEvent_VersionedCollapsingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while version collapsing sorted columns
+- `ProfileEvent_GatheringColumnMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while gathering columns for vertical merge
+- `ProfileEvent_MutationTotalParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of total parts for which mutations tried to be applied
+- `ProfileEvent_MutationUntouchedParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of total parts for which mutations tried to be applied but which was completely skipped according to predicate
+- `ProfileEvent_MutationCreatedEmptyParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of total parts which were replaced to empty parts instead of running mutation
+- `ProfileEvent_MutatedRows` ([UInt64](/core/reference/data-types/int-uint)) — Rows read for mutations. This is the number of rows before mutation
+- `ProfileEvent_MutatedUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) that was read for mutations. This is the number before mutation.
+- `ProfileEvent_MutationAffectedRowsUpperBound` ([UInt64](/core/reference/data-types/int-uint)) — The upper bound of number of rows that were affected by mutation (e.g. number of rows that satisfy the predicate of UPDATE or DELETE mutation). The actual number may be slightly less
+- `ProfileEvent_MutationTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for mutations.
+- `ProfileEvent_MutationExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of mutations.
+- `ProfileEvent_MutationCommitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for committing mutation results (part renaming, checksum verification, ZooKeeper updates)
+- `ProfileEvent_MutationAllPartColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times when task to mutate all columns in part was created
+- `ProfileEvent_MutationSomePartColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times when task to mutate some columns in part was created
+- `ProfileEvent_MutateTaskProjectionsCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating projections in mutations
+- `ProfileEvent_MergeTreeDataWriterRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows INSERTed to MergeTree tables.
+- `ProfileEvent_MergeTreeDataWriterUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) INSERTed to MergeTree tables.
+- `ProfileEvent_MergeTreeDataWriterCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written to filesystem for data INSERTed to MergeTree tables.
+- `ProfileEvent_MergeTreeDataWriterBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables. Each block forms a data part of level zero.
+- `ProfileEvent_MergeTreeDataWriterBlocksAlreadySorted` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables that appeared to be already sorted.
+- `ProfileEvent_MergeMutateBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for MergeMutate executor tasks.
+- `ProfileEvent_MergeMutateBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for MergeMutate executor tasks.
+- `ProfileEvent_MergeMutateBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for MergeMutate executor.
+- `ProfileEvent_MergeMutateBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in MergeMutate executor.
+- `ProfileEvent_MoveBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for Move executor tasks.
+- `ProfileEvent_MoveBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for Move executor tasks.
+- `ProfileEvent_MoveBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for Move executor.
+- `ProfileEvent_MoveBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in Move executor.
+- `ProfileEvent_FetchBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for Fetch executor tasks.
+- `ProfileEvent_FetchBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for Fetch executor tasks.
+- `ProfileEvent_FetchBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for Fetch executor.
+- `ProfileEvent_FetchBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in Fetch executor.
+- `ProfileEvent_CommonBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for Common executor tasks.
+- `ProfileEvent_CommonBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for Common executor tasks.
+- `ProfileEvent_CommonBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for Common executor.
+- `ProfileEvent_CommonBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in Common executor.
+- `ProfileEvent_MergeTreeDataWriterSkipIndicesCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating skip indices
+- `ProfileEvent_MergeTreeDataWriterStatisticsCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating statistics
+- `ProfileEvent_MergeTreeDataWriterSortingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent sorting blocks
+- `ProfileEvent_MergeTreeDataWriterMergingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent merging input blocks (for special MergeTree engines)
+- `ProfileEvent_MergeTreeDataWriterProjectionsCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating projections
+- `ProfileEvent_MergeTreeDataProjectionWriterSortingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent sorting blocks (for projection it might be a key different from table's sorting key)
+- `ProfileEvent_MergeTreeDataProjectionWriterMergingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent merging blocks
+- `ProfileEvent_InsertedWideParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts inserted in Wide format.
+- `ProfileEvent_InsertedCompactParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts inserted in Compact format.
+- `ProfileEvent_MergedIntoWideParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts merged into Wide format.
+- `ProfileEvent_MergedIntoCompactParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts merged into Compact format.
+- `ProfileEvent_MergeTreeDataProjectionWriterRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows INSERTed to MergeTree tables projection.
+- `ProfileEvent_MergeTreeDataProjectionWriterUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) INSERTed to MergeTree tables projection.
+- `ProfileEvent_MergeTreeDataProjectionWriterCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written to filesystem for data INSERTed to MergeTree tables projection.
+- `ProfileEvent_MergeTreeDataProjectionWriterBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables projection. Each block forms a data part of level zero.
+- `ProfileEvent_MergeTreeDataProjectionWriterBlocksAlreadySorted` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables projection that appeared to be already sorted.
+- `ProfileEvent_CannotRemoveEphemeralNode` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an error happened while trying to remove ephemeral node. This is not an issue, because our implementation of ZooKeeper library guarantee that the session will expire and the node will be removed.
+- `ProfileEvent_RegexpWithMultipleNeedlesCreated` ([UInt64](/core/reference/data-types/int-uint)) — Regular expressions with multiple needles (VectorScan library) compiled.
+- `ProfileEvent_RegexpWithMultipleNeedlesGlobalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we fetched compiled regular expression with multiple needles (VectorScan library) from the global cache.
+- `ProfileEvent_RegexpWithMultipleNeedlesGlobalCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we failed to fetch compiled regular expression with multiple needles (VectorScan library) from the global cache.
+- `ProfileEvent_RegexpLocalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we fetched compiled regular expression from a local cache.
+- `ProfileEvent_RegexpLocalCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we failed to fetch compiled regular expression from a local cache.
+- `ProfileEvent_ContextLock` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the lock of Context was acquired or tried to acquire. This is global lock.
+- `ProfileEvent_ContextLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Context lock wait time in microseconds
+- `ProfileEvent_StorageBufferFlush` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a buffer in a 'Buffer' table was flushed.
+- `ProfileEvent_StorageBufferErrorOnFlush` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a buffer in the 'Buffer' table has not been able to flush due to error writing in the destination table.
+- `ProfileEvent_StorageBufferPassedAllMinThresholds` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on min thresholds has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedTimeMaxThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on max time threshold has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedRowsMaxThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on max rows threshold has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedBytesMaxThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on max bytes threshold has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedTimeFlushThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background-only flush threshold on time has been reached to flush a buffer in a 'Buffer' table. This is expert-only metric. If you read this and you are not an expert, stop reading.
+- `ProfileEvent_StorageBufferPassedRowsFlushThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background-only flush threshold on rows has been reached to flush a buffer in a 'Buffer' table. This is expert-only metric. If you read this and you are not an expert, stop reading.
+- `ProfileEvent_StorageBufferPassedBytesFlushThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background-only flush threshold on bytes has been reached to flush a buffer in a 'Buffer' table. This is expert-only metric. If you read this and you are not an expert, stop reading.
+- `ProfileEvent_StorageBufferLayerLockReadersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time for waiting for Buffer layer during reading.
+- `ProfileEvent_StorageBufferLayerLockWritersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time for waiting free Buffer layer to write to (can be used to tune Buffer layers).
+- `ProfileEvent_SystemLogErrorOnFlush` ([UInt64](/core/reference/data-types/int-uint)) — Number of times any of the system logs have failed to flush to the corresponding system table. Attempts to flush are repeated.
+- `ProfileEvent_DictCacheKeysRequested` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys requested from the data source for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheKeysRequestedMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys requested from the data source for dictionaries of 'cache' types but not found in the data source.
+- `ProfileEvent_DictCacheKeysRequestedFound` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys requested from the data source for dictionaries of 'cache' types and found in the data source.
+- `ProfileEvent_DictCacheKeysExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys looked up in the dictionaries of 'cache' types and found in the cache but they were obsolete.
+- `ProfileEvent_DictCacheKeysNotFound` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys looked up in the dictionaries of 'cache' types and not found.
+- `ProfileEvent_DictCacheKeysHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys looked up in the dictionaries of 'cache' types and found in the cache.
+- `ProfileEvent_DictCacheRequestTimeNs` ([UInt64](/core/reference/data-types/int-uint)) — Number of nanoseconds spend in querying the external data sources for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of bulk requests to the external data sources for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheLockWriteNs` ([UInt64](/core/reference/data-types/int-uint)) — Number of nanoseconds spend in waiting for write lock to update the data for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheLockReadNs` ([UInt64](/core/reference/data-types/int-uint)) — Number of nanoseconds spend in waiting for read lock to lookup the data for the dictionaries of 'cache' types.
+- `ProfileEvent_DistributedSyncInsertionTimeoutExceeded` ([UInt64](/core/reference/data-types/int-uint)) — A timeout has exceeded while waiting for shards during synchronous insertion into a Distributed table (with 'distributed_foreground_insert' = 1)
+- `ProfileEvent_DistributedAsyncInsertionFailures` ([UInt64](/core/reference/data-types/int-uint)) — Number of failures for asynchronous insertion into a Distributed table (with 'distributed_foreground_insert' = 0)
+- `ProfileEvent_DataAfterMergeDiffersFromReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data after merge is not byte-identical to the data on another replicas. There could be several reasons:
+ 1. Using newer version of compression library after server update.
+ 2. Using another compression method.
+ 3. Non-deterministic compression algorithm (highly unlikely).
+ 4. Non-deterministic merge algorithm due to logical error in code.
+ 5. Data corruption in memory due to bug in code.
+ 6. Data corruption in memory due to hardware issue.
+ 7. Manual modification of source data after server startup.
+ 8. Manual modification of checksums stored in ZooKeeper.
+ 9. Part format related settings like 'enable_mixed_granularity_parts' are different on different replicas.
+ The server successfully detected this situation and will download merged part from the replica to force the byte-identical result.
+- `ProfileEvent_DataAfterMutationDiffersFromReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data after mutation is not byte-identical to the data on other replicas. In addition to the reasons described in 'DataAfterMergeDiffersFromReplica', it is also possible due to non-deterministic mutation.
+- `ProfileEvent_PolygonsAddedToPool` ([UInt64](/core/reference/data-types/int-uint)) — A polygon has been added to the cache (pool) for the 'pointInPolygon' function.
+- `ProfileEvent_PolygonsInPoolAllocatedBytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of bytes for polygons added to the cache (pool) for the 'pointInPolygon' function.
+- `ProfileEvent_NaiveBayesClassifierModelsLoaded` ([UInt64](/core/reference/data-types/int-uint)) — Number of Naive Bayes Classifier models loaded.
+- `ProfileEvent_NaiveBayesClassifierModelsAllocatedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes allocated for Naive Bayes Classifier models.
+- `ProfileEvent_USearchAddCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of vectors added to usearch indexes.
+- `ProfileEvent_USearchAddVisitedMembers` ([UInt64](/core/reference/data-types/int-uint)) — Number of nodes visited when adding vectors to usearch indexes.
+- `ProfileEvent_USearchAddComputedDistances` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distance was computed when adding vectors to usearch indexes.
+- `ProfileEvent_USearchSearchCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of search operations performed in usearch indexes.
+- `ProfileEvent_USearchSearchVisitedMembers` ([UInt64](/core/reference/data-types/int-uint)) — Number of nodes visited when searching in usearch indexes.
+- `ProfileEvent_USearchSearchComputedDistances` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distance was computed when searching usearch indexes.
+- `ProfileEvent_RWLockAcquiredReadLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read lock was acquired (in a heavy RWLock).
+- `ProfileEvent_RWLockAcquiredWriteLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a write lock was acquired (in a heavy RWLock).
+- `ProfileEvent_RWLockReadersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for a read lock to be acquired (in a heavy RWLock).
+- `ProfileEvent_RWLockWritersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for a write lock to be acquired (in a heavy RWLock).
+- `ProfileEvent_DNSError` ([UInt64](/core/reference/data-types/int-uint)) — Total count of errors in DNS resolution
+- `ProfileEvent_PartsLockHoldMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent holding data parts lock in MergeTree tables
+- `ProfileEvent_PartsLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for data parts lock in MergeTree tables
+- `ProfileEvent_PartsLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data parts lock has been acquired for MergeTree tables
+- `ProfileEvent_SharedPartsLockHoldMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent holding shared data parts lock in MergeTree tables
+- `ProfileEvent_SharedPartsLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for shared data parts lock in MergeTree tables
+- `ProfileEvent_SharedPartsLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times shared data parts lock has been acquired for MergeTree tables
+- `ProfileEvent_RealTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total (wall clock) time spent in processing (queries and other tasks) threads (note that this is a sum).
+- `ProfileEvent_UserTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in processing (queries and other tasks) threads executing CPU instructions in user mode. This includes time CPU pipeline was stalled due to main memory access, cache misses, branch mispredictions, hyper-threading, etc.
+- `ProfileEvent_SystemTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in processing (queries and other tasks) threads executing CPU instructions in OS kernel mode. This is time spent in syscalls, excluding waiting time during blocking syscalls.
+- `ProfileEvent_MemoryOvercommitWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in waiting for memory to be freed in OvercommitTracker.
+- `ProfileEvent_MemoryAllocatorPurge` ([UInt64](/core/reference/data-types/int-uint)) — Total number of times memory allocator purge was requested
+- `ProfileEvent_MemoryAllocatorPurgeTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for memory allocator purge
+- `ProfileEvent_SoftPageFaults` ([UInt64](/core/reference/data-types/int-uint)) — The number of soft page faults in query execution threads. Soft page fault usually means a miss in the memory allocator cache, which requires a new memory mapping from the OS and subsequent allocation of a page of physical memory.
+- `ProfileEvent_HardPageFaults` ([UInt64](/core/reference/data-types/int-uint)) — The number of hard page faults in query execution threads. High values indicate either that you forgot to turn off swap on your server, or eviction of memory pages of the ClickHouse binary during very high memory pressure, or successful usage of the 'mmap' read method for the tables data.
+- `ProfileEvent_OSIOWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a thread spent waiting for a result of IO operation, from the OS point of view. This is real IO that doesn't include page cache.
+- `ProfileEvent_OSCPUWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a thread was ready for execution but waiting to be scheduled by OS, from the OS point of view.
+- `ProfileEvent_OSCPUVirtualTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — CPU time spent seen by OS. Does not include involuntary waits due to virtualization.
+- `ProfileEvent_OSReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from disks or block devices. Doesn't include bytes read from page cache. May include excessive data due to block size, readahead, etc.
+- `ProfileEvent_OSWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to disks or block devices. Doesn't include bytes that are in page cache dirty pages. May not include data that was written by OS asynchronously.
+- `ProfileEvent_OSReadChars` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from filesystem, including page cache, as well as network and other files.
+- `ProfileEvent_OSWriteChars` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to filesystem, including page cache, as well as network and other files.
+- `ProfileEvent_ParallelReplicasHandleRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent processing requests for marks from replicas
+- `ProfileEvent_ParallelReplicasHandleAnnouncementMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent processing replicas announcements
+- `ProfileEvent_ParallelReplicasAnnouncementMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to send an announcement
+- `ProfileEvent_ParallelReplicasReadRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent for read requests
+- `ProfileEvent_ParallelReplicasReadAssignedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Sum across all replicas of how many of scheduled marks were assigned by consistent hash
+- `ProfileEvent_ParallelReplicasReadUnassignedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Sum across all replicas of how many unassigned marks were scheduled
+- `ProfileEvent_ParallelReplicasReadAssignedForStealingMarks` ([UInt64](/core/reference/data-types/int-uint)) — Sum across all replicas of how many of scheduled marks were assigned for stealing by consistent hash
+- `ProfileEvent_ParallelReplicasReadMarks` ([UInt64](/core/reference/data-types/int-uint)) — How many marks were read by the given replica
+- `ProfileEvent_ParallelReplicasStealingByHashMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent collecting segments meant for stealing by hash
+- `ProfileEvent_ParallelReplicasProcessingPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent processing data parts
+- `ProfileEvent_ParallelReplicasStealingLeftoversMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent collecting orphaned segments
+- `ProfileEvent_ParallelReplicasCollectingOwnedSegmentsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent collecting segments meant by hash
+- `ProfileEvent_ParallelReplicasNumRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of requests to the initiator.
+- `ProfileEvent_ParallelReplicasDeniedRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of completely denied requests to the initiator
+- `ProfileEvent_CacheWarmerBytesDownloaded` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data fetched into filesystem cache by dedicated background threads.
+- `ProfileEvent_CacheWarmerDataPartsDownloaded` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts that were fully fetched by CacheWarmer.
+- `ProfileEvent_IgnoredColdParts` ([UInt64](/core/reference/data-types/int-uint)) — See setting ignore_cold_parts_seconds. Number of times read queries ignored very new parts that weren't pulled into cache by CacheWarmer yet.
+- `ProfileEvent_PreferredWarmedUnmergedParts` ([UInt64](/core/reference/data-types/int-uint)) — See setting prefer_warmed_unmerged_parts_seconds. Number of times read queries used outdated pre-merge parts that are in cache instead of merged part that wasn't pulled into cache by CacheWarmer yet.
+- `ProfileEvent_PerfCPUCycles` ([UInt64](/core/reference/data-types/int-uint)) — Total cycles. Be wary of what happens during CPU frequency scaling.
+- `ProfileEvent_PerfInstructions` ([UInt64](/core/reference/data-types/int-uint)) — Retired instructions. Be careful, these can be affected by various issues, most notably hardware interrupt counts.
+- `ProfileEvent_PerfCacheReferences` ([UInt64](/core/reference/data-types/int-uint)) — Cache accesses. Usually, this indicates Last Level Cache accesses, but this may vary depending on your CPU. This may include prefetches and coherency messages; again this depends on the design of your CPU.
+- `ProfileEvent_PerfCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Cache misses. Usually this indicates Last Level Cache misses; this is intended to be used in conjunction with the PERFCOUNTHWCACHEREFERENCES event to calculate cache miss rates.
+- `ProfileEvent_PerfBranchInstructions` ([UInt64](/core/reference/data-types/int-uint)) — Retired branch instructions. Prior to Linux 2.6.35, this used the wrong event on AMD processors.
+- `ProfileEvent_PerfBranchMisses` ([UInt64](/core/reference/data-types/int-uint)) — Mispredicted branch instructions.
+- `ProfileEvent_PerfBusCycles` ([UInt64](/core/reference/data-types/int-uint)) — Bus cycles, which can be different from total cycles.
+- `ProfileEvent_PerfStalledCyclesFrontend` ([UInt64](/core/reference/data-types/int-uint)) — Stalled cycles during issue.
+- `ProfileEvent_PerfStalledCyclesBackend` ([UInt64](/core/reference/data-types/int-uint)) — Stalled cycles during retirement.
+- `ProfileEvent_PerfRefCPUCycles` ([UInt64](/core/reference/data-types/int-uint)) — Total cycles; not affected by CPU frequency scaling.
+- `ProfileEvent_PerfCPUClock` ([UInt64](/core/reference/data-types/int-uint)) — The CPU clock, a high-resolution per-CPU timer
+- `ProfileEvent_PerfTaskClock` ([UInt64](/core/reference/data-types/int-uint)) — A clock count specific to the task that is running
+- `ProfileEvent_PerfContextSwitches` ([UInt64](/core/reference/data-types/int-uint)) — Number of context switches
+- `ProfileEvent_PerfCPUMigrations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the process has migrated to a new CPU
+- `ProfileEvent_PerfAlignmentFaults` ([UInt64](/core/reference/data-types/int-uint)) — Number of alignment faults. These happen when unaligned memory accesses happen; the kernel can handle these but it reduces performance. This happens only on some architectures (never on x86).
+- `ProfileEvent_PerfEmulationFaults` ([UInt64](/core/reference/data-types/int-uint)) — Number of emulation faults. The kernel sometimes traps on unimplemented instructions and emulates them for user space. This can negatively impact performance.
+- `ProfileEvent_PerfMinEnabledTime` ([UInt64](/core/reference/data-types/int-uint)) — For all events, minimum time that an event was enabled. Used to track event multiplexing influence
+- `ProfileEvent_PerfMinEnabledRunningTime` ([UInt64](/core/reference/data-types/int-uint)) — Running time for event with minimum enabled time. Used to track the amount of event multiplexing
+- `ProfileEvent_PerfDataTLBReferences` ([UInt64](/core/reference/data-types/int-uint)) — Data TLB references
+- `ProfileEvent_PerfDataTLBMisses` ([UInt64](/core/reference/data-types/int-uint)) — Data TLB misses
+- `ProfileEvent_PerfInstructionTLBReferences` ([UInt64](/core/reference/data-types/int-uint)) — Instruction TLB references
+- `ProfileEvent_PerfInstructionTLBMisses` ([UInt64](/core/reference/data-types/int-uint)) — Instruction TLB misses
+- `ProfileEvent_PerfLocalMemoryReferences` ([UInt64](/core/reference/data-types/int-uint)) — Local NUMA node memory reads
+- `ProfileEvent_PerfLocalMemoryMisses` ([UInt64](/core/reference/data-types/int-uint)) — Local NUMA node memory read misses
+- `ProfileEvent_CannotWriteToWriteBufferDiscard` ([UInt64](/core/reference/data-types/int-uint)) — Number of stack traces dropped by query profiler or signal handler because pipe is full or cannot write to pipe.
+- `ProfileEvent_QueryProfilerSignalOverruns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we drop processing of a query profiler signal due to overrun plus the number of signals that OS has not delivered due to overrun.
+- `ProfileEvent_QueryProfilerConcurrencyOverruns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we drop processing of a query profiler signal due to too many concurrent query profilers in other threads, which may indicate overload.
+- `ProfileEvent_QueryProfilerRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times QueryProfiler had been run.
+- `ProfileEvent_QueryProfilerErrors` ([UInt64](/core/reference/data-types/int-uint)) — Invalid memory accesses during asynchronous stack unwinding.
+- `ProfileEvent_CreatedLogEntryForMerge` ([UInt64](/core/reference/data-types/int-uint)) — Successfully created log entry to merge parts in ReplicatedMergeTree.
+- `ProfileEvent_NotCreatedLogEntryForMerge` ([UInt64](/core/reference/data-types/int-uint)) — Log entry to merge parts in ReplicatedMergeTree is not created due to concurrent log update by another replica.
+- `ProfileEvent_CreatedLogEntryForMutation` ([UInt64](/core/reference/data-types/int-uint)) — Successfully created log entry to mutate parts in ReplicatedMergeTree.
+- `ProfileEvent_NotCreatedLogEntryForMutation` ([UInt64](/core/reference/data-types/int-uint)) — Log entry to mutate parts in ReplicatedMergeTree is not created due to concurrent log update by another replica.
+- `ProfileEvent_S3ReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for GET and HEAD requests, including the initial try and any retries, but excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_S3ReadRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for GET and HEAD requests, excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_S3WriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for POST, DELETE, PUT and PATCH requests, including the initial try and any retries, but excluding retries performed internally by the retry strategy
+- `ProfileEvent_S3WriteRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for POST, DELETE, PUT and PATCH requests, excluding retries performed internally by the retry strategy
+- `ProfileEvent_DiskS3ReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for GET and HEAD requests to DiskS3 storage, including the initial try and any retries, but excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_DiskS3ReadRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for GET and HEAD requests to DiskS3 storage, excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_DiskS3WriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for POST, DELETE, PUT and PATCH requests to DiskS3 storage, including the initial try and any retries, but excluding retries performed internally by the retry strategy
+- `ProfileEvent_DiskS3WriteRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for POST, DELETE, PUT and PATCH requests to DiskS3 storage, excluding retries performed internally by the retry strategy
+- `ProfileEvent_S3DeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API DeleteObject(s) calls.
+- `ProfileEvent_S3CopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API CopyObject calls.
+- `ProfileEvent_S3ListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API ListObjects calls.
+- `ProfileEvent_S3HeadObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API HeadObject calls.
+- `ProfileEvent_S3GetObjectTagging` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API GetObjectTagging calls.
+- `ProfileEvent_S3CreateMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API CreateMultipartUpload calls.
+- `ProfileEvent_S3UploadPartCopy` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API UploadPartCopy calls.
+- `ProfileEvent_S3UploadPart` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API UploadPart calls.
+- `ProfileEvent_S3AbortMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API AbortMultipartUpload calls.
+- `ProfileEvent_S3CompleteMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API CompleteMultipartUpload calls.
+- `ProfileEvent_S3PutObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API PutObject calls.
+- `ProfileEvent_S3GetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API GetObject calls.
+- `ProfileEvent_DiskS3DeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API DeleteObject(s) calls.
+- `ProfileEvent_DiskS3CopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API CopyObject calls.
+- `ProfileEvent_DiskS3ListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API ListObjects calls.
+- `ProfileEvent_DiskS3HeadObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API HeadObject calls.
+- `ProfileEvent_DiskS3GetObjectTagging` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API GetObjectTagging calls.
+- `ProfileEvent_DiskS3CreateMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API CreateMultipartUpload calls.
+- `ProfileEvent_DiskS3UploadPartCopy` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API UploadPartCopy calls.
+- `ProfileEvent_DiskS3UploadPart` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API UploadPart calls.
+- `ProfileEvent_DiskS3AbortMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API AbortMultipartUpload calls.
+- `ProfileEvent_DiskS3CompleteMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API CompleteMultipartUpload calls.
+- `ProfileEvent_DiskS3PutObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API PutObject calls.
+- `ProfileEvent_DiskS3GetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API GetObject calls.
+- `ProfileEvent_DiskPlainRewritableAzureDirectoryCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories created by the 'plain_rewritable' metadata storage for AzureObjectStorage.
+- `ProfileEvent_DiskPlainRewritableAzureDirectoryRemoved` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories removed by the 'plain_rewritable' metadata storage for AzureObjectStorage.
+- `ProfileEvent_DiskPlainRewritableLocalDirectoryCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories created by the 'plain_rewritable' metadata storage for LocalObjectStorage.
+- `ProfileEvent_DiskPlainRewritableLocalDirectoryRemoved` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories removed by the 'plain_rewritable' metadata storage for LocalObjectStorage.
+- `ProfileEvent_DiskPlainRewritableS3DirectoryCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories created by the 'plain_rewritable' metadata storage for S3ObjectStorage.
+- `ProfileEvent_DiskPlainRewritableS3DirectoryRemoved` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories removed by the 'plain_rewritable' metadata storage for S3ObjectStorage.
+- `ProfileEvent_DiskPlainRewritableLegacyLayoutDiskCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of the 'plain_rewritable' disks with legacy layout.
+- `ProfileEvent_S3Clients` ([UInt64](/core/reference/data-types/int-uint)) — Number of created S3 clients.
+- `ProfileEvent_TinyS3Clients` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 clients copies which reuse an existing auth provider from another client.
+- `ProfileEvent_EngineFileLikeReadFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files read in table engines working with files (like File/S3/URL/HDFS).
+- `ProfileEvent_ReadBufferFromS3Microseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on reading from S3.
+- `ProfileEvent_ReadBufferFromS3InitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent initializing connection to S3.
+- `ProfileEvent_ReadBufferFromS3Bytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from S3.
+- `ProfileEvent_ReadBufferFromS3RequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while reading from S3.
+- `ProfileEvent_WriteBufferFromS3Microseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on writing to S3.
+- `ProfileEvent_WriteBufferFromS3Bytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written to S3.
+- `ProfileEvent_WriteBufferFromS3RequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while writing to S3.
+- `ProfileEvent_WriteBufferFromS3WaitInflightLimitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on waiting while some of the current requests are done when its number reached the limit defined by s3_max_inflight_parts_for_one_file.
+- `ProfileEvent_QueryMemoryLimitExceeded` ([UInt64](/core/reference/data-types/int-uint)) — Number of times when memory limit exceeded for query.
+- `ProfileEvent_MemoryAllocatedWithoutCheck` ([UInt64](/core/reference/data-types/int-uint)) — Number of times memory has been allocated without checking for memory constraints.
+- `ProfileEvent_MemoryAllocatedWithoutCheckBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of bytes that has been allocated without checking for memory constraints.
+- `ProfileEvent_AzureGetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure API GetObject calls.
+- `ProfileEvent_AzureUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API Upload calls
+- `ProfileEvent_AzureStageBlock` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API StageBlock calls
+- `ProfileEvent_AzureCommitBlockList` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API CommitBlockList calls
+- `ProfileEvent_AzureCopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API CopyObject calls
+- `ProfileEvent_AzureDeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API DeleteObject(s) calls.
+- `ProfileEvent_AzureListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API ListObjects calls.
+- `ProfileEvent_AzureGetProperties` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API GetProperties calls.
+- `ProfileEvent_AzureCreateContainer` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API CreateContainer calls.
+- `ProfileEvent_DiskAzureGetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure API GetObject calls.
+- `ProfileEvent_DiskAzureUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API Upload calls
+- `ProfileEvent_DiskAzureStageBlock` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API StageBlock calls
+- `ProfileEvent_DiskAzureCommitBlockList` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API CommitBlockList calls
+- `ProfileEvent_DiskAzureCopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API CopyObject calls
+- `ProfileEvent_DiskAzureListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API ListObjects calls.
+- `ProfileEvent_DiskAzureDeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API DeleteObject(s) calls.
+- `ProfileEvent_DiskAzureGetProperties` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API GetProperties calls.
+- `ProfileEvent_DiskAzureCreateContainer` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API CreateContainer calls.
+- `ProfileEvent_ReadBufferFromAzureMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on reading from Azure.
+- `ProfileEvent_ReadBufferFromAzureInitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent initializing connection to Azure.
+- `ProfileEvent_ReadBufferFromAzureBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from Azure.
+- `ProfileEvent_ReadBufferFromAzureRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while reading from Azure
+- `ProfileEvent_CachedReadBufferReadFromCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read from filesystem cache hit the cache.
+- `ProfileEvent_CachedReadBufferReadFromCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read from filesystem cache miss the cache.
+- `ProfileEvent_CachedReadBufferReadFromSourceMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time reading from filesystem cache source (from remote filesystem, etc)
+- `ProfileEvent_CachedReadBufferWaitReadBufferMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spend waiting for internal read buffer (includes cache waiting)
+- `ProfileEvent_CachedReadBufferPredownloadedFromSourceMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time reading from filesystem cache source for predownload (from remote filesystem, etc)
+- `ProfileEvent_CachedReadBufferReadFromCacheMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time reading from filesystem cache
+- `ProfileEvent_CachedReadBufferReadFromSourceBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache source (from remote fs, etc)
+- `ProfileEvent_CachedReadBufferPredownloadedFromSourceBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache source for predownload (from remote fs, etc)
+- `ProfileEvent_CachedReadBufferReadFromCacheBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache
+- `ProfileEvent_CachedReadBufferPredownloadedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache source. Cache segments are read from left to right as a whole, it might be that we need to predownload some part of the segment irrelevant for the current task just to get to the needed data
+- `ProfileEvent_CachedReadBufferCacheWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written from source (remote fs, etc) to filesystem cache
+- `ProfileEvent_CachedReadBufferCacheWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent writing data into filesystem cache
+- `ProfileEvent_CachedReadBufferCreateBufferMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Prepare buffer time
+- `ProfileEvent_CachedWriteBufferCacheWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written from source (remote fs, etc) to filesystem cache
+- `ProfileEvent_CachedWriteBufferCacheWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent writing data into filesystem cache
+- `ProfileEvent_FilesystemCacheLoadMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent loading filesystem cache metadata
+- `ProfileEvent_FilesystemCacheEvictedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from filesystem cache
+- `ProfileEvent_FilesystemCacheCreatedKeyDirectories` ([UInt64](/core/reference/data-types/int-uint)) — Number of created key directories
+- `ProfileEvent_FilesystemCacheEvictedFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments evicted from filesystem cache
+- `ProfileEvent_FilesystemCacheEvictedFileSegmentsDuringPriorityIncrease` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments evicted from filesystem cache when increasing priority of file segments (Applies to SLRU cache policy)
+- `ProfileEvent_FilesystemCacheBackgroundDownloadQueuePush` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments sent for background download in filesystem cache
+- `ProfileEvent_FilesystemCacheEvictionSkippedFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments skipped for eviction because of being in unreleasable state
+- `ProfileEvent_FilesystemCacheEvictionSkippedEvictingFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments skipped for eviction because of being in evicting state
+- `ProfileEvent_FilesystemCacheEvictionSkippedMovingFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments skipped for eviction because of being in moving state
+- `ProfileEvent_FilesystemCacheEvictionTries` ([UInt64](/core/reference/data-types/int-uint)) — Number of filesystem cache eviction attempts
+- `ProfileEvent_FilesystemCacheEvictionReusedIterator` ([UInt64](/core/reference/data-types/int-uint)) — Number of filesystem cache iterator reusing
+- `ProfileEvent_FilesystemCacheLockKeyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock cache key time
+- `ProfileEvent_FilesystemCacheLockMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache metadata time
+- `ProfileEvent_FilesystemCachePriorityWriteLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache time for write to priority queue
+- `ProfileEvent_FilesystemCachePriorityReadLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache time for read in priority queue
+- `ProfileEvent_FilesystemCacheStateLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache time for state lock
+- `ProfileEvent_FilesystemCacheReserveMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache space reservation time
+- `ProfileEvent_FilesystemCacheReserveAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache space reservation attempt
+- `ProfileEvent_FilesystemCacheEvictMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache eviction time
+- `ProfileEvent_FilesystemCacheGetOrSetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache getOrSet() time
+- `ProfileEvent_FilesystemCacheGetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache get() time
+- `ProfileEvent_FilesystemCacheBackgroundEvictedFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments evicted by background thread
+- `ProfileEvent_FilesystemCacheBackgroundEvictedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted by background thread
+- `ProfileEvent_FilesystemCacheCheckCorrectness` ([UInt64](/core/reference/data-types/int-uint)) — Number of times FileCache::assertCacheCorrectness was called
+- `ProfileEvent_FilesystemCacheCheckCorrectnessMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time does FileCache::assertCacheCorrectness takes
+- `ProfileEvent_FileSegmentWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Wait on DOWNLOADING state
+- `ProfileEvent_FileSegmentCompleteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Duration of FileSegment::complete() in filesystem cache
+- `ProfileEvent_FileSegmentLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock file segment time
+- `ProfileEvent_FileSegmentWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segment write() time
+- `ProfileEvent_FileSegmentIncreasePriorityMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segment increase priority time
+- `ProfileEvent_FileSegmentRemoveMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segment remove() time
+- `ProfileEvent_FileSegmentHolderCompleteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segments holder complete() time
+- `ProfileEvent_FileSegmentFailToIncreasePriority` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the priority was not increased due to a high contention on the cache lock
+- `ProfileEvent_FilesystemCacheFailToReserveSpaceBecauseOfLockContention` ([UInt64](/core/reference/data-types/int-uint)) — Number of times space reservation was skipped due to a high contention on the cache lock
+- `ProfileEvent_FilesystemCacheFailToReserveSpaceBecauseOfCacheResize` ([UInt64](/core/reference/data-types/int-uint)) — Number of times space reservation was skipped due to the cache is being resized
+- `ProfileEvent_FilesystemCacheHoldFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache file segments count, which were hold
+- `ProfileEvent_FilesystemCacheUnusedHoldFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache file segments count, which were hold, but not used (because of seek or LIMIT n, etc)
+- `ProfileEvent_FilesystemCacheFreeSpaceKeepingThreadRun` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background thread executed free space keeping job
+- `ProfileEvent_FilesystemCacheFreeSpaceKeepingThreadWorkMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time for which background thread executed free space keeping job
+- `ProfileEvent_FilesystemCacheFailedEvictionCandidates` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments which unexpectedly failed to be evicted during dynamic filesystem cache eviction
+- `ProfileEvent_RemoteFSSeeks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of seeks for async buffer
+- `ProfileEvent_RemoteFSPrefetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of prefetches made with asynchronous reading from remote filesystem
+- `ProfileEvent_RemoteFSCancelledPrefetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of cancelled prefecthes (because of seek)
+- `ProfileEvent_RemoteFSUnusedPrefetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of prefetches pending at buffer destruction
+- `ProfileEvent_RemoteFSPrefetchedReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads from prefecthed buffer
+- `ProfileEvent_RemoteFSPrefetchedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes from prefecthed buffer
+- `ProfileEvent_RemoteFSUnprefetchedReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads from unprefetched buffer
+- `ProfileEvent_RemoteFSUnprefetchedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes from unprefetched buffer
+- `ProfileEvent_RemoteFSLazySeeks` ([UInt64](/core/reference/data-types/int-uint)) — Number of lazy seeks
+- `ProfileEvent_RemoteFSSeeksWithReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of seeks which lead to a new connection
+- `ProfileEvent_RemoteFSBuffers` ([UInt64](/core/reference/data-types/int-uint)) — Number of buffers created for asynchronous reading from remote filesystem
+- `ProfileEvent_MergeTreePrefetchedReadPoolInit` ([UInt64](/core/reference/data-types/int-uint)) — Time spent preparing tasks in MergeTreePrefetchedReadPool
+- `ProfileEvent_WaitPrefetchTaskMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spend waiting for prefetched reader
+- `ProfileEvent_ThreadpoolReaderTaskMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent getting the data in asynchronous reading
+- `ProfileEvent_ThreadpoolReaderPrepareMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on preparation (e.g. call to reader seek() method)
+- `ProfileEvent_ThreadpoolReaderReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from a threadpool task in asynchronous reading
+- `ProfileEvent_ThreadpoolReaderSubmit` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from a threadpool task in asynchronous reading
+- `ProfileEvent_ThreadpoolReaderSubmitReadSynchronously` ([UInt64](/core/reference/data-types/int-uint)) — How many times we haven't scheduled a task on the thread pool and read synchronously instead
+- `ProfileEvent_ThreadpoolReaderSubmitReadSynchronouslyBytes` ([UInt64](/core/reference/data-types/int-uint)) — How many bytes were read synchronously
+- `ProfileEvent_ThreadpoolReaderSubmitReadSynchronouslyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time we spent reading synchronously
+- `ProfileEvent_ThreadpoolReaderSubmitLookupInCacheMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time we spent checking if content is cached
+- `ProfileEvent_AsynchronousReaderIgnoredBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes ignored during asynchronous reading
+- `ProfileEvent_ReadBufferSeekCancelConnection` ([UInt64](/core/reference/data-types/int-uint)) — Number of seeks which lead to new connection (s3, http)
+- `ProfileEvent_SleepFunctionCalls` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a sleep function (sleep, sleepEachRow) has been called.
+- `ProfileEvent_SleepFunctionMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time set to sleep in a sleep function (sleep, sleepEachRow).
+- `ProfileEvent_SleepFunctionElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent sleeping in a sleep function (sleep, sleepEachRow).
+- `ProfileEvent_ThreadPoolReaderPageCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read inside ThreadPoolReader was done from the page cache.
+- `ProfileEvent_ThreadPoolReaderPageCacheHitBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read inside ThreadPoolReader when it was done from the page cache.
+- `ProfileEvent_ThreadPoolReaderPageCacheHitElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent reading data from page cache in ThreadPoolReader.
+- `ProfileEvent_ThreadPoolReaderPageCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read inside ThreadPoolReader was not done from page cache and was hand off to thread pool.
+- `ProfileEvent_ThreadPoolReaderPageCacheMissBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read inside ThreadPoolReader when read was not done from page cache and was hand off to thread pool.
+- `ProfileEvent_ThreadPoolReaderPageCacheMissElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent reading data inside the asynchronous job in ThreadPoolReader - when read was not done from the page cache.
+- `ProfileEvent_AsynchronousReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for asynchronous reads in asynchronous local read.
+- `ProfileEvent_SynchronousReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for synchronous reads in asynchronous local read.
+- `ProfileEvent_AsynchronousRemoteReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for asynchronous remote reads.
+- `ProfileEvent_SynchronousRemoteReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for synchronous remote reads.
+- `ProfileEvent_ExternalDataSourceLocalCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from local cache buffer in RemoteReadBufferCache
+- `ProfileEvent_MainConfigLoads` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the main configuration was reloaded.
+- `ProfileEvent_AggregationPreallocatedElementsInHashTables` ([UInt64](/core/reference/data-types/int-uint)) — How many elements were preallocated in hash tables for aggregation.
+- `ProfileEvent_AggregationHashTablesInitializedAsTwoLevel` ([UInt64](/core/reference/data-types/int-uint)) — How many hash tables were inited as two-level for aggregation.
+- `ProfileEvent_AggregationOptimizedEqualRangesOfKeys` ([UInt64](/core/reference/data-types/int-uint)) — For how many blocks optimization of equal ranges of keys was applied
+- `ProfileEvent_HashJoinPreallocatedElementsInHashTables` ([UInt64](/core/reference/data-types/int-uint)) — How many elements were preallocated in hash tables for hash join.
+- `ProfileEvent_MetadataFromKeeperCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an object storage metadata request was answered from cache without making request to Keeper
+- `ProfileEvent_MetadataFromKeeperCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an object storage metadata request had to be answered from Keeper
+- `ProfileEvent_MetadataFromKeeperCacheTooManyInvalidated` ([UInt64](/core/reference/data-types/int-uint)) — Number of times filesystem cache returned too many invalidated entries
+- `ProfileEvent_MetadataFromKeeperCacheUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in updating the cache including waiting for responses from Keeper
+- `ProfileEvent_MetadataFromKeeperUpdateCacheOneLevel` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a cache update for one level of directory tree was done
+- `ProfileEvent_MetadataFromKeeperTransactionCommit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit was attempted
+- `ProfileEvent_MetadataFromKeeperTransactionCommitRetry` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit was retried
+- `ProfileEvent_MetadataFromKeeperCleanupTransactionCommit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit for deleted objects cleanup was attempted
+- `ProfileEvent_MetadataFromKeeperCleanupTransactionCommitRetry` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit for deleted objects cleanup was retried
+- `ProfileEvent_MetadataFromKeeperOperations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a request was made to Keeper
+- `ProfileEvent_MetadataFromKeeperIndividualOperations` ([UInt64](/core/reference/data-types/int-uint)) — Number of paths read or written by single or multi requests to Keeper
+- `ProfileEvent_MetadataFromKeeperIndividualOperationsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spend during single or multi requests to Keeper
+- `ProfileEvent_MetadataFromKeeperReconnects` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a reconnect to Keeper was done
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a old deleted object clean up was performed by background task
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupTransactions` ([UInt64](/core/reference/data-types/int-uint)) — Number of times old transaction idempotency token was cleaned up by background task
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an empty blob layout part was cleaned up by background task
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an error was encountered in background cleanup task
+- `ProfileEvent_BlobKillerThreadRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of BlobKiller thread executes
+- `ProfileEvent_BlobKillerThreadLockedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs returned from metadata storage
+- `ProfileEvent_BlobKillerThreadRemoveTasks` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove tasks created by BlobKiller
+- `ProfileEvent_BlobKillerThreadRemovedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs removed by BlobKiller
+- `ProfileEvent_BlobKillerThreadRecordedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs which removal by BlobKiller was recorded in metadata storage
+- `ProfileEvent_BlobKillerThreadLockBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs lock errors occurred during BlobKiller execution
+- `ProfileEvent_BlobKillerThreadRemoveBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs removal errors occurred during BlobKiller execution
+- `ProfileEvent_BlobKillerThreadRecordBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs recording errors occurred during BlobKiller execution
+- `ProfileEvent_BlobCopierThreadRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of BlobCopier thread executes
+- `ProfileEvent_BlobCopierThreadLockedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs returned from metadata storage
+- `ProfileEvent_BlobCopierThreadReplicatedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs replicated by BlobCopier
+- `ProfileEvent_BlobCopierThreadRecordedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs which replication by BlobCopier was recorded in metadata storage
+- `ProfileEvent_BlobCopierThreadLockBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs lock errors occurred during BlobCopier execution
+- `ProfileEvent_BlobCopierThreadReplicateBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs replication errors occurred during BlobCopier execution
+- `ProfileEvent_BlobCopierThreadRecordBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs recording errors occurred during BlobCopier execution
+- `ProfileEvent_SharedMergeTreeMetadataCacheHintLoadedFromCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata cache hint was found without going to Keeper
+- `ProfileEvent_KafkaRebalanceRevocations` ([UInt64](/core/reference/data-types/int-uint)) — Number of partition revocations (the first stage of consumer group rebalance)
+- `ProfileEvent_KafkaRebalanceAssignments` ([UInt64](/core/reference/data-types/int-uint)) — Number of partition assignments (the final stage of consumer group rebalance)
+- `ProfileEvent_KafkaRebalanceErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed consumer group rebalances
+- `ProfileEvent_KafkaMessagesPolled` ([UInt64](/core/reference/data-types/int-uint)) — Number of Kafka messages polled from librdkafka to ClickHouse
+- `ProfileEvent_KafkaMessagesRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of Kafka messages already processed by ClickHouse
+- `ProfileEvent_KafkaMessagesFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of Kafka messages ClickHouse failed to parse
+- `ProfileEvent_KafkaRowsRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows parsed from Kafka messages
+- `ProfileEvent_KafkaRowsRejected` ([UInt64](/core/reference/data-types/int-uint)) — Number of parsed rows which were later rejected (due to rebalances / errors or similar reasons). Those rows will be consumed again after the rebalance.
+- `ProfileEvent_KafkaDirectReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of direct selects from Kafka tables since server start
+- `ProfileEvent_KafkaBackgroundReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of background reads populating materialized views from Kafka since server start
+- `ProfileEvent_KafkaCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of successful commits of consumed offsets to Kafka (normally should be the same as KafkaBackgroundReads)
+- `ProfileEvent_KafkaCommitFailures` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed commits of consumed offsets to Kafka (usually is a sign of some data duplication)
+- `ProfileEvent_KafkaConsumerErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of errors reported by librdkafka during polls
+- `ProfileEvent_KafkaMVNotReady` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed attempts to stream data to a materialized view that is not ready
+- `ProfileEvent_KafkaWrites` ([UInt64](/core/reference/data-types/int-uint)) — Number of writes (inserts) to Kafka tables
+- `ProfileEvent_KafkaRowsWritten` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows inserted into Kafka tables
+- `ProfileEvent_KafkaProducerFlushes` ([UInt64](/core/reference/data-types/int-uint)) — Number of explicit flushes to Kafka producer
+- `ProfileEvent_KafkaMessagesProduced` ([UInt64](/core/reference/data-types/int-uint)) — Number of messages produced to Kafka
+- `ProfileEvent_KafkaProducerErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of errors during producing the messages to Kafka
+- `ProfileEvent_ScalarSubqueriesGlobalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read from a scalar subquery was done using the global cache
+- `ProfileEvent_ScalarSubqueriesLocalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read from a scalar subquery was done using the local cache
+- `ProfileEvent_ScalarSubqueriesCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read from a scalar subquery was not cached and had to be calculated completely
+- `ProfileEvent_SchemaInferenceCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is found in schema cache
+- `ProfileEvent_SchemaInferenceCacheSchemaHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the schema is found in schema cache during schema inference
+- `ProfileEvent_SchemaInferenceCacheNumRowsHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the number of rows is found in schema cache during count from files
+- `ProfileEvent_SchemaInferenceCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is not in schema cache
+- `ProfileEvent_SchemaInferenceCacheSchemaMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is in cache but the schema is not in cache during schema inference
+- `ProfileEvent_SchemaInferenceCacheNumRowsMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is in cache but the number of rows is not in cache while count from files
+- `ProfileEvent_SchemaInferenceCacheEvictions` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a schema from cache was evicted due to overflow
+- `ProfileEvent_SchemaInferenceCacheInvalidations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a schema in cache became invalid due to changes in data
+- `ProfileEvent_KeeperPacketsSent` ([UInt64](/core/reference/data-types/int-uint)) — Packets sent by keeper server
+- `ProfileEvent_KeeperPacketsReceived` ([UInt64](/core/reference/data-types/int-uint)) — Packets received by keeper server
+- `ProfileEvent_KeeperRequestTotal` ([UInt64](/core/reference/data-types/int-uint)) — Total requests number on keeper server
+- `ProfileEvent_KeeperRequestTotalWithSubrequests` ([UInt64](/core/reference/data-types/int-uint)) — Total requests number on keeper server, counting each subrequest within a multi request
+- `ProfileEvent_KeeperLatency` ([UInt64](/core/reference/data-types/int-uint)) — Keeper latency
+- `ProfileEvent_KeeperTotalElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Keeper total latency for a single request
+- `ProfileEvent_KeeperProcessElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Keeper commit latency for a single request
+- `ProfileEvent_KeeperPreprocessElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Keeper preprocessing latency for a single request
+- `ProfileEvent_KeeperStorageLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper storage lock
+- `ProfileEvent_KeeperStorageSharedLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper storage shared lock
+- `ProfileEvent_KeeperChangelogLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper changelog lock
+- `ProfileEvent_KeeperServerWriteLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper server write lock
+- `ProfileEvent_KeeperSessionCallbackLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper session callback lock
+- `ProfileEvent_KeeperReadRequestQueueLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper read request queue lock
+- `ProfileEvent_KeeperProcessAndResponsesLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper process and responses lock
+- `ProfileEvent_KeeperCommitWaitElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for certain log to be committed
+- `ProfileEvent_KeeperBatchMaxCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the size of batch was limited by the amount
+- `ProfileEvent_KeeperBatchMaxTotalSize` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the size of batch was limited by the total bytes size
+- `ProfileEvent_KeeperReadBatchCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of read request batches processed by Keeper
+- `ProfileEvent_KeeperReadBatchTotalRequests` ([UInt64](/core/reference/data-types/int-uint)) — Total number of read requests processed in batches by Keeper
+- `ProfileEvent_KeeperCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of successful commits
+- `ProfileEvent_KeeperCommitsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed commits
+- `ProfileEvent_KeeperSnapshotCreations` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshots creations
+- `ProfileEvent_KeeperSnapshotCreationsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot creations
+- `ProfileEvent_KeeperSnapshotApplys` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot applying
+- `ProfileEvent_KeeperSnapshotApplysFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot applying
+- `ProfileEvent_KeeperReadSnapshot` ([UInt64](/core/reference/data-types/int-uint)) — Number of completed snapshot reads
+- `ProfileEvent_KeeperReadSnapshotObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot objects sent to followers
+- `ProfileEvent_KeeperReadSnapshotFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot reads
+- `ProfileEvent_KeeperSnapshotRemoteLoaderErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of remote read errors in RemoteSnapshotLoader while serving a snapshot to a follower
+- `ProfileEvent_KeeperSaveSnapshotObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot objects received from leader
+- `ProfileEvent_KeeperSaveSnapshotFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot saves
+- `ProfileEvent_KeeperSaveSnapshot` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot save
+- `ProfileEvent_KeeperCreateRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of create requests
+- `ProfileEvent_KeeperRemoveRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove requests
+- `ProfileEvent_KeeperSetRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of set requests
+- `ProfileEvent_KeeperReconfigRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of reconfig requests
+- `ProfileEvent_KeeperCheckRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of check requests
+- `ProfileEvent_KeeperMultiRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of multi requests
+- `ProfileEvent_KeeperMultiReadRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of multi read requests
+- `ProfileEvent_KeeperGetRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of get requests
+- `ProfileEvent_KeeperListRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of list requests
+- `ProfileEvent_KeeperListRecursiveRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of get children recursive requests
+- `ProfileEvent_KeeperExistsRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of exists requests
+- `ProfileEvent_KeeperSetWatchesRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of set watches requests
+- `ProfileEvent_KeeperAddWatchRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of add watches requests
+- `ProfileEvent_KeeperRemoveWatchRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove watches requests
+- `ProfileEvent_KeeperCheckWatchRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove watches requests
+- `ProfileEvent_KeeperRequestRejectedDueToSoftMemoryLimitCount` ([UInt64](/core/reference/data-types/int-uint)) — Number requests that have been rejected due to soft memory limit exceeded
+- `ProfileEvent_KeeperStaleRequestsSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of Keeper requests skipped because the session is no longer live
+- `ProfileEvent_KeeperLiveSessionsLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting to acquire Keeper live sessions lock
+- `ProfileEvent_OverflowBreak` ([UInt64](/core/reference/data-types/int-uint)) — Number of times, data processing was cancelled by query complexity limitation with setting '*_overflow_mode' = 'break' and the result is incomplete.
+- `ProfileEvent_OverflowThrow` ([UInt64](/core/reference/data-types/int-uint)) — Number of times, data processing was cancelled by query complexity limitation with setting '*_overflow_mode' = 'throw' and exception was thrown.
+- `ProfileEvent_OverflowAny` ([UInt64](/core/reference/data-types/int-uint)) — Number of times approximate GROUP BY was in effect: when aggregation was performed only on top of first 'max_rows_to_group_by' unique keys and other keys were ignored due to 'group_by_overflow_mode' = 'any'.
+- `ProfileEvent_S3QueueSetFileProcessingMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as processing
+- `ProfileEvent_S3QueueSetFileProcessedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as processed
+- `ProfileEvent_S3QueueSetFileFailedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as failed
+- `ProfileEvent_ObjectStorageQueueFailedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files which failed to be processed
+- `ProfileEvent_ObjectStorageQueueProcessedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files which were processed
+- `ProfileEvent_ObjectStorageQueueCleanupMaxSetSizeOrTTLMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as failed
+- `ProfileEvent_ObjectStorageQueuePullMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to read file data
+- `ProfileEvent_ObjectStorageQueueFailedToBatchSetProcessing` ([UInt64](/core/reference/data-types/int-uint)) — Number of times batched set processing request failed
+- `ProfileEvent_ObjectStorageQueueTrySetProcessingRequests` ([UInt64](/core/reference/data-types/int-uint)) — The number of times we tried to make set processing request
+- `ProfileEvent_ObjectStorageQueueTrySetProcessingSucceeded` ([UInt64](/core/reference/data-types/int-uint)) — The number of times we successfully set file as processing
+- `ProfileEvent_ObjectStorageQueueTrySetProcessingFailed` ([UInt64](/core/reference/data-types/int-uint)) — The number of times we unsuccessfully set file as processing
+- `ProfileEvent_ObjectStorageQueueListedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of listed files in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueFilteredFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of filtered files in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueReadFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of read files (not equal to the number of actually inserted files)
+- `ProfileEvent_ObjectStorageQueueReadRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of read rows (not equal to the number of actually inserted rows)
+- `ProfileEvent_ObjectStorageQueueReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of read bytes (not equal to the number of actually inserted bytes)
+- `ProfileEvent_ObjectStorageQueueExceptionsDuringRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions during read in S3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueExceptionsDuringInsert` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions during insert in S3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueMovedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of objects moved as part of after_processing = move
+- `ProfileEvent_ObjectStorageQueueRemovedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of objects removed as part of after_processing = delete
+- `ProfileEvent_ObjectStorageQueueTaggedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of objects tagged as part of after_processing = tag
+- `ProfileEvent_ObjectStorageQueueInsertIterations` ([UInt64](/core/reference/data-types/int-uint)) — Number of insert iterations
+- `ProfileEvent_ObjectStorageQueueCommitRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of keeper requests to commit files as either failed or processed
+- `ProfileEvent_ObjectStorageQueueSuccessfulCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of successful keeper commits
+- `ProfileEvent_ObjectStorageQueueUnsuccessfulCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of unsuccessful keeper commits
+- `ProfileEvent_ObjectStorageQueueCancelledFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number cancelled files in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueProcessedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of processed rows in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageListedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Total objects returned by object storage listing API before any filtering.
+- `ProfileEvent_ObjectStorageGlobFilteredObjects` ([UInt64](/core/reference/data-types/int-uint)) — Objects that did not match the glob or regex pattern and were skipped during listing.
+- `ProfileEvent_ObjectStoragePredicateFilteredObjects` ([UInt64](/core/reference/data-types/int-uint)) — Objects removed by virtual column predicate filtering on _path/_file.
+- `ProfileEvent_ObjectStorageReadObjects` ([UInt64](/core/reference/data-types/int-uint)) — Objects actually opened for reading by the object storage source.
+- `ProfileEvent_ServerStartupMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time elapsed from starting server to listening to sockets in milliseconds
+- `ProfileEvent_IOUringSQEsSubmitted` ([UInt64](/core/reference/data-types/int-uint)) — Total number of io_uring SQEs submitted
+- `ProfileEvent_IOUringSQEsResubmitsAsync` ([UInt64](/core/reference/data-types/int-uint)) — Total number of asynchronous io_uring SQE resubmits performed
+- `ProfileEvent_IOUringSQEsResubmitsSync` ([UInt64](/core/reference/data-types/int-uint)) — Total number of synchronous io_uring SQE resubmits performed
+- `ProfileEvent_IOUringCQEsCompleted` ([UInt64](/core/reference/data-types/int-uint)) — Total number of successfully completed io_uring CQEs
+- `ProfileEvent_IOUringCQEsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Total number of completed io_uring CQEs with failures
+- `ProfileEvent_BackupsOpenedForRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of backups opened for reading
+- `ProfileEvent_BackupsOpenedForWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of backups opened for writing
+- `ProfileEvent_BackupsOpenedForUnlock` ([UInt64](/core/reference/data-types/int-uint)) — Number of backups opened for unlocking
+- `ProfileEvent_BackupReadMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent reading backup metadata from .backup file
+- `ProfileEvent_BackupWriteMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent writing backup metadata to .backup file
+- `ProfileEvent_BackupEntriesCollectorMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent making backup entries
+- `ProfileEvent_BackupEntriesCollectorForTablesDataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent making backup entries for tables data
+- `ProfileEvent_BackupEntriesCollectorRunPostTasksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent running post tasks after making backup entries
+- `ProfileEvent_BackupPreparingFileInfosMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent preparing file infos for backup entries
+- `ProfileEvent_BackupReadLocalFilesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Number of files read locally to calculate checksums for backup entries
+- `ProfileEvent_BackupReadLocalBytesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files read locally to calculate checksums for backup entries
+- `ProfileEvent_BackupReadRemoteFilesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Number of files read from remote disks to calculate checksums for backup entries
+- `ProfileEvent_BackupReadRemoteBytesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files read from remote disks to calculate checksums for backup entries
+- `ProfileEvent_BackupLockFileReads` ([UInt64](/core/reference/data-types/int-uint)) — How many times the '.lock' file was read while making backup
+- `ProfileEvent_RestorePartsSkippedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files skipped while restoring parts
+- `ProfileEvent_RestorePartsSkippedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files skipped while restoring parts
+- `ProfileEvent_ReadTaskRequestsReceived` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for s3Cluster table function and similar). Measured on the initiator server side.
+- `ProfileEvent_MergeTreeReadTaskRequestsReceived` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for MergeTree tables). Measured on the initiator server side.
+- `ProfileEvent_ReadTaskRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for s3Cluster table function and similar). Measured on the remote server side.
+- `ProfileEvent_MergeTreeReadTaskRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_MergeTreeAllRangesAnnouncementsSent` ([UInt64](/core/reference/data-types/int-uint)) — The number of announcements sent from the remote server to the initiator server about the set of data parts (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_ReadTaskRequestsSentElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in callbacks requested from the remote server back to the initiator server to choose the read task (for s3Cluster table function and similar). Measured on the remote server side.
+- `ProfileEvent_MergeTreeReadTaskRequestsSentElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in callbacks requested from the remote server back to the initiator server to choose the read task (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_MergeTreeAllRangesAnnouncementsSentElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in sending the announcement from the remote server to the initiator server about the set of data parts (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_MergerMutatorsGetPartsForMergeElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to take data parts snapshot to build ranges from them.
+- `ProfileEvent_MergerMutatorPrepareRangesForMergeElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to prepare parts ranges which can be merged according to merge predicate.
+- `ProfileEvent_MergerMutatorSelectPartsForMergeElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to select parts from ranges which can be merged.
+- `ProfileEvent_MergerMutatorRangesForMergeCount` ([UInt64](/core/reference/data-types/int-uint)) — Amount of candidate ranges for merge
+- `ProfileEvent_MergerMutatorPartsInRangesForMergeCount` ([UInt64](/core/reference/data-types/int-uint)) — Amount of candidate parts for merge
+- `ProfileEvent_MergerMutatorSelectRangePartsCount` ([UInt64](/core/reference/data-types/int-uint)) — Amount of parts in selected range for merge
+- `ProfileEvent_ConnectionPoolIsFullMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for a slot in connection pool.
+- `ProfileEvent_AsyncLoaderWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting for async loader jobs.
+- `ProfileEvent_DistrCacheServerSwitches` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of server switches between distributed cache servers in read/write-through cache
+- `ProfileEvent_DistrCacheReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spent reading from distributed cache
+- `ProfileEvent_DistrCacheFallbackReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spend reading from fallback buffer instead of distributed cache
+- `ProfileEvent_DistrCachePrecomputeRangesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spent to precompute read ranges
+- `ProfileEvent_DistrCacheNextImplMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spend in ReadBufferFromDistributedCache::nextImpl
+- `ProfileEvent_DistrCacheStartRangeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spent to start a new read range with distributed cache
+- `ProfileEvent_DistrCacheRangeChange` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of times we changed read range because of seek/last_position change
+- `ProfileEvent_DistrCacheRangeResetBackward` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of times we reset read range because of seek/last_position change
+- `ProfileEvent_DistrCacheRangeResetForward` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of times we reset read range because of seek/last_position change
+- `ProfileEvent_DistrCacheReconnectsAfterTimeout` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. The number of reconnects after timeout
+- `ProfileEvent_DistrCacheServerUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache event. The number of server switches during read or write because the hash-chosen server changed (e.g. due to server deregistration)
+- `ProfileEvent_DistrCacheReadErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of distributed cache errors during read
+- `ProfileEvent_DistrCacheWriteErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Number of distributed cache errors during write
+- `ProfileEvent_DistrCacheWriteReconnectsAfterTimeout` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. The number of reconnects after timeout
+- `ProfileEvent_DistrCacheWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Time spent in WriteBufferFromDistributedCache::writeToFileSegment
+- `ProfileEvent_DistrCacheWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Number of bytes written to distributed cache
+- `ProfileEvent_DistrCacheObjectStorageWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Time spent writing to object storage
+- `ProfileEvent_DistrCacheObjectStorageWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Number of bytes written to object storage
+- `ProfileEvent_DistrCacheGetResponseMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Time spend to wait for response from distributed cache
+- `ProfileEvent_DistrCacheMakeRequestErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Number of distributed cache errors when making a request
+- `ProfileEvent_DistrCacheReceiveResponseErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Number of distributed cache errors when receiving response a request
+- `ProfileEvent_DistrCacheReceivedDataPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received data packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedDataPacketsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of bytes in Data packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedOkPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received Ok packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedErrorPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received Error packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedCredentialsRefreshPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received RefreshCredentials packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedStopPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received Stop packets received from distributed cache
+- `ProfileEvent_DistrCacheSentDataPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of data packets sent to distributed cache
+- `ProfileEvent_DistrCacheSentDataPacketsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of bytes in Data packets sent to distributed cache
+- `ProfileEvent_DistrCacheUnusedPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Number of skipped unused packets from distributed cache
+- `ProfileEvent_DistrCacheUnusedDataPacketsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of bytes in Data packets which were ignored
+- `ProfileEvent_DistrCacheUnusedPacketsBufferAllocations` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of extra buffer allocations in case we could not reuse existing buffer
+- `ProfileEvent_DistrCacheLockRegistryMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Time spent to take DistributedCacheRegistry lock
+- `ProfileEvent_DistrCacheRegistryUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Time spent updating distributed cache registry
+- `ProfileEvent_DistrCacheRegistryUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Number of distributed cache registry updates
+- `ProfileEvent_DistrCacheHashRingRebuilds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Number of distributed cache hash ring rebuilds
+- `ProfileEvent_DistrCacheSuccessfulRegistryUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. The number of successful server registry updates
+- `ProfileEvent_DistrCacheUnsuccessfulRegistryUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. The number of unsuccessful server registry updates
+- `ProfileEvent_DistrCacheReadBytesFromFallbackBuffer` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Bytes read from fallback buffer
+- `ProfileEvent_DistrCacheOpenedConnections` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of open connections to distributed cache
+- `ProfileEvent_DistrCacheReusedConnections` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of reused connections to distributed cache
+- `ProfileEvent_DistrCacheStaleReconnections` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of reconnections due to stale (peer-closed) pooled connections
+- `ProfileEvent_DistrCacheRemoveOutdatedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The time spent removing outdated connections from the pool
+- `ProfileEvent_DistrCacheOpenedConnectionsBypassingPool` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of open connections to distributed cache bypassing pool
+- `ProfileEvent_DistrCacheConnectMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The time spent to connect to distributed cache
+- `ProfileEvent_DistrCacheConnectAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of connection attempts to distributed cache
+- `ProfileEvent_DistrCacheSuccessfulConnectAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of successful connection attempts to distributed cache
+- `ProfileEvent_DistrCacheUnsuccessfulConnectAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of unsuccessful connection attempts to distributed cache
+- `ProfileEvent_DistrCacheGetClientMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. Time spent getting client for distributed cache
+- `ProfileEvent_DistrCacheTemporaryFilesCreated` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. Number of temporary files created in distributed cache
+- `ProfileEvent_DistrCacheTemporaryFilesBytesWritten` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. Number of bytes written to temporary files created in distributed cache
+- `ProfileEvent_DistrCacheServerProcessRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Time spent processing request on DistributedCache server side
+- `ProfileEvent_DistrCacheServerStartRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of StartRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerContinueRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of ContinueRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerEndRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of EndRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerReceivedCredentialsRefreshPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of RefreshCredentials client packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerAckRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of AckRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerNewS3CachedClients` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of new cached s3 clients
+- `ProfileEvent_DistrCacheServerReusedS3CachedClients` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of reused cached s3 clients
+- `ProfileEvent_DistrCacheServerCredentialsRefresh` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of expired credentials were refreshed
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of times distributed cache hit the cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of times distributed cache missed the cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes written to cache in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes read from cache in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferObjectStorageReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes read from object storage in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCachePredownloadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes read from object storage for predownload in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of times distributed cache server was skipped because of previous failed connection attempts
+- `ProfileEvent_LogTest` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Test
+- `ProfileEvent_LogTrace` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Trace
+- `ProfileEvent_LogDebug` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Debug
+- `ProfileEvent_LogInfo` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Info
+- `ProfileEvent_LogWarning` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Warning
+- `ProfileEvent_LogError` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Error
+- `ProfileEvent_LogFatal` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Fatal
+- `ProfileEvent_LoggerElapsedNanoseconds` ([UInt64](/core/reference/data-types/int-uint)) — Cumulative time spend in logging
+- `ProfileEvent_InterfaceHTTPSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through HTTP interfaces
+- `ProfileEvent_InterfaceHTTPReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through HTTP interfaces
+- `ProfileEvent_InterfaceNativeSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through native interfaces
+- `ProfileEvent_InterfaceNativeReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through native interfaces
+- `ProfileEvent_InterfacePrometheusSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through Prometheus interfaces
+- `ProfileEvent_InterfacePrometheusReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through Prometheus interfaces
+- `ProfileEvent_InterfaceInterserverSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through interserver interfaces
+- `ProfileEvent_InterfaceInterserverReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through interserver interfaces
+- `ProfileEvent_InterfaceMySQLSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through MySQL interfaces
+- `ProfileEvent_InterfaceMySQLReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through MySQL interfaces
+- `ProfileEvent_InterfacePostgreSQLSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through PostgreSQL interfaces
+- `ProfileEvent_InterfacePostgreSQLReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through PostgreSQL interfaces
+- `ProfileEvent_ParallelReplicasUsedCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas used to execute a query with task-based parallel replicas
+- `ProfileEvent_ParallelReplicasAvailableCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas available to execute a query with task-based parallel replicas
+- `ProfileEvent_ParallelReplicasUnavailableCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas which was chosen, but found to be unavailable during query execution with task-based parallel replicas
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts update count
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesByLeader` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates by leader
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts update microseconds
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromZooKeeper` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates count from ZooKeeper
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromZooKeeperMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates from ZooKeeper microseconds
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesPeerNotFound` ([UInt64](/core/reference/data-types/int-uint)) — Virtual updates from peer failed because no one found
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromPeer` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates count from peer
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromPeerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates from peer microseconds
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesForMergesOrStatus` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates from non-default background job
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesLeaderFailedElection` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates leader election failed
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesLeaderSuccessfulElection` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates leader election successful
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentAttempt` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentFailedWithNothingToDo` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation and failed because nothing to merge
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentFailedWithConflict` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation and failed because of conflict in Keeper
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentSuccessful` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation
+- `ProfileEvent_SharedMergeTreeMergePartsMovedToOudated` ([UInt64](/core/reference/data-types/int-uint)) — How many parts moved to outdated directory
+- `ProfileEvent_SharedMergeTreeMergePartsMovedToCondemned` ([UInt64](/core/reference/data-types/int-uint)) — How many parts moved to condemned directory
+- `ProfileEvent_SharedMergeTreeOutdatedPartsConfirmationRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many ZooKeeper requests were used to config outdated parts
+- `ProfileEvent_SharedMergeTreeOutdatedPartsConfirmationInvocations` ([UInt64](/core/reference/data-types/int-uint)) — How many invocations were made to confirm outdated parts
+- `ProfileEvent_SharedMergeTreeOutdatedPartsHTTPRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many HTTP requests were send to confirm outdated parts
+- `ProfileEvent_SharedMergeTreeOutdatedPartsHTTPResponse` ([UInt64](/core/reference/data-types/int-uint)) — How many HTTP responses were send to confirm outdated parts
+- `ProfileEvent_SharedMergeTreeCondemnedPartsKillRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many ZooKeeper requests were used to remove condemned parts
+- `ProfileEvent_SharedMergeTreeCondemnedPartsLockConflict` ([UInt64](/core/reference/data-types/int-uint)) — How many times we failed to acquire lock because of conflict
+- `ProfileEvent_SharedMergeTreeCondemnedPartsRemoved` ([UInt64](/core/reference/data-types/int-uint)) — How many condemned parts were removed
+- `ProfileEvent_SharedMergeTreePartsKillerRuns` ([UInt64](/core/reference/data-types/int-uint)) — How many times parts killer has been running
+- `ProfileEvent_SharedMergeTreePartsKillerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time does parts killer main thread takes
+- `ProfileEvent_SharedMergeTreePartsKillerParts` ([UInt64](/core/reference/data-types/int-uint)) — How many parts has been scheduled by the killer
+- `ProfileEvent_SharedMergeTreePartsKillerPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How many time does it take to remove parts (executed from multiple threads)
+- `ProfileEvent_SharedMergeTreeMergeSelectingTaskMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Merge selecting task microseconds for SMT
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdateTaskRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times updateReplicaSetTask has run
+- `ProfileEvent_SharedMergeTreeOptimizeAsync` ([UInt64](/core/reference/data-types/int-uint)) — Asynchronous OPTIMIZE queries executed
+- `ProfileEvent_SharedMergeTreeOptimizeSync` ([UInt64](/core/reference/data-types/int-uint)) — Synchronous OPTIMIZE queries executed
+- `ProfileEvent_SharedMergeTreeScheduleDataProcessingJob` ([UInt64](/core/reference/data-types/int-uint)) — How many times scheduleDataProcessingJob called/
+- `ProfileEvent_SharedMergeTreeScheduleDataProcessingJobNothingToScheduled` ([UInt64](/core/reference/data-types/int-uint)) — How many times scheduleDataProcessingJob called but nothing to do
+- `ProfileEvent_SharedMergeTreeScheduleDataProcessingJobMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — scheduleDataProcessingJob execute time
+- `ProfileEvent_SharedMergeTreeHandleBlockingParts` ([UInt64](/core/reference/data-types/int-uint)) — How many blocking parts to handle in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleBlockingPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of handling blocking parts in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleFetchPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of handling fetched parts in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleOutdatedParts` ([UInt64](/core/reference/data-types/int-uint)) — How many outdated parts to handle in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleOutdatedPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of handling outdated parts in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeSelectPartsForRendezvousFetchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of selectPartsForRendezvousFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForRendezvousFetchParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts selected by selectPartsForRendezvousFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForCoordinatedFetchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of selectPartsForCoordinatedFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForCoordinatedFetchParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts selected by selectPartsForCoordinatedFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForFullFetchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of selectPartsForFullFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForFullFetchParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts selected by selectPartsForFullFetch
+- `ProfileEvent_SharedMergeTreeTryUpdateDiskMetadataCacheForPartMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of tryUpdateDiskMetadataCacheForPart in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeLoadChecksumAndIndexesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of loadColumnsChecksumsIndexes only for SharedMergeTree
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many times SnapshotCleanerThread decides to clean a part
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerParts` ([UInt64](/core/reference/data-types/int-uint)) — How long time SnapshotCleanerThread tries to clean a part
+- `ProfileEvent_SharedMergeTreeSnapshotPartsRemoved` ([UInt64](/core/reference/data-types/int-uint)) — How many times SnapshotCleanerThread successfully clean a part
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerRuns` ([UInt64](/core/reference/data-types/int-uint)) — How many times SnapshotCleanerThread runs
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How long time SnapshotCleanerThread has run
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How long time SnapshotCleanerThread takes to clean parts
+- `ProfileEvent_SharedMergeTreeDataPartsFetchAttempt` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to fetch data parts
+- `ProfileEvent_SharedMergeTreeDataPartsFetchFromPeer` ([UInt64](/core/reference/data-types/int-uint)) — How many times we fetch data parts from peer
+- `ProfileEvent_SharedMergeTreeDataPartsFetchFromPeerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Data parts fetch from peer microseconds
+- `ProfileEvent_SharedMergeTreeDataPartsFetchFromS3` ([UInt64](/core/reference/data-types/int-uint)) — How many times we fetch data parts from S3
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdatesFromZooKeeper` ([UInt64](/core/reference/data-types/int-uint)) — How many times we have update replica set from ZooKeeper
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdatesFromZooKeeperRequests` ([UInt64](/core/reference/data-types/int-uint)) — How many total ZooKeeper requests we made to update replica set
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdatesFromZooKeeperMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time we spend to update replica set
+- `ProfileEvent_KeeperLogsEntryReadFromLatestCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being read from latest logs cache
+- `ProfileEvent_KeeperLogsEntryReadFromCommitCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being read from commit logs cache
+- `ProfileEvent_KeeperLogsEntryReadFromFile` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being read directly from the changelog file
+- `ProfileEvent_KeeperLogsPrefetchedEntries` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being prefetched from the changelog file
+- `ProfileEvent_KeeperChangelogWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to the changelog in Keeper
+- `ProfileEvent_KeeperChangelogFileSyncMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in fsync for Keeper changelog (uncompressed logs only)
+- `ProfileEvent_KeeperSnapshotWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to snapshot files in Keeper
+- `ProfileEvent_KeeperSnapshotFileSyncMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in fsync for Keeper snapshot files
+- `ProfileEvent_StorageConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created connections for storages
+- `ProfileEvent_StorageConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused connections for storages
+- `ProfileEvent_StorageConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset connections for storages
+- `ProfileEvent_StorageConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved connections for storages
+- `ProfileEvent_StorageConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired connections for storages
+- `ProfileEvent_StorageConnectionsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of cases when creation of a connection for storage is failed
+- `ProfileEvent_StorageConnectionsElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on creating connections for storages
+- `ProfileEvent_DiskConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created connections for disk
+- `ProfileEvent_DiskConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused connections for disk
+- `ProfileEvent_DiskConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset connections for disk
+- `ProfileEvent_DiskConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved connections for disk
+- `ProfileEvent_DiskConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired connections for disk
+- `ProfileEvent_DiskConnectionsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of cases when creation of a connection for disk is failed
+- `ProfileEvent_DiskConnectionsElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on creating connections for disk
+- `ProfileEvent_HTTPConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created client HTTP connections
+- `ProfileEvent_HTTPConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused client HTTP connections
+- `ProfileEvent_HTTPConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset client HTTP connections
+- `ProfileEvent_HTTPConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved client HTTP connections
+- `ProfileEvent_HTTPConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired client HTTP connections
+- `ProfileEvent_HTTPConnectionsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of cases when creation of a client HTTP connection failed
+- `ProfileEvent_HTTPConnectionsElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on creating client HTTP connections
+- `ProfileEvent_HTTPServerConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created server HTTP connections
+- `ProfileEvent_HTTPServerConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused server HTTP connections
+- `ProfileEvent_HTTPServerConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved server HTTP connections. Connection kept alive successfully
+- `ProfileEvent_HTTPServerConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired server HTTP connections.
+- `ProfileEvent_HTTPServerConnectionsClosed` ([UInt64](/core/reference/data-types/int-uint)) — Number of closed server HTTP connections. Keep alive has not been negotiated
+- `ProfileEvent_HTTPServerConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset server HTTP connections. Server closes connection
+- `ProfileEvent_AddressesDiscovered` ([UInt64](/core/reference/data-types/int-uint)) — Total count of new addresses in DNS resolve results for HTTP connections
+- `ProfileEvent_AddressesExpired` ([UInt64](/core/reference/data-types/int-uint)) — Total count of expired addresses which is no longer presented in DNS resolve results for HTTP connections
+- `ProfileEvent_AddressesMarkedAsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Total count of addresses which have been marked as faulty due to connection errors for HTTP connections
+- `ProfileEvent_ReadWriteBufferFromHTTPRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — Number of HTTP requests sent by ReadWriteBufferFromHTTP
+- `ProfileEvent_ReadWriteBufferFromHTTPBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total size of payload bytes received and sent by ReadWriteBufferFromHTTP. Doesn't include HTTP headers.
+- `ProfileEvent_WriteBufferFromHTTPRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — Number of HTTP requests sent by WriteBufferFromHTTP
+- `ProfileEvent_WriteBufferFromHTTPBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total size of payload bytes received and sent by WriteBufferFromHTTP. Doesn't include HTTP headers.
+- `ProfileEvent_ConcurrencyControlSlotsGranted` ([UInt64](/core/reference/data-types/int-uint)) — Number of CPU slot granted according to guarantee of 1 thread per query and for queries with setting 'use_concurrency_control' = 0
+- `ProfileEvent_ConcurrencyControlSlotsDelayed` ([UInt64](/core/reference/data-types/int-uint)) — Number of CPU slot not granted initially and required to wait for a free CPU slot
+- `ProfileEvent_ConcurrencyControlSlotsAcquired` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU slots acquired
+- `ProfileEvent_ConcurrencyControlSlotsAcquiredNonCompeting` ([UInt64](/core/reference/data-types/int-uint)) — Total number of noncompeting CPU slot acquired
+- `ProfileEvent_ConcurrencyControlQueriesDelayed` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU slot allocations (queries) that were required to wait for slots to upscale
+- `ProfileEvent_ConcurrencyControlWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting on resource requests for CPU slots.
+- `ProfileEvent_ConcurrencyControlPreemptedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting due to preemption of CPU slots.
+- `ProfileEvent_ConcurrencyControlPreemptions` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU preemptions
+- `ProfileEvent_ConcurrencyControlUpscales` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU upscaling events
+- `ProfileEvent_ConcurrencyControlDownscales` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU downscaling events
+- `ProfileEvent_ConcurrentQuerySlotsAcquired` ([UInt64](/core/reference/data-types/int-uint)) — Total number of query slots acquired
+- `ProfileEvent_ConcurrentQueryWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting for a query slots
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorUpdateCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of merge coordinator updates
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on updating merge coordinator state
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorFetchMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on fetching fresh metadata inside merge coordinator
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorFilterMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on filtering prepared merges inside merge coordinator
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorSelectMergesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on finding merge using merge selectors inside merge coordinator
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateForShareCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of for share captures of coordinator state lock
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateExclusivelyCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of exclusive captures of coordinator state lock
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateForShareMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on locking coordinator state mutex for share
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateExclusivelyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on locking coordinator state mutex exclusively
+- `ProfileEvent_CoordinatedMergesMergeWorkerUpdateCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number merge worker updates
+- `ProfileEvent_CoordinatedMergesMergeWorkerUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on updating local state of assigned merges on worker
+- `ProfileEvent_CoordinatedMergesMergeAssignmentRequest` ([UInt64](/core/reference/data-types/int-uint)) — Total number of merge assignment requests
+- `ProfileEvent_CoordinatedMergesMergeAssignmentResponse` ([UInt64](/core/reference/data-types/int-uint)) — Total number of merge assignment requests
+- `ProfileEvent_CoordinatedMergesMergeAssignmentRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend in merge assignment client
+- `ProfileEvent_CoordinatedMergesMergeAssignmentResponseMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend in merge assignment handler
+- `ProfileEvent_SharedDatabaseCatalogFailedToApplyState` ([UInt64](/core/reference/data-types/int-uint)) — Number of failures to apply new state in SharedDatabaseCatalog
+- `ProfileEvent_SharedDatabaseCatalogStateApplicationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on application of new state in SharedDatabaseCatalog
+- `ProfileEvent_MemoryWorkerRun` ([UInt64](/core/reference/data-types/int-uint)) — Number of runs done by MemoryWorker in background
+- `ProfileEvent_MemoryWorkerRunElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent by MemoryWorker for background work
+- `ProfileEvent_ParquetFetchWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of waiting for parquet file reads from decoding threads (not prefetching threads)
+- `ProfileEvent_WasmSerializationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmDeserializationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmGuestExecuteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmTotalExecuteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmModuleInstatiate` ([UInt64](/core/reference/data-types/int-uint)) — Number of WebAssembly compartments created
+- `ProfileEvent_WasmMemoryAllocated` ([UInt64](/core/reference/data-types/int-uint)) — Total memory allocated for WebAssembly compartments
+- `ProfileEvent_ParquetReadRowGroups` ([UInt64](/core/reference/data-types/int-uint)) — The total number of row groups read from parquet data
+- `ProfileEvent_ParquetPrunedRowGroups` ([UInt64](/core/reference/data-types/int-uint)) — The total number of row groups pruned from parquet data
+- `ProfileEvent_ParquetDecodingTasks` ([UInt64](/core/reference/data-types/int-uint)) — Tasks issued by parquet reader
+- `ProfileEvent_ParquetDecodingTaskBatches` ([UInt64](/core/reference/data-types/int-uint)) — Task groups sent to a thread pool by parquet reader
+- `ProfileEvent_ParquetPrefetcherReadRandomRead` ([UInt64](/core/reference/data-types/int-uint)) — The total number of reads with ReadMode::RandomRead by DB::Parquet::Prefetcher
+- `ProfileEvent_ParquetPrefetcherReadSeekAndRead` ([UInt64](/core/reference/data-types/int-uint)) — The total number of reads with ReadMode::SeekAndRead by DB::Parquet::Prefetcher
+- `ProfileEvent_ParquetPrefetcherReadEntireFile` ([UInt64](/core/reference/data-types/int-uint)) — The total number of read with ReadMode::EntireFileIsInMemory by DB::Parquet::Prefetcher
+- `ProfileEvent_ParquetRowsFilterExpression` ([UInt64](/core/reference/data-types/int-uint)) — The total number of rows that were passed through filter
+- `ProfileEvent_ParquetColumnsFilterExpression` ([UInt64](/core/reference/data-types/int-uint)) — The total number of columns that were passed through filter
+- `ProfileEvent_FilterTransformPassedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that passed the filter in the query
+- `ProfileEvent_FilterTransformPassedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes that passed the filter in the query
+- `ProfileEvent_QueryPreempted` ([UInt64](/core/reference/data-types/int-uint)) — How many times tasks are paused and waiting due to 'priority' setting
+- `ProfileEvent_IndexBinarySearchAlgorithm` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the binary search algorithm is used over the index marks
+- `ProfileEvent_IndexGenericExclusionSearchAlgorithm` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the generic exclusion search algorithm is used over the index marks
+- `ProfileEvent_ParallelReplicasQueryCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of (sub)queries executed using parallel replicas during a query execution
+- `ProfileEvent_DistributedConnectionReconnectCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of reconnects to other servers done during distributed query execution. It can happen when a stale connection has been acquired from connection pool
+- `ProfileEvent_DistributedConnectionConnectCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of connects to other servers done during distributed query execution. Happens when new connection is established instead of using existing from pool.
+- `ProfileEvent_RefreshableViewRefreshSuccess` ([UInt64](/core/reference/data-types/int-uint)) — How many times refreshable materialized views refreshed
+- `ProfileEvent_RefreshableViewRefreshFailed` ([UInt64](/core/reference/data-types/int-uint)) — How many times refreshable materialized views failed to refresh
+- `ProfileEvent_RefreshableViewSyncReplicaSuccess` ([UInt64](/core/reference/data-types/int-uint)) — How many times a SELECT from refreshable materialized view did an implicit SYNC REPLICA
+- `ProfileEvent_RefreshableViewSyncReplicaRetry` ([UInt64](/core/reference/data-types/int-uint)) — How many times a SELECT from refreshable materialized view failed and retried an implicit SYNC REPLICA
+- `ProfileEvent_RefreshableViewLockTableRetry` ([UInt64](/core/reference/data-types/int-uint)) — How many times a SELECT from refreshable materialized view had to switch to a new table because the old table was dropped
+- `ProfileEvent_AsyncLoggingConsoleTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the console log
+- `ProfileEvent_AsyncLoggingFileLogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the file log
+- `ProfileEvent_AsyncLoggingErrorFileLogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the error file log
+- `ProfileEvent_AsyncLoggingSyslogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the syslog
+- `ProfileEvent_AsyncLoggingTextLogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the text_log
+- `ProfileEvent_AsyncLoggingConsoleDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from the console log due to the async log queue being full
+- `ProfileEvent_AsyncLoggingFileLogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from the file log due to the async log queue being full
+- `ProfileEvent_AsyncLoggingErrorFileLogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from error file log due to the async log queue being full
+- `ProfileEvent_AsyncLoggingSyslogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from the syslog due to the async log queue being full
+- `ProfileEvent_AsyncLoggingTextLogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from text_log due to the async log queue being full
+- `ProfileEvent_JemallocFailedAllocationSampleTracking` ([UInt64](/core/reference/data-types/int-uint)) — Total number of times tracking of jemalloc allocation sample failed
+- `ProfileEvent_JemallocFailedDeallocationSampleTracking` ([UInt64](/core/reference/data-types/int-uint)) — Total number of times tracking of jemalloc deallocation sample failed
+- `ProfileEvent_LoadedStatisticsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Elapsed time of loading statistics from parts
+- `ProfileEvent_RuntimeDataflowStatisticsInputBytes` ([UInt64](/core/reference/data-types/int-uint)) — Collected statistics on the number of bytes replicas would read if the query was executed with parallel replicas
+- `ProfileEvent_RuntimeDataflowStatisticsOutputBytes` ([UInt64](/core/reference/data-types/int-uint)) — Collected statistics on the number of bytes replicas would send to the initiator if the query was executed with parallel replicas
+- `ProfileEvent_S3CachedCredentialsProvidersReused` ([UInt64](/core/reference/data-types/int-uint)) — Total number of reused credentials provider from the cache
+- `ProfileEvent_S3CachedCredentialsProvidersAdded` ([UInt64](/core/reference/data-types/int-uint)) — Total number of newly added credentials providers to the cache
+- `ProfileEvent_RuntimeFiltersCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of distinct JOIN Runtime Filters created within a query
+- `ProfileEvent_RuntimeFilterBlocksProcessed` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks processed by JOIN Runtime Filters
+- `ProfileEvent_RuntimeFilterBlocksSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks skipped by JOIN Runtime Filters without processing due to filter being dynamically disabled because of poor filtering ratio
+- `ProfileEvent_RuntimeFilterRowsChecked` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows checked by JOIN Runtime Filters
+- `ProfileEvent_RuntimeFilterRowsPassed` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that passed (not filtered out by) JOIN Runtime Filters
+- `ProfileEvent_RuntimeFilterRowsSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows in blocks that were skipped by JOIN Runtime Filters
+- `ProfileEvent_JoinBuildPostProcessingMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Elapsed time of post-processing steps after building the right JOIN side.
+- `ProfileEvent_AIInputTokens` ([UInt64](/core/reference/data-types/int-uint)) — Total prompt tokens consumed across all AI function calls in the query.
+- `ProfileEvent_AIOutputTokens` ([UInt64](/core/reference/data-types/int-uint)) — Total completion tokens consumed across all AI function calls in the query.
+- `ProfileEvent_AIAPICalls` ([UInt64](/core/reference/data-types/int-uint)) — Number of HTTP requests dispatched to AI providers.
+- `ProfileEvent_AIRowsProcessed` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that received an AI result.
+- `ProfileEvent_AIRowsSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that received a default value due to quota or error.
+- `CurrentMetric_Query` ([Int64](/core/reference/data-types/int-uint)) — Number of executing queries
+- `CurrentMetric_ASTFuzzerAccumulatedFragments` ([Int64](/core/reference/data-types/int-uint)) — Number of AST fragments accumulated by the server-side AST fuzzer for use in future mutations.
+- `CurrentMetric_QueryNonInternal` ([Int64](/core/reference/data-types/int-uint)) — Number of executing non-internal queries (queries initiated by users, excluding internal queries from ClickHouse)
+- `CurrentMetric_Merge` ([Int64](/core/reference/data-types/int-uint)) — Number of executing background merges
+- `CurrentMetric_MergeParts` ([Int64](/core/reference/data-types/int-uint)) — Number of source parts participating in current background merges
+- `CurrentMetric_Move` ([Int64](/core/reference/data-types/int-uint)) — Number of currently executing moves
+- `CurrentMetric_PartMutation` ([Int64](/core/reference/data-types/int-uint)) — Number of mutations (ALTER DELETE/UPDATE)
+- `CurrentMetric_ReplicatedFetch` ([Int64](/core/reference/data-types/int-uint)) — Number of data parts being fetched from replica
+- `CurrentMetric_ReplicatedSend` ([Int64](/core/reference/data-types/int-uint)) — Number of data parts being sent to replicas
+- `CurrentMetric_ReplicatedChecks` ([Int64](/core/reference/data-types/int-uint)) — Number of data parts checking for consistency
+- `CurrentMetric_BackgroundMergesAndMutationsPoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active merges and mutations in an associated background pool
+- `CurrentMetric_BackgroundMergesAndMutationsPoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of active merges and mutations in an associated background pool
+- `CurrentMetric_BackgroundFetchesPoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active fetches in an associated background pool
+- `CurrentMetric_BackgroundFetchesPoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of simultaneous fetches in an associated background pool
+- `CurrentMetric_BackgroundCommonPoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active tasks in an associated background pool
+- `CurrentMetric_BackgroundCommonPoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of tasks in an associated background pool
+- `CurrentMetric_BackgroundMovePoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active tasks in BackgroundProcessingPool for moves
+- `CurrentMetric_BackgroundMovePoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of tasks in BackgroundProcessingPool for moves
+- `CurrentMetric_AzureRequests` ([Int64](/core/reference/data-types/int-uint)) — Number of currently executing Azure requests
+- `CurrentMetric_BackgroundSchedulePoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active tasks in BackgroundSchedulePool. This pool is used for periodic ReplicatedMergeTree tasks, like cleaning old data parts, altering data parts, replica re-initialization, etc.
+- `CurrentMetric_BackgroundSchedulePoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of tasks in BackgroundSchedulePool. This pool is used for periodic ReplicatedMergeTree tasks, like cleaning old data parts, altering data parts, replica re-initialization, etc.
+- `CurrentMetric_BackgroundBufferFlushSchedulePoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active tasks in BackgroundBufferFlushSchedulePool. This pool is used for periodic Buffer flushes
+- `CurrentMetric_BackgroundBufferFlushSchedulePoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of tasks in BackgroundBufferFlushSchedulePool
+- `CurrentMetric_BackgroundDistributedSchedulePoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active tasks in BackgroundDistributedSchedulePool. This pool is used for distributed sends that is done in background.
+- `CurrentMetric_BackgroundDistributedSchedulePoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of tasks in BackgroundDistributedSchedulePool
+- `CurrentMetric_BackgroundMessageBrokerSchedulePoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of active tasks in BackgroundMessageBrokerSchedulePool for message streaming
+- `CurrentMetric_BackgroundMessageBrokerSchedulePoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of tasks in BackgroundMessageBrokerSchedulePool for message streaming
+- `CurrentMetric_CacheDictionaryUpdateQueueBatches` ([Int64](/core/reference/data-types/int-uint)) — Number of 'batches' (a set of keys) in update queue in CacheDictionaries.
+- `CurrentMetric_CacheDictionaryUpdateQueueKeys` ([Int64](/core/reference/data-types/int-uint)) — Exact number of keys in update queue in CacheDictionaries.
+- `CurrentMetric_DiskSpaceReservedForMerge` ([Int64](/core/reference/data-types/int-uint)) — Disk space reserved for currently running background merges. It is slightly more than the total size of currently merging parts.
+- `CurrentMetric_DistributedSend` ([Int64](/core/reference/data-types/int-uint)) — Number of connections to remote servers sending data that was INSERTed into Distributed tables. Both synchronous and asynchronous mode.
+- `CurrentMetric_QueryPreempted` ([Int64](/core/reference/data-types/int-uint)) — Number of running tasks which are paused and waiting due to 'priority' setting.
+- `CurrentMetric_TCPConnection` ([Int64](/core/reference/data-types/int-uint)) — Number of connections to TCP server (clients with native interface), also included server-server distributed query connections
+- `CurrentMetric_MySQLConnection` ([Int64](/core/reference/data-types/int-uint)) — Number of client connections using MySQL protocol
+- `CurrentMetric_HTTPConnection` ([Int64](/core/reference/data-types/int-uint)) — Number of connections to HTTP server
+- `CurrentMetric_InterserverConnection` ([Int64](/core/reference/data-types/int-uint)) — Number of connections from other replicas to fetch parts
+- `CurrentMetric_PostgreSQLConnection` ([Int64](/core/reference/data-types/int-uint)) — Number of client connections using PostgreSQL protocol
+- `CurrentMetric_OpenFileForRead` ([Int64](/core/reference/data-types/int-uint)) — Number of files open for reading
+- `CurrentMetric_OpenFileForWrite` ([Int64](/core/reference/data-types/int-uint)) — Number of files open for writing
+- `CurrentMetric_Compressing` ([Int64](/core/reference/data-types/int-uint)) — Number of compress operations using internal compression codecs
+- `CurrentMetric_Decompressing` ([Int64](/core/reference/data-types/int-uint)) — Number of decompress operations using internal compression codecs
+- `CurrentMetric_ParallelCompressedWriteBufferThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in all instances of ParallelCompressedWriteBuffer - these threads are doing parallel compression and writing
+- `CurrentMetric_ParallelCompressedWriteBufferWait` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in all instances of ParallelCompressedWriteBuffer that are currently waiting for buffer to become available for writing
+- `CurrentMetric_TotalTemporaryFiles` ([Int64](/core/reference/data-types/int-uint)) — Number of temporary files created
+- `CurrentMetric_TemporaryFilesForSort` ([Int64](/core/reference/data-types/int-uint)) — Number of temporary files created for external sorting
+- `CurrentMetric_TemporaryFilesForAggregation` ([Int64](/core/reference/data-types/int-uint)) — Number of temporary files created for external aggregation
+- `CurrentMetric_TemporaryFilesForJoin` ([Int64](/core/reference/data-types/int-uint)) — Number of temporary files created for JOIN
+- `CurrentMetric_TemporaryFilesForMerge` ([Int64](/core/reference/data-types/int-uint)) — Number of temporary files for vertical merge
+- `CurrentMetric_TemporaryFilesUnknown` ([Int64](/core/reference/data-types/int-uint)) — Number of temporary files created without known purpose
+- `CurrentMetric_Read` ([Int64](/core/reference/data-types/int-uint)) — Number of read (read, pread, io_getevents, etc.) syscalls in fly
+- `CurrentMetric_RemoteRead` ([Int64](/core/reference/data-types/int-uint)) — Number of read with remote reader in fly
+- `CurrentMetric_Write` ([Int64](/core/reference/data-types/int-uint)) — Number of write (write, pwrite, io_getevents, etc.) syscalls in fly
+- `CurrentMetric_NetworkReceive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads receiving data from network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `CurrentMetric_NetworkSend` ([Int64](/core/reference/data-types/int-uint)) — Number of threads sending data to network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `CurrentMetric_SendScalars` ([Int64](/core/reference/data-types/int-uint)) — Number of connections that are sending data for scalars to remote servers.
+- `CurrentMetric_SendExternalTables` ([Int64](/core/reference/data-types/int-uint)) — Number of connections that are sending data for external tables to remote servers. External tables are used to implement GLOBAL IN and GLOBAL JOIN operators with distributed subqueries.
+- `CurrentMetric_QueryThread` ([Int64](/core/reference/data-types/int-uint)) — Number of query processing threads
+- `CurrentMetric_ReadonlyReplica` ([Int64](/core/reference/data-types/int-uint)) — Number of Replicated tables that are currently in readonly state due to re-initialization after ZooKeeper session loss or due to startup without ZooKeeper configured.
+- `CurrentMetric_ReplicaReady` ([Int64](/core/reference/data-types/int-uint)) — Indicates if the replica is ready for queries: 0 = no, 1 = yes
+- `CurrentMetric_MemoryTracking` ([Int64](/core/reference/data-types/int-uint)) — Total amount of memory (bytes) allocated by the server.
+- `CurrentMetric_MemoryTrackingUncorrected` ([Int64](/core/reference/data-types/int-uint)) — Total amount of memory (bytes) allocated by the server not corrected by RSS.
+- `CurrentMetric_MergesMutationsMemoryTracking` ([Int64](/core/reference/data-types/int-uint)) — Total amount of memory (bytes) allocated by background tasks (merges and mutations).
+- `CurrentMetric_EphemeralNode` ([Int64](/core/reference/data-types/int-uint)) — Number of ephemeral nodes hold in ZooKeeper.
+- `CurrentMetric_MaxAllocatedEphemeralLockSequentialNumber` ([Int64](/core/reference/data-types/int-uint)) — The maximum sequential number allocated for ephemeral lock znodes in ZooKeeper. Primarily influenced by the block numbers.
+- `CurrentMetric_ZooKeeperSession` ([Int64](/core/reference/data-types/int-uint)) — Number of sessions (connections) to ZooKeeper. Should be no more than one, because using more than one connection to ZooKeeper may lead to bugs due to lack of linearizability (stale reads) that ZooKeeper consistency model allows.
+- `CurrentMetric_ZooKeeperSessionExpired` ([Int64](/core/reference/data-types/int-uint)) — Number of expired global ZooKeeper sessions.
+- `CurrentMetric_ZooKeeperConnectionLossStartedTimestampSeconds` ([Int64](/core/reference/data-types/int-uint)) — Unix timestamp in seconds when ZooKeeper connection was lost, or 0 if connected successfully.
+- `CurrentMetric_ZooKeeperWatch` ([Int64](/core/reference/data-types/int-uint)) — Number of watches (event subscriptions) in ZooKeeper.
+- `CurrentMetric_ZooKeeperRequest` ([Int64](/core/reference/data-types/int-uint)) — Number of requests to ZooKeeper in fly.
+- `CurrentMetric_DelayedInserts` ([Int64](/core/reference/data-types/int-uint)) — Number of INSERT queries that are throttled due to high number of active data parts for partition in a MergeTree table.
+- `CurrentMetric_ContextLockWait` ([Int64](/core/reference/data-types/int-uint)) — Number of threads waiting for lock in Context. This is global lock.
+- `CurrentMetric_StorageBufferRows` ([Int64](/core/reference/data-types/int-uint)) — Number of rows in buffers of Buffer tables
+- `CurrentMetric_StorageBufferBytes` ([Int64](/core/reference/data-types/int-uint)) — Number of bytes in buffers of Buffer tables
+- `CurrentMetric_DictCacheRequests` ([Int64](/core/reference/data-types/int-uint)) — Number of requests in fly to data sources of dictionaries of cache type.
+- `CurrentMetric_Revision` ([Int64](/core/reference/data-types/int-uint)) — Revision of the server. It is a number incremented for every release or release candidate except patch releases.
+- `CurrentMetric_VersionInteger` ([Int64](/core/reference/data-types/int-uint)) — Version of the server in a single integer number in base-1000. For example, version 11.22.33 is translated to 11022033.
+- `CurrentMetric_RWLockWaitingReaders` ([Int64](/core/reference/data-types/int-uint)) — Number of threads waiting for read on a table RWLock.
+- `CurrentMetric_RWLockWaitingWriters` ([Int64](/core/reference/data-types/int-uint)) — Number of threads waiting for write on a table RWLock.
+- `CurrentMetric_RWLockActiveReaders` ([Int64](/core/reference/data-types/int-uint)) — Number of threads holding read lock in a table RWLock.
+- `CurrentMetric_RWLockActiveWriters` ([Int64](/core/reference/data-types/int-uint)) — Number of threads holding write lock in a table RWLock.
+- `CurrentMetric_GlobalThread` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in global thread pool.
+- `CurrentMetric_GlobalThreadActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in global thread pool running a task.
+- `CurrentMetric_GlobalThreadScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in global thread pool.
+- `CurrentMetric_LocalThread` ([Int64](/core/reference/data-types/int-uint)) — Obsolete. Number of threads in local thread pools. The threads in local thread pools are taken from the global thread pool.
+- `CurrentMetric_LocalThreadActive` ([Int64](/core/reference/data-types/int-uint)) — Obsolete. Number of threads in local thread pools running a task.
+- `CurrentMetric_LocalThreadScheduled` ([Int64](/core/reference/data-types/int-uint)) — Obsolete. Number of queued or active jobs in local thread pools.
+- `CurrentMetric_MergeTreeDataSelectExecutorThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTreeDataSelectExecutor thread pool.
+- `CurrentMetric_MergeTreeDataSelectExecutorThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTreeDataSelectExecutor thread pool running a task.
+- `CurrentMetric_MergeTreeDataSelectExecutorThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the MergeTreeDataSelectExecutor thread pool.
+- `CurrentMetric_BackupsThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for BACKUP.
+- `CurrentMetric_BackupsThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in thread pool for BACKUP running a task.
+- `CurrentMetric_BackupsThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs for BACKUP.
+- `CurrentMetric_RestoreThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for RESTORE.
+- `CurrentMetric_RestoreThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for RESTORE running a task.
+- `CurrentMetric_RestoreThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs for RESTORE.
+- `CurrentMetric_MarksLoaderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in thread pool for loading marks.
+- `CurrentMetric_MarksLoaderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for loading marks running a task.
+- `CurrentMetric_MarksLoaderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the thread pool for loading marks.
+- `CurrentMetric_IOPrefetchThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IO prefetch thread pool.
+- `CurrentMetric_IOPrefetchThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IO prefetch thread pool running a task.
+- `CurrentMetric_IOPrefetchThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the IO prefetch thread pool.
+- `CurrentMetric_IOWriterThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IO writer thread pool.
+- `CurrentMetric_IOWriterThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IO writer thread pool running a task.
+- `CurrentMetric_IOWriterThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the IO writer thread pool.
+- `CurrentMetric_IOThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IO thread pool.
+- `CurrentMetric_IOThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IO thread pool running a task.
+- `CurrentMetric_IOThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the IO thread pool.
+- `CurrentMetric_CompressionThread` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in compression thread pools.
+- `CurrentMetric_CompressionThreadActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in compression thread pools running a task.
+- `CurrentMetric_CompressionThreadScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in compression thread pools.
+- `CurrentMetric_ThreadPoolRemoteFSReaderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for remote_filesystem_read_method=threadpool.
+- `CurrentMetric_ThreadPoolRemoteFSReaderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for remote_filesystem_read_method=threadpool running a task.
+- `CurrentMetric_ThreadPoolRemoteFSReaderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the thread pool for remote_filesystem_read_method=threadpool.
+- `CurrentMetric_ThreadPoolFSReaderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for local_filesystem_read_method=threadpool.
+- `CurrentMetric_ThreadPoolFSReaderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for local_filesystem_read_method=threadpool running a task.
+- `CurrentMetric_ThreadPoolFSReaderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the thread pool for local_filesystem_read_method=threadpool.
+- `CurrentMetric_ObjectStorageQueueShutdownThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in object storage queue shutdown pool.
+- `CurrentMetric_ObjectStorageQueueShutdownThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in object storage queue shutdown pool running a task.
+- `CurrentMetric_ObjectStorageQueueShutdownThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in object storage queue shutdown pool.
+- `CurrentMetric_ObjectStorageQueueMetadataCacheSizeBytes` ([Int64](/core/reference/data-types/int-uint)) — Size in bytes of ObjectStorageQueue metadata cache.
+- `CurrentMetric_ObjectStorageQueueMetadataCacheSizeElements` ([Int64](/core/reference/data-types/int-uint)) — Size in elements of ObjectStorageQueue metadata cache.
+- `CurrentMetric_DeltaLakeSnapshotCacheSizeElements` ([Int64](/core/reference/data-types/int-uint)) — Size in elements of DeltaLake snapshot cache.
+- `CurrentMetric_BackupsIOThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the BackupsIO thread pool.
+- `CurrentMetric_BackupsIOThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the BackupsIO thread pool running a task.
+- `CurrentMetric_BackupsIOThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the BackupsIO thread pool.
+- `CurrentMetric_DiskObjectStorageAsyncThreads` ([Int64](/core/reference/data-types/int-uint)) — Obsolete metric, shows nothing.
+- `CurrentMetric_DiskObjectStorageAsyncThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Obsolete metric, shows nothing.
+- `CurrentMetric_StorageHiveThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StorageHive thread pool.
+- `CurrentMetric_StorageHiveThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StorageHive thread pool running a task.
+- `CurrentMetric_StorageHiveThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the StorageHive thread pool.
+- `CurrentMetric_TablesLoaderBackgroundThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the tables loader background thread pool.
+- `CurrentMetric_TablesLoaderBackgroundThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the tables loader background thread pool running a task.
+- `CurrentMetric_TablesLoaderBackgroundThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the tables loader background thread pool.
+- `CurrentMetric_TablesLoaderForegroundThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the tables loader foreground thread pool.
+- `CurrentMetric_TablesLoaderForegroundThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the tables loader foreground thread pool running a task.
+- `CurrentMetric_TablesLoaderForegroundThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the tables loader foreground thread pool.
+- `CurrentMetric_DatabaseOnDiskThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DatabaseOnDisk thread pool.
+- `CurrentMetric_DatabaseOnDiskThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DatabaseOnDisk thread pool running a task.
+- `CurrentMetric_DatabaseOnDiskThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the DatabaseOnDisk thread pool.
+- `CurrentMetric_DatabaseBackupThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DatabaseBackup thread pool.
+- `CurrentMetric_DatabaseBackupThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DatabaseBackup thread pool running a task.
+- `CurrentMetric_DatabaseBackupThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the DatabaseBackup thread pool.
+- `CurrentMetric_DatabaseCatalogThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DatabaseCatalog thread pool.
+- `CurrentMetric_DatabaseCatalogThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DatabaseCatalog thread pool running a task.
+- `CurrentMetric_DatabaseCatalogThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the DatabaseCatalog thread pool.
+- `CurrentMetric_DestroyAggregatesThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for destroy aggregate states.
+- `CurrentMetric_DestroyAggregatesThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for destroy aggregate states running a task.
+- `CurrentMetric_DestroyAggregatesThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the thread pool for destroy aggregate states.
+- `CurrentMetric_ConcurrentHashJoinPoolThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for concurrent hash join.
+- `CurrentMetric_ConcurrentHashJoinPoolThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for concurrent hash join running a task.
+- `CurrentMetric_ConcurrentHashJoinPoolThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the thread pool for concurrent hash join.
+- `CurrentMetric_HashedDictionaryThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the HashedDictionary thread pool.
+- `CurrentMetric_HashedDictionaryThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the HashedDictionary thread pool running a task.
+- `CurrentMetric_HashedDictionaryThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the HashedDictionary thread pool.
+- `CurrentMetric_CacheDictionaryThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the CacheDictionary thread pool.
+- `CurrentMetric_CacheDictionaryThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the CacheDictionary thread pool running a task.
+- `CurrentMetric_CacheDictionaryThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the CacheDictionary thread pool.
+- `CurrentMetric_ParallelFormattingOutputFormatThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the ParallelFormattingOutputFormatThreads thread pool.
+- `CurrentMetric_ParallelFormattingOutputFormatThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the ParallelFormattingOutputFormatThreads thread pool running a task.
+- `CurrentMetric_ParallelFormattingOutputFormatThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the ParallelFormattingOutputFormatThreads thread pool.
+- `CurrentMetric_MergeTreeBackgroundExecutorThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTreeBackgroundExecutor thread pool.
+- `CurrentMetric_MergeTreeBackgroundExecutorThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTreeBackgroundExecutor thread pool running a task.
+- `CurrentMetric_MergeTreeBackgroundExecutorThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the MergeTreeBackgroundExecutor thread pool.
+- `CurrentMetric_AsynchronousInsertThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the AsynchronousInsert thread pool.
+- `CurrentMetric_AsynchronousInsertThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the AsynchronousInsert thread pool running a task.
+- `CurrentMetric_AsynchronousInsertThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the AsynchronousInsert thread pool.
+- `CurrentMetric_AsynchronousInsertQueueSize` ([Int64](/core/reference/data-types/int-uint)) — Number of pending tasks in the AsynchronousInsert queue.
+- `CurrentMetric_AsynchronousInsertQueueBytes` ([Int64](/core/reference/data-types/int-uint)) — Number of pending bytes in the AsynchronousInsert queue.
+- `CurrentMetric_StartupSystemTablesThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StartupSystemTables thread pool.
+- `CurrentMetric_StartupSystemTablesThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StartupSystemTables thread pool running a task.
+- `CurrentMetric_StartupSystemTablesThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the StartupSystemTables thread pool.
+- `CurrentMetric_AggregatorThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the Aggregator thread pool.
+- `CurrentMetric_AggregatorThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the Aggregator thread pool running a task.
+- `CurrentMetric_AggregatorThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the Aggregator thread pool.
+- `CurrentMetric_DDLWorkerThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DDLWorker thread pool for ON CLUSTER queries.
+- `CurrentMetric_DDLWorkerThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the DDLWORKER thread pool for ON CLUSTER queries running a task.
+- `CurrentMetric_DDLWorkerThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the DDLWORKER thread pool for ON CLUSTER queries.
+- `CurrentMetric_StorageDistributedThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StorageDistributed thread pool.
+- `CurrentMetric_StorageDistributedThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StorageDistributed thread pool running a task.
+- `CurrentMetric_StorageDistributedThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the StorageDistributed thread pool.
+- `CurrentMetric_DistributedInsertThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads used for INSERT into Distributed.
+- `CurrentMetric_DistributedInsertThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads used for INSERT into Distributed running a task.
+- `CurrentMetric_DistributedInsertThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs used for INSERT into Distributed.
+- `CurrentMetric_StorageS3Threads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StorageS3 thread pool.
+- `CurrentMetric_StorageS3ThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the StorageS3 thread pool running a task.
+- `CurrentMetric_StorageS3ThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the StorageS3 thread pool.
+- `CurrentMetric_ObjectStorageS3Threads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the S3ObjectStorage thread pool.
+- `CurrentMetric_ObjectStorageS3ThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the S3ObjectStorage thread pool running a task.
+- `CurrentMetric_ObjectStorageS3ThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the S3ObjectStorage thread pool.
+- `CurrentMetric_StorageObjectStorageThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the remote table engines thread pools.
+- `CurrentMetric_StorageObjectStorageThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the remote table engines thread pool running a task.
+- `CurrentMetric_StorageObjectStorageThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in remote table engines thread pool.
+- `CurrentMetric_ObjectStorageAzureThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the AzureObjectStorage thread pool.
+- `CurrentMetric_ObjectStorageAzureThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the AzureObjectStorage thread pool running a task.
+- `CurrentMetric_ObjectStorageAzureThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the AzureObjectStorage thread pool.
+- `CurrentMetric_BuildVectorSimilarityIndexThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the build vector similarity index thread pool.
+- `CurrentMetric_BuildVectorSimilarityIndexThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the build vector similarity index thread pool running a task.
+- `CurrentMetric_BuildVectorSimilarityIndexThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the build vector similarity index thread pool.
+- `CurrentMetric_DistributedIndexAnalysisThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for distributed index analysis.
+- `CurrentMetric_DistributedIndexAnalysisThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool for distributed index analysis running a task.
+- `CurrentMetric_DistributedIndexAnalysisThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the distributed index analysis thread pool.
+- `CurrentMetric_ObjectStorageQueueRegisteredServers` ([Int64](/core/reference/data-types/int-uint)) — Number of registered servers in StorageS3(Azure)Queue
+- `CurrentMetric_IcebergCatalogThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IcebergCatalog thread pool.
+- `CurrentMetric_IcebergCatalogThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the IcebergCatalog thread pool running a task.
+- `CurrentMetric_IcebergCatalogThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the IcebergCatalog thread pool.
+- `CurrentMetric_IcebergSchedulePoolTask` ([Int64](/core/reference/data-types/int-uint)) — Number of tasks in the background schedule pool for Iceberg tables.
+- `CurrentMetric_IcebergSchedulePoolSize` ([Int64](/core/reference/data-types/int-uint)) — Limit on number of tasks in the background schedule pool for Iceberg tables.
+- `CurrentMetric_ParallelWithQueryThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for processing PARALLEL WITH queries.
+- `CurrentMetric_ParallelWithQueryActiveThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for processing PARALLEL WITH queries.
+- `CurrentMetric_ParallelWithQueryScheduledThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for processing PARALLEL WITH queries.
+- `CurrentMetric_DiskPlainRewritableAzureDirectoryMapSize` ([Int64](/core/reference/data-types/int-uint)) — Number of local-to-remote path entries in the 'plain_rewritable' in-memory map for AzureObjectStorage.
+- `CurrentMetric_DiskPlainRewritableAzureFileCount` ([Int64](/core/reference/data-types/int-uint)) — Number of file entries in the 'plain_rewritable' in-memory map for AzureObjectStorage.
+- `CurrentMetric_DiskPlainRewritableLocalDirectoryMapSize` ([Int64](/core/reference/data-types/int-uint)) — Number of local-to-remote path entries in the 'plain_rewritable' in-memory map for LocalObjectStorage.
+- `CurrentMetric_DiskPlainRewritableLocalFileCount` ([Int64](/core/reference/data-types/int-uint)) — Number of file entries in the 'plain_rewritable' in-memory map for LocalObjectStorage.
+- `CurrentMetric_DiskPlainRewritableS3DirectoryMapSize` ([Int64](/core/reference/data-types/int-uint)) — Number of local-to-remote path entries in the 'plain_rewritable' in-memory map for S3ObjectStorage.
+- `CurrentMetric_DiskPlainRewritableS3FileCount` ([Int64](/core/reference/data-types/int-uint)) — Number of file entries in the 'plain_rewritable' in-memory map for S3ObjectStorage.
+- `CurrentMetric_MergeTreeFetchPartitionThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads for ALTER TABLE FETCH PARTITION
+- `CurrentMetric_MergeTreeFetchPartitionThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads for ALTER TABLE FETCH PARTITION fetching part
+- `CurrentMetric_MergeTreeFetchPartitionThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active part fetches in ALTER TABLE FETCH PARTITION
+- `CurrentMetric_MergeTreePartsLoaderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTree parts loader thread pool.
+- `CurrentMetric_MergeTreePartsLoaderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTree parts loader thread pool running a task.
+- `CurrentMetric_MergeTreePartsLoaderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the MergeTree parts loader thread pool.
+- `CurrentMetric_MergeTreeOutdatedPartsLoaderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for loading Outdated data parts.
+- `CurrentMetric_MergeTreeOutdatedPartsLoaderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for loading Outdated data parts.
+- `CurrentMetric_MergeTreeOutdatedPartsLoaderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for loading Outdated data parts.
+- `CurrentMetric_MergeTreeUnexpectedPartsLoaderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for loading Unexpected data parts.
+- `CurrentMetric_MergeTreeUnexpectedPartsLoaderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for loading Unexpected data parts.
+- `CurrentMetric_MergeTreeUnexpectedPartsLoaderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for loading Unexpected data parts.
+- `CurrentMetric_MergeTreePartsCleanerThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTree parts cleaner thread pool.
+- `CurrentMetric_MergeTreePartsCleanerThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the MergeTree parts cleaner thread pool running a task.
+- `CurrentMetric_MergeTreePartsCleanerThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the MergeTree parts cleaner thread pool.
+- `CurrentMetric_DatabaseReplicatedCreateTablesThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for table creation in DatabaseReplicated.
+- `CurrentMetric_DatabaseReplicatedCreateTablesThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for table creation in DatabaseReplicated.
+- `CurrentMetric_DatabaseReplicatedCreateTablesThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for table creation in DatabaseReplicated.
+- `CurrentMetric_IDiskCopierThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads for copying data between disks of different types.
+- `CurrentMetric_IDiskCopierThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads for copying data between disks of different types running a task.
+- `CurrentMetric_IDiskCopierThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs for copying data between disks of different types.
+- `CurrentMetric_SystemReplicasThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the system.replicas thread pool.
+- `CurrentMetric_SystemDatabaseReplicasThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the system.database_replicas thread pool.
+- `CurrentMetric_SystemReplicasThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the system.replicas thread pool running a task.
+- `CurrentMetric_SystemDatabaseReplicasThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the system.database_replicas thread pool running a task.
+- `CurrentMetric_SystemReplicasThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the system.replicas thread pool.
+- `CurrentMetric_SystemDatabaseReplicasThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the system.database_replicas thread pool.
+- `CurrentMetric_RestartReplicaThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the RESTART REPLICA thread pool.
+- `CurrentMetric_RestartReplicaThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the RESTART REPLICA thread pool running a task.
+- `CurrentMetric_RestartReplicaThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the RESTART REPLICA thread pool.
+- `CurrentMetric_QueryPipelineExecutorThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the PipelineExecutor thread pool.
+- `CurrentMetric_QueryPipelineExecutorThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the PipelineExecutor thread pool running a task.
+- `CurrentMetric_QueryPipelineExecutorThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the PipelineExecutor thread pool.
+- `CurrentMetric_ParquetEncoderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in ParquetBlockOutputFormat thread pool.
+- `CurrentMetric_ParquetEncoderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in ParquetBlockOutputFormat thread pool running a task.
+- `CurrentMetric_ParquetEncoderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in ParquetBlockOutputFormat thread pool.
+- `CurrentMetric_MergeTreeSubcolumnsReaderThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool used for subcolumns reading in MergeTree.
+- `CurrentMetric_MergeTreeSubcolumnsReaderThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool used for subcolumns reading in MergeTree running a task.
+- `CurrentMetric_MergeTreeSubcolumnsReaderThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the thread pool used for subcolumns reading in MergeTree.
+- `CurrentMetric_FormatParsingThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool used for parsing input.
+- `CurrentMetric_FormatParsingThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool used for parsing input running a task.
+- `CurrentMetric_FormatParsingThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the thread pool used for parsing input.
+- `CurrentMetric_OutdatedPartsLoadingThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for loading Outdated data parts.
+- `CurrentMetric_OutdatedPartsLoadingThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for loading Outdated data parts.
+- `CurrentMetric_OutdatedPartsLoadingThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for loading Outdated data parts.
+- `CurrentMetric_FreezePartThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for freezing data parts.
+- `CurrentMetric_FreezePartThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for freezing data parts.
+- `CurrentMetric_FreezePartThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for freezing data parts.
+- `CurrentMetric_PolygonDictionaryThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for polygon dictionaries.
+- `CurrentMetric_PolygonDictionaryThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for polygon dictionaries.
+- `CurrentMetric_PolygonDictionaryThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for polygon dictionaries.
+- `CurrentMetric_KeeperReadThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for keeper server reads.
+- `CurrentMetric_KeeperReadThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for keeper server reads.
+- `CurrentMetric_KeeperReadThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for keeper server reads. Meaningless metric, the actual read tasks on this thread pool are scheduled through a different mechanism.
+- `CurrentMetric_DistributedBytesToInsert` ([Int64](/core/reference/data-types/int-uint)) — Number of pending bytes to process for asynchronous insertion into Distributed tables. Number of bytes for every shard is summed.
+- `CurrentMetric_BrokenDistributedBytesToInsert` ([Int64](/core/reference/data-types/int-uint)) — Number of bytes for asynchronous insertion into Distributed tables that has been marked as broken. Number of bytes for every shard is summed.
+- `CurrentMetric_DistributedFilesToInsert` ([Int64](/core/reference/data-types/int-uint)) — Number of pending files to process for asynchronous insertion into Distributed tables. Number of files for every shard is summed.
+- `CurrentMetric_BrokenDistributedFilesToInsert` ([Int64](/core/reference/data-types/int-uint)) — Number of files for asynchronous insertion into Distributed tables that has been marked as broken. Number of files for every shard is summed.
+- `CurrentMetric_TablesToDropQueueSize` ([Int64](/core/reference/data-types/int-uint)) — Number of dropped tables, that are waiting for background data removal.
+- `CurrentMetric_MaxDDLEntryID` ([Int64](/core/reference/data-types/int-uint)) — Max processed DDL entry of DDLWorker.
+- `CurrentMetric_MaxPushedDDLEntryID` ([Int64](/core/reference/data-types/int-uint)) — Max DDL entry of DDLWorker that pushed to zookeeper.
+- `CurrentMetric_PartsTemporary` ([Int64](/core/reference/data-types/int-uint)) — The part is generating now, it is not in data_parts list.
+- `CurrentMetric_PartsPreCommitted` ([Int64](/core/reference/data-types/int-uint)) — Deprecated. See PartsPreActive.
+- `CurrentMetric_PartsCommitted` ([Int64](/core/reference/data-types/int-uint)) — Deprecated. See PartsActive.
+- `CurrentMetric_PartsPreActive` ([Int64](/core/reference/data-types/int-uint)) — The part is in data_parts, but not used for SELECTs.
+- `CurrentMetric_PartsActive` ([Int64](/core/reference/data-types/int-uint)) — Active data part, used by current and upcoming SELECTs.
+- `CurrentMetric_AttachedDatabase` ([Int64](/core/reference/data-types/int-uint)) — Active databases.
+- `CurrentMetric_AttachedTable` ([Int64](/core/reference/data-types/int-uint)) — Active tables.
+- `CurrentMetric_AttachedReplicatedTable` ([Int64](/core/reference/data-types/int-uint)) — Active replicated tables.
+- `CurrentMetric_AttachedView` ([Int64](/core/reference/data-types/int-uint)) — Active views.
+- `CurrentMetric_AttachedDictionary` ([Int64](/core/reference/data-types/int-uint)) — Active dictionaries.
+- `CurrentMetric_PartsOutdated` ([Int64](/core/reference/data-types/int-uint)) — Not active data part, but could be used by only current SELECTs, could be deleted after SELECTs finishes.
+- `CurrentMetric_PartsDeleting` ([Int64](/core/reference/data-types/int-uint)) — Not active data part with identity refcounter, it is deleting right now by a cleaner.
+- `CurrentMetric_PartsDeleteOnDestroy` ([Int64](/core/reference/data-types/int-uint)) — Part was moved to another disk and should be deleted in own destructor.
+- `CurrentMetric_PartsWide` ([Int64](/core/reference/data-types/int-uint)) — Wide parts.
+- `CurrentMetric_PartsCompact` ([Int64](/core/reference/data-types/int-uint)) — Compact parts.
+- `CurrentMetric_MMappedFiles` ([Int64](/core/reference/data-types/int-uint)) — Total number of mmapped files.
+- `CurrentMetric_MMappedFileBytes` ([Int64](/core/reference/data-types/int-uint)) — Sum size of mmapped file regions.
+- `CurrentMetric_AsynchronousReadWait` ([Int64](/core/reference/data-types/int-uint)) — Number of threads waiting for asynchronous read.
+- `CurrentMetric_PendingAsyncInsert` ([Int64](/core/reference/data-types/int-uint)) — Number of asynchronous inserts that are waiting for flush.
+- `CurrentMetric_KafkaConsumers` ([Int64](/core/reference/data-types/int-uint)) — Number of active Kafka consumers
+- `CurrentMetric_KafkaConsumersWithAssignment` ([Int64](/core/reference/data-types/int-uint)) — Number of active Kafka consumers which have some partitions assigned.
+- `CurrentMetric_KafkaProducers` ([Int64](/core/reference/data-types/int-uint)) — Number of active Kafka producer created
+- `CurrentMetric_KafkaLibrdkafkaThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of active librdkafka threads
+- `CurrentMetric_KafkaBackgroundReads` ([Int64](/core/reference/data-types/int-uint)) — Number of background reads currently working (populating materialized views from Kafka)
+- `CurrentMetric_KafkaConsumersInUse` ([Int64](/core/reference/data-types/int-uint)) — Number of consumers which are currently used by direct or background reads
+- `CurrentMetric_KafkaWrites` ([Int64](/core/reference/data-types/int-uint)) — Number of currently running inserts to Kafka
+- `CurrentMetric_KafkaAssignedPartitions` ([Int64](/core/reference/data-types/int-uint)) — Number of partitions Kafka tables currently assigned to
+- `CurrentMetric_FilesystemCacheReadBuffers` ([Int64](/core/reference/data-types/int-uint)) — Number of active cache buffers
+- `CurrentMetric_CacheFileSegments` ([Int64](/core/reference/data-types/int-uint)) — Number of existing cache file segments
+- `CurrentMetric_CacheDetachedFileSegments` ([Int64](/core/reference/data-types/int-uint)) — Number of existing detached cache file segments
+- `CurrentMetric_FilesystemCacheSize` ([Int64](/core/reference/data-types/int-uint)) — Filesystem cache size in bytes
+- `CurrentMetric_FilesystemCacheSizeLimit` ([Int64](/core/reference/data-types/int-uint)) — Filesystem cache size limit in bytes
+- `CurrentMetric_FilesystemCacheElements` ([Int64](/core/reference/data-types/int-uint)) — Filesystem cache elements (file segments)
+- `CurrentMetric_FilesystemCacheDownloadQueueElements` ([Int64](/core/reference/data-types/int-uint)) — Filesystem cache elements in download queue
+- `CurrentMetric_FilesystemCacheDelayedCleanupElements` ([Int64](/core/reference/data-types/int-uint)) — Filesystem cache elements in background cleanup queue
+- `CurrentMetric_FilesystemCacheHoldFileSegments` ([Int64](/core/reference/data-types/int-uint)) — Filesystem cache file segment which are currently hold as unreleasable
+- `CurrentMetric_FilesystemCacheKeys` ([Int64](/core/reference/data-types/int-uint)) — Number of keys in filesystem cache
+- `CurrentMetric_FilesystemCacheReserveThreads` ([Int64](/core/reference/data-types/int-uint)) — Threads number trying to reserve space in cache
+- `CurrentMetric_AsyncInsertCacheSize` ([Int64](/core/reference/data-types/int-uint)) — Number of async insert hash id in cache
+- `CurrentMetric_IcebergMetadataFilesCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the Iceberg metadata cache in bytes
+- `CurrentMetric_IcebergMetadataFilesCacheFiles` ([Int64](/core/reference/data-types/int-uint)) — Number of cached files in the Iceberg metadata cache
+- `CurrentMetric_ParquetMetadataCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the Parquet metadata cache in bytes
+- `CurrentMetric_ParquetMetadataCacheFiles` ([Int64](/core/reference/data-types/int-uint)) — Number of cached files in the Parquet metadata cache
+- `CurrentMetric_AvroSchemaCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the Avro schema cache in bytes
+- `CurrentMetric_AvroSchemaCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Number of cached Avro schemas
+- `CurrentMetric_AvroSchemaRegistryCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the Avro schema registry cache in bytes
+- `CurrentMetric_AvroSchemaRegistryCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Number of entries in Avro schema registry cache
+- `CurrentMetric_HiveFilesCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the hive cache in bytes
+- `CurrentMetric_HiveFilesCacheFiles` ([Int64](/core/reference/data-types/int-uint)) — Number of cached files in the hive cache
+- `CurrentMetric_HiveMetadataFilesCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the hive metadata cache in bytes
+- `CurrentMetric_HiveMetadataFilesCacheFiles` ([Int64](/core/reference/data-types/int-uint)) — Number of cached files in the hive metadata cache
+- `CurrentMetric_VectorSimilarityIndexCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the vector similarity index cache in bytes
+- `CurrentMetric_VectorSimilarityIndexCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Number of entries in the vector similarity index cache
+- `CurrentMetric_TextIndexTokensCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the text index tokens cache in bytes
+- `CurrentMetric_TextIndexTokensCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Number of entries in the text index tokens cache
+- `CurrentMetric_TextIndexHeaderCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the text index header cache in bytes
+- `CurrentMetric_TextIndexHeaderCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Number of entries in text index header cache
+- `CurrentMetric_TextIndexPostingsCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the text index posting lists cache in bytes
+- `CurrentMetric_TextIndexPostingsCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Number of entries in the text index posting lists cache
+- `CurrentMetric_DNSHostsCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the DNS hosts cache in bytes
+- `CurrentMetric_DNSHostsCacheSize` ([Int64](/core/reference/data-types/int-uint)) — Number of cached DNS hosts
+- `CurrentMetric_DNSAddressesCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Size of the DNS addresses cache in bytes
+- `CurrentMetric_DNSAddressesCacheSize` ([Int64](/core/reference/data-types/int-uint)) — Number of cached DNS addresses
+- `CurrentMetric_MarkCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of mark cache in bytes
+- `CurrentMetric_MarkCacheFiles` ([Int64](/core/reference/data-types/int-uint)) — Total number of mark files cached in the mark cache
+- `CurrentMetric_NamedCollection` ([Int64](/core/reference/data-types/int-uint)) — Number of named collections
+- `CurrentMetric_PrimaryIndexCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of primary index cache in bytes
+- `CurrentMetric_PrimaryIndexCacheFiles` ([Int64](/core/reference/data-types/int-uint)) — Total number of index files cached in the primary index cache
+- `CurrentMetric_PageCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of userspace page cache in bytes
+- `CurrentMetric_PageCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Total number of entries in the userspace page cache
+- `CurrentMetric_UncompressedCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of uncompressed cache in bytes. Uncompressed cache does not usually improve the performance and should be mostly avoided
+- `CurrentMetric_UncompressedCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Total number of entries in the uncompressed cache. Each entry represents a decompressed block of data. Uncompressed cache does not usually improve performance and should be mostly avoided
+- `CurrentMetric_IndexMarkCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of mark cache for secondary indices in bytes
+- `CurrentMetric_IndexMarkCacheFiles` ([Int64](/core/reference/data-types/int-uint)) — Total number of mark files cached in the mark cache for secondary indices
+- `CurrentMetric_IndexUncompressedCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of uncompressed cache in bytes for secondary indices. Uncompressed cache does not usually improve the performance and should be mostly avoided
+- `CurrentMetric_IndexUncompressedCacheCells` ([Int64](/core/reference/data-types/int-uint)) — Total number of entries in the uncompressed cache for secondary indices. Each entry represents a decompressed block of data. Uncompressed cache does not usually improve performance and should be mostly avoided
+- `CurrentMetric_MMapCacheCells` ([Int64](/core/reference/data-types/int-uint)) — The number of files opened with `mmap` (mapped in memory). This is used for queries with the setting `local_filesystem_read_method` set to `mmap`. The files opened with `mmap` are kept in the cache to avoid costly TLB flushes.
+- `CurrentMetric_QueryCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of the query cache in bytes
+- `CurrentMetric_QueryCacheEntries` ([Int64](/core/reference/data-types/int-uint)) — Total number of entries in the query cache
+- `CurrentMetric_QueryConditionCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of the query condition cache in bytes
+- `CurrentMetric_QueryConditionCacheEntries` ([Int64](/core/reference/data-types/int-uint)) — Total number of entries in the query condition cache
+- `CurrentMetric_CompiledExpressionCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total bytes used for the cache of JIT-compiled code
+- `CurrentMetric_CompiledExpressionCacheCount` ([Int64](/core/reference/data-types/int-uint)) — Total entries in the cache of JIT-compiled code
+- `CurrentMetric_SerializationCacheBytesInMemoryAllocated` ([Int64](/core/reference/data-types/int-uint)) — Total size of the serialization cache in bytes including keys and overhead from empty slots
+- `CurrentMetric_SerializationCacheBytesInMemory` ([Int64](/core/reference/data-types/int-uint)) — Total size of the serialization cache in bytes including only the values
+- `CurrentMetric_SerializationCacheCount` ([Int64](/core/reference/data-types/int-uint)) — Total number of entries in the serialization cache
+- `CurrentMetric_MergeJoinBlocksCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total bytes used for cached blocks in MergeJoin
+- `CurrentMetric_MergeJoinBlocksCacheCount` ([Int64](/core/reference/data-types/int-uint)) — Total cached blocks in MergeJoin
+- `CurrentMetric_BcryptCacheBytes` ([Int64](/core/reference/data-types/int-uint)) — Total size of the bcrypt authentication cache in bytes
+- `CurrentMetric_BcryptCacheSize` ([Int64](/core/reference/data-types/int-uint)) — Total number of entries in the bcrypt authentication cache
+- `CurrentMetric_ColumnsDescriptionsCacheSize` ([Int64](/core/reference/data-types/int-uint)) — Size of ColumnsDescriptions cache (per-table cache)
+- `CurrentMetric_S3Requests` ([Int64](/core/reference/data-types/int-uint)) — S3 requests count
+- `CurrentMetric_KeeperAliveConnections` ([Int64](/core/reference/data-types/int-uint)) — Number of alive connections
+- `CurrentMetric_KeeperOutstandingRequests` ([Int64](/core/reference/data-types/int-uint)) — Number of outstanding requests
+- `CurrentMetric_ThreadsInOvercommitTracker` ([Int64](/core/reference/data-types/int-uint)) — Number of waiting threads inside of OvercommitTracker
+- `CurrentMetric_IOUringPendingEvents` ([Int64](/core/reference/data-types/int-uint)) — Number of io_uring SQEs waiting to be submitted
+- `CurrentMetric_IOUringInFlightEvents` ([Int64](/core/reference/data-types/int-uint)) — Number of io_uring SQEs in flight
+- `CurrentMetric_ReadTaskRequestsSent` ([Int64](/core/reference/data-types/int-uint)) — The current number of callback requests in flight from the remote server back to the initiator server to choose the read task (for s3Cluster table function and similar). Measured on the remote server side.
+- `CurrentMetric_MergeTreeReadTaskRequestsSent` ([Int64](/core/reference/data-types/int-uint)) — The current number of callback requests in flight from the remote server back to the initiator server to choose the read task (for MergeTree tables). Measured on the remote server side.
+- `CurrentMetric_MergeTreeAllRangesAnnouncementsSent` ([Int64](/core/reference/data-types/int-uint)) — The current number of announcement being sent in flight from the remote server to the initiator server about the set of data parts (for MergeTree tables). Measured on the remote server side.
+- `CurrentMetric_CreatedTimersInQueryProfiler` ([Int64](/core/reference/data-types/int-uint)) — Number of Created thread local timers in QueryProfiler
+- `CurrentMetric_ActiveTimersInQueryProfiler` ([Int64](/core/reference/data-types/int-uint)) — Number of Active thread local timers in QueryProfiler
+- `CurrentMetric_RefreshableViews` ([Int64](/core/reference/data-types/int-uint)) — Number materialized views with periodic refreshing (REFRESH)
+- `CurrentMetric_RefreshingViews` ([Int64](/core/reference/data-types/int-uint)) — Number of materialized views currently executing a refresh
+- `CurrentMetric_StorageBufferFlushThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads for background flushes in StorageBuffer
+- `CurrentMetric_StorageBufferFlushThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads for background flushes in StorageBuffer running a task
+- `CurrentMetric_StorageBufferFlushThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active threads for background flushes in StorageBuffer
+- `CurrentMetric_SharedMergeTreeThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pools in internals of SharedMergeTree
+- `CurrentMetric_SharedMergeTreeThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pools in internals of SharedMergeTree running a task
+- `CurrentMetric_SharedMergeTreeThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active threads in the thread pools in internals of SharedMergeTree
+- `CurrentMetric_SharedMergeTreeFetch` ([Int64](/core/reference/data-types/int-uint)) — Number of fetches in progress
+- `CurrentMetric_SharedMergeTreeAssignedCurrentParts` ([Int64](/core/reference/data-types/int-uint)) — Number of parts locked by merge or mutation
+- `CurrentMetric_SharedMergeTreeOutdatedPartsInKeeper` ([Int64](/core/reference/data-types/int-uint)) — How many outdated part records stored in keeper
+- `CurrentMetric_SharedMergeTreeCondemnedPartsInKeeper` ([Int64](/core/reference/data-types/int-uint)) — How many condemned part records stored in keeper
+- `CurrentMetric_SharedMergeTreeBrokenCondemnedPartsInKeeper` ([Int64](/core/reference/data-types/int-uint)) — How many broken condemned part records stored in keeper
+- `CurrentMetric_SharedMergeTreeMaxActiveReplicas` ([Int64](/core/reference/data-types/int-uint)) — The maximum number of active replicas registered in Keeper
+- `CurrentMetric_SharedMergeTreeMaxInactiveReplicas` ([Int64](/core/reference/data-types/int-uint)) — The maximum number of inactive replicas registered in Keeper
+- `CurrentMetric_SharedMergeTreeMaxReplicas` ([Int64](/core/reference/data-types/int-uint)) — The maximum number of replicas registered in Keeper across all tables. Note it might not be a sum of SharedMergeTreeMaxActiveReplicas and SharedMergeTreeMaxInactiveReplicas
+- `CurrentMetric_SharedMergeTreeMinActiveReplicas` ([Int64](/core/reference/data-types/int-uint)) — The minimum number of active replicas registered in Keeper
+- `CurrentMetric_SharedMergeTreeMinInactiveReplicas` ([Int64](/core/reference/data-types/int-uint)) — The minimum number of inactive replicas registered in Keeper
+- `CurrentMetric_SharedMergeTreeMinReplicas` ([Int64](/core/reference/data-types/int-uint)) — The minimum number of replicas registered in Keeper across all tables. Note it might not be a sum of SharedMergeTreeMinActiveReplicas and SharedMergeTreeMinInactiveReplicas
+- `CurrentMetric_SharedMergeTreeMinPartitions` ([Int64](/core/reference/data-types/int-uint)) — The minimum number of partitions registered in Keeper across all SharedMergeTree tables
+- `CurrentMetric_SharedMergeTreeMaxPartitions` ([Int64](/core/reference/data-types/int-uint)) — The maximum number of partitions registered in Keeper across all SharedMergeTree tables
+- `CurrentMetric_CacheWarmerBytesInProgress` ([Int64](/core/reference/data-types/int-uint)) — Total size of remote file segments waiting to be asynchronously loaded into filesystem cache.
+- `CurrentMetric_DistrCacheOpenedConnections` ([Int64](/core/reference/data-types/int-uint)) — Number of open connections to Distributed Cache
+- `CurrentMetric_DistrCacheSharedLimitCount` ([Int64](/core/reference/data-types/int-uint)) — Number of opened connections according to DistributedCache::ConnectionPool::SharedLimit
+- `CurrentMetric_DistrCacheUsedConnections` ([Int64](/core/reference/data-types/int-uint)) — Number of currently used connections to Distributed Cache
+- `CurrentMetric_DistrCacheAllocatedConnections` ([Int64](/core/reference/data-types/int-uint)) — Number of currently allocated connections to Distributed Cache connection pool
+- `CurrentMetric_DistrCacheBorrowedConnections` ([Int64](/core/reference/data-types/int-uint)) — Number of currently borrowed connections to Distributed Cache connection pool
+- `CurrentMetric_DistrCacheReadRequests` ([Int64](/core/reference/data-types/int-uint)) — Number of executed Read requests to Distributed Cache
+- `CurrentMetric_DistrCacheWriteRequests` ([Int64](/core/reference/data-types/int-uint)) — Number of executed Write requests to Distributed Cache
+- `CurrentMetric_DistrCacheWriteBuffers` ([Int64](/core/reference/data-types/int-uint)) — Number of distributed cache write buffers
+- `CurrentMetric_DistrCacheReadBuffers` ([Int64](/core/reference/data-types/int-uint)) — Number of distributed cache read buffers
+- `CurrentMetric_DistrCacheServerConnections` ([Int64](/core/reference/data-types/int-uint)) — Number of open connections to ClickHouse server from Distributed Cache
+- `CurrentMetric_DistrCacheRegisteredServers` ([Int64](/core/reference/data-types/int-uint)) — Number of distributed cache registered servers
+- `CurrentMetric_DistrCacheRegisteredServersCurrentAZ` ([Int64](/core/reference/data-types/int-uint)) — Number of distributed cache registered servers in current az
+- `CurrentMetric_DistrCacheServerS3CachedClients` ([Int64](/core/reference/data-types/int-uint)) — Number of distributed cache S3 cached clients
+- `CurrentMetric_DistrCacheServerRegistryConnections` ([Int64](/core/reference/data-types/int-uint)) — Number of active connections to ClickHouse server from Distributed Cache (not marked as cancelled because of limit)
+- `CurrentMetric_SchedulerIOReadScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of IO reads are being scheduled currently
+- `CurrentMetric_SchedulerIOWriteScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of IO writes are being scheduled currently
+- `CurrentMetric_StorageConnectionsStored` ([Int64](/core/reference/data-types/int-uint)) — Total count of sessions stored in the session pool for storages
+- `CurrentMetric_StorageConnectionsTotal` ([Int64](/core/reference/data-types/int-uint)) — Total count of all sessions: stored in the pool and actively used right now for storages
+- `CurrentMetric_DiskConnectionsStored` ([Int64](/core/reference/data-types/int-uint)) — Total count of sessions stored in the session pool for disks
+- `CurrentMetric_DiskConnectionsTotal` ([Int64](/core/reference/data-types/int-uint)) — Total count of all sessions: stored in the pool and actively used right now for disks
+- `CurrentMetric_BlobKillerThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool of the object storage disk background removal process
+- `CurrentMetric_BlobKillerThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool of the object storage disk background removal process running a task
+- `CurrentMetric_BlobKillerThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active tasks in the thread pool of the object storage disk background removal process
+- `CurrentMetric_BlobCopierThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool of the object storage disk background replication process
+- `CurrentMetric_BlobCopierThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the thread pool of the object storage disk background replication process running a task
+- `CurrentMetric_BlobCopierThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active tasks in the thread pool of the object storage disk background replication process
+- `CurrentMetric_HTTPConnectionsStored` ([Int64](/core/reference/data-types/int-uint)) — Total count of sessions stored in the session pool for http hosts
+- `CurrentMetric_HTTPConnectionsTotal` ([Int64](/core/reference/data-types/int-uint)) — Total count of all sessions: stored in the pool and actively used right now for http hosts
+- `CurrentMetric_AddressesActive` ([Int64](/core/reference/data-types/int-uint)) — Total count of addresses which are used for creation connections with connection pools
+- `CurrentMetric_AddressesBanned` ([Int64](/core/reference/data-types/int-uint)) — Total count of addresses which are banned as faulty for creation connections with connection pools
+- `CurrentMetric_FilteringMarksWithPrimaryKey` ([Int64](/core/reference/data-types/int-uint)) — Number of threads currently doing filtering of mark ranges by the primary key
+- `CurrentMetric_FilteringMarksWithSecondaryKeys` ([Int64](/core/reference/data-types/int-uint)) — Number of threads currently doing filtering of mark ranges by secondary keys
+- `CurrentMetric_ConcurrencyControlScheduled` ([Int64](/core/reference/data-types/int-uint)) — Total number of CPU slot requests are being scheduled currently
+- `CurrentMetric_ConcurrencyControlAcquired` ([Int64](/core/reference/data-types/int-uint)) — Total number of acquired CPU slots
+- `CurrentMetric_ConcurrencyControlAcquiredNonCompeting` ([Int64](/core/reference/data-types/int-uint)) — Total number of acquired CPU slots that are not considered competing (the first thread if fair_round_robin scheduler is in use)
+- `CurrentMetric_ConcurrencyControlSoftLimit` ([Int64](/core/reference/data-types/int-uint)) — Value of soft limit on number of CPU slots
+- `CurrentMetric_ConcurrencyControlPreempted` ([Int64](/core/reference/data-types/int-uint)) — Total number of preempted threads waiting for CPU slot
+- `CurrentMetric_ConcurrentQueryScheduled` ([Int64](/core/reference/data-types/int-uint)) — Total number of query slot requests are being scheduled currently
+- `CurrentMetric_ConcurrentQueryAcquired` ([Int64](/core/reference/data-types/int-uint)) — Total number of acquired query slots
+- `CurrentMetric_DiskS3NoSuchKeyErrors` ([Int64](/core/reference/data-types/int-uint)) — The number of `NoSuchKey` errors that occur when reading data from S3 cloud storage through ClickHouse disks.
+- `CurrentMetric_SharedCatalogStateApplicationThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for state application in Shared Catalog.
+- `CurrentMetric_SharedCatalogStateApplicationThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for state application in Shared Catalog.
+- `CurrentMetric_SharedCatalogStateApplicationThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for state application in Shared Catalog.
+- `CurrentMetric_SharedCatalogDropLocalThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for drop of local tables in Shared Catalog.
+- `CurrentMetric_SharedCatalogDropLocalThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for drop of local tables in Shared Catalog.
+- `CurrentMetric_SharedCatalogDropLocalThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for drop of local tables in Shared Catalog.
+- `CurrentMetric_SharedCatalogDropZooKeeperThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for drop of object in ZooKeeper in Shared Catalog.
+- `CurrentMetric_SharedCatalogDropZooKeeperThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for drop of object in ZooKeeper in Shared Catalog.
+- `CurrentMetric_SharedCatalogDropZooKeeperThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for drop of object in ZooKeeper in Shared Catalog.
+- `CurrentMetric_CoordinatedMergesCoordinatorRunningMerges` ([Int64](/core/reference/data-types/int-uint)) — Number of running merges visible for merge coordinator.
+- `CurrentMetric_CoordinatedMergesCoordinatorAssignedMerges` ([Int64](/core/reference/data-types/int-uint)) — Number of assigned merges in merge coordinator state.
+- `CurrentMetric_CoordinatedMergesWorkerAssignedMerges` ([Int64](/core/reference/data-types/int-uint)) — Number of assigned merges in merge worker state.
+- `CurrentMetric_SharedDatabaseCatalogTablesInLocalDropDetachQueue` ([Int64](/core/reference/data-types/int-uint)) — Number of tables in the queue for local drop or detach in Shared Catalog.
+- `CurrentMetric_SharedCatalogDropDetachLocalTablesErrors` ([Int64](/core/reference/data-types/int-uint)) — Number of errors that occurred when attempting to drop or detach local tables in Shared Catalog.
+- `CurrentMetric_SharedCatalogNumberOfObjectsInState` ([Int64](/core/reference/data-types/int-uint)) — Number of objects in the current state of Shared Catalog.
+- `CurrentMetric_MetadataFromKeeperCacheObjects` ([Int64](/core/reference/data-types/int-uint)) — Number of objects in disk metadata cache.
+- `CurrentMetric_LicenseRemainingSeconds` ([Int64](/core/reference/data-types/int-uint)) — Remaining seconds of the license validity period.
+- `CurrentMetric_StartupScriptsExecutionState` ([Int64](/core/reference/data-types/int-uint)) — State of startup scripts execution: 0 = not finished, 1 = success, 2 = failure.
+- `CurrentMetric_IsServerShuttingDown` ([Int64](/core/reference/data-types/int-uint)) — Indicates if the server is shutting down: 0 = no, 1 = yes
+- `CurrentMetric_StatelessWorkerThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the stateless worker thread pool.
+- `CurrentMetric_StatelessWorkerThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the stateless worker thread pool running a task.
+- `CurrentMetric_StatelessWorkerThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the stateless worker thread pool.
+- `CurrentMetric_ReadonlyDisks` ([Int64](/core/reference/data-types/int-uint)) — Number of disks that were marked as readonly during disk check.
+- `CurrentMetric_BrokenDisks` ([Int64](/core/reference/data-types/int-uint)) — Number of disks disks that were marked as broken during disk check.
+- `CurrentMetric_TaskTrackerThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads used by the distributed query remote task tracker.
+- `CurrentMetric_TaskTrackerThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the distributed query remote task tracker thread pool running a task.
+- `CurrentMetric_TaskTrackerThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the distributed query remote task tracker thread pool.
+- `CurrentMetric_DropDistributedCacheThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads in the threadpool for drop distributed cache query.
+- `CurrentMetric_DropDistributedCacheThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads in the threadpool for drop distributed cache query.
+- `CurrentMetric_DropDistributedCacheThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of queued or active jobs in the threadpool for drop distributed cache.
+- `CurrentMetric_S3CachedCredentialsProviders` ([Int64](/core/reference/data-types/int-uint)) — Total number of cached credentials providers
+- `CurrentMetric_MergeTreeSnapshotCommitThreads` ([Int64](/core/reference/data-types/int-uint)) — Number of threads used to commit snapshot
+- `CurrentMetric_MergeTreeSnapshotCommitThreadsActive` ([Int64](/core/reference/data-types/int-uint)) — Number of active threads used to commit snapshot
+- `CurrentMetric_MergeTreeSnapshotCommitThreadsScheduled` ([Int64](/core/reference/data-types/int-uint)) — Number of scheduled threads used to commit snapshot
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.metric_log LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+event_date: 2020-09-05
+event_time: 2020-09-05 16:22:33
+event_time_microseconds: 2020-09-05 16:22:33.196807
+milliseconds: 196
+ProfileEvent_Query: 0
+ProfileEvent_SelectQuery: 0
+ProfileEvent_InsertQuery: 0
+ProfileEvent_FailedQuery: 0
+ProfileEvent_FailedSelectQuery: 0
+...
+...
+CurrentMetric_Revision: 54439
+CurrentMetric_VersionInteger: 20009001
+CurrentMetric_RWLockWaitingReaders: 0
+CurrentMetric_RWLockWaitingWriters: 0
+CurrentMetric_RWLockActiveReaders: 0
+CurrentMetric_RWLockActiveWriters: 0
+CurrentMetric_GlobalThread: 74
+CurrentMetric_GlobalThreadActive: 26
+CurrentMetric_LocalThread: 0
+CurrentMetric_LocalThreadActive: 0
+CurrentMetric_DistributedFilesToInsert: 0
+```
+
+**Schema**
+This table can be configured with different schema types using the XML tag ``. The default schema type is `wide`, where each metric or profile event is stored as a separate column. This schema is the most performant and efficient for single-column reads.
+
+The `transposed` schema stores data in a format similar to `system.asynchronous_metric_log`, where metrics and events are stored as rows. This schema is useful for low-resource setups because it reduces resource consumption during merges.
+
+**Histograms**
+
+Each row also carries a snapshot of every registered histogram metric in a `histograms` Nested column with fields `metric`, `labels`, `histogram`, `count`, and `sum`. Bucket counts are cumulative since server startup. By default, histograms whose total `count` is zero are not emitted, and zero-counter buckets within an emitted histogram are omitted from the `histogram` map; set `system_metric_log_show_zero_values_in_histograms = 1` (in the default user profile) to keep all histograms and all buckets.
+
+Example query:
+
+```sql
+SELECT h.metric, h.labels, h.histogram, h.count, h.sum
+FROM system.metric_log
+ARRAY JOIN histograms AS h
+WHERE h.metric = 'keeper_response_time_ms' AND h.labels['operation_type'] = 'readonly'
+ORDER BY event_time DESC
+LIMIT 1;
+```
+
+## See Also {#see-also}
+
+- [metric_log setting](/core/reference/settings/server-settings/settings#metric_log) — Enabling and disabling the setting.
+- [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) — Contains periodically calculated metrics.
+- [system.events](/core/reference/system-tables/events) — Contains a number of events that occurred.
+- [system.metrics](/core/reference/system-tables/metrics) — Contains instantly calculated metrics.
+- [Monitoring](/core/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
diff --git a/reference/system-tables/metrics.mdx b/core/reference/system-tables/metrics.mdx
similarity index 99%
rename from reference/system-tables/metrics.mdx
rename to core/reference/system-tables/metrics.mdx
index a9187c61..9eecf09f 100644
--- a/reference/system-tables/metrics.mdx
+++ b/core/reference/system-tables/metrics.mdx
@@ -18,9 +18,9 @@ Contains metrics which can be calculated instantly, or have a current value. For
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `metric` ([String](/reference/data-types)) — Metric name.
-- `value` ([Int64](/reference/data-types)) — Metric value.
-- `description` ([String](/reference/data-types)) — Metric description.
+- `metric` ([String](/core/reference/data-types)) — Metric name.
+- `value` ([Int64](/core/reference/data-types)) — Metric value.
+- `description` ([String](/core/reference/data-types)) — Metric description.
{/*AUTOGENERATED_END*/}
You can find all supported metrics in source file [src/Common/CurrentMetrics.cpp](https://github.com/ClickHouse/ClickHouse/blob/master/src/Common/CurrentMetrics.cpp).
diff --git a/reference/system-tables/models.mdx b/core/reference/system-tables/models.mdx
similarity index 54%
rename from reference/system-tables/models.mdx
rename to core/reference/system-tables/models.mdx
index ffa243da..7dace07c 100644
--- a/reference/system-tables/models.mdx
+++ b/core/reference/system-tables/models.mdx
@@ -13,8 +13,8 @@ Contains a list of CatBoost models loaded into a LibraryBridge's memory along wi
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `model_path` ([String](/reference/data-types)) — Path to trained model.
-- `type` ([String](/reference/data-types)) — Model type. Now catboost only.
-- `loading_start_time` ([DateTime](/reference/data-types)) — The time when the loading of the model started.
-- `loading_duration` ([Float32](/reference/data-types)) — How much time did it take to load the model.
+- `model_path` ([String](/core/reference/data-types)) — Path to trained model.
+- `type` ([String](/core/reference/data-types)) — Model type. Now catboost only.
+- `loading_start_time` ([DateTime](/core/reference/data-types)) — The time when the loading of the model started.
+- `loading_duration` ([Float32](/core/reference/data-types)) — How much time did it take to load the model.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/moves.mdx b/core/reference/system-tables/moves.mdx
new file mode 100644
index 00000000..3e668c06
--- /dev/null
+++ b/core/reference/system-tables/moves.mdx
@@ -0,0 +1,43 @@
+---
+description: 'System table containing information about in-progress data part moves
+ of MergeTree tables. Each data part movement is represented by a single row.'
+keywords: ['system table', 'moves']
+slug: /operations/system-tables/moves
+title: 'system.moves'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+The table contains information about in-progress [data part moves](/core/reference/statements/alter/partition#move-partitionpart) of [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables. Each data part movement is represented by a single row.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table containing moving data part.
+- `elapsed` ([Float64](/core/reference/data-types)) — Time elapsed (in seconds) since data part movement started.
+- `target_disk_name` ([String](/core/reference/data-types)) — Name of disk to which the data part is moving.
+- `target_disk_path` ([String](/core/reference/data-types)) — Path to the mount point of the disk in the file system.
+- `part_name` ([String](/core/reference/data-types)) — Name of the data part being moved.
+- `part_size` ([UInt64](/core/reference/data-types)) — Data part size.
+- `thread_id` ([UInt64](/core/reference/data-types)) — Identifier of a thread performing the movement.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.moves
+```
+
+```response
+┌─database─┬─table─┬─────elapsed─┬─target_disk_name─┬─target_disk_path─┬─part_name─┬─part_size─┬─thread_id─┐
+│ default │ test2 │ 1.668056039 │ s3 │ ./disks/s3/ │ all_3_3_0 │ 136 │ 296146 │
+└──────────┴───────┴─────────────┴──────────────────┴──────────────────┴───────────┴───────────┴───────────┘
+```
+
+## See Also {#see-also}
+
+- [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table engine
+- [Using Multiple Block Devices for Data Storage](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes)
+- [ALTER TABLE ... MOVE PART](/core/reference/statements/alter/partition#move-partitionpart) command
diff --git a/core/reference/system-tables/mutations.mdx b/core/reference/system-tables/mutations.mdx
new file mode 100644
index 00000000..a702c30c
--- /dev/null
+++ b/core/reference/system-tables/mutations.mdx
@@ -0,0 +1,87 @@
+---
+description: 'System table containing information about mutations of MergeTree tables
+ and their progress. Each mutation command is represented by a single row.'
+keywords: ['system table', 'mutations']
+slug: /operations/system-tables/mutations
+title: 'system.mutations'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+The table contains information about [mutations](/core/reference/statements/alter#mutations) of [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables and their progress. Each mutation command is represented by a single row.
+
+## Columns: {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — The name of the database to which the mutation was applied.
+- `table` ([String](/core/reference/data-types)) — The name of the table to which the mutation was applied.
+- `mutation_id` ([String](/core/reference/data-types)) — The ID of the mutation. For replicated tables these IDs correspond to znode names in the `/mutations/` directory in ClickHouse Keeper. For non-replicated tables the IDs correspond to file names in the data directory of the table.
+- `command` ([String](/core/reference/data-types)) — The mutation command string (the part of the query after ALTER TABLE [db.]table).
+- `create_time` ([DateTime](/core/reference/data-types)) — Date and time when the mutation command was submitted for execution.
+- `block_numbers.partition_id` ([Array(String)](/core/reference/data-types)) — For mutations of replicated tables, the array contains the partitions' IDs (one record for each partition). For mutations of non-replicated tables the array is empty.
+- `block_numbers.number` ([Array(Int64)](/core/reference/data-types)) — For mutations of replicated tables, the array contains one record for each partition, with the block number that was acquired by the mutation. Only parts that contain blocks with numbers less than this number will be mutated in the partition.In non-replicated tables, block numbers in all partitions form a single sequence. This means that for mutations of non-replicated tables, the column will contain one record with a single block number acquired by the mutation.
+- `parts_in_progress_names` ([Array(String)](/core/reference/data-types)) — An array of names of data parts that are currently being mutated.
+- `parts_to_do_names` ([Array(String)](/core/reference/data-types)) — An array of names of data parts that need to be mutated for the mutation to complete.
+- `parts_to_do` ([Int64](/core/reference/data-types)) — The number of data parts that need to be mutated for the mutation to complete. Note: even if `parts_to_do` = 0, a mutation of a replicated table may not be completed yet due to a long-running INSERT that is creating a new data part that will need to be mutated.
+- `parts_postpone_reasons` ([Map(String, String)](/core/reference/data-types)) — A map of part names to reasons why they are postponed.
+- `is_done` ([UInt8](/core/reference/data-types)) — The flag whether the mutation is done or not. Possible values: 1 if the mutation is completed, 0 if the mutation is still in process.
+- `is_killed` ([UInt8](/core/reference/data-types)) — Indicates whether a mutation has been killed. Only available in ClickHouse Cloud.Note: is_killed=1 does not necessarily mean the mutation is completely finalized.It is possible for a mutation to remain in a state where is_killed=1 and is_done=0 for an extended period.This can occur if another long-running mutation is blocking the killed mutation. This is a normal situation.
+- `latest_failed_part` ([String](/core/reference/data-types)) — The name of the most recent part that could not be mutated.
+- `latest_fail_time` ([DateTime](/core/reference/data-types)) — The date and time of the most recent part mutation failure.
+- `latest_fail_reason` ([String](/core/reference/data-types)) — The exception message that caused the most recent part mutation failure.
+- `latest_fail_error_code_name` ([String](/core/reference/data-types)) — The error code of the exception that caused the most recent part mutation failure.
+{/*AUTOGENERATED_END*/}
+
+
+- If a part name is not in `parts_postpone_reasons` and has not yet been mutated, it means the part is yet not scheduled for mutation.
+- The part name `all_parts` represents all parts that have not yet been mutated.
+
+
+- `is_killed` ([UInt8](/core/reference/data-types/int-uint)) — Indicates whether a mutation has been killed. **Only available in ClickHouse Cloud.**
+
+
+`is_killed=1` does not necessarily mean the mutation is completely finalized. It is possible for a mutation to remain in a state where `is_killed=1` and `is_done=0` for an extended period. This can happen if another long-running mutation is blocking the killed mutation. This is a normal situation.
+
+
+- `is_done` ([UInt8](/core/reference/data-types/int-uint)) — The flag whether the mutation is done or not. Possible values:
+ - `1` if the mutation is completed,
+ - `0` if the mutation is still in process.
+
+
+Even if `parts_to_do = 0` it is possible that a mutation of a replicated table is not completed yet because of a long-running `INSERT` query, that will create a new data part needed to be mutated.
+
+
+If there were problems with mutating some data parts, the following columns contain additional information:
+
+- `latest_failed_part` ([String](/core/reference/data-types/string)) — The name of the most recent part that could not be mutated.
+- `latest_fail_time` ([DateTime](/core/reference/data-types/datetime)) — The date and time of the most recent part mutation failure.
+- `latest_fail_reason` ([String](/core/reference/data-types/string)) — The exception message that caused the most recent part mutation failure.
+
+## Monitoring Mutations {#monitoring-mutations}
+
+To track the progress on the `system.mutations` table, use the following query:
+
+```sql
+SELECT * FROM clusterAllReplicas('cluster_name', 'system', 'mutations')
+WHERE is_done = 0 AND table = 'tmp';
+
+-- or
+
+SELECT * FROM clusterAllReplicas('cluster_name', 'system.mutations')
+WHERE is_done = 0 AND table = 'tmp';
+```
+
+Note: this requires read permissions on the `system.*` tables.
+
+
+**Cloud usage**
+
+In ClickHouse Cloud the `system.mutations` table on each node has all the mutations in the cluster, and there is no need for `clusterAllReplicas`.
+
+
+## See Also {#see-also}
+
+- [Mutations](/core/reference/statements/alter#mutations)
+- [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table engine
+- [ReplicatedMergeTree](/core/reference/engines/table-engines/mergetree-family/replication) family
diff --git a/reference/system-tables/named_collections.mdx b/core/reference/system-tables/named_collections.mdx
similarity index 59%
rename from reference/system-tables/named_collections.mdx
rename to core/reference/system-tables/named_collections.mdx
index b19919e9..afabcaa0 100644
--- a/reference/system-tables/named_collections.mdx
+++ b/core/reference/system-tables/named_collections.mdx
@@ -13,8 +13,8 @@ Contains a list of all named collections which were created via SQL query or par
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Name of the collection.
-- `collection` ([Map(String, String)](/reference/data-types)) — Collection internals.
-- `source` ([String](/reference/data-types)) — Named collection source.
-- `create_query` ([String](/reference/data-types)) — Named collection create query.
+- `name` ([String](/core/reference/data-types)) — Name of the collection.
+- `collection` ([Map(String, String)](/core/reference/data-types)) — Collection internals.
+- `source` ([String](/core/reference/data-types)) — Named collection source.
+- `create_query` ([String](/core/reference/data-types)) — Named collection create query.
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/numbers.mdx b/core/reference/system-tables/numbers.mdx
similarity index 100%
rename from reference/system-tables/numbers.mdx
rename to core/reference/system-tables/numbers.mdx
diff --git a/reference/system-tables/numbers_mt.mdx b/core/reference/system-tables/numbers_mt.mdx
similarity index 83%
rename from reference/system-tables/numbers_mt.mdx
rename to core/reference/system-tables/numbers_mt.mdx
index 5c00388f..3f12227c 100644
--- a/reference/system-tables/numbers_mt.mdx
+++ b/core/reference/system-tables/numbers_mt.mdx
@@ -9,7 +9,7 @@ doc_type: 'reference'
## Description {#description}
-The same as [`system.numbers`](/reference/system-tables/numbers) but reads are parallelized. The numbers can be returned in any order.
+The same as [`system.numbers`](/core/reference/system-tables/numbers) but reads are parallelized. The numbers can be returned in any order.
Used for tests.
diff --git a/reference/system-tables/one.mdx b/core/reference/system-tables/one.mdx
similarity index 100%
rename from reference/system-tables/one.mdx
rename to core/reference/system-tables/one.mdx
diff --git a/core/reference/system-tables/opentelemetry_span_log.mdx b/core/reference/system-tables/opentelemetry_span_log.mdx
new file mode 100644
index 00000000..68746d47
--- /dev/null
+++ b/core/reference/system-tables/opentelemetry_span_log.mdx
@@ -0,0 +1,62 @@
+---
+description: 'System table containing information about trace spans for executed queries.'
+keywords: ['system table', 'opentelemetry_span_log']
+slug: /operations/system-tables/opentelemetry_span_log
+title: 'system.opentelemetry_span_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about [trace spans](https://opentracing.io/docs/overview/spans/) for executed queries.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The hostname where this span was captured.
+- `trace_id` ([UUID](/core/reference/data-types/uuid)) — ID of the trace for executed query.
+- `span_id` ([UInt64](/core/reference/data-types/int-uint)) — ID of the trace span.
+- `parent_span_id` ([UInt64](/core/reference/data-types/int-uint)) — ID of the parent trace span.
+- `operation_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The name of the operation.
+- `kind` ([Enum8('INTERNAL' = 0, 'SERVER' = 1, 'CLIENT' = 2, 'PRODUCER' = 3, 'CONSUMER' = 4)](/core/reference/data-types/enum)) — The SpanKind of the span. INTERNAL — Indicates that the span represents an internal operation within an application. SERVER — Indicates that the span covers server-side handling of a synchronous RPC or other remote request. CLIENT — Indicates that the span describes a request to some remote service. PRODUCER — Indicates that the span describes the initiators of an asynchronous request. This parent span will often end before the corresponding child CONSUMER span, possibly even before the child span starts. CONSUMER - Indicates that the span describes a child of an asynchronous PRODUCER request.
+- `start_time_us` ([UInt64](/core/reference/data-types/int-uint)) — The start time of the trace span (in microseconds).
+- `finish_time_us` ([UInt64](/core/reference/data-types/int-uint)) — The finish time of the trace span (in microseconds).
+- `finish_date` ([Date](/core/reference/data-types/date)) — The finish date of the trace span.
+- `status_code` ([Enum8('UNSET' = 0, 'OK' = 1, 'ERROR' = 2)](/core/reference/data-types/enum)) — The status code of the span.
+- `status_message` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Error message.
+- `attribute` ([Map(LowCardinality(String), String)](/core/reference/data-types/map)) — Attribute depending on the trace span. They are filled in according to the recommendations in the OpenTelemetry standard.
+
+**Aliases:**
+
+- `attribute.names` — Alias for `mapKeys(attribute)`.
+- `attribute.values` — Alias for `mapValues(attribute)`.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.opentelemetry_span_log LIMIT 1 FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+trace_id: cdab0847-0d62-61d5-4d38-dd65b19a1914
+span_id: 701487461015578150
+parent_span_id: 2991972114672045096
+operation_name: DB::Block DB::InterpreterSelectQuery::getSampleBlockImpl()
+kind: INTERNAL
+start_time_us: 1612374594529090
+finish_time_us: 1612374594529108
+finish_date: 2021-02-03
+attribute.names: []
+attribute.values: []
+```
+
+## See Also {#see-also}
+
+- [OpenTelemetry](/core/guides/oss/deployment-and-scaling/monitoring/opentelemetry)
diff --git a/reference/system-tables/overview.mdx b/core/reference/system-tables/overview.mdx
similarity index 84%
rename from reference/system-tables/overview.mdx
rename to core/reference/system-tables/overview.mdx
index a35cdc7a..a9870991 100644
--- a/reference/system-tables/overview.mdx
+++ b/core/reference/system-tables/overview.mdx
@@ -23,14 +23,14 @@ System tables:
Most of the system tables store their data in RAM. A ClickHouse server creates such system tables at the start.
-Unlike other system tables, the system log tables [metric_log](/reference/system-tables/metric_log), [query_log](/reference/system-tables/query_log), [query_thread_log](/reference/system-tables/query_thread_log), [trace_log](/reference/system-tables/trace_log), [part_log](/reference/system-tables/part_log), [crash_log](/reference/system-tables/crash_log), [text_log](/reference/system-tables/text_log) and [backup_log](/reference/system-tables/backup_log) are served by [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) table engine and store their data in a filesystem by default. If you remove a table from a filesystem, the ClickHouse server creates the empty one again at the time of the next data writing. If system table schema changed in a new release, then ClickHouse renames the current table and creates a new one.
+Unlike other system tables, the system log tables [metric_log](/core/reference/system-tables/metric_log), [query_log](/core/reference/system-tables/query_log), [query_thread_log](/core/reference/system-tables/query_thread_log), [trace_log](/core/reference/system-tables/trace_log), [part_log](/core/reference/system-tables/part_log), [crash_log](/core/reference/system-tables/crash_log), [text_log](/core/reference/system-tables/text_log) and [backup_log](/core/reference/system-tables/backup_log) are served by [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) table engine and store their data in a filesystem by default. If you remove a table from a filesystem, the ClickHouse server creates the empty one again at the time of the next data writing. If system table schema changed in a new release, then ClickHouse renames the current table and creates a new one.
System log tables can be customized by creating a config file with the same name as the table under `/etc/clickhouse-server/config.d/`, or setting corresponding elements in `/etc/clickhouse-server/config.xml`. Elements can be customized are:
- `database`: database the system log table belongs to. This option is deprecated now. All system log tables are under database `system`.
- `table`: table to insert data.
-- `partition_by`: specify [PARTITION BY](/reference/engines/table-engines/mergetree-family/custom-partitioning-key) expression.
-- `ttl`: specify table [TTL](/reference/statements/alter/ttl) expression.
+- `partition_by`: specify [PARTITION BY](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key) expression.
+- `ttl`: specify table [TTL](/core/reference/statements/alter/ttl) expression.
- `flush_interval_milliseconds`: interval of flushing data to disk.
- `engine`: provide full engine expression (starting with `ENGINE =` ) with parameters. This option conflicts with `partition_by` and `ttl`. If set together, the server will raise an exception and exit.
@@ -55,7 +55,7 @@ An example:
```
-By default, table growth is unlimited. To control a size of a table, you can use [TTL](/reference/statements/alter/ttl) settings for removing outdated log records. Also you can use the partitioning feature of `MergeTree`-engine tables.
+By default, table growth is unlimited. To control a size of a table, you can use [TTL](/core/reference/statements/alter/ttl) settings for removing outdated log records. Also you can use the partitioning feature of `MergeTree`-engine tables.
## Sources of System Metrics {#system-tables-sources-of-system-metrics}
@@ -85,7 +85,7 @@ You can enable it using `sudo sysctl kernel.task_delayacct=1` or by creating a `
## System tables in ClickHouse Cloud {#system-tables-in-clickhouse-cloud}
-In ClickHouse Cloud, system tables provide critical insights into the state and performance of the service, just as they do in self-managed deployments. Some system tables operate at the cluster-wide level, especially those that derive their data from Keeper nodes, which manage distributed metadata. These tables reflect the collective state of the cluster and should be consistent when queried on individual nodes. For example, the [`parts`](/reference/system-tables/parts) should be consistent irrespective of the node it is queried from:
+In ClickHouse Cloud, system tables provide critical insights into the state and performance of the service, just as they do in self-managed deployments. Some system tables operate at the cluster-wide level, especially those that derive their data from Keeper nodes, which manage distributed metadata. These tables reflect the collective state of the cluster and should be consistent when queried on individual nodes. For example, the [`parts`](/core/reference/system-tables/parts) should be consistent irrespective of the node it is queried from:
```sql
SELECT hostname(), count()
@@ -145,7 +145,7 @@ SHOW TABLES FROM system LIKE 'query_log%'
### Querying multiple versions {#querying-multiple-versions}
-We can query across these tables using the [`merge`](/reference/functions/table-functions/merge) function. For example, the query below identifies the latest query issued to the target node in each `query_log` table:
+We can query across these tables using the [`merge`](/core/reference/functions/table-functions/merge) function. For example, the query below identifies the latest query issued to the target node in each `query_log` table:
```sql
SELECT
@@ -183,7 +183,7 @@ Importantly, these tables are still **local to each node**.
### Querying across nodes {#querying-across-nodes}
-To comprehensively view the entire cluster, users can leverage the [`clusterAllReplicas`](/reference/functions/table-functions/cluster) function in combination with the `merge` function. The `clusterAllReplicas` function allows querying system tables across all replicas within the "default" cluster, consolidating node-specific data into a unified result. When combined with the `merge` function this can be used to target all system data for a specific table in a cluster.
+To comprehensively view the entire cluster, users can leverage the [`clusterAllReplicas`](/core/reference/functions/table-functions/cluster) function in combination with the `merge` function. The `clusterAllReplicas` function allows querying system tables across all replicas within the "default" cluster, consolidating node-specific data into a unified result. When combined with the `merge` function this can be used to target all system data for a specific table in a cluster.
This approach is particularly valuable for monitoring and debugging cluster-wide operations, ensuring users can effectively analyze the health and performance of their ClickHouse Cloud deployment.
diff --git a/core/reference/system-tables/part_log.mdx b/core/reference/system-tables/part_log.mdx
new file mode 100644
index 00000000..ef515fa5
--- /dev/null
+++ b/core/reference/system-tables/part_log.mdx
@@ -0,0 +1,105 @@
+---
+description: 'System table containing information about events that occurred with
+ data parts in the MergeTree family tables, such as adding or merging of data.'
+keywords: ['system table', 'part_log']
+slug: /operations/system-tables/part_log
+title: 'system.part_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+The `system.part_log` table is created only if the [part_log](/core/reference/settings/server-settings/settings#part_log) server setting is specified.
+
+This table contains information about events that occurred with [data parts](/core/reference/engines/table-engines/mergetree-family/custom-partitioning-key) in the [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) family tables, such as adding or merging data.
+
+The `system.part_log` table contains the following columns:
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `query_id` ([String](/core/reference/data-types/string)) — Identifier of the INSERT query that created this data part.
+- `event_type` ([Enum8('NewPart' = 1, 'MergeParts' = 2, 'DownloadPart' = 3, 'RemovePart' = 4, 'MutatePart' = 5, 'MovePart' = 6, 'MergePartsStart' = 7, 'MutatePartStart' = 8)](/core/reference/data-types/enum)) — Type of the event that occurred with the data part. Can have one of the following values: NewPart — Inserting of a new data part, MergePartsStart — Merging of data parts has started, MergeParts — Merging of data parts has finished, DownloadPart — Downloading a data part, RemovePart — Removing or detaching a data part using [DETACH PARTITION](/core/reference/statements/alter/partition#detach-partitionpart).MutatePartStart — Mutating of a data part has started, MutatePart — Mutating of a data part has finished, MovePart — Moving the data part from the one disk to another one.
+- `merge_reason` ([Enum8('NotAMerge' = 1, 'RegularMerge' = 2, 'TTLDeleteMerge' = 3, 'TTLRecompressMerge' = 4, 'TTLDropMerge' = 5)](/core/reference/data-types/enum)) — The reason for the event with type MERGE_PARTS. Can have one of the following values: NotAMerge — The current event has the type other than MERGE_PARTS, RegularMerge — Some regular merge, TTLDeleteMerge, TTLDropMerge — Cleaning up expired data. TTLRecompressMerge — Recompressing data part with the.
+- `merge_algorithm` ([Enum8('Undecided' = 0, 'Vertical' = 1, 'Horizontal' = 2)](/core/reference/data-types/enum)) — Merge algorithm for the event with type MERGE_PARTS. Can have one of the following values: Undecided, Horizontal, Vertical
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Event time with microseconds precision.
+- `duration_ms` ([UInt64](/core/reference/data-types/int-uint)) — Duration of this operation.
+- `database` ([String](/core/reference/data-types/string)) — Name of the database the data part is in.
+- `table` ([String](/core/reference/data-types/string)) — Name of the table the data part is in.
+- `table_uuid` ([UUID](/core/reference/data-types/uuid)) — UUID of the table the data part belongs to.
+- `part_name` ([String](/core/reference/data-types/string)) — Name of the data part.
+- `partition_id` ([String](/core/reference/data-types/string)) — ID of the partition that the data part was inserted to. The column takes the `all` value if the partitioning is by `tuple()`.
+- `partition` ([String](/core/reference/data-types/string)) — The partition name.
+- `part_type` ([String](/core/reference/data-types/string)) — The type of the part. Possible values: Wide and Compact.
+- `part_storage_type` ([String](/core/reference/data-types/string)) — The type of DataPartStorage. Possible values: Packed - all files are stored in a single blob, Full - a blob per file.
+- `disk_name` ([String](/core/reference/data-types/string)) — The disk name data part lies on.
+- `path_on_disk` ([String](/core/reference/data-types/string)) — Absolute path to the folder with data part files.
+- `rows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows in the data part.
+- `size_in_bytes` ([UInt64](/core/reference/data-types/int-uint)) — Size of the data part on disk in bytes.
+- `merged_from` ([Array(String)](/core/reference/data-types/array)) — An array of the source parts names which the current part was made up from.
+- `bytes_uncompressed` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed size of the resulting part in bytes.
+- `read_rows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows was read during the merge.
+- `read_bytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of bytes was read during the merge.
+- `peak_memory_usage` ([UInt64](/core/reference/data-types/int-uint)) — The maximum amount of used during merge RAM
+- `deduplication_block_ids` ([Array(String)](/core/reference/data-types/array)) — An array of block IDs used for deduplication when inserting this part.
+- `error` ([UInt16](/core/reference/data-types/int-uint)) — The error code of the occurred exception.
+- `exception` ([String](/core/reference/data-types/string)) — Text message of the occurred error.
+- `mutation_ids` ([Array(String)](/core/reference/data-types/array)) — An array of mutation IDs applied to the source part (merged_from) for the event with type MUTATE_PART_START and MUTATE_PART.
+- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types/map)) — All the profile events captured during this operation.
+- `projections_duration_ms` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types/map)) — Per-projection merge/rebuild duration in milliseconds.
+
+**Aliases:**
+
+- `ProfileEvents.Names` — Alias for `mapKeys(ProfileEvents)`.
+- `ProfileEvents.Values` — Alias for `mapValues(ProfileEvents)`.
+- `name` — Alias for `part_name`.
+{/*AUTOGENERATED_END*/}
+
+The `system.part_log` table is created after the first inserting data to the `MergeTree` table.
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.part_log LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+query_id:
+event_type: MergeParts
+merge_reason: RegularMerge
+merge_algorithm: Vertical
+event_date: 2025-07-19
+event_time: 2025-07-19 23:54:19
+event_time_microseconds: 2025-07-19 23:54:19.710761
+duration_ms: 2158
+database: default
+table: github_events
+table_uuid: 1ad33424-f5f5-402b-ac03-ec82282634ab
+part_name: all_1_7_1
+partition_id: all
+partition: tuple()
+part_type: Wide
+disk_name: default
+path_on_disk: ./data/store/1ad/1ad33424-f5f5-402b-ac03-ec82282634ab/all_1_7_1/
+rows: 3285726 -- 3.29 million
+size_in_bytes: 438968542 -- 438.97 million
+merged_from: ['all_1_1_0','all_2_2_0','all_3_3_0','all_4_4_0','all_5_5_0','all_6_6_0','all_7_7_0']
+bytes_uncompressed: 1373137767 -- 1.37 billion
+read_rows: 3285726 -- 3.29 million
+read_bytes: 1429206946 -- 1.43 billion
+peak_memory_usage: 303611887 -- 303.61 million
+error: 0
+exception:
+mutation_ids:
+ProfileEvents: {'FileOpen':703,'ReadBufferFromFileDescriptorRead':3824,'ReadBufferFromFileDescriptorReadBytes':439601681,'WriteBufferFromFileDescriptorWrite':592,'WriteBufferFromFileDescriptorWriteBytes':438988500,'ReadCompressedBytes':439601681,'CompressedReadBufferBlocks':6314,'CompressedReadBufferBytes':1539835748,'OpenedFileCacheHits':50,'OpenedFileCacheMisses':484,'OpenedFileCacheMicroseconds':222,'IOBufferAllocs':1914,'IOBufferAllocBytes':319810140,'ArenaAllocChunks':8,'ArenaAllocBytes':131072,'MarkCacheMisses':7,'CreatedReadBufferOrdinary':534,'DiskReadElapsedMicroseconds':139058,'DiskWriteElapsedMicroseconds':51639,'AnalyzePatchRangesMicroseconds':28,'ExternalProcessingFilesTotal':1,'RowsReadByMainReader':170857759,'WaitMarksLoadMicroseconds':988,'LoadedMarksFiles':7,'LoadedMarksCount':14,'LoadedMarksMemoryBytes':728,'Merge':2,'MergeSourceParts':14,'MergedRows':3285733,'MergedColumns':4,'GatheredColumns':51,'MergedUncompressedBytes':1429207058,'MergeTotalMilliseconds':2158,'MergeExecuteMilliseconds':2155,'MergeHorizontalStageTotalMilliseconds':145,'MergeHorizontalStageExecuteMilliseconds':145,'MergeVerticalStageTotalMilliseconds':2008,'MergeVerticalStageExecuteMilliseconds':2006,'MergeProjectionStageTotalMilliseconds':5,'MergeProjectionStageExecuteMilliseconds':4,'MergingSortedMilliseconds':7,'GatheringColumnMilliseconds':56,'ContextLock':2091,'PartsLockHoldMicroseconds':77,'PartsLockWaitMicroseconds':1,'RealTimeMicroseconds':2157475,'CannotWriteToWriteBufferDiscard':36,'LogTrace':6,'LogDebug':59,'LoggerElapsedNanoseconds':514040,'ConcurrencyControlSlotsGranted':53,'ConcurrencyControlSlotsAcquired':53}
+```
diff --git a/core/reference/system-tables/part_moves_between_shards.mdx b/core/reference/system-tables/part_moves_between_shards.mdx
new file mode 100644
index 00000000..f231a029
--- /dev/null
+++ b/core/reference/system-tables/part_moves_between_shards.mdx
@@ -0,0 +1,30 @@
+---
+description: 'Contains information about parts which are currently in a process of moving between shards and their progress.'
+keywords: ['system table', 'part_moves_between_shards']
+slug: /operations/system-tables/part_moves_between_shards
+title: 'system.part_moves_between_shards'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about parts which are currently in a process of moving between shards and their progress.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — The name of the database where move is performed.
+- `table` ([String](/core/reference/data-types)) — The name of the table where move is performed.
+- `task_name` ([String](/core/reference/data-types)) — The name of the moving task.
+- `task_uuid` ([UUID](/core/reference/data-types)) — The identifier of the moving task.
+- `create_time` ([DateTime](/core/reference/data-types)) — The time when the task was created.
+- `part_name` ([String](/core/reference/data-types)) — The name of the part which is in a process of moving.
+- `part_uuid` ([UUID](/core/reference/data-types)) — The UUID of the part which is in a process of moving.
+- `to_shard` ([String](/core/reference/data-types)) — The name of the destination shard.
+- `dst_part_name` ([String](/core/reference/data-types)) — The result part name.
+- `update_time` ([DateTime](/core/reference/data-types)) — The last time update was performed.
+- `state` ([String](/core/reference/data-types)) — The current state of the move.
+- `rollback` ([UInt8](/core/reference/data-types)) — The flag which indicated whether the operation was rolled back.
+- `num_tries` ([UInt32](/core/reference/data-types)) — The number of tries to complete the operation.
+- `last_exception` ([String](/core/reference/data-types)) — The last exception name if any.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/parts.mdx b/core/reference/system-tables/parts.mdx
new file mode 100644
index 00000000..4304d724
--- /dev/null
+++ b/core/reference/system-tables/parts.mdx
@@ -0,0 +1,154 @@
+---
+description: 'System table containing information about parts of MergeTree'
+keywords: ['system table', 'parts']
+slug: /operations/system-tables/parts
+title: 'system.parts'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about parts of [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables.
+
+Each row describes one data part.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `partition` ([String](/core/reference/data-types)) — Partition identifier (string representation derived from the table partition key expression).
+- `name` ([String](/core/reference/data-types)) —
+Name of the data part. The part naming structure can be used to determine many aspects of the data, ingest, and merge patterns. The part naming format is the following:
+
+```text
+____
+```
+
+* Definitions:
+ - `partition_id` - identifies the partition key
+ - `minimum_block_number` - identifies the minimum block number in the part. ClickHouse always merges continuous blocks
+ - `maximum_block_number` - identifies the maximum block number in the part
+ - `level` - incremented by one with each additional merge on the part. A level of 0 indicates this is a new part that has not been merged. It is important to remember that all parts in ClickHouse are always immutable
+ - `data_version` - optional value, incremented when a part is mutated (again, mutated data is always only written to a new part, since parts are immutable)
+
+- `uuid` ([UUID](/core/reference/data-types)) — The UUID of data part.
+- `part_type` ([String](/core/reference/data-types)) — The data part storing format. Possible values: `Wide` — each column is stored in a separate file, `Compact` — all columns are stored in one file. Data storing format is controlled by the `min_bytes_for_wide_part` and `min_rows_for_wide_part` settings of the MergeTree table.
+- `active` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the data part is active. If a data part is active, it's used in a table. Otherwise, it's about to be deleted. Inactive data parts appear after merging and mutating operations.
+- `marks` ([UInt64](/core/reference/data-types)) — The number of marks. To get the approximate number of rows in a data part, multiply marks by the index granularity (usually 8192) (this hint does not work for adaptive granularity).
+- `rows` ([UInt64](/core/reference/data-types)) — The number of rows.
+- `files` ([UInt64](/core/reference/data-types)) — The number of files in the data part.
+- `bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the data part files in bytes.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `primary_key_size` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by primary key values in the primary.idx/cidx file on disk.
+- `marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks.
+- `secondary_indices_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data for secondary indices in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `secondary_indices_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data for secondary indices in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `secondary_indices_marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks for secondary indices.
+- `modification_time` ([DateTime](/core/reference/data-types)) — The time the directory with the data part was modified. This usually corresponds to the time of data part creation.
+- `remove_time` ([DateTime](/core/reference/data-types)) — The time when the data part became inactive.
+- `refcount` ([UInt32](/core/reference/data-types)) — The number of places where the data part is used. A value greater than 2 indicates that the data part is used in queries or merges.
+- `min_date` ([Date](/core/reference/data-types)) — The minimum value of the date key in the data part.
+- `max_date` ([Date](/core/reference/data-types)) — The maximum value of the date key in the data part.
+- `min_time` ([DateTime](/core/reference/data-types)) — The minimum value of the date and time key in the data part.
+- `max_time` ([DateTime](/core/reference/data-types)) — The maximum value of the date and time key in the data part.
+- `partition_id` ([String](/core/reference/data-types)) — ID of the partition.
+- `min_block_number` ([Int64](/core/reference/data-types)) — The minimum number of data parts that make up the current part after merging.
+- `max_block_number` ([Int64](/core/reference/data-types)) — The maximum number of data parts that make up the current part after merging.
+- `level` ([UInt32](/core/reference/data-types)) — Depth of the merge tree. Zero means that the current part was created by insert rather than by merging other parts.
+- `data_version` ([UInt64](/core/reference/data-types)) — Number that is used to determine which mutations should be applied to the data part (mutations with a version higher than data_version).
+- `primary_key_bytes_in_memory` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by primary key values. Will be 0 when `primary_key_lazy_load` is enabled and the key is not loaded. When non-zero the bytes live in the part itself and are accounted within `jemalloc.mergetree_arena.active_bytes`. They are NEVER counted in `PrimaryIndexCacheBytes` — those are mutually exclusive per part: an index lives either in the part (this metric) or in the shared `PrimaryIndexCache` (the other), depending on `primary_key_lazy_load` and `use_primary_key_cache`.
+- `primary_key_bytes_in_memory_allocated` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) reserved for primary key values. Will be 0 when `primary_key_lazy_load` is enabled and the key is not loaded. When non-zero, included in `jemalloc.mergetree_arena.active_bytes`. See the note on `primary_key_bytes_in_memory` for the relationship with `PrimaryIndexCacheBytes`.
+- `index_granularity_bytes_in_memory` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by index granularity values (will be 0 in case of primary_key_lazy_load=1 and use_primary_key_cache=1). When non-zero the bytes are part-owned and accounted within `jemalloc.mergetree_arena.active_bytes`.
+- `index_granularity_bytes_in_memory_allocated` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) reserved for index granularity values (will be 0 in case of primary_key_lazy_load=1 and use_primary_key_cache=1). When non-zero, included in `jemalloc.mergetree_arena.active_bytes`.
+- `is_frozen` ([UInt8](/core/reference/data-types)) — Flag that shows that a partition data backup exists. 1, the backup exists. 0, the backup does not exist. For more details, see FREEZE PARTITION.
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `engine` ([String](/core/reference/data-types)) — Name of the table engine without parameters.
+- `disk_name` ([String](/core/reference/data-types)) — Name of a disk that stores the data part.
+- `path` ([String](/core/reference/data-types)) — Absolute path to the folder with data part files.
+- `hash_of_all_files` ([String](/core/reference/data-types)) — sipHash128 of compressed files.
+- `hash_of_uncompressed_files` ([String](/core/reference/data-types)) — sipHash128 of uncompressed files (files with marks, index file etc.).
+- `uncompressed_hash_of_compressed_files` ([String](/core/reference/data-types)) — sipHash128 of data in the compressed files as if they were uncompressed.
+- `delete_ttl_info_min` ([DateTime](/core/reference/data-types)) — The minimum value of the date and time key for TTL DELETE rule.
+- `delete_ttl_info_max` ([DateTime](/core/reference/data-types)) — The maximum value of the date and time key for TTL DELETE rule.
+- `move_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — Array of expressions. Each expression defines a TTL MOVE rule.
+- `move_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — Array of date and time values. Each element describes the minimum key value for a TTL MOVE rule.
+- `move_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — Array of date and time values. Each element describes the maximum key value for a TTL MOVE rule.
+- `default_compression_codec` ([String](/core/reference/data-types)) — The name of the codec used to compress this data part (in case when there is no explicit codec for columns).
+- `recompression_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `recompression_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `recompression_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `group_by_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `group_by_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `group_by_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `rows_where_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `rows_where_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `rows_where_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `projections` ([Array(String)](/core/reference/data-types)) — The list of projection names calculated for this part.
+- `visible` ([UInt8](/core/reference/data-types)) — Flag which indicated whether this part is visible for SELECT queries.
+- `creation_tid` ([Tuple(UInt64, UInt64, UUID)](/core/reference/data-types)) — ID of transaction that has created/is trying to create this object.
+- `removal_tid_lock` ([UInt64](/core/reference/data-types)) — Hash of removal_tid, used to lock an object for removal.
+- `removal_tid` ([Tuple(UInt64, UInt64, UUID)](/core/reference/data-types)) — ID of transaction that has removed/is trying to remove this object
+- `creation_csn` ([UInt64](/core/reference/data-types)) — CSN of transaction that has created this object
+- `removal_csn` ([UInt64](/core/reference/data-types)) — CSN of transaction that has removed this object
+- `has_lightweight_delete` ([UInt8](/core/reference/data-types)) — The flag which indicated whether the part has lightweight delete mask.
+- `last_removal_attempt_time` ([DateTime](/core/reference/data-types)) — The last time the server tried to delete this part.
+- `removal_state` ([String](/core/reference/data-types)) — The current state of part removal process.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.parts LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+partition: tuple()
+name: all_1_4_1_6
+part_type: Wide
+active: 1
+marks: 2
+rows: 6
+bytes_on_disk: 310
+data_compressed_bytes: 157
+data_uncompressed_bytes: 91
+secondary_indices_compressed_bytes: 58
+secondary_indices_uncompressed_bytes: 6
+secondary_indices_marks_bytes: 48
+marks_bytes: 144
+modification_time: 2020-06-18 13:01:49
+remove_time: 1970-01-01 00:00:00
+refcount: 1
+min_date: 1970-01-01
+max_date: 1970-01-01
+min_time: 1970-01-01 00:00:00
+max_time: 1970-01-01 00:00:00
+partition_id: all
+min_block_number: 1
+max_block_number: 4
+level: 1
+data_version: 6
+primary_key_bytes_in_memory: 8
+primary_key_bytes_in_memory_allocated: 64
+is_frozen: 0
+database: default
+table: months
+engine: MergeTree
+disk_name: default
+path: /var/lib/clickhouse/data/default/months/all_1_4_1_6/
+hash_of_all_files: 2d0657a16d9430824d35e327fcbd87bf
+hash_of_uncompressed_files: 84950cc30ba867c77a408ae21332ba29
+uncompressed_hash_of_compressed_files: 1ad78f1c6843bbfb99a2c931abe7df7d
+delete_ttl_info_min: 1970-01-01 00:00:00
+delete_ttl_info_max: 1970-01-01 00:00:00
+move_ttl_info.expression: []
+move_ttl_info.min: []
+move_ttl_info.max: []
+```
+
+## See Also {#see-also}
+
+- [MergeTree family](/core/reference/engines/table-engines/mergetree-family/mergetree)
+- [TTL for Columns and Tables](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-ttl)
diff --git a/core/reference/system-tables/parts_columns.mdx b/core/reference/system-tables/parts_columns.mdx
new file mode 100644
index 00000000..c063de4c
--- /dev/null
+++ b/core/reference/system-tables/parts_columns.mdx
@@ -0,0 +1,127 @@
+---
+description: 'System table containing information about parts and columns of MergeTree
+ tables.'
+keywords: ['system table', 'parts_columns']
+slug: /operations/system-tables/parts_columns
+title: 'system.parts_columns'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about parts and columns of [MergeTree](/core/reference/engines/table-engines/mergetree-family/mergetree) tables.
+Each row describes one data part.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `partition` ([String](/core/reference/data-types)) — The partition name.
+- `name` ([String](/core/reference/data-types)) — Name of the data part.
+- `uuid` ([UUID](/core/reference/data-types)) — The parts UUID.
+- `part_type` ([String](/core/reference/data-types)) — The data part storing format. Possible values: Wide — Each column is stored in a separate file in a filesystem, Compact — All columns are stored in one file in a filesystem.
+- `active` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the data part is active. If a data part is active, it's used in a table. Otherwise, it's deleted. Inactive data parts remain after merging.
+- `marks` ([UInt64](/core/reference/data-types)) — The number of marks. To get the approximate number of rows in a data part, multiply marks by the index granularity (usually 8192) (this hint does not work for adaptive granularity).
+- `rows` ([UInt64](/core/reference/data-types)) — The number of rows.
+- `bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the data part files in bytes.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks.
+- `modification_time` ([DateTime](/core/reference/data-types)) — The time the directory with the data part was modified. This usually corresponds to the time of data part creation.
+- `remove_time` ([DateTime](/core/reference/data-types)) — The time when the data part became inactive.
+- `refcount` ([UInt32](/core/reference/data-types)) — The number of places where the data part is used. A value greater than 2 indicates that the data part is used in queries or merges.
+- `min_date` ([Date](/core/reference/data-types)) — The minimum value for the Date column if that is included in the partition key.
+- `max_date` ([Date](/core/reference/data-types)) — The maximum value for the Date column if that is included in the partition key.
+- `min_time` ([DateTime](/core/reference/data-types)) — The minimum value for the DateTime column if that is included in the partition key.
+- `max_time` ([DateTime](/core/reference/data-types)) — The maximum value for the DateTime column if that is included in the partition key.
+- `partition_id` ([String](/core/reference/data-types)) — ID of the partition.
+- `min_block_number` ([Int64](/core/reference/data-types)) — The minimum number of data parts that make up the current part after merging.
+- `max_block_number` ([Int64](/core/reference/data-types)) — The maximum number of data parts that make up the current part after merging.
+- `level` ([UInt32](/core/reference/data-types)) — Depth of the merge tree. Zero means that the current part was created by insert rather than by merging other parts.
+- `data_version` ([UInt64](/core/reference/data-types)) — Number that is used to determine which mutations should be applied to the data part (mutations with a version higher than data_version).
+- `primary_key_bytes_in_memory` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by primary key values.
+- `primary_key_bytes_in_memory_allocated` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) reserved for primary key values.
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `engine` ([String](/core/reference/data-types)) — Name of the table engine without parameters.
+- `disk_name` ([String](/core/reference/data-types)) — Name of a disk that stores the data part.
+- `path` ([String](/core/reference/data-types)) — Absolute path to the folder with data part files.
+- `column` ([String](/core/reference/data-types)) — Name of the column.
+- `type` ([String](/core/reference/data-types)) — Column type.
+- `column_position` ([UInt64](/core/reference/data-types)) — Ordinal position of a column in a table starting with 1.
+- `default_kind` ([String](/core/reference/data-types)) — Expression type (DEFAULT, MATERIALIZED, ALIAS) for the default value, or an empty string if it is not defined.
+- `default_expression` ([String](/core/reference/data-types)) — Expression for the default value, or an empty string if it is not defined.
+- `column_bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of the column in bytes.
+- `column_data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of the compressed data in the column, in bytes.
+- `column_data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of the decompressed data in the column, in bytes.
+- `column_marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the marks for column, in bytes.
+- `column_modification_time` ([Nullable(DateTime)](/core/reference/data-types)) — The last time the column was modified.
+- `column_ttl_min` ([Nullable(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression of the column.
+- `column_ttl_max` ([Nullable(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression of the column.
+- `statistics` ([Array(String)](/core/reference/data-types)) — The statistics of the column.
+- `estimates.min` ([Nullable(String)](/core/reference/data-types)) — Estimated minimum value of the column.
+- `estimates.max` ([Nullable(String)](/core/reference/data-types)) — Estimated maximum value of the column.
+- `estimates.cardinality` ([Nullable(UInt64)](/core/reference/data-types)) — Estimated cardinality of the column.
+- `estimates.null_count` ([Nullable(UInt64)](/core/reference/data-types)) — Estimated number of NULL values in the column.
+- `serialization_kind` ([String](/core/reference/data-types)) — Kind of serialization of a column
+- `substreams` ([Array(String)](/core/reference/data-types)) — Names of substreams to which column is serialized
+- `filenames` ([Array(String)](/core/reference/data-types)) — Names of files for each substream of a column respectively
+- `subcolumns.names` ([Array(String)](/core/reference/data-types)) — Names of subcolumns of a column
+- `subcolumns.types` ([Array(String)](/core/reference/data-types)) — Types of subcolumns of a column
+- `subcolumns.serializations` ([Array(String)](/core/reference/data-types)) — Kinds of serialization of subcolumns of a column
+- `subcolumns.bytes_on_disk` ([Array(UInt64)](/core/reference/data-types)) — Sizes in bytes for each subcolumn
+- `subcolumns.data_compressed_bytes` ([Array(UInt64)](/core/reference/data-types)) — Sizes of the compressed data for each subcolumn, in bytes
+- `subcolumns.data_uncompressed_bytes` ([Array(UInt64)](/core/reference/data-types)) — Sizes of the decompressed data for each subcolumn, in bytes
+- `subcolumns.marks_bytes` ([Array(UInt64)](/core/reference/data-types)) — Sizes of the marks for each subcolumn of a column, in bytes
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.parts_columns LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+partition: tuple()
+name: all_1_2_1
+part_type: Wide
+active: 1
+marks: 2
+rows: 2
+bytes_on_disk: 155
+data_compressed_bytes: 56
+data_uncompressed_bytes: 4
+marks_bytes: 96
+modification_time: 2020-09-23 10:13:36
+remove_time: 2106-02-07 06:28:15
+refcount: 1
+min_date: 1970-01-01
+max_date: 1970-01-01
+partition_id: all
+min_block_number: 1
+max_block_number: 2
+level: 1
+data_version: 1
+primary_key_bytes_in_memory: 2
+primary_key_bytes_in_memory_allocated: 64
+database: default
+table: 53r93yleapyears
+engine: MergeTree
+disk_name: default
+path: /var/lib/clickhouse/data/default/53r93yleapyears/all_1_2_1/
+column: id
+type: Int8
+column_position: 1
+default_kind:
+default_expression:
+column_bytes_on_disk: 76
+column_data_compressed_bytes: 28
+column_data_uncompressed_bytes: 2
+column_marks_bytes: 48
+```
+
+## See Also {#see-also}
+
+- [MergeTree family](/core/reference/engines/table-engines/mergetree-family/mergetree)
+- [Calculating the number and size of compact and wide parts](/resources/support-center/knowledge-base/troubleshooting/count-parts-by-type)
diff --git a/core/reference/system-tables/predicate_statistics_log.mdx b/core/reference/system-tables/predicate_statistics_log.mdx
new file mode 100644
index 00000000..6e560c41
--- /dev/null
+++ b/core/reference/system-tables/predicate_statistics_log.mdx
@@ -0,0 +1,90 @@
+---
+description: 'System table containing sampled filter and index selectivity statistics
+ collected from `MergeTree` read pipelines during query execution.'
+keywords: ['system table', 'predicate_statistics_log']
+slug: /operations/system-tables/predicate_statistics_log
+title: 'system.predicate_statistics_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains sampled selectivity statistics collected while reading from `MergeTree` tables. The table is populated only when [`predicate_statistics_sample_rate`](/core/reference/settings/session-settings#predicate_statistics_sample_rate) is greater than `0`.
+
+Use this table to inspect how selective user predicates are in real workloads and how many granules remain after primary-key or skip-index filtering. The data is intended as input for workload-driven index and projection recommendations.
+
+## Row shapes {#row-shapes}
+
+A single query can produce two kinds of rows in `system.predicate_statistics_log`:
+
+- **Filter rows**, emitted per prewhere/filter step in `MergeTreeSelectProcessor`. They populate `predicate_expression`, `input_rows`, `passed_rows`, `filter_selectivity`, and the whole-predicate columns `total_input_rows`, `total_passed_rows`, `total_selectivity`. Index-related columns are empty.
+- **Index rows**, emitted per read step in `ReadFromMergeTree`. They populate the `index_names`, `index_types`, `total_granules`, `granules_after`, and `index_selectivities` arrays, one entry per index stage (primary key, partition, skip indexes). Predicate-related columns are empty.
+
+Filter rows and index rows for the same query share the same `query_id` and `table`, so they can be joined when both are needed.
+
+## Sampling and overhead {#sampling-and-overhead}
+
+Sampling is controlled by [`predicate_statistics_sample_rate`](/core/reference/settings/session-settings#predicate_statistics_sample_rate):
+
+- `0` disables collection.
+- `1` samples every query.
+- `N > 1` samples approximately `1 / N` of queries, hashed by `query_id`.
+
+Lower values produce more data but add CPU work on the read path and more writes to the system log. After enabling the setting, use [`SYSTEM FLUSH LOGS`](/core/reference/statements/system#flush-logs) if you need rows to appear immediately.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Timestamp when this log entry was written.
+- `database` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Database name of the target table.
+- `table` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Table name of the target table.
+- `query_id` ([String](/core/reference/data-types/string)) — Query ID for linking back to query_log.
+- `predicate_expression` ([String](/core/reference/data-types/string)) — Whole filter expression handled by this prewhere/filter step (ActionsDAG dump).
+- `input_rows` ([UInt64](/core/reference/data-types/int-uint)) — Rows entering this prewhere/filter step.
+- `passed_rows` ([UInt64](/core/reference/data-types/int-uint)) — Rows surviving this prewhere/filter step.
+- `filter_selectivity` ([Float64](/core/reference/data-types/float)) — Selectivity of this step: passed_rows / input_rows.
+- `total_input_rows` ([UInt64](/core/reference/data-types/int-uint)) — Rows entering the first prewhere step (total rows read from granules).
+- `total_passed_rows` ([UInt64](/core/reference/data-types/int-uint)) — Rows surviving all prewhere steps (rows delivered to the query).
+- `total_selectivity` ([Float64](/core/reference/data-types/float)) — Selectivity of the whole predicate: total_passed_rows / total_input_rows.
+- `index_names` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Names of indexes applied, e.g. ['PrimaryKey', 'idx_bf_status'] (index rows only).
+- `index_types` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Types of indexes applied: PrimaryKey, Skip, MinMax, Partition (index rows only).
+- `total_granules` ([Array(UInt64)](/core/reference/data-types/array)) — Granules entering each index stage (index rows only).
+- `granules_after` ([Array(UInt64)](/core/reference/data-types/array)) — Granules remaining after each index stage (index rows only).
+- `index_selectivities` ([Array(Float64)](/core/reference/data-types/array)) — Per-index selectivity: granules_after / total_granules (index rows only).
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SET predicate_statistics_sample_rate = 1;
+
+SELECT *
+FROM hits
+WHERE URL LIKE '%/product/%' AND EventDate >= today() - 7
+FORMAT Null;
+
+SYSTEM FLUSH LOGS predicate_statistics_log;
+
+SELECT
+ query_id,
+ predicate_expression,
+ round(filter_selectivity, 3) AS step_selectivity,
+ round(total_selectivity, 3) AS query_selectivity,
+ index_names,
+ index_selectivities
+FROM system.predicate_statistics_log
+WHERE table = 'hits'
+ORDER BY event_time DESC
+LIMIT 10;
+```
+
+## See also {#see-also}
+
+- [`predicate_statistics_sample_rate`](/core/reference/settings/session-settings#predicate_statistics_sample_rate)
+- [system.query_log](/core/reference/system-tables/query_log)
diff --git a/reference/system-tables/primes.mdx b/core/reference/system-tables/primes.mdx
similarity index 92%
rename from reference/system-tables/primes.mdx
rename to core/reference/system-tables/primes.mdx
index 29746ce9..c3498658 100644
--- a/reference/system-tables/primes.mdx
+++ b/core/reference/system-tables/primes.mdx
@@ -14,7 +14,7 @@ You can use this table for tests, or if you need to do a brute force search over
Reads from this table are not parallelized.
-This is similar to the [`primes`](/reference/functions/table-functions/primes) table function.
+This is similar to the [`primes`](/core/reference/functions/table-functions/primes) table function.
You can also limit the output by predicates.
diff --git a/reference/system-tables/privileges.mdx b/core/reference/system-tables/privileges.mdx
similarity index 93%
rename from reference/system-tables/privileges.mdx
rename to core/reference/system-tables/privileges.mdx
index 191efd2b..c7cbd7a2 100644
--- a/reference/system-tables/privileges.mdx
+++ b/core/reference/system-tables/privileges.mdx
@@ -13,8 +13,8 @@ Contains a list of all available privileges that could be granted to a user or r
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `privilege` ([Enum16('SHOW DATABASES' = 0, 'SHOW TABLES' = 1, 'CHECK' = 2, 'SHOW COLUMNS' = 3, 'SHOW DICTIONARIES' = 4, 'SHOW' = 5, 'SHOW FILESYSTEM CACHES' = 6, 'SELECT' = 7, 'INSERT' = 8, 'ALTER UPDATE' = 9, 'ALTER DELETE' = 10, 'ALTER ADD COLUMN' = 11, 'ALTER MODIFY COLUMN' = 12, 'ALTER DROP COLUMN' = 13, 'ALTER COMMENT COLUMN' = 14, 'ALTER CLEAR COLUMN' = 15, 'ALTER RENAME COLUMN' = 16, 'ALTER MATERIALIZE COLUMN' = 17, 'ALTER COLUMN' = 18, 'ALTER MODIFY COMMENT' = 19, 'ALTER MODIFY DATABASE COMMENT' = 20, 'ALTER ORDER BY' = 21, 'ALTER SAMPLE BY' = 22, 'ALTER ADD INDEX' = 23, 'ALTER DROP INDEX' = 24, 'ALTER MATERIALIZE INDEX' = 25, 'ALTER CLEAR INDEX' = 26, 'ALTER INDEX' = 27, 'ALTER ADD STATISTICS' = 28, 'ALTER DROP STATISTICS' = 29, 'ALTER MODIFY STATISTICS' = 30, 'ALTER MATERIALIZE STATISTICS' = 31, 'ALTER STATISTICS' = 32, 'ALTER ADD PROJECTION' = 33, 'ALTER DROP PROJECTION' = 34, 'ALTER MATERIALIZE PROJECTION' = 35, 'ALTER CLEAR PROJECTION' = 36, 'ALTER PROJECTION' = 37, 'ALTER ADD CONSTRAINT' = 38, 'ALTER DROP CONSTRAINT' = 39, 'ALTER CONSTRAINT' = 40, 'ALTER TTL' = 41, 'ALTER MATERIALIZE TTL' = 42, 'ALTER REWRITE PARTS' = 43, 'ALTER SETTINGS' = 44, 'ALTER MOVE PARTITION' = 45, 'ALTER FETCH PARTITION' = 46, 'ALTER FREEZE PARTITION' = 47, 'ALTER UNLOCK SNAPSHOT' = 48, 'ALTER EXECUTE' = 49, 'ALTER DATABASE SETTINGS' = 50, 'ALTER NAMED COLLECTION' = 51, 'ALTER TABLE' = 52, 'ALTER DATABASE' = 53, 'ALTER VIEW MODIFY QUERY' = 54, 'ALTER VIEW MODIFY REFRESH' = 55, 'ALTER VIEW MODIFY SQL SECURITY' = 56, 'ALTER VIEW' = 57, 'ALTER' = 58, 'CREATE DATABASE' = 59, 'CREATE TABLE' = 60, 'CREATE VIEW' = 61, 'CREATE DICTIONARY' = 62, 'CREATE TEMPORARY TABLE' = 63, 'CREATE ARBITRARY TEMPORARY TABLE' = 64, 'CREATE TEMPORARY VIEW' = 65, 'CREATE FUNCTION' = 66, 'CREATE WORKLOAD' = 67, 'CREATE RESOURCE' = 68, 'CREATE NAMED COLLECTION' = 69, 'CREATE' = 70, 'DROP DATABASE' = 71, 'DROP TABLE' = 72, 'DROP VIEW' = 73, 'DROP DICTIONARY' = 74, 'DROP FUNCTION' = 75, 'DROP WORKLOAD' = 76, 'DROP RESOURCE' = 77, 'DROP NAMED COLLECTION' = 78, 'DROP' = 79, 'UNDROP TABLE' = 80, 'TRUNCATE' = 81, 'OPTIMIZE' = 82, 'BACKUP' = 83, 'KILL QUERY' = 84, 'KILL TRANSACTION' = 85, 'MOVE PARTITION BETWEEN SHARDS' = 86, 'CREATE USER' = 87, 'ALTER USER' = 88, 'DROP USER' = 89, 'CREATE ROLE' = 90, 'ALTER ROLE' = 91, 'DROP ROLE' = 92, 'ROLE ADMIN' = 93, 'CREATE ROW POLICY' = 94, 'ALTER ROW POLICY' = 95, 'DROP ROW POLICY' = 96, 'CREATE MASKING POLICY' = 97, 'ALTER MASKING POLICY' = 98, 'DROP MASKING POLICY' = 99, 'CREATE QUOTA' = 100, 'ALTER QUOTA' = 101, 'DROP QUOTA' = 102, 'CREATE SETTINGS PROFILE' = 103, 'ALTER SETTINGS PROFILE' = 104, 'DROP SETTINGS PROFILE' = 105, 'ALLOW SQL SECURITY NONE' = 106, 'SHOW USERS' = 107, 'SHOW ROLES' = 108, 'SHOW ROW POLICIES' = 109, 'SHOW QUOTAS' = 110, 'SHOW SETTINGS PROFILES' = 111, 'SHOW MASKING POLICIES' = 112, 'SHOW ACCESS' = 113, 'IMPERSONATE' = 114, 'ACCESS MANAGEMENT' = 115, 'SHOW NAMED COLLECTIONS' = 116, 'SHOW NAMED COLLECTIONS SECRETS' = 117, 'NAMED COLLECTION' = 118, 'NAMED COLLECTION ADMIN' = 119, 'SET DEFINER' = 120, 'TABLE ENGINE' = 121, 'SYSTEM SHUTDOWN' = 122, 'SYSTEM DROP DNS CACHE' = 123, 'SYSTEM DROP CONNECTIONS CACHE' = 124, 'SYSTEM PREWARM MARK CACHE' = 125, 'SYSTEM DROP MARK CACHE' = 126, 'SYSTEM DROP ICEBERG METADATA CACHE' = 127, 'SYSTEM DROP AVRO SCHEMA CACHE' = 128, 'SYSTEM DROP PARQUET METADATA CACHE' = 129, 'SYSTEM PREWARM PRIMARY INDEX CACHE' = 130, 'SYSTEM DROP PRIMARY INDEX CACHE' = 131, 'SYSTEM DROP UNCOMPRESSED CACHE' = 132, 'SYSTEM DROP VECTOR SIMILARITY INDEX CACHE' = 133, 'SYSTEM DROP TEXT INDEX TOKENS CACHE' = 134, 'SYSTEM DROP TEXT INDEX HEADER CACHE' = 135, 'SYSTEM DROP TEXT INDEX POSTINGS CACHE' = 136, 'SYSTEM DROP TEXT INDEX CACHES' = 137, 'SYSTEM DROP MMAP CACHE' = 138, 'SYSTEM DROP QUERY CONDITION CACHE' = 139, 'SYSTEM DROP QUERY CACHE' = 140, 'SYSTEM DROP COMPILED EXPRESSION CACHE' = 141, 'SYSTEM DROP FILESYSTEM CACHE' = 142, 'SYSTEM DROP DISTRIBUTED CACHE' = 143, 'SYSTEM SYNC FILESYSTEM CACHE' = 144, 'SYSTEM DROP PAGE CACHE' = 145, 'SYSTEM DROP SCHEMA CACHE' = 146, 'SYSTEM DROP FORMAT SCHEMA CACHE' = 147, 'SYSTEM DROP S3 CLIENT CACHE' = 148, 'SYSTEM DROP CACHE' = 149, 'SYSTEM RELOAD CONFIG' = 150, 'SYSTEM RELOAD USERS' = 151, 'SYSTEM RELOAD DICTIONARY' = 152, 'SYSTEM RELOAD MODEL' = 153, 'SYSTEM RELOAD FUNCTION' = 154, 'SYSTEM RELOAD EMBEDDED DICTIONARIES' = 155, 'SYSTEM RELOAD ASYNCHRONOUS METRICS' = 156, 'SYSTEM RECONNECT ZOOKEEPER' = 157, 'SYSTEM RELOAD' = 158, 'SYSTEM RESTART DISK' = 159, 'SYSTEM WAIT BLOBS CLEANUP' = 160, 'SYSTEM MERGES' = 161, 'SYSTEM TTL MERGES' = 162, 'SYSTEM FETCHES' = 163, 'SYSTEM MOVES' = 164, 'SYSTEM PULLING REPLICATION LOG' = 165, 'SYSTEM CLEANUP' = 166, 'SYSTEM VIEWS' = 167, 'SYSTEM DISTRIBUTED SENDS' = 168, 'SYSTEM REPLICATED SENDS' = 169, 'SYSTEM SENDS' = 170, 'SYSTEM REPLICATION QUEUES' = 171, 'SYSTEM VIRTUAL PARTS UPDATE' = 172, 'SYSTEM REDUCE BLOCKING PARTS' = 173, 'SYSTEM DROP REPLICA' = 174, 'SYSTEM SYNC REPLICA' = 175, 'SYSTEM REPLICA READINESS' = 176, 'SYSTEM RESTART REPLICA' = 177, 'SYSTEM RESTORE REPLICA' = 178, 'SYSTEM RESTORE DATABASE REPLICA' = 179, 'SYSTEM WAIT LOADING PARTS' = 180, 'SYSTEM SYNC DATABASE REPLICA' = 181, 'SYSTEM SYNC TRANSACTION LOG' = 182, 'SYSTEM SYNC FILE CACHE' = 183, 'SYSTEM FLUSH DISTRIBUTED' = 184, 'SYSTEM FLUSH LOGS' = 185, 'SYSTEM FLUSH ASYNC INSERT QUEUE' = 186, 'SYSTEM FLUSH OBJECT STORAGE QUEUE' = 187, 'SYSTEM FLUSH' = 188, 'SYSTEM THREAD FUZZER' = 189, 'SYSTEM UNFREEZE' = 190, 'SYSTEM UNLOCK SNAPSHOT' = 191, 'SYSTEM FAILPOINT' = 192, 'SYSTEM MEMORY' = 193, 'SYSTEM LISTEN' = 194, 'SYSTEM JEMALLOC' = 195, 'SYSTEM LOAD PRIMARY KEY' = 196, 'SYSTEM UNLOAD PRIMARY KEY' = 197, 'SYSTEM INSTRUMENT ADD' = 198, 'SYSTEM INSTRUMENT REMOVE' = 199, 'SYSTEM' = 200, 'dictGet' = 201, 'displaySecretsInShowAndSelect' = 202, 'addressToLine' = 203, 'addressToLineWithInlines' = 204, 'addressToSymbol' = 205, 'demangle' = 206, 'INTROSPECTION' = 207, 'READ' = 208, 'WRITE' = 209, 'CLUSTER' = 210, 'FILE' = 211, 'URL' = 212, 'REMOTE' = 213, 'MONGO' = 214, 'REDIS' = 215, 'MYSQL' = 216, 'POSTGRES' = 217, 'SQLITE' = 218, 'ODBC' = 219, 'JDBC' = 220, 'HDFS' = 221, 'S3' = 222, 'HIVE' = 223, 'AZURE' = 224, 'KAFKA' = 225, 'NATS' = 226, 'RABBITMQ' = 227, 'YTSAURUS' = 228, 'ARROW FLIGHT' = 229, 'SOURCES' = 230, 'ALL' = 231, 'NONE' = 232)](/reference/data-types)) — Name of a privilege which can be used in the GRANT command.
-- `aliases` ([Array(String)](/reference/data-types)) — List of aliases which can be used instead of the name of the privilege.
-- `level` ([Nullable(Enum8('GLOBAL' = 0, 'DATABASE' = 1, 'TABLE' = 2, 'DICTIONARY' = 3, 'VIEW' = 4, 'COLUMN' = 5, 'NAMED_COLLECTION' = 6, 'USER_NAME' = 7, 'TABLE_ENGINE' = 8, 'DEFINER' = 9, 'SOURCE' = 10))](/reference/data-types)) — Level of the privilege. GLOBAL privileges can be granted only globally (`ON *.*`), DATABASE privileges can be granted on a specific database (`ON .*`) or globally (`ON *.*`), TABLE privileges can be granted either on a specific table or on a specific database or globally, and COLUMN privileges can be granted like TABLE privileges but also allow to specify columns.
-- `parent_group` ([Nullable(Enum16('SHOW DATABASES' = 0, 'SHOW TABLES' = 1, 'CHECK' = 2, 'SHOW COLUMNS' = 3, 'SHOW DICTIONARIES' = 4, 'SHOW' = 5, 'SHOW FILESYSTEM CACHES' = 6, 'SELECT' = 7, 'INSERT' = 8, 'ALTER UPDATE' = 9, 'ALTER DELETE' = 10, 'ALTER ADD COLUMN' = 11, 'ALTER MODIFY COLUMN' = 12, 'ALTER DROP COLUMN' = 13, 'ALTER COMMENT COLUMN' = 14, 'ALTER CLEAR COLUMN' = 15, 'ALTER RENAME COLUMN' = 16, 'ALTER MATERIALIZE COLUMN' = 17, 'ALTER COLUMN' = 18, 'ALTER MODIFY COMMENT' = 19, 'ALTER MODIFY DATABASE COMMENT' = 20, 'ALTER ORDER BY' = 21, 'ALTER SAMPLE BY' = 22, 'ALTER ADD INDEX' = 23, 'ALTER DROP INDEX' = 24, 'ALTER MATERIALIZE INDEX' = 25, 'ALTER CLEAR INDEX' = 26, 'ALTER INDEX' = 27, 'ALTER ADD STATISTICS' = 28, 'ALTER DROP STATISTICS' = 29, 'ALTER MODIFY STATISTICS' = 30, 'ALTER MATERIALIZE STATISTICS' = 31, 'ALTER STATISTICS' = 32, 'ALTER ADD PROJECTION' = 33, 'ALTER DROP PROJECTION' = 34, 'ALTER MATERIALIZE PROJECTION' = 35, 'ALTER CLEAR PROJECTION' = 36, 'ALTER PROJECTION' = 37, 'ALTER ADD CONSTRAINT' = 38, 'ALTER DROP CONSTRAINT' = 39, 'ALTER CONSTRAINT' = 40, 'ALTER TTL' = 41, 'ALTER MATERIALIZE TTL' = 42, 'ALTER REWRITE PARTS' = 43, 'ALTER SETTINGS' = 44, 'ALTER MOVE PARTITION' = 45, 'ALTER FETCH PARTITION' = 46, 'ALTER FREEZE PARTITION' = 47, 'ALTER UNLOCK SNAPSHOT' = 48, 'ALTER EXECUTE' = 49, 'ALTER DATABASE SETTINGS' = 50, 'ALTER NAMED COLLECTION' = 51, 'ALTER TABLE' = 52, 'ALTER DATABASE' = 53, 'ALTER VIEW MODIFY QUERY' = 54, 'ALTER VIEW MODIFY REFRESH' = 55, 'ALTER VIEW MODIFY SQL SECURITY' = 56, 'ALTER VIEW' = 57, 'ALTER' = 58, 'CREATE DATABASE' = 59, 'CREATE TABLE' = 60, 'CREATE VIEW' = 61, 'CREATE DICTIONARY' = 62, 'CREATE TEMPORARY TABLE' = 63, 'CREATE ARBITRARY TEMPORARY TABLE' = 64, 'CREATE TEMPORARY VIEW' = 65, 'CREATE FUNCTION' = 66, 'CREATE WORKLOAD' = 67, 'CREATE RESOURCE' = 68, 'CREATE NAMED COLLECTION' = 69, 'CREATE' = 70, 'DROP DATABASE' = 71, 'DROP TABLE' = 72, 'DROP VIEW' = 73, 'DROP DICTIONARY' = 74, 'DROP FUNCTION' = 75, 'DROP WORKLOAD' = 76, 'DROP RESOURCE' = 77, 'DROP NAMED COLLECTION' = 78, 'DROP' = 79, 'UNDROP TABLE' = 80, 'TRUNCATE' = 81, 'OPTIMIZE' = 82, 'BACKUP' = 83, 'KILL QUERY' = 84, 'KILL TRANSACTION' = 85, 'MOVE PARTITION BETWEEN SHARDS' = 86, 'CREATE USER' = 87, 'ALTER USER' = 88, 'DROP USER' = 89, 'CREATE ROLE' = 90, 'ALTER ROLE' = 91, 'DROP ROLE' = 92, 'ROLE ADMIN' = 93, 'CREATE ROW POLICY' = 94, 'ALTER ROW POLICY' = 95, 'DROP ROW POLICY' = 96, 'CREATE MASKING POLICY' = 97, 'ALTER MASKING POLICY' = 98, 'DROP MASKING POLICY' = 99, 'CREATE QUOTA' = 100, 'ALTER QUOTA' = 101, 'DROP QUOTA' = 102, 'CREATE SETTINGS PROFILE' = 103, 'ALTER SETTINGS PROFILE' = 104, 'DROP SETTINGS PROFILE' = 105, 'ALLOW SQL SECURITY NONE' = 106, 'SHOW USERS' = 107, 'SHOW ROLES' = 108, 'SHOW ROW POLICIES' = 109, 'SHOW QUOTAS' = 110, 'SHOW SETTINGS PROFILES' = 111, 'SHOW MASKING POLICIES' = 112, 'SHOW ACCESS' = 113, 'IMPERSONATE' = 114, 'ACCESS MANAGEMENT' = 115, 'SHOW NAMED COLLECTIONS' = 116, 'SHOW NAMED COLLECTIONS SECRETS' = 117, 'NAMED COLLECTION' = 118, 'NAMED COLLECTION ADMIN' = 119, 'SET DEFINER' = 120, 'TABLE ENGINE' = 121, 'SYSTEM SHUTDOWN' = 122, 'SYSTEM DROP DNS CACHE' = 123, 'SYSTEM DROP CONNECTIONS CACHE' = 124, 'SYSTEM PREWARM MARK CACHE' = 125, 'SYSTEM DROP MARK CACHE' = 126, 'SYSTEM DROP ICEBERG METADATA CACHE' = 127, 'SYSTEM DROP AVRO SCHEMA CACHE' = 128, 'SYSTEM DROP PARQUET METADATA CACHE' = 129, 'SYSTEM PREWARM PRIMARY INDEX CACHE' = 130, 'SYSTEM DROP PRIMARY INDEX CACHE' = 131, 'SYSTEM DROP UNCOMPRESSED CACHE' = 132, 'SYSTEM DROP VECTOR SIMILARITY INDEX CACHE' = 133, 'SYSTEM DROP TEXT INDEX TOKENS CACHE' = 134, 'SYSTEM DROP TEXT INDEX HEADER CACHE' = 135, 'SYSTEM DROP TEXT INDEX POSTINGS CACHE' = 136, 'SYSTEM DROP TEXT INDEX CACHES' = 137, 'SYSTEM DROP MMAP CACHE' = 138, 'SYSTEM DROP QUERY CONDITION CACHE' = 139, 'SYSTEM DROP QUERY CACHE' = 140, 'SYSTEM DROP COMPILED EXPRESSION CACHE' = 141, 'SYSTEM DROP FILESYSTEM CACHE' = 142, 'SYSTEM DROP DISTRIBUTED CACHE' = 143, 'SYSTEM SYNC FILESYSTEM CACHE' = 144, 'SYSTEM DROP PAGE CACHE' = 145, 'SYSTEM DROP SCHEMA CACHE' = 146, 'SYSTEM DROP FORMAT SCHEMA CACHE' = 147, 'SYSTEM DROP S3 CLIENT CACHE' = 148, 'SYSTEM DROP CACHE' = 149, 'SYSTEM RELOAD CONFIG' = 150, 'SYSTEM RELOAD USERS' = 151, 'SYSTEM RELOAD DICTIONARY' = 152, 'SYSTEM RELOAD MODEL' = 153, 'SYSTEM RELOAD FUNCTION' = 154, 'SYSTEM RELOAD EMBEDDED DICTIONARIES' = 155, 'SYSTEM RELOAD ASYNCHRONOUS METRICS' = 156, 'SYSTEM RECONNECT ZOOKEEPER' = 157, 'SYSTEM RELOAD' = 158, 'SYSTEM RESTART DISK' = 159, 'SYSTEM WAIT BLOBS CLEANUP' = 160, 'SYSTEM MERGES' = 161, 'SYSTEM TTL MERGES' = 162, 'SYSTEM FETCHES' = 163, 'SYSTEM MOVES' = 164, 'SYSTEM PULLING REPLICATION LOG' = 165, 'SYSTEM CLEANUP' = 166, 'SYSTEM VIEWS' = 167, 'SYSTEM DISTRIBUTED SENDS' = 168, 'SYSTEM REPLICATED SENDS' = 169, 'SYSTEM SENDS' = 170, 'SYSTEM REPLICATION QUEUES' = 171, 'SYSTEM VIRTUAL PARTS UPDATE' = 172, 'SYSTEM REDUCE BLOCKING PARTS' = 173, 'SYSTEM DROP REPLICA' = 174, 'SYSTEM SYNC REPLICA' = 175, 'SYSTEM REPLICA READINESS' = 176, 'SYSTEM RESTART REPLICA' = 177, 'SYSTEM RESTORE REPLICA' = 178, 'SYSTEM RESTORE DATABASE REPLICA' = 179, 'SYSTEM WAIT LOADING PARTS' = 180, 'SYSTEM SYNC DATABASE REPLICA' = 181, 'SYSTEM SYNC TRANSACTION LOG' = 182, 'SYSTEM SYNC FILE CACHE' = 183, 'SYSTEM FLUSH DISTRIBUTED' = 184, 'SYSTEM FLUSH LOGS' = 185, 'SYSTEM FLUSH ASYNC INSERT QUEUE' = 186, 'SYSTEM FLUSH OBJECT STORAGE QUEUE' = 187, 'SYSTEM FLUSH' = 188, 'SYSTEM THREAD FUZZER' = 189, 'SYSTEM UNFREEZE' = 190, 'SYSTEM UNLOCK SNAPSHOT' = 191, 'SYSTEM FAILPOINT' = 192, 'SYSTEM MEMORY' = 193, 'SYSTEM LISTEN' = 194, 'SYSTEM JEMALLOC' = 195, 'SYSTEM LOAD PRIMARY KEY' = 196, 'SYSTEM UNLOAD PRIMARY KEY' = 197, 'SYSTEM INSTRUMENT ADD' = 198, 'SYSTEM INSTRUMENT REMOVE' = 199, 'SYSTEM' = 200, 'dictGet' = 201, 'displaySecretsInShowAndSelect' = 202, 'addressToLine' = 203, 'addressToLineWithInlines' = 204, 'addressToSymbol' = 205, 'demangle' = 206, 'INTROSPECTION' = 207, 'READ' = 208, 'WRITE' = 209, 'CLUSTER' = 210, 'FILE' = 211, 'URL' = 212, 'REMOTE' = 213, 'MONGO' = 214, 'REDIS' = 215, 'MYSQL' = 216, 'POSTGRES' = 217, 'SQLITE' = 218, 'ODBC' = 219, 'JDBC' = 220, 'HDFS' = 221, 'S3' = 222, 'HIVE' = 223, 'AZURE' = 224, 'KAFKA' = 225, 'NATS' = 226, 'RABBITMQ' = 227, 'YTSAURUS' = 228, 'ARROW FLIGHT' = 229, 'SOURCES' = 230, 'ALL' = 231, 'NONE' = 232))](/reference/data-types)) — Parent privilege - if the parent privilege is granted then all its children privileges are considered as granted too.
+- `privilege` ([Enum16('SHOW DATABASES' = 0, 'SHOW TABLES' = 1, 'CHECK' = 2, 'SHOW COLUMNS' = 3, 'SHOW DICTIONARIES' = 4, 'SHOW' = 5, 'SHOW FILESYSTEM CACHES' = 6, 'SELECT' = 7, 'INSERT' = 8, 'ALTER UPDATE' = 9, 'ALTER DELETE' = 10, 'ALTER ADD COLUMN' = 11, 'ALTER MODIFY COLUMN' = 12, 'ALTER DROP COLUMN' = 13, 'ALTER COMMENT COLUMN' = 14, 'ALTER CLEAR COLUMN' = 15, 'ALTER RENAME COLUMN' = 16, 'ALTER MATERIALIZE COLUMN' = 17, 'ALTER COLUMN' = 18, 'ALTER MODIFY COMMENT' = 19, 'ALTER MODIFY DATABASE COMMENT' = 20, 'ALTER ORDER BY' = 21, 'ALTER SAMPLE BY' = 22, 'ALTER ADD INDEX' = 23, 'ALTER DROP INDEX' = 24, 'ALTER MATERIALIZE INDEX' = 25, 'ALTER CLEAR INDEX' = 26, 'ALTER INDEX' = 27, 'ALTER ADD STATISTICS' = 28, 'ALTER DROP STATISTICS' = 29, 'ALTER MODIFY STATISTICS' = 30, 'ALTER MATERIALIZE STATISTICS' = 31, 'ALTER STATISTICS' = 32, 'ALTER ADD PROJECTION' = 33, 'ALTER DROP PROJECTION' = 34, 'ALTER MATERIALIZE PROJECTION' = 35, 'ALTER CLEAR PROJECTION' = 36, 'ALTER PROJECTION' = 37, 'ALTER ADD CONSTRAINT' = 38, 'ALTER DROP CONSTRAINT' = 39, 'ALTER CONSTRAINT' = 40, 'ALTER TTL' = 41, 'ALTER MATERIALIZE TTL' = 42, 'ALTER REWRITE PARTS' = 43, 'ALTER SETTINGS' = 44, 'ALTER MOVE PARTITION' = 45, 'ALTER FETCH PARTITION' = 46, 'ALTER FREEZE PARTITION' = 47, 'ALTER UNLOCK SNAPSHOT' = 48, 'ALTER EXECUTE' = 49, 'ALTER DATABASE SETTINGS' = 50, 'ALTER NAMED COLLECTION' = 51, 'ALTER TABLE' = 52, 'ALTER DATABASE' = 53, 'ALTER VIEW MODIFY QUERY' = 54, 'ALTER VIEW MODIFY REFRESH' = 55, 'ALTER VIEW MODIFY SQL SECURITY' = 56, 'ALTER VIEW' = 57, 'ALTER' = 58, 'CREATE DATABASE' = 59, 'CREATE TABLE' = 60, 'CREATE VIEW' = 61, 'CREATE DICTIONARY' = 62, 'CREATE TEMPORARY TABLE' = 63, 'CREATE ARBITRARY TEMPORARY TABLE' = 64, 'CREATE TEMPORARY VIEW' = 65, 'CREATE FUNCTION' = 66, 'CREATE WORKLOAD' = 67, 'CREATE RESOURCE' = 68, 'CREATE NAMED COLLECTION' = 69, 'CREATE' = 70, 'DROP DATABASE' = 71, 'DROP TABLE' = 72, 'DROP VIEW' = 73, 'DROP DICTIONARY' = 74, 'DROP FUNCTION' = 75, 'DROP WORKLOAD' = 76, 'DROP RESOURCE' = 77, 'DROP NAMED COLLECTION' = 78, 'DROP' = 79, 'UNDROP TABLE' = 80, 'TRUNCATE' = 81, 'OPTIMIZE' = 82, 'BACKUP' = 83, 'KILL QUERY' = 84, 'KILL TRANSACTION' = 85, 'MOVE PARTITION BETWEEN SHARDS' = 86, 'CREATE USER' = 87, 'ALTER USER' = 88, 'DROP USER' = 89, 'CREATE ROLE' = 90, 'ALTER ROLE' = 91, 'DROP ROLE' = 92, 'ROLE ADMIN' = 93, 'CREATE ROW POLICY' = 94, 'ALTER ROW POLICY' = 95, 'DROP ROW POLICY' = 96, 'CREATE MASKING POLICY' = 97, 'ALTER MASKING POLICY' = 98, 'DROP MASKING POLICY' = 99, 'CREATE QUOTA' = 100, 'ALTER QUOTA' = 101, 'DROP QUOTA' = 102, 'CREATE SETTINGS PROFILE' = 103, 'ALTER SETTINGS PROFILE' = 104, 'DROP SETTINGS PROFILE' = 105, 'ALLOW SQL SECURITY NONE' = 106, 'SHOW USERS' = 107, 'SHOW ROLES' = 108, 'SHOW ROW POLICIES' = 109, 'SHOW QUOTAS' = 110, 'SHOW SETTINGS PROFILES' = 111, 'SHOW MASKING POLICIES' = 112, 'SHOW ACCESS' = 113, 'IMPERSONATE' = 114, 'ACCESS MANAGEMENT' = 115, 'SHOW NAMED COLLECTIONS' = 116, 'SHOW NAMED COLLECTIONS SECRETS' = 117, 'NAMED COLLECTION' = 118, 'NAMED COLLECTION ADMIN' = 119, 'SET DEFINER' = 120, 'TABLE ENGINE' = 121, 'SYSTEM SHUTDOWN' = 122, 'SYSTEM DROP DNS CACHE' = 123, 'SYSTEM DROP CONNECTIONS CACHE' = 124, 'SYSTEM PREWARM MARK CACHE' = 125, 'SYSTEM DROP MARK CACHE' = 126, 'SYSTEM DROP ICEBERG METADATA CACHE' = 127, 'SYSTEM DROP AVRO SCHEMA CACHE' = 128, 'SYSTEM DROP PARQUET METADATA CACHE' = 129, 'SYSTEM PREWARM PRIMARY INDEX CACHE' = 130, 'SYSTEM DROP PRIMARY INDEX CACHE' = 131, 'SYSTEM DROP UNCOMPRESSED CACHE' = 132, 'SYSTEM DROP VECTOR SIMILARITY INDEX CACHE' = 133, 'SYSTEM DROP TEXT INDEX TOKENS CACHE' = 134, 'SYSTEM DROP TEXT INDEX HEADER CACHE' = 135, 'SYSTEM DROP TEXT INDEX POSTINGS CACHE' = 136, 'SYSTEM DROP TEXT INDEX CACHES' = 137, 'SYSTEM DROP MMAP CACHE' = 138, 'SYSTEM DROP QUERY CONDITION CACHE' = 139, 'SYSTEM DROP QUERY CACHE' = 140, 'SYSTEM DROP COMPILED EXPRESSION CACHE' = 141, 'SYSTEM DROP FILESYSTEM CACHE' = 142, 'SYSTEM DROP DISTRIBUTED CACHE' = 143, 'SYSTEM SYNC FILESYSTEM CACHE' = 144, 'SYSTEM DROP PAGE CACHE' = 145, 'SYSTEM DROP SCHEMA CACHE' = 146, 'SYSTEM DROP FORMAT SCHEMA CACHE' = 147, 'SYSTEM DROP S3 CLIENT CACHE' = 148, 'SYSTEM DROP CACHE' = 149, 'SYSTEM RELOAD CONFIG' = 150, 'SYSTEM RELOAD USERS' = 151, 'SYSTEM RELOAD DICTIONARY' = 152, 'SYSTEM RELOAD MODEL' = 153, 'SYSTEM RELOAD FUNCTION' = 154, 'SYSTEM RELOAD EMBEDDED DICTIONARIES' = 155, 'SYSTEM RELOAD ASYNCHRONOUS METRICS' = 156, 'SYSTEM RECONNECT ZOOKEEPER' = 157, 'SYSTEM RELOAD' = 158, 'SYSTEM RESTART DISK' = 159, 'SYSTEM WAIT BLOBS CLEANUP' = 160, 'SYSTEM MERGES' = 161, 'SYSTEM TTL MERGES' = 162, 'SYSTEM FETCHES' = 163, 'SYSTEM MOVES' = 164, 'SYSTEM PULLING REPLICATION LOG' = 165, 'SYSTEM CLEANUP' = 166, 'SYSTEM VIEWS' = 167, 'SYSTEM DISTRIBUTED SENDS' = 168, 'SYSTEM REPLICATED SENDS' = 169, 'SYSTEM SENDS' = 170, 'SYSTEM REPLICATION QUEUES' = 171, 'SYSTEM VIRTUAL PARTS UPDATE' = 172, 'SYSTEM REDUCE BLOCKING PARTS' = 173, 'SYSTEM DROP REPLICA' = 174, 'SYSTEM SYNC REPLICA' = 175, 'SYSTEM REPLICA READINESS' = 176, 'SYSTEM RESTART REPLICA' = 177, 'SYSTEM RESTORE REPLICA' = 178, 'SYSTEM RESTORE DATABASE REPLICA' = 179, 'SYSTEM WAIT LOADING PARTS' = 180, 'SYSTEM SYNC DATABASE REPLICA' = 181, 'SYSTEM SYNC TRANSACTION LOG' = 182, 'SYSTEM SYNC FILE CACHE' = 183, 'SYSTEM FLUSH DISTRIBUTED' = 184, 'SYSTEM FLUSH LOGS' = 185, 'SYSTEM FLUSH ASYNC INSERT QUEUE' = 186, 'SYSTEM FLUSH OBJECT STORAGE QUEUE' = 187, 'SYSTEM FLUSH' = 188, 'SYSTEM THREAD FUZZER' = 189, 'SYSTEM UNFREEZE' = 190, 'SYSTEM UNLOCK SNAPSHOT' = 191, 'SYSTEM FAILPOINT' = 192, 'SYSTEM MEMORY' = 193, 'SYSTEM LISTEN' = 194, 'SYSTEM JEMALLOC' = 195, 'SYSTEM LOAD PRIMARY KEY' = 196, 'SYSTEM UNLOAD PRIMARY KEY' = 197, 'SYSTEM INSTRUMENT ADD' = 198, 'SYSTEM INSTRUMENT REMOVE' = 199, 'SYSTEM' = 200, 'dictGet' = 201, 'displaySecretsInShowAndSelect' = 202, 'addressToLine' = 203, 'addressToLineWithInlines' = 204, 'addressToSymbol' = 205, 'demangle' = 206, 'INTROSPECTION' = 207, 'READ' = 208, 'WRITE' = 209, 'CLUSTER' = 210, 'FILE' = 211, 'URL' = 212, 'REMOTE' = 213, 'MONGO' = 214, 'REDIS' = 215, 'MYSQL' = 216, 'POSTGRES' = 217, 'SQLITE' = 218, 'ODBC' = 219, 'JDBC' = 220, 'HDFS' = 221, 'S3' = 222, 'HIVE' = 223, 'AZURE' = 224, 'KAFKA' = 225, 'NATS' = 226, 'RABBITMQ' = 227, 'YTSAURUS' = 228, 'ARROW FLIGHT' = 229, 'SOURCES' = 230, 'ALL' = 231, 'NONE' = 232)](/core/reference/data-types)) — Name of a privilege which can be used in the GRANT command.
+- `aliases` ([Array(String)](/core/reference/data-types)) — List of aliases which can be used instead of the name of the privilege.
+- `level` ([Nullable(Enum8('GLOBAL' = 0, 'DATABASE' = 1, 'TABLE' = 2, 'DICTIONARY' = 3, 'VIEW' = 4, 'COLUMN' = 5, 'NAMED_COLLECTION' = 6, 'USER_NAME' = 7, 'TABLE_ENGINE' = 8, 'DEFINER' = 9, 'SOURCE' = 10))](/core/reference/data-types)) — Level of the privilege. GLOBAL privileges can be granted only globally (`ON *.*`), DATABASE privileges can be granted on a specific database (`ON .*`) or globally (`ON *.*`), TABLE privileges can be granted either on a specific table or on a specific database or globally, and COLUMN privileges can be granted like TABLE privileges but also allow to specify columns.
+- `parent_group` ([Nullable(Enum16('SHOW DATABASES' = 0, 'SHOW TABLES' = 1, 'CHECK' = 2, 'SHOW COLUMNS' = 3, 'SHOW DICTIONARIES' = 4, 'SHOW' = 5, 'SHOW FILESYSTEM CACHES' = 6, 'SELECT' = 7, 'INSERT' = 8, 'ALTER UPDATE' = 9, 'ALTER DELETE' = 10, 'ALTER ADD COLUMN' = 11, 'ALTER MODIFY COLUMN' = 12, 'ALTER DROP COLUMN' = 13, 'ALTER COMMENT COLUMN' = 14, 'ALTER CLEAR COLUMN' = 15, 'ALTER RENAME COLUMN' = 16, 'ALTER MATERIALIZE COLUMN' = 17, 'ALTER COLUMN' = 18, 'ALTER MODIFY COMMENT' = 19, 'ALTER MODIFY DATABASE COMMENT' = 20, 'ALTER ORDER BY' = 21, 'ALTER SAMPLE BY' = 22, 'ALTER ADD INDEX' = 23, 'ALTER DROP INDEX' = 24, 'ALTER MATERIALIZE INDEX' = 25, 'ALTER CLEAR INDEX' = 26, 'ALTER INDEX' = 27, 'ALTER ADD STATISTICS' = 28, 'ALTER DROP STATISTICS' = 29, 'ALTER MODIFY STATISTICS' = 30, 'ALTER MATERIALIZE STATISTICS' = 31, 'ALTER STATISTICS' = 32, 'ALTER ADD PROJECTION' = 33, 'ALTER DROP PROJECTION' = 34, 'ALTER MATERIALIZE PROJECTION' = 35, 'ALTER CLEAR PROJECTION' = 36, 'ALTER PROJECTION' = 37, 'ALTER ADD CONSTRAINT' = 38, 'ALTER DROP CONSTRAINT' = 39, 'ALTER CONSTRAINT' = 40, 'ALTER TTL' = 41, 'ALTER MATERIALIZE TTL' = 42, 'ALTER REWRITE PARTS' = 43, 'ALTER SETTINGS' = 44, 'ALTER MOVE PARTITION' = 45, 'ALTER FETCH PARTITION' = 46, 'ALTER FREEZE PARTITION' = 47, 'ALTER UNLOCK SNAPSHOT' = 48, 'ALTER EXECUTE' = 49, 'ALTER DATABASE SETTINGS' = 50, 'ALTER NAMED COLLECTION' = 51, 'ALTER TABLE' = 52, 'ALTER DATABASE' = 53, 'ALTER VIEW MODIFY QUERY' = 54, 'ALTER VIEW MODIFY REFRESH' = 55, 'ALTER VIEW MODIFY SQL SECURITY' = 56, 'ALTER VIEW' = 57, 'ALTER' = 58, 'CREATE DATABASE' = 59, 'CREATE TABLE' = 60, 'CREATE VIEW' = 61, 'CREATE DICTIONARY' = 62, 'CREATE TEMPORARY TABLE' = 63, 'CREATE ARBITRARY TEMPORARY TABLE' = 64, 'CREATE TEMPORARY VIEW' = 65, 'CREATE FUNCTION' = 66, 'CREATE WORKLOAD' = 67, 'CREATE RESOURCE' = 68, 'CREATE NAMED COLLECTION' = 69, 'CREATE' = 70, 'DROP DATABASE' = 71, 'DROP TABLE' = 72, 'DROP VIEW' = 73, 'DROP DICTIONARY' = 74, 'DROP FUNCTION' = 75, 'DROP WORKLOAD' = 76, 'DROP RESOURCE' = 77, 'DROP NAMED COLLECTION' = 78, 'DROP' = 79, 'UNDROP TABLE' = 80, 'TRUNCATE' = 81, 'OPTIMIZE' = 82, 'BACKUP' = 83, 'KILL QUERY' = 84, 'KILL TRANSACTION' = 85, 'MOVE PARTITION BETWEEN SHARDS' = 86, 'CREATE USER' = 87, 'ALTER USER' = 88, 'DROP USER' = 89, 'CREATE ROLE' = 90, 'ALTER ROLE' = 91, 'DROP ROLE' = 92, 'ROLE ADMIN' = 93, 'CREATE ROW POLICY' = 94, 'ALTER ROW POLICY' = 95, 'DROP ROW POLICY' = 96, 'CREATE MASKING POLICY' = 97, 'ALTER MASKING POLICY' = 98, 'DROP MASKING POLICY' = 99, 'CREATE QUOTA' = 100, 'ALTER QUOTA' = 101, 'DROP QUOTA' = 102, 'CREATE SETTINGS PROFILE' = 103, 'ALTER SETTINGS PROFILE' = 104, 'DROP SETTINGS PROFILE' = 105, 'ALLOW SQL SECURITY NONE' = 106, 'SHOW USERS' = 107, 'SHOW ROLES' = 108, 'SHOW ROW POLICIES' = 109, 'SHOW QUOTAS' = 110, 'SHOW SETTINGS PROFILES' = 111, 'SHOW MASKING POLICIES' = 112, 'SHOW ACCESS' = 113, 'IMPERSONATE' = 114, 'ACCESS MANAGEMENT' = 115, 'SHOW NAMED COLLECTIONS' = 116, 'SHOW NAMED COLLECTIONS SECRETS' = 117, 'NAMED COLLECTION' = 118, 'NAMED COLLECTION ADMIN' = 119, 'SET DEFINER' = 120, 'TABLE ENGINE' = 121, 'SYSTEM SHUTDOWN' = 122, 'SYSTEM DROP DNS CACHE' = 123, 'SYSTEM DROP CONNECTIONS CACHE' = 124, 'SYSTEM PREWARM MARK CACHE' = 125, 'SYSTEM DROP MARK CACHE' = 126, 'SYSTEM DROP ICEBERG METADATA CACHE' = 127, 'SYSTEM DROP AVRO SCHEMA CACHE' = 128, 'SYSTEM DROP PARQUET METADATA CACHE' = 129, 'SYSTEM PREWARM PRIMARY INDEX CACHE' = 130, 'SYSTEM DROP PRIMARY INDEX CACHE' = 131, 'SYSTEM DROP UNCOMPRESSED CACHE' = 132, 'SYSTEM DROP VECTOR SIMILARITY INDEX CACHE' = 133, 'SYSTEM DROP TEXT INDEX TOKENS CACHE' = 134, 'SYSTEM DROP TEXT INDEX HEADER CACHE' = 135, 'SYSTEM DROP TEXT INDEX POSTINGS CACHE' = 136, 'SYSTEM DROP TEXT INDEX CACHES' = 137, 'SYSTEM DROP MMAP CACHE' = 138, 'SYSTEM DROP QUERY CONDITION CACHE' = 139, 'SYSTEM DROP QUERY CACHE' = 140, 'SYSTEM DROP COMPILED EXPRESSION CACHE' = 141, 'SYSTEM DROP FILESYSTEM CACHE' = 142, 'SYSTEM DROP DISTRIBUTED CACHE' = 143, 'SYSTEM SYNC FILESYSTEM CACHE' = 144, 'SYSTEM DROP PAGE CACHE' = 145, 'SYSTEM DROP SCHEMA CACHE' = 146, 'SYSTEM DROP FORMAT SCHEMA CACHE' = 147, 'SYSTEM DROP S3 CLIENT CACHE' = 148, 'SYSTEM DROP CACHE' = 149, 'SYSTEM RELOAD CONFIG' = 150, 'SYSTEM RELOAD USERS' = 151, 'SYSTEM RELOAD DICTIONARY' = 152, 'SYSTEM RELOAD MODEL' = 153, 'SYSTEM RELOAD FUNCTION' = 154, 'SYSTEM RELOAD EMBEDDED DICTIONARIES' = 155, 'SYSTEM RELOAD ASYNCHRONOUS METRICS' = 156, 'SYSTEM RECONNECT ZOOKEEPER' = 157, 'SYSTEM RELOAD' = 158, 'SYSTEM RESTART DISK' = 159, 'SYSTEM WAIT BLOBS CLEANUP' = 160, 'SYSTEM MERGES' = 161, 'SYSTEM TTL MERGES' = 162, 'SYSTEM FETCHES' = 163, 'SYSTEM MOVES' = 164, 'SYSTEM PULLING REPLICATION LOG' = 165, 'SYSTEM CLEANUP' = 166, 'SYSTEM VIEWS' = 167, 'SYSTEM DISTRIBUTED SENDS' = 168, 'SYSTEM REPLICATED SENDS' = 169, 'SYSTEM SENDS' = 170, 'SYSTEM REPLICATION QUEUES' = 171, 'SYSTEM VIRTUAL PARTS UPDATE' = 172, 'SYSTEM REDUCE BLOCKING PARTS' = 173, 'SYSTEM DROP REPLICA' = 174, 'SYSTEM SYNC REPLICA' = 175, 'SYSTEM REPLICA READINESS' = 176, 'SYSTEM RESTART REPLICA' = 177, 'SYSTEM RESTORE REPLICA' = 178, 'SYSTEM RESTORE DATABASE REPLICA' = 179, 'SYSTEM WAIT LOADING PARTS' = 180, 'SYSTEM SYNC DATABASE REPLICA' = 181, 'SYSTEM SYNC TRANSACTION LOG' = 182, 'SYSTEM SYNC FILE CACHE' = 183, 'SYSTEM FLUSH DISTRIBUTED' = 184, 'SYSTEM FLUSH LOGS' = 185, 'SYSTEM FLUSH ASYNC INSERT QUEUE' = 186, 'SYSTEM FLUSH OBJECT STORAGE QUEUE' = 187, 'SYSTEM FLUSH' = 188, 'SYSTEM THREAD FUZZER' = 189, 'SYSTEM UNFREEZE' = 190, 'SYSTEM UNLOCK SNAPSHOT' = 191, 'SYSTEM FAILPOINT' = 192, 'SYSTEM MEMORY' = 193, 'SYSTEM LISTEN' = 194, 'SYSTEM JEMALLOC' = 195, 'SYSTEM LOAD PRIMARY KEY' = 196, 'SYSTEM UNLOAD PRIMARY KEY' = 197, 'SYSTEM INSTRUMENT ADD' = 198, 'SYSTEM INSTRUMENT REMOVE' = 199, 'SYSTEM' = 200, 'dictGet' = 201, 'displaySecretsInShowAndSelect' = 202, 'addressToLine' = 203, 'addressToLineWithInlines' = 204, 'addressToSymbol' = 205, 'demangle' = 206, 'INTROSPECTION' = 207, 'READ' = 208, 'WRITE' = 209, 'CLUSTER' = 210, 'FILE' = 211, 'URL' = 212, 'REMOTE' = 213, 'MONGO' = 214, 'REDIS' = 215, 'MYSQL' = 216, 'POSTGRES' = 217, 'SQLITE' = 218, 'ODBC' = 219, 'JDBC' = 220, 'HDFS' = 221, 'S3' = 222, 'HIVE' = 223, 'AZURE' = 224, 'KAFKA' = 225, 'NATS' = 226, 'RABBITMQ' = 227, 'YTSAURUS' = 228, 'ARROW FLIGHT' = 229, 'SOURCES' = 230, 'ALL' = 231, 'NONE' = 232))](/core/reference/data-types)) — Parent privilege - if the parent privilege is granted then all its children privileges are considered as granted too.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/processes.mdx b/core/reference/system-tables/processes.mdx
new file mode 100644
index 00000000..89dfd21a
--- /dev/null
+++ b/core/reference/system-tables/processes.mdx
@@ -0,0 +1,107 @@
+---
+description: 'System table used for implementing the `SHOW PROCESSLIST` query.'
+keywords: ['system table', 'processes']
+slug: /operations/system-tables/processes
+title: 'system.processes'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+This system table is used for implementing the `SHOW PROCESSLIST` query.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `is_initial_query` ([UInt8](/core/reference/data-types)) — Whether this query comes directly from user or was issues by ClickHouse server in a scope of distributed query execution.
+- `user` ([String](/core/reference/data-types)) — The user who made the query. Keep in mind that for distributed processing, queries are sent to remote servers under the default user. The field contains the username for a specific query, not for a query that this query initiated.
+- `query_id` ([String](/core/reference/data-types)) — Query ID, if defined.
+- `address` ([IPv6](/core/reference/data-types)) — The IP address the query was made from. The same for distributed processing. To track where a distributed query was originally made from, look at system.processes on the query requestor server.
+- `port` ([UInt16](/core/reference/data-types)) — The client port the query was made from.
+- `initial_user` ([String](/core/reference/data-types)) — Name of the user who ran the initial query (for distributed query execution).
+- `initial_query_id` ([String](/core/reference/data-types)) — ID of the initial query (for distributed query execution).
+- `initial_address` ([IPv6](/core/reference/data-types)) — IP address that the parent query was launched from.
+- `initial_port` ([UInt16](/core/reference/data-types)) — The client port that was used to make the parent query.
+- `interface` ([UInt8](/core/reference/data-types)) — The interface which was used to send the query. TCP = 1, HTTP = 2, GRPC = 3, MYSQL = 4, POSTGRESQL = 5, LOCAL = 6, TCP_INTERSERVER = 7.
+- `os_user` ([String](/core/reference/data-types)) — Operating system username who runs clickhouse-client.
+- `client_hostname` ([String](/core/reference/data-types)) — Hostname of the client machine where the clickhouse-client or another TCP client is run.
+- `client_name` ([String](/core/reference/data-types)) — The clickhouse-client or another TCP client name.
+- `client_revision` ([UInt64](/core/reference/data-types)) — Revision of the clickhouse-client or another TCP client.
+- `client_version_major` ([UInt64](/core/reference/data-types)) — Major version of the clickhouse-client or another TCP client.
+- `client_version_minor` ([UInt64](/core/reference/data-types)) — Minor version of the clickhouse-client or another TCP client.
+- `client_version_patch` ([UInt64](/core/reference/data-types)) — Patch component of the clickhouse-client or another TCP client version.
+- `http_method` ([UInt8](/core/reference/data-types)) — HTTP method that initiated the query. Possible values: 0 — The query was launched from the TCP interface. 1 — GET method was used. 2 — POST method was used.
+- `http_user_agent` ([String](/core/reference/data-types)) — HTTP header UserAgent passed in the HTTP query.
+- `http_referer` ([String](/core/reference/data-types)) — HTTP header Referer passed in the HTTP query (contains an absolute or partial address of the page making the query).
+- `forwarded_for` ([String](/core/reference/data-types)) — HTTP header X-Forwarded-For passed in the HTTP query.
+- `quota_key` ([String](/core/reference/data-types)) — The quota key specified in the quotas setting (see keyed).
+- `distributed_depth` ([UInt64](/core/reference/data-types)) — The number of times query was retransmitted between server nodes internally.
+- `elapsed` ([Float64](/core/reference/data-types)) — The time in seconds since request execution started.
+- `is_cancelled` ([UInt8](/core/reference/data-types)) — Was query cancelled.
+- `is_all_data_sent` ([UInt8](/core/reference/data-types)) — Was all data sent to the client (in other words query had been finished on the server).
+- `read_rows` ([UInt64](/core/reference/data-types)) — The number of rows read from the table. For distributed processing, on the requestor server, this is the total for all remote servers.
+- `read_bytes` ([UInt64](/core/reference/data-types)) — The number of uncompressed bytes read from the table. For distributed processing, on the requestor server, this is the total for all remote servers.
+- `total_rows_approx` ([UInt64](/core/reference/data-types)) — The approximation of the total number of rows that should be read. For distributed processing, on the requestor server, this is the total for all remote servers. It can be updated during request processing, when new sources to process become known.
+- `written_rows` ([UInt64](/core/reference/data-types)) — The amount of rows written to the storage.
+- `written_bytes` ([UInt64](/core/reference/data-types)) — The amount of bytes written to the storage.
+- `memory_usage` ([Int64](/core/reference/data-types)) — Amount of RAM the query uses. It might not include some types of dedicated memory
+- `peak_memory_usage` ([Int64](/core/reference/data-types)) — The current peak of memory usage.
+- `query` ([String](/core/reference/data-types)) — The query text. For INSERT, it does not include the data to insert.
+- `normalized_query_hash` ([UInt64](/core/reference/data-types)) — A numeric hash value, such as it is identical for queries differ only by values of literals.
+- `query_kind` ([String](/core/reference/data-types)) — The type of the query - SELECT, INSERT, etc.
+- `thread_ids` ([Array(UInt64)](/core/reference/data-types)) — The list of identifiers of all threads which participated in this query.
+- `peak_threads_usage` ([UInt64](/core/reference/data-types)) — Maximum count of simultaneous threads executing the query.
+- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types)) — ProfileEvents calculated for this query.
+- `Settings` ([Map(LowCardinality(String), LowCardinality(String))](/core/reference/data-types)) — The list of modified user-level settings.
+- `current_database` ([String](/core/reference/data-types)) — The name of the current database.
+- `is_internal` ([UInt8](/core/reference/data-types)) — Indicates whether it is an auxiliary query executed internally.
+{/*AUTOGENERATED_END*/}
+
+```sql
+SELECT * FROM system.processes LIMIT 10 FORMAT Vertical;
+```
+
+```response
+Row 1:
+──────
+is_initial_query: 1
+user: default
+query_id: 35a360fa-3743-441d-8e1f-228c938268da
+address: ::ffff:172.23.0.1
+port: 47588
+initial_user: default
+initial_query_id: 35a360fa-3743-441d-8e1f-228c938268da
+initial_address: ::ffff:172.23.0.1
+initial_port: 47588
+interface: 1
+os_user: bharatnc
+client_hostname: tower
+client_name: ClickHouse
+client_revision: 54437
+client_version_major: 20
+client_version_minor: 7
+client_version_patch: 2
+http_method: 0
+http_user_agent:
+quota_key:
+elapsed: 0.000582537
+is_cancelled: 0
+is_all_data_sent: 0
+read_rows: 0
+read_bytes: 0
+total_rows_approx: 0
+written_rows: 0
+written_bytes: 0
+memory_usage: 0
+peak_memory_usage: 0
+query: SELECT * from system.processes LIMIT 10 FORMAT Vertical;
+thread_ids: [67]
+ProfileEvents: {'Query':1,'SelectQuery':1,'ReadCompressedBytes':36,'CompressedReadBufferBlocks':1,'CompressedReadBufferBytes':10,'IOBufferAllocs':1,'IOBufferAllocBytes':89,'ContextLock':15,'RWLockAcquiredReadLocks':1}
+Settings: {'background_pool_size':'32','load_balancing':'random','allow_suspicious_low_cardinality_types':'1','distributed_aggregation_memory_efficient':'1','skip_unavailable_shards':'1','log_queries':'1','max_bytes_before_external_group_by':'20000000000','max_bytes_before_external_sort':'20000000000','allow_introspection_functions':'1'}
+
+1 rows in set. Elapsed: 0.002 sec.
+```
diff --git a/core/reference/system-tables/processors_profile_log.mdx b/core/reference/system-tables/processors_profile_log.mdx
new file mode 100644
index 00000000..fb06bade
--- /dev/null
+++ b/core/reference/system-tables/processors_profile_log.mdx
@@ -0,0 +1,95 @@
+---
+description: 'System table containing profiling information on the processors level
+ (which can be found in `EXPLAIN PIPELINE`)'
+keywords: ['system table', 'processors_profile_log', 'EXPLAIN PIPELINE']
+slug: /operations/system-tables/processors_profile_log
+title: 'system.processors_profile_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+This table contains profiling on processors level (that you can find in [`EXPLAIN PIPELINE`](/core/reference/statements/explain#explain-pipeline)).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — The date when the event happened.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — The date and time when the event happened.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — The date and time with microseconds precision when the event happened.
+- `id` ([UInt64](/core/reference/data-types/int-uint)) — ID of processor.
+- `parent_ids` ([Array(UInt64)](/core/reference/data-types/array)) — Parent processors IDs.
+- `plan_step` ([UInt64](/core/reference/data-types/int-uint)) — ID of the query plan step which created this processor. The value is zero if the processor was not added from any step.
+- `plan_step_name` ([String](/core/reference/data-types/string)) — Name of the query plan step which created this processor. The value is empty if the processor was not added from any step.
+- `plan_step_description` ([String](/core/reference/data-types/string)) — Description of the query plan step which created this processor. The value is empty if the processor was not added from any step.
+- `plan_group` ([UInt64](/core/reference/data-types/int-uint)) — Group of the processor if it was created by query plan step. A group is a logical partitioning of processors added from the same query plan step. Group is used only for beautifying the result of EXPLAIN PIPELINE result.
+- `initial_query_id` ([String](/core/reference/data-types/string)) — ID of the initial query (for distributed query execution).
+- `query_id` ([String](/core/reference/data-types/string)) — ID of the query.
+- `name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the processor.
+- `elapsed_us` ([UInt64](/core/reference/data-types/int-uint)) — Number of microseconds this processor was executed.
+- `input_wait_elapsed_us` ([UInt64](/core/reference/data-types/int-uint)) — Number of microseconds this processor was waiting for data (from other processor).
+- `output_wait_elapsed_us` ([UInt64](/core/reference/data-types/int-uint)) — Number of microseconds this processor was waiting because output port was full.
+- `input_rows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows consumed by processor.
+- `input_bytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of bytes consumed by processor.
+- `output_rows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows generated by processor.
+- `output_bytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of bytes generated by processor.
+- `processor_uniq_id` ([String](/core/reference/data-types/string)) — The uniq processor id in pipeline.
+- `step_uniq_id` ([String](/core/reference/data-types/string)) — The uniq step id in plan.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+EXPLAIN PIPELINE
+SELECT sleep(1)
+┌─explain─────────────────────────┐
+│ (Expression) │
+│ ExpressionTransform │
+│ (SettingQuotaAndLimits) │
+│ (ReadFromStorage) │
+│ SourceFromSingleChunk 0 → 1 │
+└─────────────────────────────────┘
+
+SELECT sleep(1)
+SETTINGS log_processors_profiles = 1
+Query id: feb5ed16-1c24-4227-aa54-78c02b3b27d4
+┌─sleep(1)─┐
+│ 0 │
+└──────────┘
+1 rows in set. Elapsed: 1.018 sec.
+
+SELECT
+ name,
+ elapsed_us,
+ input_wait_elapsed_us,
+ output_wait_elapsed_us
+FROM system.processors_profile_log
+WHERE query_id = 'feb5ed16-1c24-4227-aa54-78c02b3b27d4'
+ORDER BY name ASC
+```
+
+```text title="Response"
+┌─name────────────────────┬─elapsed_us─┬─input_wait_elapsed_us─┬─output_wait_elapsed_us─┐
+│ ExpressionTransform │ 1000497 │ 2823 │ 197 │
+│ LazyOutputFormat │ 36 │ 1002188 │ 0 │
+│ LimitsCheckingTransform │ 10 │ 1002994 │ 106 │
+│ NullSource │ 5 │ 1002074 │ 0 │
+│ NullSource │ 1 │ 1002084 │ 0 │
+│ SourceFromSingleChunk │ 45 │ 4736 │ 1000819 │
+└─────────────────────────┴────────────┴───────────────────────┴────────────────────────┘
+```
+
+Here you can see:
+
+- `ExpressionTransform` was executing `sleep(1)` function, so it `work` will takes 1e6, and so `elapsed_us` > 1e6.
+- `SourceFromSingleChunk` need to wait, because `ExpressionTransform` does not accept any data during execution of `sleep(1)`, so it will be in `PortFull` state for 1e6 us, and so `output_wait_elapsed_us` > 1e6.
+- `LimitsCheckingTransform`/`NullSource`/`LazyOutputFormat` need to wait until `ExpressionTransform` will execute `sleep(1)` to process the result, so `input_wait_elapsed_us` > 1e6.
+
+## See Also {#see-also}
+
+- [`EXPLAIN PIPELINE`](/core/reference/statements/explain#explain-pipeline)
diff --git a/core/reference/system-tables/projection_parts.mdx b/core/reference/system-tables/projection_parts.mdx
new file mode 100644
index 00000000..b32daf4e
--- /dev/null
+++ b/core/reference/system-tables/projection_parts.mdx
@@ -0,0 +1,76 @@
+---
+description: 'System table containing information about projection parts for tables of the MergeTree family.'
+keywords: ['system table', 'projection_parts']
+slug: /operations/system-tables/projection_parts
+title: 'system.projection_parts'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+This table contains information about projection parts for tables of the MergeTree family.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `partition` ([String](/core/reference/data-types)) — The partition name.
+- `name` ([String](/core/reference/data-types)) — Name of the data part.
+- `part_type` ([String](/core/reference/data-types)) — The data part storing format. Possible Values: Wide (a file per column) and Compact (a single file for all columns).
+- `parent_name` ([String](/core/reference/data-types)) — The name of the source (parent) data part.
+- `parent_uuid` ([UUID](/core/reference/data-types)) — The UUID of the source (parent) data part.
+- `parent_part_type` ([String](/core/reference/data-types)) — The source (parent) data part storing format.
+- `active` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the data part is active. If a data part is active, it's used in a table. Otherwise, it's about to be deleted. Inactive data parts appear after merging and mutating operations.
+- `marks` ([UInt64](/core/reference/data-types)) — The number of marks. To get the approximate number of rows in a data part, multiply marks by the index granularity (usually 8192) (this hint does not work for adaptive granularity).
+- `rows` ([UInt64](/core/reference/data-types)) — The number of rows.
+- `bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the data part files in bytes.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks.
+- `parent_marks` ([UInt64](/core/reference/data-types)) — The number of marks in the source (parent) part.
+- `parent_rows` ([UInt64](/core/reference/data-types)) — The number of rows in the source (parent) part.
+- `parent_bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the source (parent) data part files in bytes.
+- `parent_data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the source (parent) data part.
+- `parent_data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data in the source (parent) data part.
+- `parent_marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks in the source (parent) data part.
+- `modification_time` ([DateTime](/core/reference/data-types)) — The time the directory with the data part was modified. This usually corresponds to the time of data part creation.
+- `remove_time` ([DateTime](/core/reference/data-types)) — The time when the data part became inactive.
+- `refcount` ([UInt32](/core/reference/data-types)) — The number of places where the data part is used. A value greater than 2 indicates that the data part is used in queries or merges.
+- `min_date` ([Date](/core/reference/data-types)) — The minimum value of the date key in the data part.
+- `max_date` ([Date](/core/reference/data-types)) — The maximum value of the date key in the data part.
+- `min_time` ([DateTime](/core/reference/data-types)) — The minimum value of the date and time key in the data part.
+- `max_time` ([DateTime](/core/reference/data-types)) — The maximum value of the date and time key in the data part.
+- `partition_id` ([String](/core/reference/data-types)) — ID of the partition.
+- `min_block_number` ([Int64](/core/reference/data-types)) — The minimum number of data parts that make up the current part after merging.
+- `max_block_number` ([Int64](/core/reference/data-types)) — The maximum number of data parts that make up the current part after merging.
+- `level` ([UInt32](/core/reference/data-types)) — Depth of the merge tree. Zero means that the current part was created by insert rather than by merging other parts.
+- `data_version` ([UInt64](/core/reference/data-types)) — Number that is used to determine which mutations should be applied to the data part (mutations with a version higher than data_version).
+- `primary_key_bytes_in_memory` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by primary key values.
+- `primary_key_bytes_in_memory_allocated` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) reserved for primary key values.
+- `is_frozen` ([UInt8](/core/reference/data-types)) — Flag that shows that a partition data backup exists. 1, the backup exists. 0, the backup does not exist.
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `engine` ([String](/core/reference/data-types)) — Name of the table engine without parameters.
+- `disk_name` ([String](/core/reference/data-types)) — Name of a disk that stores the data part.
+- `path` ([String](/core/reference/data-types)) — Absolute path to the folder with data part files.
+- `hash_of_all_files` ([String](/core/reference/data-types)) — sipHash128 of compressed files.
+- `hash_of_uncompressed_files` ([String](/core/reference/data-types)) — sipHash128 of uncompressed files (files with marks, index file etc.).
+- `uncompressed_hash_of_compressed_files` ([String](/core/reference/data-types)) — sipHash128 of data in the compressed files as if they were uncompressed.
+- `delete_ttl_info_min` ([DateTime](/core/reference/data-types)) — The minimum value of the date and time key for TTL DELETE rule.
+- `delete_ttl_info_max` ([DateTime](/core/reference/data-types)) — The maximum value of the date and time key for TTL DELETE rule.
+- `move_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — Array of expressions. Each expression defines a TTL MOVE rule.
+- `move_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — Array of date and time values. Each element describes the minimum key value for a TTL MOVE rule.
+- `move_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — Array of date and time values. Each element describes the maximum key value for a TTL MOVE rule.
+- `default_compression_codec` ([String](/core/reference/data-types)) — The name of the codec used to compress this data part (in case when there is no explicit codec for columns).
+- `recompression_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `recompression_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `recompression_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `group_by_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `group_by_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `group_by_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `rows_where_ttl_info.expression` ([Array(String)](/core/reference/data-types)) — The TTL expression.
+- `rows_where_ttl_info.min` ([Array(DateTime)](/core/reference/data-types)) — The minimum value of the calculated TTL expression within this part. Used to understand whether we have at least one row with expired TTL.
+- `rows_where_ttl_info.max` ([Array(DateTime)](/core/reference/data-types)) — The maximum value of the calculated TTL expression within this part. Used to understand whether we have all rows with expired TTL.
+- `is_broken` ([UInt8](/core/reference/data-types)) — Whether projection part is broken
+- `exception_code` ([Int32](/core/reference/data-types)) — Exception message explaining broken state of the projection part
+- `exception` ([String](/core/reference/data-types)) — Exception code explaining broken state of the projection part
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/projection_parts_columns.mdx b/core/reference/system-tables/projection_parts_columns.mdx
new file mode 100644
index 00000000..089feddb
--- /dev/null
+++ b/core/reference/system-tables/projection_parts_columns.mdx
@@ -0,0 +1,64 @@
+---
+description: 'System table containing information about columns in projection parts for tables of the MergeTree family'
+keywords: ['system table', 'projection_parts_columns']
+slug: /operations/system-tables/projection_parts_columns
+title: 'system.projection_parts_columns'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+This table contains information about columns in projection parts for tables of the MergeTree family.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `partition` ([String](/core/reference/data-types)) — The partition name.
+- `name` ([String](/core/reference/data-types)) — Name of the data part.
+- `part_type` ([String](/core/reference/data-types)) — The data part storing format.
+- `parent_name` ([String](/core/reference/data-types)) — The name of the source (parent) data part.
+- `parent_uuid` ([UUID](/core/reference/data-types)) — The UUID of the source (parent) data part.
+- `parent_part_type` ([String](/core/reference/data-types)) — The source (parent) data part storing format.
+- `active` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the data part is active
+- `marks` ([UInt64](/core/reference/data-types)) — The number of marks.
+- `rows` ([UInt64](/core/reference/data-types)) — The number of rows.
+- `bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the data part files in bytes.
+- `data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data in the data part. All the auxiliary files (for example, files with marks) are not included.
+- `marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks.
+- `parent_marks` ([UInt64](/core/reference/data-types)) — The number of marks in the source (parent) part.
+- `parent_rows` ([UInt64](/core/reference/data-types)) — The number of rows in the source (parent) part.
+- `parent_bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of all the source (parent) data part files in bytes.
+- `parent_data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the source (parent) data part.
+- `parent_data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of uncompressed data in the source (parent) data part.
+- `parent_marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the file with marks in the source (parent) data part.
+- `modification_time` ([DateTime](/core/reference/data-types)) — The time the directory with the data part was modified. This usually corresponds to the time of data part creation.
+- `remove_time` ([DateTime](/core/reference/data-types)) — The time when the data part became inactive.
+- `refcount` ([UInt32](/core/reference/data-types)) — The number of places where the data part is used. A value greater than 2 indicates that the data part is used in queries or merges.
+- `min_date` ([Date](/core/reference/data-types)) — The minimum value for the Date column if that is included in the partition key.
+- `max_date` ([Date](/core/reference/data-types)) — The maximum value for the Date column if that is included in the partition key.
+- `min_time` ([DateTime](/core/reference/data-types)) — The minimum value for the DateTime column if that is included in the partition key.
+- `max_time` ([DateTime](/core/reference/data-types)) — The maximum value for the DateTime column if that is included in the partition key.
+- `partition_id` ([String](/core/reference/data-types)) — ID of the partition.
+- `min_block_number` ([Int64](/core/reference/data-types)) — The minimum number of data parts that make up the current part after merging.
+- `max_block_number` ([Int64](/core/reference/data-types)) — The maximum number of data parts that make up the current part after merging.
+- `level` ([UInt32](/core/reference/data-types)) — Depth of the merge tree. Zero means that the current part was created by insert rather than by merging other parts.
+- `data_version` ([UInt64](/core/reference/data-types)) — Number that is used to determine which mutations should be applied to the data part (mutations with a version higher than data_version).
+- `primary_key_bytes_in_memory` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) used by primary key values.
+- `primary_key_bytes_in_memory_allocated` ([UInt64](/core/reference/data-types)) — The amount of memory (in bytes) reserved for primary key values.
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `engine` ([String](/core/reference/data-types)) — Name of the table engine without parameters.
+- `disk_name` ([String](/core/reference/data-types)) — Name of a disk that stores the data part.
+- `path` ([String](/core/reference/data-types)) — Absolute path to the folder with data part files.
+- `column` ([String](/core/reference/data-types)) — Name of the column.
+- `type` ([String](/core/reference/data-types)) — Column type.
+- `column_position` ([UInt64](/core/reference/data-types)) — Ordinal position of a column in a table starting with 1.
+- `default_kind` ([String](/core/reference/data-types)) — Expression type (DEFAULT, MATERIALIZED, ALIAS) for the default value, or an empty string if it is not defined.
+- `default_expression` ([String](/core/reference/data-types)) — Expression for the default value, or an empty string if it is not defined.
+- `column_bytes_on_disk` ([UInt64](/core/reference/data-types)) — Total size of the column in bytes.
+- `column_data_compressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of compressed data in the column, in bytes.
+- `column_data_uncompressed_bytes` ([UInt64](/core/reference/data-types)) — Total size of the decompressed data in the column, in bytes.
+- `column_marks_bytes` ([UInt64](/core/reference/data-types)) — The size of the column with marks, in bytes.
+- `column_modification_time` ([Nullable(DateTime)](/core/reference/data-types)) — The last time the column was modified.
+{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/projections.mdx b/core/reference/system-tables/projections.mdx
similarity index 62%
rename from reference/system-tables/projections.mdx
rename to core/reference/system-tables/projections.mdx
index 9a000408..7065f395 100644
--- a/reference/system-tables/projections.mdx
+++ b/core/reference/system-tables/projections.mdx
@@ -14,13 +14,13 @@ Contains information about existing projections in all tables.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `database` ([String](/reference/data-types)) — Database name.
-- `table` ([String](/reference/data-types)) — Table name.
-- `name` ([String](/reference/data-types)) — Projection name.
-- `type` ([Enum8('Normal' = 0, 'Aggregate' = 1)](/reference/data-types)) — Projection type.
-- `sorting_key` ([Array(String)](/reference/data-types)) — Projection sorting key.
-- `query` ([String](/reference/data-types)) — Projection query.
-- `settings` ([Map(String, String)](/reference/data-types)) — Projection settings.
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `name` ([String](/core/reference/data-types)) — Projection name.
+- `type` ([Enum8('Normal' = 0, 'Aggregate' = 1)](/core/reference/data-types)) — Projection type.
+- `sorting_key` ([Array(String)](/core/reference/data-types)) — Projection sorting key.
+- `query` ([String](/core/reference/data-types)) — Projection query.
+- `settings` ([Map(String, String)](/core/reference/data-types)) — Projection settings.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/query_cache.mdx b/core/reference/system-tables/query_cache.mdx
new file mode 100644
index 00000000..41b877e7
--- /dev/null
+++ b/core/reference/system-tables/query_cache.mdx
@@ -0,0 +1,51 @@
+---
+description: 'System table which shows the content of the query cache.'
+keywords: ['system table', 'query_cache']
+slug: /operations/system-tables/query_cache
+title: 'system.query_cache'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Shows the content of the [query cache](/core/concepts/features/performance/caches/query-cache).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `query` ([String](/core/reference/data-types)) — Query string.
+- `query_id` ([String](/core/reference/data-types)) — ID of the query.
+- `result_size` ([UInt64](/core/reference/data-types)) — Size of the query cache entry.
+- `tag` ([LowCardinality(String)](/core/reference/data-types)) — Tag of the query cache entry.
+- `stale` ([UInt8](/core/reference/data-types)) — If the query cache entry is stale.
+- `shared` ([UInt8](/core/reference/data-types)) — If the query cache entry is shared between multiple users.
+- `compressed` ([UInt8](/core/reference/data-types)) — If the query cache entry is compressed.
+- `expires_at` ([DateTime](/core/reference/data-types)) — When the query cache entry becomes stale.
+- `key_hash` ([UInt64](/core/reference/data-types)) — A hash of the query string, used as a key to find query cache entries.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.query_cache FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+query: SELECT 1 SETTINGS use_query_cache = 1
+query_id: 7c28bbbb-753b-4eba-98b1-efcbe2b9bdf6
+result_size: 128
+tag:
+stale: 0
+shared: 0
+compressed: 1
+expires_at: 2023-10-13 13:35:45
+key_hash: 12188185624808016954
+
+1 row in set. Elapsed: 0.004 sec.
+```
diff --git a/reference/system-tables/query_condition_cache.mdx b/core/reference/system-tables/query_condition_cache.mdx
similarity index 71%
rename from reference/system-tables/query_condition_cache.mdx
rename to core/reference/system-tables/query_condition_cache.mdx
index 3ba08252..b6203fe1 100644
--- a/reference/system-tables/query_condition_cache.mdx
+++ b/core/reference/system-tables/query_condition_cache.mdx
@@ -12,14 +12,14 @@ import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
## Description {#description}
-Shows the content of the [query condition cache](/concepts/features/performance/caches/query-condition-cache).
+Shows the content of the [query condition cache](/core/concepts/features/performance/caches/query-condition-cache).
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `key_hash` ([UInt128](/reference/data-types)) — Hash of (table_uuid, part_name, condition_hash).
-- `entry_size` ([UInt64](/reference/data-types)) — The size of the entry in bytes.
-- `matching_marks` ([String](/reference/data-types)) — Matching marks.
+- `key_hash` ([UInt128](/core/reference/data-types)) — Hash of (table_uuid, part_name, condition_hash).
+- `entry_size` ([UInt64](/core/reference/data-types)) — The size of the entry in bytes.
+- `matching_marks` ([String](/core/reference/data-types)) — Matching marks.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/query_log.mdx b/core/reference/system-tables/query_log.mdx
new file mode 100644
index 00000000..5b738ff7
--- /dev/null
+++ b/core/reference/system-tables/query_log.mdx
@@ -0,0 +1,237 @@
+---
+description: 'System table containing information about executed queries, for example,
+ start time, duration of processing, error messages.'
+keywords: ['system table', 'query_log']
+slug: /operations/system-tables/query_log
+title: 'system.query_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Stores metadata and statistics about executed queries, such as start time, duration, error messages, resource usage, and other execution details. It does not store the results of queries.
+
+You can change settings of queries logging in the [query_log](/core/reference/settings/server-settings/settings#query_log) section of the server configuration.
+
+You can disable queries logging by setting [log_queries = 0](/core/reference/settings/session-settings#log_queries). We do not recommend to turn off logging because information in this table is important for solving issues.
+
+The flushing period of data is set in `flush_interval_milliseconds` parameter of the [query_log](/core/reference/settings/server-settings/settings#query_log) server settings section. To force flushing, use the [SYSTEM FLUSH LOGS](/core/reference/statements/system#flush-logs) query.
+
+ClickHouse does not delete data from the table automatically. See [Introduction](/core/reference/system-tables/overview#system-tables-introduction) for more details.
+
+The `system.query_log` table registers two kinds of queries:
+
+1. Initial queries that were run directly by the client.
+2. Child queries that were initiated by other queries (for distributed query execution). For these types of queries, information about the parent queries is shown in the `initial_*` columns.
+
+Each query creates one or two rows in the `query_log` table, depending on the status (see the `type` column) of the query:
+
+1. If the query execution was successful, two rows with the `QueryStart` and `QueryFinish` types are created.
+2. If an error occurred during query processing, two events with the `QueryStart` and `ExceptionWhileProcessing` types are created.
+3. If an error occurred before launching the query, a single event with the `ExceptionBeforeStart` type is created.
+
+You can use the [log_queries_probability](/core/reference/settings/session-settings#log_queries_probability) setting to reduce the number of queries, registered in the `query_log` table.
+
+You can use the [log_formatted_queries](/core/reference/settings/session-settings#log_formatted_queries) setting to log formatted queries to the `formatted_query` column.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `type` ([Enum8('QueryStart' = 1, 'QueryFinish' = 2, 'ExceptionBeforeStart' = 3, 'ExceptionWhileProcessing' = 4)](/core/reference/data-types/enum)) — Type of an event that occurred when executing the query. Values: `QueryStart` — successful start of query execution, `QueryFinish` — successful end of query execution, `ExceptionBeforeStart` — exception before the start of query execution, `ExceptionWhileProcessing` — exception during the query execution.
+- `event_date` ([Date](/core/reference/data-types/date)) — Query starting date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Query starting time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Query starting time with microseconds precision.
+- `query_start_time` ([DateTime](/core/reference/data-types/datetime)) — Start time of query execution.
+- `query_start_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Start time of query execution with microsecond precision.
+- `query_duration_ms` ([UInt64](/core/reference/data-types/int-uint)) — Duration of query execution in milliseconds.
+- `read_rows` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows read from all tables and table functions participated in query. It includes usual subqueries, subqueries for IN and JOIN. For distributed queries read_rows includes the total number of rows read at all replicas. Each replica sends it's read_rows value, and the server-initiator of the query summarizes all received and local values. The cache volumes do not affect this value.
+- `read_bytes` ([UInt64](/core/reference/data-types/int-uint)) — Total number of bytes read from all tables and table functions participated in query. It includes usual subqueries, subqueries for IN and JOIN. For distributed queries read_bytes includes the total number of rows read at all replicas. Each replica sends it's read_bytes value, and the server-initiator of the query summarizes all received and local values. The cache volumes do not affect this value.
+- `written_rows` ([UInt64](/core/reference/data-types/int-uint)) — For INSERT queries, the number of written rows. For other queries, the column value is 0.
+- `written_bytes` ([UInt64](/core/reference/data-types/int-uint)) — For INSERT queries, the number of written bytes (uncompressed). For other queries, the column value is 0.
+- `result_rows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows in a result of the SELECT query, or a number of rows in the INSERT query.
+- `result_bytes` ([UInt64](/core/reference/data-types/int-uint)) — RAM volume in bytes used to store a query result.
+- `memory_usage` ([UInt64](/core/reference/data-types/int-uint)) — Memory consumption by the query.
+- `current_database` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the current database.
+- `query` ([String](/core/reference/data-types/string)) — Query string.
+- `formatted_query` ([String](/core/reference/data-types/string)) — Formatted query string.
+- `normalized_query_hash` ([UInt64](/core/reference/data-types/int-uint)) — A numeric hash value, such as it is identical for queries differ only by values of literals.
+- `query_kind` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Type of the query.
+- `databases` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Names of the databases present in the query.
+- `tables` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Names of the tables present in the query.
+- `columns` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Names of the columns present in the query.
+- `partitions` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Names of the partitions present in the query.
+- `projections` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Names of the projections used during the query execution.
+- `views` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Names of the (materialized or live) views present in the query.
+- `exception_code` ([Int32](/core/reference/data-types/int-uint)) — Code of an exception.
+- `exception` ([String](/core/reference/data-types/string)) — Exception message.
+- `stack_trace` ([String](/core/reference/data-types/string)) — Stack trace. An empty string, if the query was completed successfully.
+- `is_initial_query` ([UInt8](/core/reference/data-types/int-uint)) — Query type. Possible values: 1 — query was initiated by the client, 0 — query was initiated by another query as part of distributed query execution.
+- `connection_address` ([IPv6](/core/reference/data-types/ipv6)) — The client IP address from which the connection was made. When connected through a proxy, this will be the address of the proxy.
+- `connection_port` ([UInt16](/core/reference/data-types/int-uint)) — The client port from which the connection was made. When connected through a proxy, this will be the port of the proxy.
+- `user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the user who initiated the current query.
+- `query_id` ([String](/core/reference/data-types/string)) — ID of the query.
+- `address` ([IPv6](/core/reference/data-types/ipv6)) — IP address that was used to make the query. When connected through a proxy and `auth_use_forwarded_address` is set, this will be the address of the client instead of the proxy.
+- `port` ([UInt16](/core/reference/data-types/int-uint)) — The client port that was used to make the query. When connected through a proxy and `auth_use_forwarded_address` is set, this will be the port of the client instead of the proxy.
+- `initial_user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the user who ran the initial query (for distributed query execution).
+- `initial_query_id` ([String](/core/reference/data-types/string)) — ID of the initial query (for distributed query execution).
+- `initial_address` ([IPv6](/core/reference/data-types/ipv6)) — IP address that the parent query was launched from.
+- `initial_port` ([UInt16](/core/reference/data-types/int-uint)) — The client port that was used to make the parent query.
+- `initial_query_start_time` ([DateTime](/core/reference/data-types/datetime)) — Initial query starting time (for distributed query execution).
+- `initial_query_start_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Initial query starting time with microseconds precision (for distributed query execution).
+- `authenticated_user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the user who was authenticated in the session.
+- `interface` ([UInt8](/core/reference/data-types/int-uint)) — Interface that the query was initiated from. Possible values: 1 — TCP, 2 — HTTP.
+- `is_secure` ([UInt8](/core/reference/data-types/int-uint)) — The flag whether a query was executed over a secure interface
+- `os_user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Operating system username who runs clickhouse-client.
+- `client_hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the client machine where the clickhouse-client or another TCP client is run.
+- `client_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The clickhouse-client or another TCP client name.
+- `client_revision` ([UInt32](/core/reference/data-types/int-uint)) — Revision of the clickhouse-client or another TCP client.
+- `client_version_major` ([UInt32](/core/reference/data-types/int-uint)) — Major version of the clickhouse-client or another TCP client.
+- `client_version_minor` ([UInt32](/core/reference/data-types/int-uint)) — Minor version of the clickhouse-client or another TCP client.
+- `client_version_patch` ([UInt32](/core/reference/data-types/int-uint)) — Patch component of the clickhouse-client or another TCP client version.
+- `script_query_number` ([UInt32](/core/reference/data-types/int-uint)) — The query number in a script with multiple queries for clickhouse-client.
+- `script_line_number` ([UInt32](/core/reference/data-types/int-uint)) — The line number of the query start in a script with multiple queries for clickhouse-client.
+- `http_method` ([UInt8](/core/reference/data-types/int-uint)) — HTTP method that initiated the query. Possible values: 0 — The query was launched from the TCP interface, 1 — GET method was used, 2 — POST method was used.
+- `http_user_agent` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — HTTP header UserAgent passed in the HTTP query.
+- `http_referer` ([String](/core/reference/data-types/string)) — HTTP header Referer passed in the HTTP query (contains an absolute or partial address of the page making the query).
+- `forwarded_for` ([String](/core/reference/data-types/string)) — HTTP header X-Forwarded-For passed in the HTTP query.
+- `quota_key` ([String](/core/reference/data-types/string)) — The quota key specified in the quotas setting (see keyed).
+- `distributed_depth` ([UInt64](/core/reference/data-types/int-uint)) — How many times a query was forwarded between servers.
+- `revision` ([UInt32](/core/reference/data-types/int-uint)) — ClickHouse revision.
+- `log_comment` ([String](/core/reference/data-types/string)) — Log comment. It can be set to arbitrary string no longer than max_query_size. An empty string if it is not defined.
+- `thread_ids` ([Array(UInt64)](/core/reference/data-types/array)) — Thread ids that are participating in query execution. These threads may not have run simultaneously.
+- `peak_threads_usage` ([UInt64](/core/reference/data-types/int-uint)) — Maximum count of simultaneous threads executing the query.
+- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types/map)) — ProfileEvents that measure different metrics. The description of them could be found in the table system.events
+- `Settings` ([Map(LowCardinality(String), LowCardinality(String))](/core/reference/data-types/map)) — Settings that were changed when the client ran the query. To enable logging changes to settings, set the log_query_settings parameter to 1.
+- `used_aggregate_functions` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of aggregate functions, which were used during query execution.
+- `used_aggregate_function_combinators` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of aggregate functions combinators, which were used during query execution.
+- `used_database_engines` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of database engines, which were used during query execution.
+- `used_data_type_families` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of data type families, which were used during query execution.
+- `used_dictionaries` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of dictionaries, which were used during query execution.
+- `used_formats` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of formats, which were used during query execution.
+- `used_functions` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of functions, which were used during query execution.
+- `used_storages` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of storages, which were used during query execution.
+- `used_table_functions` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of table functions, which were used during query execution.
+- `used_executable_user_defined_functions` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of executable user defined functions, which were used during query execution.
+- `used_sql_user_defined_functions` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Canonical names of sql user defined functions, which were used during query execution.
+- `used_row_policies` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — The list of row policies names that were used during query execution.
+- `used_privileges` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Privileges which were successfully checked during query execution.
+- `missing_privileges` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — Privileges that are missing during query execution.
+- `transaction_id` ([Tuple(UInt64, UInt64, UUID)](/core/reference/data-types/tuple)) — The identifier of the transaction in scope of which this query was executed.
+- `query_cache_usage` ([Enum8('Unknown' = 0, 'None' = 1, 'Write' = 2, 'Read' = 3)](/core/reference/data-types/enum)) — Usage of the query cache during query execution. Values: 'Unknown' = Status unknown, 'None' = The query result was neither written into nor read from the query result cache, 'Write' = The query result was written into the query result cache, 'Read' = The query result was read from the query result cache.
+- `asynchronous_read_counters` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types/map)) — Metrics for asynchronous reading.
+- `is_internal` ([UInt8](/core/reference/data-types/int-uint)) — Indicates whether it is an auxiliary query executed internally.
+
+**Aliases:**
+
+- `ProfileEvents.Names` — Alias for `mapKeys(ProfileEvents)`.
+- `ProfileEvents.Values` — Alias for `mapValues(ProfileEvents)`.
+- `Settings.Names` — Alias for `mapKeys(Settings)`.
+- `Settings.Values` — Alias for `mapValues(Settings)`.
+{/*AUTOGENERATED_END*/}
+
+## Examples {#examples}
+
+**Basic example**
+
+```sql
+SELECT * FROM system.query_log WHERE type = 'QueryFinish' ORDER BY query_start_time DESC LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+type: QueryFinish
+event_date: 2021-11-03
+event_time: 2021-11-03 16:13:54
+event_time_microseconds: 2021-11-03 16:13:54.953024
+query_start_time: 2021-11-03 16:13:54
+query_start_time_microseconds: 2021-11-03 16:13:54.952325
+query_duration_ms: 0
+read_rows: 69
+read_bytes: 6187
+written_rows: 0
+written_bytes: 0
+result_rows: 69
+result_bytes: 48256
+memory_usage: 0
+current_database: default
+query: DESCRIBE TABLE system.query_log
+formatted_query:
+normalized_query_hash: 8274064835331539124
+query_kind:
+databases: []
+tables: []
+columns: []
+projections: []
+views: []
+exception_code: 0
+exception:
+stack_trace:
+is_initial_query: 1
+user: default
+query_id: 7c28bbbb-753b-4eba-98b1-efcbe2b9bdf6
+address: ::ffff:127.0.0.1
+port: 40452
+initial_user: default
+initial_query_id: 7c28bbbb-753b-4eba-98b1-efcbe2b9bdf6
+initial_address: ::ffff:127.0.0.1
+initial_port: 40452
+initial_query_start_time: 2021-11-03 16:13:54
+initial_query_start_time_microseconds: 2021-11-03 16:13:54.952325
+interface: 1
+os_user: sevirov
+client_hostname: clickhouse.eu-central1.internal
+client_name: ClickHouse
+client_revision: 54449
+client_version_major: 21
+client_version_minor: 10
+client_version_patch: 1
+http_method: 0
+http_user_agent:
+http_referer:
+forwarded_for:
+quota_key:
+revision: 54456
+log_comment:
+thread_ids: [30776,31174]
+ProfileEvents: {'Query':1,'NetworkSendElapsedMicroseconds':59,'NetworkSendBytes':2643,'SelectedRows':69,'SelectedBytes':6187,'ContextLock':9,'RWLockAcquiredReadLocks':1,'RealTimeMicroseconds':817,'UserTimeMicroseconds':427,'SystemTimeMicroseconds':212,'OSCPUVirtualTimeMicroseconds':639,'OSReadChars':894,'OSWriteChars':319}
+Settings: {'load_balancing':'random','max_memory_usage':'10000000000'}
+used_aggregate_functions: []
+used_aggregate_function_combinators: []
+used_database_engines: []
+used_data_type_families: []
+used_dictionaries: []
+used_formats: []
+used_functions: []
+used_storages: []
+used_table_functions: []
+used_executable_user_defined_functions:[]
+used_sql_user_defined_functions: []
+used_privileges: []
+missing_privileges: []
+query_cache_usage: None
+```
+
+**Cloud example**
+
+In ClickHouse Cloud, `system.query_log` is local to each node; to see all entries you must query via [`clusterAllReplicas`](/core/reference/functions/table-functions/cluster).
+
+For example, to aggregate query_log rows from every replica in the “default” cluster you can write:
+
+```sql
+SELECT *
+FROM clusterAllReplicas('default', system.query_log)
+WHERE event_time >= now() - toIntervalHour(1)
+LIMIT 10
+SETTINGS skip_unavailable_shards = 1;
+```
+
+## See Also {#see-also}
+
+- [system.query_thread_log](/core/reference/system-tables/query_thread_log) — This table contains information about each query execution thread.
diff --git a/core/reference/system-tables/query_metric_log.mdx b/core/reference/system-tables/query_metric_log.mdx
new file mode 100644
index 00000000..ecabb742
--- /dev/null
+++ b/core/reference/system-tables/query_metric_log.mdx
@@ -0,0 +1,1316 @@
+---
+description: 'System table containing a history of memory and metric values from table
+ `system.events` for individual queries, periodically flushed to disk.'
+keywords: ['system table', 'query_metric_log']
+slug: /operations/system-tables/query_metric_log
+title: 'system.query_metric_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains a history of memory and metric values from table `system.events` for individual queries, periodically flushed to disk.
+
+Once a query starts, data is collected at periodic intervals of `query_metric_log_interval` milliseconds (which is set to 1000
+by default). The data is also collected when the query finishes if the query takes longer than `query_metric_log_interval`.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `query_id` ([String](/core/reference/data-types/string)) — Query ID.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Event time with microseconds resolution.
+- `memory_usage` ([UInt64](/core/reference/data-types/int-uint)) — Amount of RAM the query uses. It might not include some types of dedicated memory.
+- `peak_memory_usage` ([UInt64](/core/reference/data-types/int-uint)) — Maximum amount of RAM the query used.
+- `ProfileEvent_Query` ([UInt64](/core/reference/data-types/int-uint)) — Number of queries to be interpreted and potentially executed. Does not include queries that failed to parse or were rejected due to AST size limits, quota limits or limits on the number of simultaneously running queries. May include internal queries initiated by ClickHouse itself. Does not count subqueries.
+- `ProfileEvent_SelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as Query, but only for SELECT queries.
+- `ProfileEvent_InsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as Query, but only for INSERT queries.
+- `ProfileEvent_InitialQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as Query, but only counts initial queries (see is_initial_query).
+- `ProfileEvent_InitialSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as InitialQuery, but only for SELECT queries.
+- `ProfileEvent_QueriesWithSubqueries` ([UInt64](/core/reference/data-types/int-uint)) — Count queries with all subqueries
+- `ProfileEvent_SelectQueriesWithSubqueries` ([UInt64](/core/reference/data-types/int-uint)) — Count SELECT queries with all subqueries
+- `ProfileEvent_InsertQueriesWithSubqueries` ([UInt64](/core/reference/data-types/int-uint)) — Count INSERT queries with all subqueries
+- `ProfileEvent_SelectQueriesWithPrimaryKeyUsage` ([UInt64](/core/reference/data-types/int-uint)) — Count SELECT queries which use the primary key to evaluate the WHERE condition
+- `ProfileEvent_AsyncInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as InsertQuery, but only for asynchronous INSERT queries.
+- `ProfileEvent_AsyncInsertBytes` ([UInt64](/core/reference/data-types/int-uint)) — Data size in bytes of asynchronous INSERT queries.
+- `ProfileEvent_AsyncInsertRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows inserted by asynchronous INSERT queries.
+- `ProfileEvent_AsyncInsertCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a duplicate hash id has been found in asynchronous INSERT hash id cache.
+- `ProfileEvent_FailedInternalQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed internal queries.
+- `ProfileEvent_FailedInternalSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedInternalQuery, but only for SELECT queries.
+- `ProfileEvent_FailedInternalInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedInternalQuery, but only for INSERT queries.
+- `ProfileEvent_FailedInitialQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed initial queries.
+- `ProfileEvent_FailedInitialSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedInitialQuery, but only for SELECT queries.
+- `ProfileEvent_FailedQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of total failed queries, both internal and user queries.
+- `ProfileEvent_FailedSelectQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedQuery, but only for SELECT queries.
+- `ProfileEvent_FailedInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Same as FailedQuery, but only for INSERT queries.
+- `ProfileEvent_FailedAsyncInsertQuery` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed ASYNC INSERT queries.
+- `ProfileEvent_ASTFuzzerQueries` ([UInt64](/core/reference/data-types/int-uint)) — Number of fuzzed queries attempted by the server-side AST fuzzer.
+- `ProfileEvent_QueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of all queries.
+- `ProfileEvent_SelectQueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of SELECT queries.
+- `ProfileEvent_InsertQueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of INSERT queries.
+- `ProfileEvent_OtherQueryTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time of queries that are not SELECT or INSERT.
+- `ProfileEvent_FileOpen` ([UInt64](/core/reference/data-types/int-uint)) — Number of files opened.
+- `ProfileEvent_Seek` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the 'lseek' function was called.
+- `ProfileEvent_ReadBufferFromFileDescriptorRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads (read/pread) from a file descriptor. Does not include sockets.
+- `ProfileEvent_ReadBufferFromFileDescriptorReadFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read (read/pread) from a file descriptor have failed.
+- `ProfileEvent_ReadBufferFromFileDescriptorReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from file descriptors. If the file is compressed, this will show the compressed data size.
+- `ProfileEvent_WriteBufferFromFileDescriptorWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of writes (write/pwrite) to a file descriptor. Does not include sockets.
+- `ProfileEvent_WriteBufferFromFileDescriptorWriteFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the write (write/pwrite) to a file descriptor have failed.
+- `ProfileEvent_WriteBufferFromFileDescriptorWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to file descriptors. If the file is compressed, this will show compressed data size.
+- `ProfileEvent_FileSync` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the F_FULLFSYNC/fsync/fdatasync function was called for files.
+- `ProfileEvent_DirectorySync` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the F_FULLFSYNC/fsync/fdatasync function was called for directories.
+- `ProfileEvent_FileSyncElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for F_FULLFSYNC/fsync/fdatasync syscall for files.
+- `ProfileEvent_DirectorySyncElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for F_FULLFSYNC/fsync/fdatasync syscall for directories.
+- `ProfileEvent_ReadCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes (the number of bytes before decompression) read from compressed sources (files, network).
+- `ProfileEvent_CompressedReadBufferBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed blocks (the blocks of data that are compressed independent of each other) read from compressed sources (files, network).
+- `ProfileEvent_CompressedReadBufferBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of uncompressed bytes (the number of bytes after decompression) read from compressed sources (files, network).
+- `ProfileEvent_CompressedReadBufferChecksumDoesntMatch` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the compressed block checksum did not match.
+- `ProfileEvent_CompressedReadBufferChecksumDoesntMatchSingleBitMismatch` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a compressed block checksum mismatch was caused by a single-bit difference.
+- `ProfileEvent_CompressedReadBufferChecksumDoesntMatchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent detecting bit-flips due to compressed block checksum mismatches.
+- `ProfileEvent_UncompressedCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has been found in the uncompressed cache (and decompression was avoided).
+- `ProfileEvent_UncompressedCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has not been found in the uncompressed cache (and required decompression).
+- `ProfileEvent_UncompressedCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from the uncompressed cache.
+- `ProfileEvent_PageCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has been found in the userspace page cache.
+- `ProfileEvent_PageCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a block of data has not been found in the userspace page cache.
+- `ProfileEvent_PageCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from the userspace page cache
+- `ProfileEvent_PageCacheResized` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the userspace page cache was auto-resized (typically happens a few times per second, controlled by memory_worker_period_ms).
+- `ProfileEvent_PageCacheOvercommitResize` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the userspace page cache was auto-resized to free memory during a memory allocation.
+- `ProfileEvent_PageCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from userspace page cache.
+- `ProfileEvent_MMappedFileCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has been found in the MMap cache (for the 'mmap' read_method), so we didn't have to mmap it again.
+- `ProfileEvent_MMappedFileCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has not been found in the MMap cache (for the 'mmap' read_method), so we had to mmap it again.
+- `ProfileEvent_OpenedFileCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has been found in the opened file cache, so we didn't have to open it again.
+- `ProfileEvent_OpenedFileCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a file has been found in the opened file cache, so we had to open it again.
+- `ProfileEvent_OpenedFileCacheMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Amount of time spent executing OpenedFileCache methods.
+- `ProfileEvent_AIOWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of writes with Linux or FreeBSD AIO interface
+- `ProfileEvent_AIOWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written with Linux or FreeBSD AIO interface
+- `ProfileEvent_AIORead` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads with Linux or FreeBSD AIO interface
+- `ProfileEvent_AIOReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read with Linux or FreeBSD AIO interface
+- `ProfileEvent_IOBufferAllocs` ([UInt64](/core/reference/data-types/int-uint)) — Number of allocations of IO buffers (for ReadBuffer/WriteBuffer).
+- `ProfileEvent_IOBufferAllocBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes allocated for IO buffers (for ReadBuffer/WriteBuffer).
+- `ProfileEvent_ArenaAllocChunks` ([UInt64](/core/reference/data-types/int-uint)) — Number of chunks allocated for memory Arena (used for GROUP BY and similar operations)
+- `ProfileEvent_ArenaAllocBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes allocated for memory Arena (used for GROUP BY and similar operations)
+- `ProfileEvent_FunctionExecute` ([UInt64](/core/reference/data-types/int-uint)) — Number of SQL ordinary function calls (SQL functions are called on per-block basis, so this number represents the number of blocks).
+- `ProfileEvent_TableFunctionExecute` ([UInt64](/core/reference/data-types/int-uint)) — Number of table function calls.
+- `ProfileEvent_DefaultImplementationForNullsRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows processed by default implementation for nulls in function execution
+- `ProfileEvent_DefaultImplementationForNullsRowsWithNulls` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows which contain null values processed by default implementation for nulls in function execution
+- `ProfileEvent_MarkCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has been found in the mark cache, so we didn't have to load a mark file.
+- `ProfileEvent_MarkCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has not been found in the mark cache, so we had to load a mark file in memory, which is a costly operation, adding to query latency.
+- `ProfileEvent_PrimaryIndexCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has been found in the primary index cache, so we didn't have to load a index file.
+- `ProfileEvent_PrimaryIndexCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has not been found in the primary index cache, so we had to load a index file in memory, which is a costly operation, adding to query latency.
+- `ProfileEvent_IcebergMetadataFilesCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times iceberg metadata files have been found in the cache.
+- `ProfileEvent_IcebergMetadataFilesCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times iceberg metadata files have not been found in the iceberg metadata cache and had to be read from (remote) disk.
+- `ProfileEvent_IcebergMetadataFilesCacheStaleMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times iceberg metadata files have been found in the cache, but were considered stale and had to be read from (remote) disk.
+- `ProfileEvent_IcebergMetadataFilesCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Approximate number of bytes evicted from the iceberg metadata cache.
+- `ProfileEvent_IcebergMetadataReadWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time data readers spend waiting for iceberg metadata files to be read and parsed, summed across all reader threads.
+- `ProfileEvent_ParquetMetadataCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times parquet metadata has been found in the cache.
+- `ProfileEvent_ParquetMetadataCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times parquet metadata has not been found in the cache and had to be read from disk.
+- `ProfileEvent_ParquetMetadataCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Approximate number of bytes evicted from the parquet metadata cache.
+- `ProfileEvent_IcebergIteratorInitializationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent on synchronous initialization of iceberg data iterators.
+- `ProfileEvent_IcebergMetadataUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent on synchronous initialization of iceberg data iterators.
+- `ProfileEvent_IcebergMetadataReturnedObjectInfos` ([UInt64](/core/reference/data-types/int-uint)) — Total number of returned object infos from iceberg iterator.
+- `ProfileEvent_IcebergMinMaxNonPrunedDeleteFiles` ([UInt64](/core/reference/data-types/int-uint)) — Total number of accepted data files-position delete file pairs by minmax analysis from pairs suitable by partitioning and sequence number.
+- `ProfileEvent_IcebergMinMaxPrunedDeleteFiles` ([UInt64](/core/reference/data-types/int-uint)) — Total number of accepted data files-position delete file pairs by minmax analysis from pairs suitable by partitioning and sequence number.
+- `ProfileEvent_VectorSimilarityIndexCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an index granule has been found in the vector index cache.
+- `ProfileEvent_VectorSimilarityIndexCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an index granule has not been found in the vector index cache and had to be read from disk.
+- `ProfileEvent_VectorSimilarityIndexCacheWeightLost` ([UInt64](/core/reference/data-types/int-uint)) — Approximate number of bytes evicted from the vector index cache.
+- `ProfileEvent_TextIndexReadDictionaryBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index dictionary block has been read from disk.
+- `ProfileEvent_TextIndexTokensCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index token info has been found in the cache.
+- `ProfileEvent_TextIndexTokensCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index token info has not been found in the cache.
+- `ProfileEvent_TextIndexHeaderCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a header has been found in the cache.
+- `ProfileEvent_TextIndexHeaderCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a header has not been found in the cache.
+- `ProfileEvent_TextIndexPostingsCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a text index posting list has been found in the cache.
+- `ProfileEvent_TextIndexPostingsCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a a text index posting list has not been found in the cache.
+- `ProfileEvent_TextIndexReadSparseIndexBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a sparse index block has been read from the text index.
+- `ProfileEvent_TextIndexReaderTotalMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent reading the text index.
+- `ProfileEvent_TextIndexReadGranulesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent reading and analyzing granules of the text index.
+- `ProfileEvent_TextIndexReadPostings` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a posting list has been read from the text index.
+- `ProfileEvent_TextIndexUsedEmbeddedPostings` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a posting list embedded in the dictionary has been used.
+- `ProfileEvent_TextIndexUseHint` ([UInt64](/core/reference/data-types/int-uint)) — Number of index granules where a direct reading from the text index was added as hint and was used.
+- `ProfileEvent_TextIndexDiscardHint` ([UInt64](/core/reference/data-types/int-uint)) — Number of index granules where a direct reading from the text index was added as hint and was discarded due to low selectivity.
+- `ProfileEvent_TextIndexDiscardPatternScan` ([UInt64](/core/reference/data-types/int-uint)) — Number of times pattern-based dictionary scan in a text index was discarded because the number of posting lists to read exceeded the threshold.
+- `ProfileEvent_QueryConditionCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has been found in the query condition cache (and reading of marks can be skipped). Only updated for SELECT queries with SETTING use_query_condition_cache = 1.
+- `ProfileEvent_QueryConditionCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an entry has not been found in the query condition cache (and reading of mark cannot be skipped). Only updated for SELECT queries with SETTING use_query_condition_cache = 1.
+- `ProfileEvent_QueryCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a query result has been found in the query cache (and query computation was avoided). Only updated for SELECT queries with SETTING use_query_cache = 1.
+- `ProfileEvent_QueryCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a query result has not been found in the query cache (and required query computation). Only updated for SELECT queries with SETTING use_query_cache = 1.
+- `ProfileEvent_QueryCacheAgeSeconds` ([UInt64](/core/reference/data-types/int-uint)) — The sum of ages of found query cache entries in seconds. The value is set both for hits and misses.
+- `ProfileEvent_QueryCacheReadRows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows read from the query cache.
+- `ProfileEvent_QueryCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of (uncompressed) bytes read from the query cache.
+- `ProfileEvent_QueryCacheWrittenRows` ([UInt64](/core/reference/data-types/int-uint)) — The number of rows saved into the query cache.
+- `ProfileEvent_QueryCacheWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of (uncompressed) bytes saved into the query cache
+- `ProfileEvent_CreatedReadBufferOrdinary` ([UInt64](/core/reference/data-types/int-uint)) — Number of times ordinary read buffer was created for reading data (while choosing among other read methods).
+- `ProfileEvent_CreatedReadBufferDirectIO` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer with O_DIRECT was created for reading data (while choosing among other read methods).
+- `ProfileEvent_CreatedReadBufferDirectIOFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer with O_DIRECT was attempted to be created for reading data (while choosing among other read methods), but the OS did not allow it (due to lack of filesystem support or other reasons) and we fallen back to the ordinary reading method.
+- `ProfileEvent_CreatedReadBufferMMap` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer using 'mmap' was created for reading data (while choosing among other read methods).
+- `ProfileEvent_CreatedReadBufferMMapFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read buffer with 'mmap' was attempted to be created for reading data (while choosing among other read methods), but the OS did not allow it (due to lack of filesystem support or other reasons) and we fallen back to the ordinary reading method.
+- `ProfileEvent_DiskReadElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for read syscall. This include reads from page cache.
+- `ProfileEvent_DiskWriteElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for write syscall. This include writes to page cache.
+- `ProfileEvent_NetworkReceiveElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for data to receive or receiving data from network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_NetworkSendElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for data to send to network or sending data to network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_NetworkReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total number of bytes received from network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_NetworkSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total number of bytes send to network. Only ClickHouse-related network interaction is included, not by 3rd party libraries.
+- `ProfileEvent_FilterPartsByVirtualColumnsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in filterPartsByVirtualColumns function.
+- `ProfileEvent_GlobalThreadPoolExpansions` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times new threads have been added to the global thread pool. This metric indicates the frequency of expansions in the global thread pool to accommodate increased processing demands.
+- `ProfileEvent_GlobalThreadPoolShrinks` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times the global thread pool has shrunk by removing threads. This occurs when the number of idle threads exceeds max_thread_pool_free_size, indicating adjustments in the global thread pool size in response to decreased thread utilization.
+- `ProfileEvent_GlobalThreadPoolThreadCreationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for new threads to start.
+- `ProfileEvent_GlobalThreadPoolLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time threads have spent waiting for locks in the global thread pool.
+- `ProfileEvent_GlobalThreadPoolJobs` ([UInt64](/core/reference/data-types/int-uint)) — Counts the number of jobs that have been pushed to the global thread pool.
+- `ProfileEvent_GlobalThreadPoolJobWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Measures the elapsed time from when a job is scheduled in the thread pool to when it is picked up for execution by a worker thread. This metric helps identify delays in job processing, indicating the responsiveness of the thread pool to new tasks.
+- `ProfileEvent_LocalThreadPoolExpansions` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times threads have been borrowed from the global thread pool to expand local thread pools.
+- `ProfileEvent_LocalThreadPoolShrinks` ([UInt64](/core/reference/data-types/int-uint)) — Counts the total number of times threads have been returned to the global thread pool from local thread pools.
+- `ProfileEvent_LocalThreadPoolThreadCreationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time local thread pools have spent waiting to borrow a thread from the global pool.
+- `ProfileEvent_LocalThreadPoolLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time threads have spent waiting for locks in the local thread pools.
+- `ProfileEvent_LocalThreadPoolJobs` ([UInt64](/core/reference/data-types/int-uint)) — Counts the number of jobs that have been pushed to the local thread pools.
+- `ProfileEvent_LocalThreadPoolBusyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time threads have spent executing the actual work.
+- `ProfileEvent_LocalThreadPoolJobWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Measures the elapsed time from when a job is scheduled in the thread pool to when it is picked up for execution by a worker thread. This metric helps identify delays in job processing, indicating the responsiveness of the thread pool to new tasks.
+- `ProfileEvent_DiskS3GetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 GET and SELECT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskS3GetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 GET and SELECT requests blocked by throttler.
+- `ProfileEvent_DiskS3GetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform DiskS3 GET and SELECT request throttling.
+- `ProfileEvent_DiskS3PutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 PUT, COPY, POST and LIST requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskS3PutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 PUT, COPY, POST and LIST requests blocked by throttler.
+- `ProfileEvent_DiskS3PutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform DiskS3 PUT, COPY, POST and LIST request throttling.
+- `ProfileEvent_S3GetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 GET and SELECT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_S3GetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 GET and SELECT requests blocked by throttler.
+- `ProfileEvent_S3GetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform S3 GET and SELECT request throttling.
+- `ProfileEvent_S3PutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 PUT, COPY, POST and LIST requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_S3PutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 PUT, COPY, POST and LIST requests blocked by throttler.
+- `ProfileEvent_S3PutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform S3 PUT, COPY, POST and LIST request throttling.
+- `ProfileEvent_ACMEAPIRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of ACME API requests issued.
+- `ProfileEvent_ACMECertificateOrders` ([UInt64](/core/reference/data-types/int-uint)) — Number of ACME certificate orders issued.
+- `ProfileEvent_DiskAzureReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure disk read requests.
+- `ProfileEvent_DiskAzureReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read requests.
+- `ProfileEvent_DiskAzureReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read request errors.
+- `ProfileEvent_DiskAzureReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read requests throttled.
+- `ProfileEvent_DiskAzureReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk read request redirects.
+- `ProfileEvent_DiskAzureWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure disk write requests.
+- `ProfileEvent_DiskAzureWriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write requests.
+- `ProfileEvent_DiskAzureWriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write request errors.
+- `ProfileEvent_DiskAzureWriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write requests throttled.
+- `ProfileEvent_DiskAzureWriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk write request redirects.
+- `ProfileEvent_AzureReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure read requests.
+- `ProfileEvent_AzureReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read requests.
+- `ProfileEvent_AzureReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read request errors.
+- `ProfileEvent_AzureReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read requests throttled.
+- `ProfileEvent_AzureReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure read request redirects.
+- `ProfileEvent_AzureWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for Azure write requests.
+- `ProfileEvent_AzureWriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write requests.
+- `ProfileEvent_AzureWriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write request errors.
+- `ProfileEvent_AzureWriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write requests throttled.
+- `ProfileEvent_AzureWriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure write request redirects.
+- `ProfileEvent_AzureGetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure GET requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_AzureGetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure GET requests blocked by throttler.
+- `ProfileEvent_AzureGetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure GET request throttling.
+- `ProfileEvent_DiskAzureGetRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk GET requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskAzureGetRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk GET requests blocked by throttler.
+- `ProfileEvent_DiskAzureGetRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure disk GET request throttling.
+- `ProfileEvent_AzurePutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure PUT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_AzurePutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure PUT requests blocked by throttler.
+- `ProfileEvent_AzurePutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure PUT request throttling.
+- `ProfileEvent_DiskAzurePutRequestThrottlerCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk PUT requests passed through throttler: blocked and not blocked.
+- `ProfileEvent_DiskAzurePutRequestThrottlerBlocked` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure disk PUT requests blocked by throttler.
+- `ProfileEvent_DiskAzurePutRequestThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform Azure disk PUT request throttling.
+- `ProfileEvent_RemoteReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_read_network_bandwidth_for_server'/'max_remote_read_network_bandwidth' throttler.
+- `ProfileEvent_RemoteReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_read_network_bandwidth_for_server'/'max_remote_read_network_bandwidth' throttling.
+- `ProfileEvent_RemoteWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_write_network_bandwidth_for_server'/'max_remote_write_network_bandwidth' throttler.
+- `ProfileEvent_RemoteWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_write_network_bandwidth_for_server'/'max_remote_write_network_bandwidth' throttling.
+- `ProfileEvent_LocalReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_read_bandwidth_for_server'/'max_local_read_bandwidth' throttler.
+- `ProfileEvent_LocalReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_read_bandwidth_for_server'/'max_local_read_bandwidth' throttling.
+- `ProfileEvent_LocalWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_write_bandwidth_for_server'/'max_local_write_bandwidth' throttler.
+- `ProfileEvent_LocalWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_write_bandwidth_for_server'/'max_local_write_bandwidth' throttling.
+- `ProfileEvent_BackupThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_backup_bandwidth_for_server' throttler.
+- `ProfileEvent_BackupThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_backup_bandwidth_for_server' throttling.
+- `ProfileEvent_MergesThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_merges_bandwidth_for_server' throttler.
+- `ProfileEvent_MergesThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_merges_bandwidth_for_server' throttling.
+- `ProfileEvent_MutationsThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_mutations_bandwidth_for_server' throttler.
+- `ProfileEvent_MutationsThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_mutations_bandwidth_for_server' throttling.
+- `ProfileEvent_UserThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_network_bandwidth_for_user' throttler.
+- `ProfileEvent_UserThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_network_bandwidth_for_user' throttling.
+- `ProfileEvent_AllUsersThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_network_bandwidth_for_all_users' throttler.
+- `ProfileEvent_AllUsersThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_network_bandwidth_for_all_users' throttling.
+- `ProfileEvent_QueryRemoteReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_read_network_bandwidth' throttler.
+- `ProfileEvent_QueryRemoteReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_read_network_bandwidth' throttling.
+- `ProfileEvent_QueryRemoteWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_remote_write_network_bandwidth' throttler.
+- `ProfileEvent_QueryRemoteWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_remote_write_network_bandwidth' throttling.
+- `ProfileEvent_QueryLocalReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_read_bandwidth' throttler.
+- `ProfileEvent_QueryLocalReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_read_bandwidth' throttling.
+- `ProfileEvent_QueryLocalWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_local_write_bandwidth' throttler.
+- `ProfileEvent_QueryLocalWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_local_write_bandwidth' throttling.
+- `ProfileEvent_QueryBackupThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_backup_bandwidth' throttler.
+- `ProfileEvent_QueryBackupThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_backup_bandwidth' throttling.
+- `ProfileEvent_DistrCacheReadThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_distributed_cache_read_bandwidth_for_server' throttler.
+- `ProfileEvent_DistrCacheReadThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_distributed_cache_read_bandwidth_for_server' throttling.
+- `ProfileEvent_DistrCacheWriteThrottlerBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through 'max_distributed_cache_write_bandwidth_for_server' throttler.
+- `ProfileEvent_DistrCacheWriteThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform 'max_distributed_cache_write_bandwidth_for_server' throttling.
+- `ProfileEvent_ThrottlerSleepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was sleeping to conform all throttling settings.
+- `ProfileEvent_ReadTasksWithAppliedPatches` ([UInt64](/core/reference/data-types/int-uint)) — Total number of read tasks for which there was any patch part applied
+- `ProfileEvent_PatchesAppliedInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied patch parts among all read tasks
+- `ProfileEvent_PatchesMergeAppliedInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied patch parts with Merge mode among all read tasks
+- `ProfileEvent_PatchesJoinAppliedInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied patch parts with Join mode among all read tasks
+- `ProfileEvent_PatchesReadRows` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows read from patch parts
+- `ProfileEvent_PatchesReadUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total number of uncompressed bytes read from patch parts
+- `ProfileEvent_PatchesJoinRowsAddedToHashTable` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows added to hash tables when applying patch parts with Join mode
+- `ProfileEvent_ApplyPatchesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent applying patch parts to blocks
+- `ProfileEvent_ReadPatchesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent reading patch parts
+- `ProfileEvent_BuildPatchesMergeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent building indexes for applying patch parts with Merge mode
+- `ProfileEvent_BuildPatchesJoinMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent building indexes and hash tables for applying patch parts with Join mode
+- `ProfileEvent_AnalyzePatchRangesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent analyzing index of patch parts
+- `ProfileEvent_ReadTasksWithAppliedMutationsOnFly` ([UInt64](/core/reference/data-types/int-uint)) — Total number of read tasks for which there was any mutation applied on fly
+- `ProfileEvent_MutationsAppliedOnFlyInAllReadTasks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of applied mutations on-fly among all read tasks
+- `ProfileEvent_PatchesAcquireLockTries` ([UInt64](/core/reference/data-types/int-uint)) — Total number of tries to acquire lock for executing lightweight updates
+- `ProfileEvent_PatchesAcquireLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of microseconds spent to acquire lock for executing lightweight updates
+- `ProfileEvent_DiskObjectStorageWaitBlobRemovalMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for pending blob removal after committing metadata transaction
+- `ProfileEvent_SchedulerIOReadRequests` ([UInt64](/core/reference/data-types/int-uint)) — Resource requests passed through scheduler for IO reads.
+- `ProfileEvent_SchedulerIOReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through scheduler for IO reads.
+- `ProfileEvent_SchedulerIOReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting on resource requests for IO reads.
+- `ProfileEvent_SchedulerIOWriteRequests` ([UInt64](/core/reference/data-types/int-uint)) — Resource requests passed through scheduler for IO writes.
+- `ProfileEvent_SchedulerIOWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes passed through scheduler for IO writes.
+- `ProfileEvent_SchedulerIOWriteWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting on resource requests for IO writes.
+- `ProfileEvent_QueryMaskingRulesMatch` ([UInt64](/core/reference/data-types/int-uint)) — Number of times query masking rules was successfully matched.
+- `ProfileEvent_ReplicatedPartFetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part was downloaded from replica of a ReplicatedMergeTree table.
+- `ProfileEvent_ReplicatedPartFailedFetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part was failed to download from replica of a ReplicatedMergeTree table.
+- `ProfileEvent_ObsoleteReplicatedParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part was covered by another data part that has been fetched from a replica (so, we have marked a covered data part as obsolete and no longer needed).
+- `ProfileEvent_ReplicatedPartMerges` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data parts of ReplicatedMergeTree tables were successfully merged.
+- `ProfileEvent_ReplicatedPartFetchesOfMerged` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we prefer to download already merged part from replica of ReplicatedMergeTree table instead of performing a merge ourself (usually we prefer doing a merge ourself to save network traffic). This happens when we have not all source parts to perform a merge or when the data part is old enough.
+- `ProfileEvent_ReplicatedPartMutations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data parts of ReplicatedMergeTree tables were successfully mutated.
+- `ProfileEvent_ReplicatedPartChecks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we had to perform advanced search for a data part on replicas or to clarify the need of an existing data part.
+- `ProfileEvent_ReplicatedPartChecksFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the advanced search for a data part on replicas did not give result or when unexpected part has been found and moved away.
+- `ProfileEvent_ReplicatedDataLoss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a data part that we wanted doesn't exist on any replica (even on replicas that are offline right now). That data parts are definitely lost. This is normal due to asynchronous replication (if quorum inserts were not enabled), when the replica on which the data part was written was failed and when it became online after fail it doesn't contain that data part.
+- `ProfileEvent_ReplicatedCoveredPartsInZooKeeperOnStart` ([UInt64](/core/reference/data-types/int-uint)) — For debugging purposes. Number of parts in ZooKeeper that have a covering part, but doesn't exist on disk. Checked on server start.
+- `ProfileEvent_QuorumParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts written with quorum. It counts as one part for sync insert and maybe up to async inserts count for insert which flushes async inserts.
+- `ProfileEvent_QuorumWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for quorum during inserts.
+- `ProfileEvent_QuorumFailedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of inserts failed due to quorum not reaching.
+- `ProfileEvent_InsertedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows INSERTed to all tables.
+- `ProfileEvent_InsertedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes (uncompressed; for columns as they stored in memory) INSERTed to all tables.
+- `ProfileEvent_DelayedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a MergeTree table was throttled due to high number of active data parts for partition.
+- `ProfileEvent_RejectedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a MergeTree table was rejected with 'Too many parts' exception due to high number of active data parts for partition.
+- `ProfileEvent_DelayedInsertsMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of milliseconds spent while the INSERT of a block to a MergeTree table was throttled due to high number of active data parts for partition.
+- `ProfileEvent_DelayedMutations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the mutation of a MergeTree table was throttled due to high number of unfinished mutations for table.
+- `ProfileEvent_RejectedMutations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the mutation of a MergeTree table was rejected with 'Too many mutations' exception due to high number of unfinished mutations for table.
+- `ProfileEvent_DelayedMutationsMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of milliseconds spent while the mutation of a MergeTree table was throttled due to high number of unfinished mutations for table.
+- `ProfileEvent_RejectedLightweightUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Number of time the lightweight update was rejected due to too many uncompressed bytes in patches.
+- `ProfileEvent_DistributedDelayedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a Distributed table was throttled due to high number of pending bytes.
+- `ProfileEvent_DistributedRejectedInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the INSERT of a block to a Distributed table was rejected with 'Too many bytes' exception due to high number of pending bytes.
+- `ProfileEvent_DistributedDelayedInsertsMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total number of milliseconds spent while the INSERT of a block to a Distributed table was throttled due to high number of pending bytes.
+- `ProfileEvent_DuplicatedInsertedBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of the synchronous inserts to a *MergeTree table was deduplicated.
+- `ProfileEvent_SelfDuplicatedAsyncInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of async inserts in the INSERTed block to a ReplicatedMergeTree table was self deduplicated.
+- `ProfileEvent_DuplicatedAsyncInserts` ([UInt64](/core/reference/data-types/int-uint)) — Number of async inserts in the INSERTed block to a ReplicatedMergeTree table was deduplicated.
+- `ProfileEvent_DuplicationElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent checking for duplication of INSERTed blocks to *MergeTree tables.
+- `ProfileEvent_ZooKeeperInit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times connection with ZooKeeper has been established.
+- `ProfileEvent_ZooKeeperTransactions` ([UInt64](/core/reference/data-types/int-uint)) — Number of ZooKeeper operations, which include both read and write operations as well as multi-transactions.
+- `ProfileEvent_ZooKeeperList` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'list' (getChildren) requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperListRecursive` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'listRecursive' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperCreate` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'create' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperRemove` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'remove' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperExists` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'exists' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperGet` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'get' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperSet` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'set' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperMulti` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'multi' requests to ZooKeeper (compound transactions).
+- `ProfileEvent_ZooKeeperMultiRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of read 'multi' requests to ZooKeeper (compound transactions).
+- `ProfileEvent_ZooKeeperMultiWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of write 'multi' requests to ZooKeeper (compound transactions).
+- `ProfileEvent_ZooKeeperCheck` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'check' requests to ZooKeeper. Usually they don't make sense in isolation, only as part of a complex transaction.
+- `ProfileEvent_ZooKeeperSync` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'sync' requests to ZooKeeper. These requests are rarely needed or usable.
+- `ProfileEvent_ZooKeeperReconfig` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'reconfig' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperClose` ([UInt64](/core/reference/data-types/int-uint)) — Number of times connection with ZooKeeper has been closed voluntary.
+- `ProfileEvent_ZooKeeperGetACL` ([UInt64](/core/reference/data-types/int-uint)) — Number of 'getACL' requests to ZooKeeper.
+- `ProfileEvent_ZooKeeperWatchResponse` ([UInt64](/core/reference/data-types/int-uint)) — Number of times watch notification has been received from ZooKeeper.
+- `ProfileEvent_ZooKeeperUserExceptions` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while working with ZooKeeper related to the data (no node, bad version or similar).
+- `ProfileEvent_ZooKeeperHardwareExceptions` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while working with ZooKeeper related to network (connection loss or similar).
+- `ProfileEvent_ZooKeeperOtherExceptions` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while working with ZooKeeper other than ZooKeeperUserExceptions and ZooKeeperHardwareExceptions.
+- `ProfileEvent_ZooKeeperWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Number of microseconds spent waiting for responses from ZooKeeper after creating a request, summed across all the requesting threads.
+- `ProfileEvent_ZooKeeperBytesSent` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes send over network while communicating with ZooKeeper.
+- `ProfileEvent_ZooKeeperBytesReceived` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received over network while communicating with ZooKeeper.
+- `ProfileEvent_DistributedConnectionTries` ([UInt64](/core/reference/data-types/int-uint)) — Total count of distributed connection attempts.
+- `ProfileEvent_DistributedConnectionUsable` ([UInt64](/core/reference/data-types/int-uint)) — Total count of successful distributed connections to a usable server (with required table, but maybe stale).
+- `ProfileEvent_DistributedConnectionFailTry` ([UInt64](/core/reference/data-types/int-uint)) — Total count when distributed connection fails with retry.
+- `ProfileEvent_DistributedConnectionMissingTable` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we rejected a replica from a distributed query, because it did not contain a table needed for the query.
+- `ProfileEvent_DistributedConnectionStaleReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we rejected a replica from a distributed query, because some table needed for a query had replication lag higher than the configured threshold.
+- `ProfileEvent_DistributedConnectionSkipReadOnlyReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas skipped during INSERT into Distributed table due to replicas being read-only
+- `ProfileEvent_DistributedConnectionFailAtAll` ([UInt64](/core/reference/data-types/int-uint)) — Total count when distributed connection fails after all retries finished.
+- `ProfileEvent_Shards` ([UInt64](/core/reference/data-types/int-uint)) — The number of shards involved in a query, summed across all distributed tables and table functions. A single host is counted multiple times if it appears in multiple tables. The number counts the total expected number of shards, which includes skipped shards with the `skip_unavailable_shards` setting.
+- `ProfileEvent_HedgedRequestsChangeReplica` ([UInt64](/core/reference/data-types/int-uint)) — Total count when timeout for changing replica expired in hedged requests.
+- `ProfileEvent_SuspendSendingQueryToShard` ([UInt64](/core/reference/data-types/int-uint)) — Total count when sending query to shard was suspended when async_query_sending_for_remote is enabled.
+- `ProfileEvent_CompileFunction` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a compilation of generated LLVM code (to create fused function for complex expressions) was initiated.
+- `ProfileEvent_CompiledFunctionExecute` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a compiled function was executed.
+- `ProfileEvent_CompileExpressionsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for compilation of expressions to LLVM code.
+- `ProfileEvent_CompileExpressionsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes used for expressions compilation.
+- `ProfileEvent_ExecuteShellCommand` ([UInt64](/core/reference/data-types/int-uint)) — Number of shell command executions.
+- `ProfileEvent_ExternalProcessingCompressedBytesTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed bytes written by external processing (sorting/aggregating/joining)
+- `ProfileEvent_ExternalProcessingUncompressedBytesTotal` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written by external processing (sorting/aggregating/joining)
+- `ProfileEvent_ExternalProcessingFilesTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of files used by external processing (sorting/aggregating/joining)
+- `ProfileEvent_ExternalSortWritePart` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a temporary file was written to disk for sorting in external memory.
+- `ProfileEvent_ExternalSortMerge` ([UInt64](/core/reference/data-types/int-uint)) — Number of times temporary files were merged for sorting in external memory.
+- `ProfileEvent_ExternalSortCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed bytes written for sorting in external memory.
+- `ProfileEvent_ExternalSortUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written for sorting in external memory.
+- `ProfileEvent_ExternalAggregationWritePart` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a temporary file was written to disk for aggregation in external memory.
+- `ProfileEvent_ExternalAggregationMerge` ([UInt64](/core/reference/data-types/int-uint)) — Number of times temporary files were merged for aggregation in external memory.
+- `ProfileEvent_ExternalAggregationCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to disk for aggregation in external memory.
+- `ProfileEvent_ExternalAggregationUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written to disk for aggregation in external memory.
+- `ProfileEvent_ExternalJoinWritePart` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a temporary file was written to disk for JOIN in external memory.
+- `ProfileEvent_ExternalJoinMerge` ([UInt64](/core/reference/data-types/int-uint)) — Number of times temporary files were merged for JOIN in external memory.
+- `ProfileEvent_ExternalJoinCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of compressed bytes written for JOIN in external memory.
+- `ProfileEvent_ExternalJoinUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data (uncompressed, before compression) written for JOIN in external memory.
+- `ProfileEvent_IcebergPartitionPrunedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of skipped files during Iceberg partition pruning
+- `ProfileEvent_IcebergTrivialCountOptimizationApplied` ([UInt64](/core/reference/data-types/int-uint)) — Trivial count optimization applied while reading from Iceberg
+- `ProfileEvent_IcebergVersionHintUsed` ([UInt64](/core/reference/data-types/int-uint)) — Number of times version-hint.text has been used.
+- `ProfileEvent_IcebergMinMaxIndexPrunedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of skipped files by using MinMax index in Iceberg
+- `ProfileEvent_JoinBuildTableRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows in the build table for a JOIN operation.
+- `ProfileEvent_JoinProbeTableRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows in the probe table for a JOIN operation.
+- `ProfileEvent_JoinResultRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of rows in the result of a JOIN operation.
+- `ProfileEvent_JoinNonJoinedTransformBlockCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks emitted by NonJoinedBlocksTransform.
+- `ProfileEvent_JoinNonJoinedTransformRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-joined rows emitted by NonJoinedBlocksTransform.
+- `ProfileEvent_JoinDelayedJoinedTransformBlockCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks emitted by DelayedJoinedBlocksWorkerTransform.
+- `ProfileEvent_JoinDelayedJoinedTransformRowCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows emitted by DelayedJoinedBlocksWorkerTransform.
+- `ProfileEvent_JoinSpillingHashJoinSwitchedToGraceJoin` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a (Concurrent)HashJoin was switched to GraceHashJoin due to memory limit in SpillingHashJoin.
+- `ProfileEvent_JoinReorderMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent executing JOIN reordering algorithm.
+- `ProfileEvent_JoinOptimizeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent executing JOIN plan optimizations.
+- `ProfileEvent_QueryPlanOptimizeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent executing query plan optimizations.
+- `ProfileEvent_DeltaLakePartitionPrunedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of skipped files during DeltaLake partition pruning
+- `ProfileEvent_DeltaLakeSnapshotInitializations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a DeltaLake table snapshot was initialized (loaded from object storage)
+- `ProfileEvent_DeltaLakeScannedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files scanned during DeltaLake scan callbacks
+- `ProfileEvent_SlowRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads from a file that were slow. This indicate system overload. Thresholds are controlled by read_backoff_* settings.
+- `ProfileEvent_ReadBackoff` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the number of query processing threads was lowered due to slow reads.
+- `ProfileEvent_ReplicaPartialShutdown` ([UInt64](/core/reference/data-types/int-uint)) — How many times Replicated table has to deinitialize its state due to session expiration in ZooKeeper. The state is reinitialized every time when ZooKeeper is available again.
+- `ProfileEvent_IndexAnalysisRounds` ([UInt64](/core/reference/data-types/int-uint)) — Number of times index analysis was performed within the query.
+- `ProfileEvent_SelectedParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts selected to read from a MergeTree table.
+- `ProfileEvent_SelectedPartsTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of total data parts before selecting which ones to read from a MergeTree table.
+- `ProfileEvent_SelectedRanges` ([UInt64](/core/reference/data-types/int-uint)) — Number of (non-adjacent) ranges in all data parts selected to read from a MergeTree table.
+- `ProfileEvent_SelectedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Number of marks (index granules) selected to read from a MergeTree table.
+- `ProfileEvent_SelectedMarksTotal` ([UInt64](/core/reference/data-types/int-uint)) — Number of total marks (index granules) before selecting which ones to read from a MergeTree table.
+- `ProfileEvent_SelectedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows SELECTed from all tables.
+- `ProfileEvent_SelectedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes (uncompressed; for columns as they stored in memory) SELECTed from all tables.
+- `ProfileEvent_RowsReadByMainReader` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows read from MergeTree tables by the main reader (after PREWHERE step).
+- `ProfileEvent_RowsReadByPrewhereReaders` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows read from MergeTree tables (in total) by prewhere readers.
+- `ProfileEvent_LoadedDataParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts loaded by MergeTree tables during initialization.
+- `ProfileEvent_LoadedDataPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Microseconds spent by MergeTree tables for loading data parts during initialization.
+- `ProfileEvent_FilteringMarksWithPrimaryKeyProcessedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Total marks processed during PK analysis.
+- `ProfileEvent_FilteringMarksWithPrimaryKeyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent filtering parts by PK.
+- `ProfileEvent_FilteringMarksWithSecondaryKeysMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent filtering parts by skip indexes.
+- `ProfileEvent_DistributedIndexAnalysisMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent during distributed index analysis
+- `ProfileEvent_DistributedIndexAnalysisScheduledReplicas` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas (local replica will be accounted once) to which distributed index analysis has been scheduled
+- `ProfileEvent_DistributedIndexAnalysisReplicaUnavailable` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distributed index analysis failed on one of replicas without fallback (failed during connect)
+- `ProfileEvent_DistributedIndexAnalysisReplicaFallback` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distributed index analysis failed on one of replicas with fallback to local replica
+- `ProfileEvent_DistributedIndexAnalysisParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts send for distributed index analysis
+- `ProfileEvent_DistributedIndexAnalysisMissingParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of missing parts during distributed index analysis that will be resolved locally
+- `ProfileEvent_WaitMarksLoadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent loading marks
+- `ProfileEvent_BackgroundLoadingMarksTasks` ([UInt64](/core/reference/data-types/int-uint)) — Number of background tasks for loading marks
+- `ProfileEvent_MarksTasksFromCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of times marks were loaded synchronously because they were already present in the cache.
+- `ProfileEvent_LoadingMarksTasksCanceled` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background tasks for loading marks were canceled
+- `ProfileEvent_LoadedMarksFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of mark files loaded.
+- `ProfileEvent_LoadedMarksCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of marks loaded (total across columns).
+- `ProfileEvent_LoadedMarksMemoryBytes` ([UInt64](/core/reference/data-types/int-uint)) — Size of in-memory representations of loaded marks.
+- `ProfileEvent_MarkCacheEvictedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from the mark cache.
+- `ProfileEvent_MarkCacheEvictedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Number of marks evicted from the mark cache.
+- `ProfileEvent_MarkCacheEvictedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of mark files evicted from the mark cache.
+- `ProfileEvent_LoadedPrimaryIndexFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of primary index files loaded.
+- `ProfileEvent_LoadedPrimaryIndexRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows of primary key loaded.
+- `ProfileEvent_LoadedPrimaryIndexBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows of primary key loaded.
+- `ProfileEvent_Merge` ([UInt64](/core/reference/data-types/int-uint)) — Number of launched background merges.
+- `ProfileEvent_MergeSourceParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of source parts scheduled for merges.
+- `ProfileEvent_MergedRows` ([UInt64](/core/reference/data-types/int-uint)) — Rows read for background merges. This is the number of rows before merge.
+- `ProfileEvent_MergedColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of columns merged during the horizontal stage of merges.
+- `ProfileEvent_GatheredColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of columns gathered during the vertical stage of merges.
+- `ProfileEvent_MergedProjections` ([UInt64](/core/reference/data-types/int-uint)) — Number of projections merged (not rebuilt) during MergeTree merges.
+- `ProfileEvent_RebuiltProjections` ([UInt64](/core/reference/data-types/int-uint)) — Number of projections rebuilt from scratch during MergeTree merges.
+- `ProfileEvent_MergedUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) that was read for background merges. This is the number before merge.
+- `ProfileEvent_MergeWrittenRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows written during the merge.
+- `ProfileEvent_MergeTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for background merges
+- `ProfileEvent_MergeExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of background merges
+- `ProfileEvent_MergeCommitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for committing merge results (part renaming, checksum verification, ZooKeeper updates)
+- `ProfileEvent_MergeHorizontalStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for horizontal stage of background merges
+- `ProfileEvent_MergeHorizontalStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of horizontal stage of background merges
+- `ProfileEvent_MergeVerticalStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for vertical stage of background merges
+- `ProfileEvent_MergeVerticalStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of vertical stage of background merges
+- `ProfileEvent_MergeTextIndexStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for text index stage of background merges
+- `ProfileEvent_MergeTextIndexStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of text index stage of background merges
+- `ProfileEvent_MergeProjectionStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for projection stage of background merges
+- `ProfileEvent_MergeProjectionStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of projection stage of background merges
+- `ProfileEvent_MergePrewarmStageTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for prewarm stage of background merges
+- `ProfileEvent_MergePrewarmStageExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of prewarm stage of background merges
+- `ProfileEvent_MergesRejectedByMemoryLimit` ([UInt64](/core/reference/data-types/int-uint)) — Number of background merges rejected due to memory limit
+- `ProfileEvent_MergingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while merging sorted columns
+- `ProfileEvent_AggregatingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while aggregating sorted columns
+- `ProfileEvent_CoalescingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while coalescing sorted columns
+- `ProfileEvent_CollapsingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while collapsing sorted columns
+- `ProfileEvent_ReplacingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while replacing sorted columns
+- `ProfileEvent_SummingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while summing sorted columns
+- `ProfileEvent_VersionedCollapsingSortedMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while version collapsing sorted columns
+- `ProfileEvent_GatheringColumnMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent while gathering columns for vertical merge
+- `ProfileEvent_MutationTotalParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of total parts for which mutations tried to be applied
+- `ProfileEvent_MutationUntouchedParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of total parts for which mutations tried to be applied but which was completely skipped according to predicate
+- `ProfileEvent_MutationCreatedEmptyParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of total parts which were replaced to empty parts instead of running mutation
+- `ProfileEvent_MutatedRows` ([UInt64](/core/reference/data-types/int-uint)) — Rows read for mutations. This is the number of rows before mutation
+- `ProfileEvent_MutatedUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) that was read for mutations. This is the number before mutation.
+- `ProfileEvent_MutationAffectedRowsUpperBound` ([UInt64](/core/reference/data-types/int-uint)) — The upper bound of number of rows that were affected by mutation (e.g. number of rows that satisfy the predicate of UPDATE or DELETE mutation). The actual number may be slightly less
+- `ProfileEvent_MutationTotalMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for mutations.
+- `ProfileEvent_MutationExecuteMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total busy time spent for execution of mutations.
+- `ProfileEvent_MutationCommitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for committing mutation results (part renaming, checksum verification, ZooKeeper updates)
+- `ProfileEvent_MutationAllPartColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times when task to mutate all columns in part was created
+- `ProfileEvent_MutationSomePartColumns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times when task to mutate some columns in part was created
+- `ProfileEvent_MutateTaskProjectionsCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating projections in mutations
+- `ProfileEvent_MergeTreeDataWriterRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows INSERTed to MergeTree tables.
+- `ProfileEvent_MergeTreeDataWriterUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) INSERTed to MergeTree tables.
+- `ProfileEvent_MergeTreeDataWriterCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written to filesystem for data INSERTed to MergeTree tables.
+- `ProfileEvent_MergeTreeDataWriterBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables. Each block forms a data part of level zero.
+- `ProfileEvent_MergeTreeDataWriterBlocksAlreadySorted` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables that appeared to be already sorted.
+- `ProfileEvent_MergeMutateBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for MergeMutate executor tasks.
+- `ProfileEvent_MergeMutateBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for MergeMutate executor tasks.
+- `ProfileEvent_MergeMutateBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for MergeMutate executor.
+- `ProfileEvent_MergeMutateBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in MergeMutate executor.
+- `ProfileEvent_MoveBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for Move executor tasks.
+- `ProfileEvent_MoveBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for Move executor tasks.
+- `ProfileEvent_MoveBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for Move executor.
+- `ProfileEvent_MoveBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in Move executor.
+- `ProfileEvent_FetchBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for Fetch executor tasks.
+- `ProfileEvent_FetchBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for Fetch executor tasks.
+- `ProfileEvent_FetchBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for Fetch executor.
+- `ProfileEvent_FetchBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in Fetch executor.
+- `ProfileEvent_CommonBackgroundExecutorTaskExecuteStepMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in executeStep() for Common executor tasks.
+- `ProfileEvent_CommonBackgroundExecutorTaskCancelMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in cancel() for Common executor tasks.
+- `ProfileEvent_CommonBackgroundExecutorTaskResetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent resetting task for Common executor.
+- `ProfileEvent_CommonBackgroundExecutorWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for completion in Common executor.
+- `ProfileEvent_MergeTreeDataWriterSkipIndicesCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating skip indices
+- `ProfileEvent_MergeTreeDataWriterStatisticsCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating statistics
+- `ProfileEvent_MergeTreeDataWriterSortingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent sorting blocks
+- `ProfileEvent_MergeTreeDataWriterMergingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent merging input blocks (for special MergeTree engines)
+- `ProfileEvent_MergeTreeDataWriterProjectionsCalculationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent calculating projections
+- `ProfileEvent_MergeTreeDataProjectionWriterSortingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent sorting blocks (for projection it might be a key different from table's sorting key)
+- `ProfileEvent_MergeTreeDataProjectionWriterMergingBlocksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent merging blocks
+- `ProfileEvent_InsertedWideParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts inserted in Wide format.
+- `ProfileEvent_InsertedCompactParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts inserted in Compact format.
+- `ProfileEvent_MergedIntoWideParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts merged into Wide format.
+- `ProfileEvent_MergedIntoCompactParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts merged into Compact format.
+- `ProfileEvent_MergeTreeDataProjectionWriterRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows INSERTed to MergeTree tables projection.
+- `ProfileEvent_MergeTreeDataProjectionWriterUncompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Uncompressed bytes (for columns as they stored in memory) INSERTed to MergeTree tables projection.
+- `ProfileEvent_MergeTreeDataProjectionWriterCompressedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written to filesystem for data INSERTed to MergeTree tables projection.
+- `ProfileEvent_MergeTreeDataProjectionWriterBlocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables projection. Each block forms a data part of level zero.
+- `ProfileEvent_MergeTreeDataProjectionWriterBlocksAlreadySorted` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks INSERTed to MergeTree tables projection that appeared to be already sorted.
+- `ProfileEvent_CannotRemoveEphemeralNode` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an error happened while trying to remove ephemeral node. This is not an issue, because our implementation of ZooKeeper library guarantee that the session will expire and the node will be removed.
+- `ProfileEvent_RegexpWithMultipleNeedlesCreated` ([UInt64](/core/reference/data-types/int-uint)) — Regular expressions with multiple needles (VectorScan library) compiled.
+- `ProfileEvent_RegexpWithMultipleNeedlesGlobalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we fetched compiled regular expression with multiple needles (VectorScan library) from the global cache.
+- `ProfileEvent_RegexpWithMultipleNeedlesGlobalCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we failed to fetch compiled regular expression with multiple needles (VectorScan library) from the global cache.
+- `ProfileEvent_RegexpLocalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we fetched compiled regular expression from a local cache.
+- `ProfileEvent_RegexpLocalCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we failed to fetch compiled regular expression from a local cache.
+- `ProfileEvent_ContextLock` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the lock of Context was acquired or tried to acquire. This is global lock.
+- `ProfileEvent_ContextLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Context lock wait time in microseconds
+- `ProfileEvent_StorageBufferFlush` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a buffer in a 'Buffer' table was flushed.
+- `ProfileEvent_StorageBufferErrorOnFlush` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a buffer in the 'Buffer' table has not been able to flush due to error writing in the destination table.
+- `ProfileEvent_StorageBufferPassedAllMinThresholds` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on min thresholds has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedTimeMaxThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on max time threshold has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedRowsMaxThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on max rows threshold has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedBytesMaxThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a criteria on max bytes threshold has been reached to flush a buffer in a 'Buffer' table.
+- `ProfileEvent_StorageBufferPassedTimeFlushThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background-only flush threshold on time has been reached to flush a buffer in a 'Buffer' table. This is expert-only metric. If you read this and you are not an expert, stop reading.
+- `ProfileEvent_StorageBufferPassedRowsFlushThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background-only flush threshold on rows has been reached to flush a buffer in a 'Buffer' table. This is expert-only metric. If you read this and you are not an expert, stop reading.
+- `ProfileEvent_StorageBufferPassedBytesFlushThreshold` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background-only flush threshold on bytes has been reached to flush a buffer in a 'Buffer' table. This is expert-only metric. If you read this and you are not an expert, stop reading.
+- `ProfileEvent_StorageBufferLayerLockReadersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time for waiting for Buffer layer during reading.
+- `ProfileEvent_StorageBufferLayerLockWritersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time for waiting free Buffer layer to write to (can be used to tune Buffer layers).
+- `ProfileEvent_SystemLogErrorOnFlush` ([UInt64](/core/reference/data-types/int-uint)) — Number of times any of the system logs have failed to flush to the corresponding system table. Attempts to flush are repeated.
+- `ProfileEvent_DictCacheKeysRequested` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys requested from the data source for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheKeysRequestedMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys requested from the data source for dictionaries of 'cache' types but not found in the data source.
+- `ProfileEvent_DictCacheKeysRequestedFound` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys requested from the data source for dictionaries of 'cache' types and found in the data source.
+- `ProfileEvent_DictCacheKeysExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys looked up in the dictionaries of 'cache' types and found in the cache but they were obsolete.
+- `ProfileEvent_DictCacheKeysNotFound` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys looked up in the dictionaries of 'cache' types and not found.
+- `ProfileEvent_DictCacheKeysHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of keys looked up in the dictionaries of 'cache' types and found in the cache.
+- `ProfileEvent_DictCacheRequestTimeNs` ([UInt64](/core/reference/data-types/int-uint)) — Number of nanoseconds spend in querying the external data sources for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of bulk requests to the external data sources for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheLockWriteNs` ([UInt64](/core/reference/data-types/int-uint)) — Number of nanoseconds spend in waiting for write lock to update the data for the dictionaries of 'cache' types.
+- `ProfileEvent_DictCacheLockReadNs` ([UInt64](/core/reference/data-types/int-uint)) — Number of nanoseconds spend in waiting for read lock to lookup the data for the dictionaries of 'cache' types.
+- `ProfileEvent_DistributedSyncInsertionTimeoutExceeded` ([UInt64](/core/reference/data-types/int-uint)) — A timeout has exceeded while waiting for shards during synchronous insertion into a Distributed table (with 'distributed_foreground_insert' = 1)
+- `ProfileEvent_DistributedAsyncInsertionFailures` ([UInt64](/core/reference/data-types/int-uint)) — Number of failures for asynchronous insertion into a Distributed table (with 'distributed_foreground_insert' = 0)
+- `ProfileEvent_DataAfterMergeDiffersFromReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data after merge is not byte-identical to the data on another replicas. There could be several reasons:
+ 1. Using newer version of compression library after server update.
+ 2. Using another compression method.
+ 3. Non-deterministic compression algorithm (highly unlikely).
+ 4. Non-deterministic merge algorithm due to logical error in code.
+ 5. Data corruption in memory due to bug in code.
+ 6. Data corruption in memory due to hardware issue.
+ 7. Manual modification of source data after server startup.
+ 8. Manual modification of checksums stored in ZooKeeper.
+ 9. Part format related settings like 'enable_mixed_granularity_parts' are different on different replicas.
+ The server successfully detected this situation and will download merged part from the replica to force the byte-identical result.
+- `ProfileEvent_DataAfterMutationDiffersFromReplica` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data after mutation is not byte-identical to the data on other replicas. In addition to the reasons described in 'DataAfterMergeDiffersFromReplica', it is also possible due to non-deterministic mutation.
+- `ProfileEvent_PolygonsAddedToPool` ([UInt64](/core/reference/data-types/int-uint)) — A polygon has been added to the cache (pool) for the 'pointInPolygon' function.
+- `ProfileEvent_PolygonsInPoolAllocatedBytes` ([UInt64](/core/reference/data-types/int-uint)) — The number of bytes for polygons added to the cache (pool) for the 'pointInPolygon' function.
+- `ProfileEvent_NaiveBayesClassifierModelsLoaded` ([UInt64](/core/reference/data-types/int-uint)) — Number of Naive Bayes Classifier models loaded.
+- `ProfileEvent_NaiveBayesClassifierModelsAllocatedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes allocated for Naive Bayes Classifier models.
+- `ProfileEvent_USearchAddCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of vectors added to usearch indexes.
+- `ProfileEvent_USearchAddVisitedMembers` ([UInt64](/core/reference/data-types/int-uint)) — Number of nodes visited when adding vectors to usearch indexes.
+- `ProfileEvent_USearchAddComputedDistances` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distance was computed when adding vectors to usearch indexes.
+- `ProfileEvent_USearchSearchCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of search operations performed in usearch indexes.
+- `ProfileEvent_USearchSearchVisitedMembers` ([UInt64](/core/reference/data-types/int-uint)) — Number of nodes visited when searching in usearch indexes.
+- `ProfileEvent_USearchSearchComputedDistances` ([UInt64](/core/reference/data-types/int-uint)) — Number of times distance was computed when searching usearch indexes.
+- `ProfileEvent_RWLockAcquiredReadLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read lock was acquired (in a heavy RWLock).
+- `ProfileEvent_RWLockAcquiredWriteLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a write lock was acquired (in a heavy RWLock).
+- `ProfileEvent_RWLockReadersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for a read lock to be acquired (in a heavy RWLock).
+- `ProfileEvent_RWLockWritersWaitMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for a write lock to be acquired (in a heavy RWLock).
+- `ProfileEvent_DNSError` ([UInt64](/core/reference/data-types/int-uint)) — Total count of errors in DNS resolution
+- `ProfileEvent_PartsLockHoldMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent holding data parts lock in MergeTree tables
+- `ProfileEvent_PartsLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for data parts lock in MergeTree tables
+- `ProfileEvent_PartsLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times data parts lock has been acquired for MergeTree tables
+- `ProfileEvent_SharedPartsLockHoldMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent holding shared data parts lock in MergeTree tables
+- `ProfileEvent_SharedPartsLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for shared data parts lock in MergeTree tables
+- `ProfileEvent_SharedPartsLocks` ([UInt64](/core/reference/data-types/int-uint)) — Number of times shared data parts lock has been acquired for MergeTree tables
+- `ProfileEvent_RealTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total (wall clock) time spent in processing (queries and other tasks) threads (note that this is a sum).
+- `ProfileEvent_UserTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in processing (queries and other tasks) threads executing CPU instructions in user mode. This includes time CPU pipeline was stalled due to main memory access, cache misses, branch mispredictions, hyper-threading, etc.
+- `ProfileEvent_SystemTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in processing (queries and other tasks) threads executing CPU instructions in OS kernel mode. This is time spent in syscalls, excluding waiting time during blocking syscalls.
+- `ProfileEvent_MemoryOvercommitWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in waiting for memory to be freed in OvercommitTracker.
+- `ProfileEvent_MemoryAllocatorPurge` ([UInt64](/core/reference/data-types/int-uint)) — Total number of times memory allocator purge was requested
+- `ProfileEvent_MemoryAllocatorPurgeTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent for memory allocator purge
+- `ProfileEvent_SoftPageFaults` ([UInt64](/core/reference/data-types/int-uint)) — The number of soft page faults in query execution threads. Soft page fault usually means a miss in the memory allocator cache, which requires a new memory mapping from the OS and subsequent allocation of a page of physical memory.
+- `ProfileEvent_HardPageFaults` ([UInt64](/core/reference/data-types/int-uint)) — The number of hard page faults in query execution threads. High values indicate either that you forgot to turn off swap on your server, or eviction of memory pages of the ClickHouse binary during very high memory pressure, or successful usage of the 'mmap' read method for the tables data.
+- `ProfileEvent_OSIOWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a thread spent waiting for a result of IO operation, from the OS point of view. This is real IO that doesn't include page cache.
+- `ProfileEvent_OSCPUWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a thread was ready for execution but waiting to be scheduled by OS, from the OS point of view.
+- `ProfileEvent_OSCPUVirtualTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — CPU time spent seen by OS. Does not include involuntary waits due to virtualization.
+- `ProfileEvent_OSReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from disks or block devices. Doesn't include bytes read from page cache. May include excessive data due to block size, readahead, etc.
+- `ProfileEvent_OSWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to disks or block devices. Doesn't include bytes that are in page cache dirty pages. May not include data that was written by OS asynchronously.
+- `ProfileEvent_OSReadChars` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read from filesystem, including page cache, as well as network and other files.
+- `ProfileEvent_OSWriteChars` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to filesystem, including page cache, as well as network and other files.
+- `ProfileEvent_ParallelReplicasHandleRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent processing requests for marks from replicas
+- `ProfileEvent_ParallelReplicasHandleAnnouncementMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent processing replicas announcements
+- `ProfileEvent_ParallelReplicasAnnouncementMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to send an announcement
+- `ProfileEvent_ParallelReplicasReadRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent for read requests
+- `ProfileEvent_ParallelReplicasReadAssignedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Sum across all replicas of how many of scheduled marks were assigned by consistent hash
+- `ProfileEvent_ParallelReplicasReadUnassignedMarks` ([UInt64](/core/reference/data-types/int-uint)) — Sum across all replicas of how many unassigned marks were scheduled
+- `ProfileEvent_ParallelReplicasReadAssignedForStealingMarks` ([UInt64](/core/reference/data-types/int-uint)) — Sum across all replicas of how many of scheduled marks were assigned for stealing by consistent hash
+- `ProfileEvent_ParallelReplicasReadMarks` ([UInt64](/core/reference/data-types/int-uint)) — How many marks were read by the given replica
+- `ProfileEvent_ParallelReplicasStealingByHashMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent collecting segments meant for stealing by hash
+- `ProfileEvent_ParallelReplicasProcessingPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent processing data parts
+- `ProfileEvent_ParallelReplicasStealingLeftoversMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent collecting orphaned segments
+- `ProfileEvent_ParallelReplicasCollectingOwnedSegmentsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent collecting segments meant by hash
+- `ProfileEvent_ParallelReplicasNumRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of requests to the initiator.
+- `ProfileEvent_ParallelReplicasDeniedRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of completely denied requests to the initiator
+- `ProfileEvent_CacheWarmerBytesDownloaded` ([UInt64](/core/reference/data-types/int-uint)) — Amount of data fetched into filesystem cache by dedicated background threads.
+- `ProfileEvent_CacheWarmerDataPartsDownloaded` ([UInt64](/core/reference/data-types/int-uint)) — Number of data parts that were fully fetched by CacheWarmer.
+- `ProfileEvent_IgnoredColdParts` ([UInt64](/core/reference/data-types/int-uint)) — See setting ignore_cold_parts_seconds. Number of times read queries ignored very new parts that weren't pulled into cache by CacheWarmer yet.
+- `ProfileEvent_PreferredWarmedUnmergedParts` ([UInt64](/core/reference/data-types/int-uint)) — See setting prefer_warmed_unmerged_parts_seconds. Number of times read queries used outdated pre-merge parts that are in cache instead of merged part that wasn't pulled into cache by CacheWarmer yet.
+- `ProfileEvent_PerfCPUCycles` ([UInt64](/core/reference/data-types/int-uint)) — Total cycles. Be wary of what happens during CPU frequency scaling.
+- `ProfileEvent_PerfInstructions` ([UInt64](/core/reference/data-types/int-uint)) — Retired instructions. Be careful, these can be affected by various issues, most notably hardware interrupt counts.
+- `ProfileEvent_PerfCacheReferences` ([UInt64](/core/reference/data-types/int-uint)) — Cache accesses. Usually, this indicates Last Level Cache accesses, but this may vary depending on your CPU. This may include prefetches and coherency messages; again this depends on the design of your CPU.
+- `ProfileEvent_PerfCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Cache misses. Usually this indicates Last Level Cache misses; this is intended to be used in conjunction with the PERFCOUNTHWCACHEREFERENCES event to calculate cache miss rates.
+- `ProfileEvent_PerfBranchInstructions` ([UInt64](/core/reference/data-types/int-uint)) — Retired branch instructions. Prior to Linux 2.6.35, this used the wrong event on AMD processors.
+- `ProfileEvent_PerfBranchMisses` ([UInt64](/core/reference/data-types/int-uint)) — Mispredicted branch instructions.
+- `ProfileEvent_PerfBusCycles` ([UInt64](/core/reference/data-types/int-uint)) — Bus cycles, which can be different from total cycles.
+- `ProfileEvent_PerfStalledCyclesFrontend` ([UInt64](/core/reference/data-types/int-uint)) — Stalled cycles during issue.
+- `ProfileEvent_PerfStalledCyclesBackend` ([UInt64](/core/reference/data-types/int-uint)) — Stalled cycles during retirement.
+- `ProfileEvent_PerfRefCPUCycles` ([UInt64](/core/reference/data-types/int-uint)) — Total cycles; not affected by CPU frequency scaling.
+- `ProfileEvent_PerfCPUClock` ([UInt64](/core/reference/data-types/int-uint)) — The CPU clock, a high-resolution per-CPU timer
+- `ProfileEvent_PerfTaskClock` ([UInt64](/core/reference/data-types/int-uint)) — A clock count specific to the task that is running
+- `ProfileEvent_PerfContextSwitches` ([UInt64](/core/reference/data-types/int-uint)) — Number of context switches
+- `ProfileEvent_PerfCPUMigrations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the process has migrated to a new CPU
+- `ProfileEvent_PerfAlignmentFaults` ([UInt64](/core/reference/data-types/int-uint)) — Number of alignment faults. These happen when unaligned memory accesses happen; the kernel can handle these but it reduces performance. This happens only on some architectures (never on x86).
+- `ProfileEvent_PerfEmulationFaults` ([UInt64](/core/reference/data-types/int-uint)) — Number of emulation faults. The kernel sometimes traps on unimplemented instructions and emulates them for user space. This can negatively impact performance.
+- `ProfileEvent_PerfMinEnabledTime` ([UInt64](/core/reference/data-types/int-uint)) — For all events, minimum time that an event was enabled. Used to track event multiplexing influence
+- `ProfileEvent_PerfMinEnabledRunningTime` ([UInt64](/core/reference/data-types/int-uint)) — Running time for event with minimum enabled time. Used to track the amount of event multiplexing
+- `ProfileEvent_PerfDataTLBReferences` ([UInt64](/core/reference/data-types/int-uint)) — Data TLB references
+- `ProfileEvent_PerfDataTLBMisses` ([UInt64](/core/reference/data-types/int-uint)) — Data TLB misses
+- `ProfileEvent_PerfInstructionTLBReferences` ([UInt64](/core/reference/data-types/int-uint)) — Instruction TLB references
+- `ProfileEvent_PerfInstructionTLBMisses` ([UInt64](/core/reference/data-types/int-uint)) — Instruction TLB misses
+- `ProfileEvent_PerfLocalMemoryReferences` ([UInt64](/core/reference/data-types/int-uint)) — Local NUMA node memory reads
+- `ProfileEvent_PerfLocalMemoryMisses` ([UInt64](/core/reference/data-types/int-uint)) — Local NUMA node memory read misses
+- `ProfileEvent_CannotWriteToWriteBufferDiscard` ([UInt64](/core/reference/data-types/int-uint)) — Number of stack traces dropped by query profiler or signal handler because pipe is full or cannot write to pipe.
+- `ProfileEvent_QueryProfilerSignalOverruns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we drop processing of a query profiler signal due to overrun plus the number of signals that OS has not delivered due to overrun.
+- `ProfileEvent_QueryProfilerConcurrencyOverruns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times we drop processing of a query profiler signal due to too many concurrent query profilers in other threads, which may indicate overload.
+- `ProfileEvent_QueryProfilerRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times QueryProfiler had been run.
+- `ProfileEvent_QueryProfilerErrors` ([UInt64](/core/reference/data-types/int-uint)) — Invalid memory accesses during asynchronous stack unwinding.
+- `ProfileEvent_CreatedLogEntryForMerge` ([UInt64](/core/reference/data-types/int-uint)) — Successfully created log entry to merge parts in ReplicatedMergeTree.
+- `ProfileEvent_NotCreatedLogEntryForMerge` ([UInt64](/core/reference/data-types/int-uint)) — Log entry to merge parts in ReplicatedMergeTree is not created due to concurrent log update by another replica.
+- `ProfileEvent_CreatedLogEntryForMutation` ([UInt64](/core/reference/data-types/int-uint)) — Successfully created log entry to mutate parts in ReplicatedMergeTree.
+- `ProfileEvent_NotCreatedLogEntryForMutation` ([UInt64](/core/reference/data-types/int-uint)) — Log entry to mutate parts in ReplicatedMergeTree is not created due to concurrent log update by another replica.
+- `ProfileEvent_S3ReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in GET and HEAD requests to S3 storage.
+- `ProfileEvent_S3ReadRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for GET and HEAD requests, including the initial try and any retries, but excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_S3ReadRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for GET and HEAD requests, excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_S3WriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in POST, DELETE, PUT and PATCH requests to S3 storage.
+- `ProfileEvent_S3WriteRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for POST, DELETE, PUT and PATCH requests, including the initial try and any retries, but excluding retries performed internally by the retry strategy
+- `ProfileEvent_S3WriteRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for POST, DELETE, PUT and PATCH requests, excluding retries performed internally by the retry strategy
+- `ProfileEvent_DiskS3ReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in GET and HEAD requests to DiskS3 storage.
+- `ProfileEvent_DiskS3ReadRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for GET and HEAD requests to DiskS3 storage, including the initial try and any retries, but excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_DiskS3ReadRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for GET and HEAD requests to DiskS3 storage, excluding retries performed internally by the S3 retry strategy
+- `ProfileEvent_DiskS3WriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of non-throttling errors in POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsThrottling` ([UInt64](/core/reference/data-types/int-uint)) — Number of 429 and 503 errors in POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestsRedirects` ([UInt64](/core/reference/data-types/int-uint)) — Number of redirects in POST, DELETE, PUT and PATCH requests to DiskS3 storage.
+- `ProfileEvent_DiskS3WriteRequestAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Number of attempts for POST, DELETE, PUT and PATCH requests to DiskS3 storage, including the initial try and any retries, but excluding retries performed internally by the retry strategy
+- `ProfileEvent_DiskS3WriteRequestRetryableErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of retryable errors for POST, DELETE, PUT and PATCH requests to DiskS3 storage, excluding retries performed internally by the retry strategy
+- `ProfileEvent_S3DeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API DeleteObject(s) calls.
+- `ProfileEvent_S3CopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API CopyObject calls.
+- `ProfileEvent_S3ListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API ListObjects calls.
+- `ProfileEvent_S3HeadObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API HeadObject calls.
+- `ProfileEvent_S3GetObjectTagging` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API GetObjectTagging calls.
+- `ProfileEvent_S3CreateMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API CreateMultipartUpload calls.
+- `ProfileEvent_S3UploadPartCopy` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API UploadPartCopy calls.
+- `ProfileEvent_S3UploadPart` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API UploadPart calls.
+- `ProfileEvent_S3AbortMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API AbortMultipartUpload calls.
+- `ProfileEvent_S3CompleteMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API CompleteMultipartUpload calls.
+- `ProfileEvent_S3PutObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API PutObject calls.
+- `ProfileEvent_S3GetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 API GetObject calls.
+- `ProfileEvent_DiskS3DeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API DeleteObject(s) calls.
+- `ProfileEvent_DiskS3CopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API CopyObject calls.
+- `ProfileEvent_DiskS3ListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API ListObjects calls.
+- `ProfileEvent_DiskS3HeadObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API HeadObject calls.
+- `ProfileEvent_DiskS3GetObjectTagging` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API GetObjectTagging calls.
+- `ProfileEvent_DiskS3CreateMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API CreateMultipartUpload calls.
+- `ProfileEvent_DiskS3UploadPartCopy` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API UploadPartCopy calls.
+- `ProfileEvent_DiskS3UploadPart` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API UploadPart calls.
+- `ProfileEvent_DiskS3AbortMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API AbortMultipartUpload calls.
+- `ProfileEvent_DiskS3CompleteMultipartUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API CompleteMultipartUpload calls.
+- `ProfileEvent_DiskS3PutObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API PutObject calls.
+- `ProfileEvent_DiskS3GetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of DiskS3 API GetObject calls.
+- `ProfileEvent_DiskPlainRewritableAzureDirectoryCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories created by the 'plain_rewritable' metadata storage for AzureObjectStorage.
+- `ProfileEvent_DiskPlainRewritableAzureDirectoryRemoved` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories removed by the 'plain_rewritable' metadata storage for AzureObjectStorage.
+- `ProfileEvent_DiskPlainRewritableLocalDirectoryCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories created by the 'plain_rewritable' metadata storage for LocalObjectStorage.
+- `ProfileEvent_DiskPlainRewritableLocalDirectoryRemoved` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories removed by the 'plain_rewritable' metadata storage for LocalObjectStorage.
+- `ProfileEvent_DiskPlainRewritableS3DirectoryCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories created by the 'plain_rewritable' metadata storage for S3ObjectStorage.
+- `ProfileEvent_DiskPlainRewritableS3DirectoryRemoved` ([UInt64](/core/reference/data-types/int-uint)) — Number of directories removed by the 'plain_rewritable' metadata storage for S3ObjectStorage.
+- `ProfileEvent_DiskPlainRewritableLegacyLayoutDiskCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of the 'plain_rewritable' disks with legacy layout.
+- `ProfileEvent_S3Clients` ([UInt64](/core/reference/data-types/int-uint)) — Number of created S3 clients.
+- `ProfileEvent_TinyS3Clients` ([UInt64](/core/reference/data-types/int-uint)) — Number of S3 clients copies which reuse an existing auth provider from another client.
+- `ProfileEvent_EngineFileLikeReadFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files read in table engines working with files (like File/S3/URL/HDFS).
+- `ProfileEvent_ReadBufferFromS3Microseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on reading from S3.
+- `ProfileEvent_ReadBufferFromS3InitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent initializing connection to S3.
+- `ProfileEvent_ReadBufferFromS3Bytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from S3.
+- `ProfileEvent_ReadBufferFromS3RequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while reading from S3.
+- `ProfileEvent_WriteBufferFromS3Microseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on writing to S3.
+- `ProfileEvent_WriteBufferFromS3Bytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written to S3.
+- `ProfileEvent_WriteBufferFromS3RequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while writing to S3.
+- `ProfileEvent_WriteBufferFromS3WaitInflightLimitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on waiting while some of the current requests are done when its number reached the limit defined by s3_max_inflight_parts_for_one_file.
+- `ProfileEvent_QueryMemoryLimitExceeded` ([UInt64](/core/reference/data-types/int-uint)) — Number of times when memory limit exceeded for query.
+- `ProfileEvent_MemoryAllocatedWithoutCheck` ([UInt64](/core/reference/data-types/int-uint)) — Number of times memory has been allocated without checking for memory constraints.
+- `ProfileEvent_MemoryAllocatedWithoutCheckBytes` ([UInt64](/core/reference/data-types/int-uint)) — Amount of bytes that has been allocated without checking for memory constraints.
+- `ProfileEvent_AzureGetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure API GetObject calls.
+- `ProfileEvent_AzureUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API Upload calls
+- `ProfileEvent_AzureStageBlock` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API StageBlock calls
+- `ProfileEvent_AzureCommitBlockList` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API CommitBlockList calls
+- `ProfileEvent_AzureCopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API CopyObject calls
+- `ProfileEvent_AzureDeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API DeleteObject(s) calls.
+- `ProfileEvent_AzureListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API ListObjects calls.
+- `ProfileEvent_AzureGetProperties` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API GetProperties calls.
+- `ProfileEvent_AzureCreateContainer` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API CreateContainer calls.
+- `ProfileEvent_DiskAzureGetObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure API GetObject calls.
+- `ProfileEvent_DiskAzureUpload` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API Upload calls
+- `ProfileEvent_DiskAzureStageBlock` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API StageBlock calls
+- `ProfileEvent_DiskAzureCommitBlockList` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API CommitBlockList calls
+- `ProfileEvent_DiskAzureCopyObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API CopyObject calls
+- `ProfileEvent_DiskAzureListObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API ListObjects calls.
+- `ProfileEvent_DiskAzureDeleteObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of Azure blob storage API DeleteObject(s) calls.
+- `ProfileEvent_DiskAzureGetProperties` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API GetProperties calls.
+- `ProfileEvent_DiskAzureCreateContainer` ([UInt64](/core/reference/data-types/int-uint)) — Number of Disk Azure blob storage API CreateContainer calls.
+- `ProfileEvent_ReadBufferFromAzureMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on reading from Azure.
+- `ProfileEvent_ReadBufferFromAzureInitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent initializing connection to Azure.
+- `ProfileEvent_ReadBufferFromAzureBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from Azure.
+- `ProfileEvent_ReadBufferFromAzureRequestsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions while reading from Azure
+- `ProfileEvent_CachedReadBufferReadFromCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read from filesystem cache hit the cache.
+- `ProfileEvent_CachedReadBufferReadFromCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read from filesystem cache miss the cache.
+- `ProfileEvent_CachedReadBufferReadFromSourceMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time reading from filesystem cache source (from remote filesystem, etc)
+- `ProfileEvent_CachedReadBufferWaitReadBufferMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spend waiting for internal read buffer (includes cache waiting)
+- `ProfileEvent_CachedReadBufferPredownloadedFromSourceMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time reading from filesystem cache source for predownload (from remote filesystem, etc)
+- `ProfileEvent_CachedReadBufferReadFromCacheMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time reading from filesystem cache
+- `ProfileEvent_CachedReadBufferReadFromSourceBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache source (from remote fs, etc)
+- `ProfileEvent_CachedReadBufferPredownloadedFromSourceBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache source for predownload (from remote fs, etc)
+- `ProfileEvent_CachedReadBufferReadFromCacheBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache
+- `ProfileEvent_CachedReadBufferPredownloadedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from filesystem cache source. Cache segments are read from left to right as a whole, it might be that we need to predownload some part of the segment irrelevant for the current task just to get to the needed data
+- `ProfileEvent_CachedReadBufferCacheWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written from source (remote fs, etc) to filesystem cache
+- `ProfileEvent_CachedReadBufferCacheWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent writing data into filesystem cache
+- `ProfileEvent_CachedReadBufferCreateBufferMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Prepare buffer time
+- `ProfileEvent_CachedWriteBufferCacheWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes written from source (remote fs, etc) to filesystem cache
+- `ProfileEvent_CachedWriteBufferCacheWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent writing data into filesystem cache
+- `ProfileEvent_FilesystemCacheLoadMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent loading filesystem cache metadata
+- `ProfileEvent_FilesystemCacheEvictedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted from filesystem cache
+- `ProfileEvent_FilesystemCacheCreatedKeyDirectories` ([UInt64](/core/reference/data-types/int-uint)) — Number of created key directories
+- `ProfileEvent_FilesystemCacheEvictedFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments evicted from filesystem cache
+- `ProfileEvent_FilesystemCacheEvictedFileSegmentsDuringPriorityIncrease` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments evicted from filesystem cache when increasing priority of file segments (Applies to SLRU cache policy)
+- `ProfileEvent_FilesystemCacheBackgroundDownloadQueuePush` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments sent for background download in filesystem cache
+- `ProfileEvent_FilesystemCacheEvictionSkippedFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments skipped for eviction because of being in unreleasable state
+- `ProfileEvent_FilesystemCacheEvictionSkippedEvictingFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments skipped for eviction because of being in evicting state
+- `ProfileEvent_FilesystemCacheEvictionSkippedMovingFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments skipped for eviction because of being in moving state
+- `ProfileEvent_FilesystemCacheEvictionTries` ([UInt64](/core/reference/data-types/int-uint)) — Number of filesystem cache eviction attempts
+- `ProfileEvent_FilesystemCacheEvictionReusedIterator` ([UInt64](/core/reference/data-types/int-uint)) — Number of filesystem cache iterator reusing
+- `ProfileEvent_FilesystemCacheLockKeyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock cache key time
+- `ProfileEvent_FilesystemCacheLockMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache metadata time
+- `ProfileEvent_FilesystemCachePriorityWriteLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache time for write to priority queue
+- `ProfileEvent_FilesystemCachePriorityReadLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache time for read in priority queue
+- `ProfileEvent_FilesystemCacheStateLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock filesystem cache time for state lock
+- `ProfileEvent_FilesystemCacheReserveMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache space reservation time
+- `ProfileEvent_FilesystemCacheReserveAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache space reservation attempt
+- `ProfileEvent_FilesystemCacheEvictMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache eviction time
+- `ProfileEvent_FilesystemCacheGetOrSetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache getOrSet() time
+- `ProfileEvent_FilesystemCacheGetMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache get() time
+- `ProfileEvent_FilesystemCacheBackgroundEvictedFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments evicted by background thread
+- `ProfileEvent_FilesystemCacheBackgroundEvictedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes evicted by background thread
+- `ProfileEvent_FilesystemCacheCheckCorrectness` ([UInt64](/core/reference/data-types/int-uint)) — Number of times FileCache::assertCacheCorrectness was called
+- `ProfileEvent_FilesystemCacheCheckCorrectnessMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time does FileCache::assertCacheCorrectness takes
+- `ProfileEvent_FileSegmentWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Wait on DOWNLOADING state
+- `ProfileEvent_FileSegmentCompleteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Duration of FileSegment::complete() in filesystem cache
+- `ProfileEvent_FileSegmentLockMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Lock file segment time
+- `ProfileEvent_FileSegmentWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segment write() time
+- `ProfileEvent_FileSegmentIncreasePriorityMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segment increase priority time
+- `ProfileEvent_FileSegmentRemoveMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segment remove() time
+- `ProfileEvent_FileSegmentHolderCompleteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — File segments holder complete() time
+- `ProfileEvent_FileSegmentFailToIncreasePriority` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the priority was not increased due to a high contention on the cache lock
+- `ProfileEvent_FilesystemCacheFailToReserveSpaceBecauseOfLockContention` ([UInt64](/core/reference/data-types/int-uint)) — Number of times space reservation was skipped due to a high contention on the cache lock
+- `ProfileEvent_FilesystemCacheFailToReserveSpaceBecauseOfCacheResize` ([UInt64](/core/reference/data-types/int-uint)) — Number of times space reservation was skipped due to the cache is being resized
+- `ProfileEvent_FilesystemCacheHoldFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache file segments count, which were hold
+- `ProfileEvent_FilesystemCacheUnusedHoldFileSegments` ([UInt64](/core/reference/data-types/int-uint)) — Filesystem cache file segments count, which were hold, but not used (because of seek or LIMIT n, etc)
+- `ProfileEvent_FilesystemCacheFreeSpaceKeepingThreadRun` ([UInt64](/core/reference/data-types/int-uint)) — Number of times background thread executed free space keeping job
+- `ProfileEvent_FilesystemCacheFreeSpaceKeepingThreadWorkMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time for which background thread executed free space keeping job
+- `ProfileEvent_FilesystemCacheFailedEvictionCandidates` ([UInt64](/core/reference/data-types/int-uint)) — Number of file segments which unexpectedly failed to be evicted during dynamic filesystem cache eviction
+- `ProfileEvent_RemoteFSSeeks` ([UInt64](/core/reference/data-types/int-uint)) — Total number of seeks for async buffer
+- `ProfileEvent_RemoteFSPrefetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of prefetches made with asynchronous reading from remote filesystem
+- `ProfileEvent_RemoteFSCancelledPrefetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of cancelled prefecthes (because of seek)
+- `ProfileEvent_RemoteFSUnusedPrefetches` ([UInt64](/core/reference/data-types/int-uint)) — Number of prefetches pending at buffer destruction
+- `ProfileEvent_RemoteFSPrefetchedReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads from prefecthed buffer
+- `ProfileEvent_RemoteFSPrefetchedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes from prefecthed buffer
+- `ProfileEvent_RemoteFSUnprefetchedReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of reads from unprefetched buffer
+- `ProfileEvent_RemoteFSUnprefetchedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes from unprefetched buffer
+- `ProfileEvent_RemoteFSLazySeeks` ([UInt64](/core/reference/data-types/int-uint)) — Number of lazy seeks
+- `ProfileEvent_RemoteFSSeeksWithReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of seeks which lead to a new connection
+- `ProfileEvent_RemoteFSBuffers` ([UInt64](/core/reference/data-types/int-uint)) — Number of buffers created for asynchronous reading from remote filesystem
+- `ProfileEvent_MergeTreePrefetchedReadPoolInit` ([UInt64](/core/reference/data-types/int-uint)) — Time spent preparing tasks in MergeTreePrefetchedReadPool
+- `ProfileEvent_WaitPrefetchTaskMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spend waiting for prefetched reader
+- `ProfileEvent_ThreadpoolReaderTaskMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent getting the data in asynchronous reading
+- `ProfileEvent_ThreadpoolReaderPrepareMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent on preparation (e.g. call to reader seek() method)
+- `ProfileEvent_ThreadpoolReaderReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from a threadpool task in asynchronous reading
+- `ProfileEvent_ThreadpoolReaderSubmit` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from a threadpool task in asynchronous reading
+- `ProfileEvent_ThreadpoolReaderSubmitReadSynchronously` ([UInt64](/core/reference/data-types/int-uint)) — How many times we haven't scheduled a task on the thread pool and read synchronously instead
+- `ProfileEvent_ThreadpoolReaderSubmitReadSynchronouslyBytes` ([UInt64](/core/reference/data-types/int-uint)) — How many bytes were read synchronously
+- `ProfileEvent_ThreadpoolReaderSubmitReadSynchronouslyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time we spent reading synchronously
+- `ProfileEvent_ThreadpoolReaderSubmitLookupInCacheMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time we spent checking if content is cached
+- `ProfileEvent_AsynchronousReaderIgnoredBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes ignored during asynchronous reading
+- `ProfileEvent_ReadBufferSeekCancelConnection` ([UInt64](/core/reference/data-types/int-uint)) — Number of seeks which lead to new connection (s3, http)
+- `ProfileEvent_SleepFunctionCalls` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a sleep function (sleep, sleepEachRow) has been called.
+- `ProfileEvent_SleepFunctionMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time set to sleep in a sleep function (sleep, sleepEachRow).
+- `ProfileEvent_SleepFunctionElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent sleeping in a sleep function (sleep, sleepEachRow).
+- `ProfileEvent_ThreadPoolReaderPageCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read inside ThreadPoolReader was done from the page cache.
+- `ProfileEvent_ThreadPoolReaderPageCacheHitBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read inside ThreadPoolReader when it was done from the page cache.
+- `ProfileEvent_ThreadPoolReaderPageCacheHitElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent reading data from page cache in ThreadPoolReader.
+- `ProfileEvent_ThreadPoolReaderPageCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the read inside ThreadPoolReader was not done from page cache and was hand off to thread pool.
+- `ProfileEvent_ThreadPoolReaderPageCacheMissBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes read inside ThreadPoolReader when read was not done from page cache and was hand off to thread pool.
+- `ProfileEvent_ThreadPoolReaderPageCacheMissElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent reading data inside the asynchronous job in ThreadPoolReader - when read was not done from the page cache.
+- `ProfileEvent_AsynchronousReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for asynchronous reads in asynchronous local read.
+- `ProfileEvent_SynchronousReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for synchronous reads in asynchronous local read.
+- `ProfileEvent_AsynchronousRemoteReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for asynchronous remote reads.
+- `ProfileEvent_SynchronousRemoteReadWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in waiting for synchronous remote reads.
+- `ProfileEvent_ExternalDataSourceLocalCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Bytes read from local cache buffer in RemoteReadBufferCache
+- `ProfileEvent_MainConfigLoads` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the main configuration was reloaded.
+- `ProfileEvent_AggregationPreallocatedElementsInHashTables` ([UInt64](/core/reference/data-types/int-uint)) — How many elements were preallocated in hash tables for aggregation.
+- `ProfileEvent_AggregationHashTablesInitializedAsTwoLevel` ([UInt64](/core/reference/data-types/int-uint)) — How many hash tables were inited as two-level for aggregation.
+- `ProfileEvent_AggregationOptimizedEqualRangesOfKeys` ([UInt64](/core/reference/data-types/int-uint)) — For how many blocks optimization of equal ranges of keys was applied
+- `ProfileEvent_HashJoinPreallocatedElementsInHashTables` ([UInt64](/core/reference/data-types/int-uint)) — How many elements were preallocated in hash tables for hash join.
+- `ProfileEvent_MetadataFromKeeperCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an object storage metadata request was answered from cache without making request to Keeper
+- `ProfileEvent_MetadataFromKeeperCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an object storage metadata request had to be answered from Keeper
+- `ProfileEvent_MetadataFromKeeperCacheTooManyInvalidated` ([UInt64](/core/reference/data-types/int-uint)) — Number of times filesystem cache returned too many invalidated entries
+- `ProfileEvent_MetadataFromKeeperCacheUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent in updating the cache including waiting for responses from Keeper
+- `ProfileEvent_MetadataFromKeeperUpdateCacheOneLevel` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a cache update for one level of directory tree was done
+- `ProfileEvent_MetadataFromKeeperTransactionCommit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit was attempted
+- `ProfileEvent_MetadataFromKeeperTransactionCommitRetry` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit was retried
+- `ProfileEvent_MetadataFromKeeperCleanupTransactionCommit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit for deleted objects cleanup was attempted
+- `ProfileEvent_MetadataFromKeeperCleanupTransactionCommitRetry` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata transaction commit for deleted objects cleanup was retried
+- `ProfileEvent_MetadataFromKeeperOperations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a request was made to Keeper
+- `ProfileEvent_MetadataFromKeeperIndividualOperations` ([UInt64](/core/reference/data-types/int-uint)) — Number of paths read or written by single or multi requests to Keeper
+- `ProfileEvent_MetadataFromKeeperIndividualOperationsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spend during single or multi requests to Keeper
+- `ProfileEvent_MetadataFromKeeperReconnects` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a reconnect to Keeper was done
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a old deleted object clean up was performed by background task
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupTransactions` ([UInt64](/core/reference/data-types/int-uint)) — Number of times old transaction idempotency token was cleaned up by background task
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an empty blob layout part was cleaned up by background task
+- `ProfileEvent_MetadataFromKeeperBackgroundCleanupErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of times an error was encountered in background cleanup task
+- `ProfileEvent_BlobKillerThreadRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of BlobKiller thread executes
+- `ProfileEvent_BlobKillerThreadLockedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs returned from metadata storage
+- `ProfileEvent_BlobKillerThreadRemoveTasks` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove tasks created by BlobKiller
+- `ProfileEvent_BlobKillerThreadRemovedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs removed by BlobKiller
+- `ProfileEvent_BlobKillerThreadRecordedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs which removal by BlobKiller was recorded in metadata storage
+- `ProfileEvent_BlobKillerThreadLockBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs lock errors occurred during BlobKiller execution
+- `ProfileEvent_BlobKillerThreadRemoveBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs removal errors occurred during BlobKiller execution
+- `ProfileEvent_BlobKillerThreadRecordBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs recording errors occurred during BlobKiller execution
+- `ProfileEvent_BlobCopierThreadRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of BlobCopier thread executes
+- `ProfileEvent_BlobCopierThreadLockedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs returned from metadata storage
+- `ProfileEvent_BlobCopierThreadReplicatedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs replicated by BlobCopier
+- `ProfileEvent_BlobCopierThreadRecordedBlobs` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs which replication by BlobCopier was recorded in metadata storage
+- `ProfileEvent_BlobCopierThreadLockBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs lock errors occurred during BlobCopier execution
+- `ProfileEvent_BlobCopierThreadReplicateBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs replication errors occurred during BlobCopier execution
+- `ProfileEvent_BlobCopierThreadRecordBlobsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of blobs recording errors occurred during BlobCopier execution
+- `ProfileEvent_SharedMergeTreeMetadataCacheHintLoadedFromCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of times metadata cache hint was found without going to Keeper
+- `ProfileEvent_KafkaRebalanceRevocations` ([UInt64](/core/reference/data-types/int-uint)) — Number of partition revocations (the first stage of consumer group rebalance)
+- `ProfileEvent_KafkaRebalanceAssignments` ([UInt64](/core/reference/data-types/int-uint)) — Number of partition assignments (the final stage of consumer group rebalance)
+- `ProfileEvent_KafkaRebalanceErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed consumer group rebalances
+- `ProfileEvent_KafkaMessagesPolled` ([UInt64](/core/reference/data-types/int-uint)) — Number of Kafka messages polled from librdkafka to ClickHouse
+- `ProfileEvent_KafkaMessagesRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of Kafka messages already processed by ClickHouse
+- `ProfileEvent_KafkaMessagesFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of Kafka messages ClickHouse failed to parse
+- `ProfileEvent_KafkaRowsRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows parsed from Kafka messages
+- `ProfileEvent_KafkaRowsRejected` ([UInt64](/core/reference/data-types/int-uint)) — Number of parsed rows which were later rejected (due to rebalances / errors or similar reasons). Those rows will be consumed again after the rebalance.
+- `ProfileEvent_KafkaDirectReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of direct selects from Kafka tables since server start
+- `ProfileEvent_KafkaBackgroundReads` ([UInt64](/core/reference/data-types/int-uint)) — Number of background reads populating materialized views from Kafka since server start
+- `ProfileEvent_KafkaCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of successful commits of consumed offsets to Kafka (normally should be the same as KafkaBackgroundReads)
+- `ProfileEvent_KafkaCommitFailures` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed commits of consumed offsets to Kafka (usually is a sign of some data duplication)
+- `ProfileEvent_KafkaConsumerErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of errors reported by librdkafka during polls
+- `ProfileEvent_KafkaMVNotReady` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed attempts to stream data to a materialized view that is not ready
+- `ProfileEvent_KafkaWrites` ([UInt64](/core/reference/data-types/int-uint)) — Number of writes (inserts) to Kafka tables
+- `ProfileEvent_KafkaRowsWritten` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows inserted into Kafka tables
+- `ProfileEvent_KafkaProducerFlushes` ([UInt64](/core/reference/data-types/int-uint)) — Number of explicit flushes to Kafka producer
+- `ProfileEvent_KafkaMessagesProduced` ([UInt64](/core/reference/data-types/int-uint)) — Number of messages produced to Kafka
+- `ProfileEvent_KafkaProducerErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of errors during producing the messages to Kafka
+- `ProfileEvent_ScalarSubqueriesGlobalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read from a scalar subquery was done using the global cache
+- `ProfileEvent_ScalarSubqueriesLocalCacheHit` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read from a scalar subquery was done using the local cache
+- `ProfileEvent_ScalarSubqueriesCacheMiss` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a read from a scalar subquery was not cached and had to be calculated completely
+- `ProfileEvent_SchemaInferenceCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is found in schema cache
+- `ProfileEvent_SchemaInferenceCacheSchemaHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the schema is found in schema cache during schema inference
+- `ProfileEvent_SchemaInferenceCacheNumRowsHits` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the number of rows is found in schema cache during count from files
+- `ProfileEvent_SchemaInferenceCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is not in schema cache
+- `ProfileEvent_SchemaInferenceCacheSchemaMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is in cache but the schema is not in cache during schema inference
+- `ProfileEvent_SchemaInferenceCacheNumRowsMisses` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the requested source is in cache but the number of rows is not in cache while count from files
+- `ProfileEvent_SchemaInferenceCacheEvictions` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a schema from cache was evicted due to overflow
+- `ProfileEvent_SchemaInferenceCacheInvalidations` ([UInt64](/core/reference/data-types/int-uint)) — Number of times a schema in cache became invalid due to changes in data
+- `ProfileEvent_KeeperPacketsSent` ([UInt64](/core/reference/data-types/int-uint)) — Packets sent by keeper server
+- `ProfileEvent_KeeperPacketsReceived` ([UInt64](/core/reference/data-types/int-uint)) — Packets received by keeper server
+- `ProfileEvent_KeeperRequestTotal` ([UInt64](/core/reference/data-types/int-uint)) — Total requests number on keeper server
+- `ProfileEvent_KeeperRequestTotalWithSubrequests` ([UInt64](/core/reference/data-types/int-uint)) — Total requests number on keeper server, counting each subrequest within a multi request
+- `ProfileEvent_KeeperLatency` ([UInt64](/core/reference/data-types/int-uint)) — Keeper latency
+- `ProfileEvent_KeeperTotalElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Keeper total latency for a single request
+- `ProfileEvent_KeeperProcessElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Keeper commit latency for a single request
+- `ProfileEvent_KeeperPreprocessElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Keeper preprocessing latency for a single request
+- `ProfileEvent_KeeperStorageLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper storage lock
+- `ProfileEvent_KeeperStorageSharedLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper storage shared lock
+- `ProfileEvent_KeeperChangelogLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper changelog lock
+- `ProfileEvent_KeeperServerWriteLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper server write lock
+- `ProfileEvent_KeeperSessionCallbackLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper session callback lock
+- `ProfileEvent_KeeperReadRequestQueueLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper read request queue lock
+- `ProfileEvent_KeeperProcessAndResponsesLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for acquiring Keeper process and responses lock
+- `ProfileEvent_KeeperCommitWaitElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting for certain log to be committed
+- `ProfileEvent_KeeperBatchMaxCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the size of batch was limited by the amount
+- `ProfileEvent_KeeperBatchMaxTotalSize` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the size of batch was limited by the total bytes size
+- `ProfileEvent_KeeperReadBatchCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of read request batches processed by Keeper
+- `ProfileEvent_KeeperReadBatchTotalRequests` ([UInt64](/core/reference/data-types/int-uint)) — Total number of read requests processed in batches by Keeper
+- `ProfileEvent_KeeperCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of successful commits
+- `ProfileEvent_KeeperCommitsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed commits
+- `ProfileEvent_KeeperSnapshotCreations` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshots creations
+- `ProfileEvent_KeeperSnapshotCreationsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot creations
+- `ProfileEvent_KeeperSnapshotApplys` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot applying
+- `ProfileEvent_KeeperSnapshotApplysFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot applying
+- `ProfileEvent_KeeperReadSnapshot` ([UInt64](/core/reference/data-types/int-uint)) — Number of completed snapshot reads
+- `ProfileEvent_KeeperReadSnapshotObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot objects sent to followers
+- `ProfileEvent_KeeperReadSnapshotFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot reads
+- `ProfileEvent_KeeperSnapshotRemoteLoaderErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of remote read errors in RemoteSnapshotLoader while serving a snapshot to a follower
+- `ProfileEvent_KeeperSaveSnapshotObject` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot objects received from leader
+- `ProfileEvent_KeeperSaveSnapshotFailed` ([UInt64](/core/reference/data-types/int-uint)) — Number of failed snapshot saves
+- `ProfileEvent_KeeperSaveSnapshot` ([UInt64](/core/reference/data-types/int-uint)) — Number of snapshot save
+- `ProfileEvent_KeeperCreateRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of create requests
+- `ProfileEvent_KeeperRemoveRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove requests
+- `ProfileEvent_KeeperSetRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of set requests
+- `ProfileEvent_KeeperReconfigRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of reconfig requests
+- `ProfileEvent_KeeperCheckRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of check requests
+- `ProfileEvent_KeeperMultiRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of multi requests
+- `ProfileEvent_KeeperMultiReadRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of multi read requests
+- `ProfileEvent_KeeperGetRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of get requests
+- `ProfileEvent_KeeperListRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of list requests
+- `ProfileEvent_KeeperListRecursiveRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of get children recursive requests
+- `ProfileEvent_KeeperExistsRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of exists requests
+- `ProfileEvent_KeeperSetWatchesRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of set watches requests
+- `ProfileEvent_KeeperAddWatchRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of add watches requests
+- `ProfileEvent_KeeperRemoveWatchRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove watches requests
+- `ProfileEvent_KeeperCheckWatchRequest` ([UInt64](/core/reference/data-types/int-uint)) — Number of remove watches requests
+- `ProfileEvent_KeeperRequestRejectedDueToSoftMemoryLimitCount` ([UInt64](/core/reference/data-types/int-uint)) — Number requests that have been rejected due to soft memory limit exceeded
+- `ProfileEvent_KeeperStaleRequestsSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of Keeper requests skipped because the session is no longer live
+- `ProfileEvent_KeeperLiveSessionsLockWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent waiting to acquire Keeper live sessions lock
+- `ProfileEvent_OverflowBreak` ([UInt64](/core/reference/data-types/int-uint)) — Number of times, data processing was cancelled by query complexity limitation with setting '*_overflow_mode' = 'break' and the result is incomplete.
+- `ProfileEvent_OverflowThrow` ([UInt64](/core/reference/data-types/int-uint)) — Number of times, data processing was cancelled by query complexity limitation with setting '*_overflow_mode' = 'throw' and exception was thrown.
+- `ProfileEvent_OverflowAny` ([UInt64](/core/reference/data-types/int-uint)) — Number of times approximate GROUP BY was in effect: when aggregation was performed only on top of first 'max_rows_to_group_by' unique keys and other keys were ignored due to 'group_by_overflow_mode' = 'any'.
+- `ProfileEvent_S3QueueSetFileProcessingMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as processing
+- `ProfileEvent_S3QueueSetFileProcessedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as processed
+- `ProfileEvent_S3QueueSetFileFailedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as failed
+- `ProfileEvent_ObjectStorageQueueFailedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files which failed to be processed
+- `ProfileEvent_ObjectStorageQueueProcessedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files which were processed
+- `ProfileEvent_ObjectStorageQueueCleanupMaxSetSizeOrTTLMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to set file as failed
+- `ProfileEvent_ObjectStorageQueuePullMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to read file data
+- `ProfileEvent_ObjectStorageQueueFailedToBatchSetProcessing` ([UInt64](/core/reference/data-types/int-uint)) — Number of times batched set processing request failed
+- `ProfileEvent_ObjectStorageQueueTrySetProcessingRequests` ([UInt64](/core/reference/data-types/int-uint)) — The number of times we tried to make set processing request
+- `ProfileEvent_ObjectStorageQueueTrySetProcessingSucceeded` ([UInt64](/core/reference/data-types/int-uint)) — The number of times we successfully set file as processing
+- `ProfileEvent_ObjectStorageQueueTrySetProcessingFailed` ([UInt64](/core/reference/data-types/int-uint)) — The number of times we unsuccessfully set file as processing
+- `ProfileEvent_ObjectStorageQueueListedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of listed files in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueFilteredFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of filtered files in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueReadFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of read files (not equal to the number of actually inserted files)
+- `ProfileEvent_ObjectStorageQueueReadRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of read rows (not equal to the number of actually inserted rows)
+- `ProfileEvent_ObjectStorageQueueReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of read bytes (not equal to the number of actually inserted bytes)
+- `ProfileEvent_ObjectStorageQueueExceptionsDuringRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions during read in S3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueExceptionsDuringInsert` ([UInt64](/core/reference/data-types/int-uint)) — Number of exceptions during insert in S3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueMovedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of objects moved as part of after_processing = move
+- `ProfileEvent_ObjectStorageQueueRemovedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of objects removed as part of after_processing = delete
+- `ProfileEvent_ObjectStorageQueueTaggedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Number of objects tagged as part of after_processing = tag
+- `ProfileEvent_ObjectStorageQueueInsertIterations` ([UInt64](/core/reference/data-types/int-uint)) — Number of insert iterations
+- `ProfileEvent_ObjectStorageQueueCommitRequests` ([UInt64](/core/reference/data-types/int-uint)) — Number of keeper requests to commit files as either failed or processed
+- `ProfileEvent_ObjectStorageQueueSuccessfulCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of successful keeper commits
+- `ProfileEvent_ObjectStorageQueueUnsuccessfulCommits` ([UInt64](/core/reference/data-types/int-uint)) — Number of unsuccessful keeper commits
+- `ProfileEvent_ObjectStorageQueueCancelledFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number cancelled files in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageQueueProcessedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of processed rows in StorageS3(Azure)Queue
+- `ProfileEvent_ObjectStorageListedObjects` ([UInt64](/core/reference/data-types/int-uint)) — Total objects returned by object storage listing API before any filtering.
+- `ProfileEvent_ObjectStorageGlobFilteredObjects` ([UInt64](/core/reference/data-types/int-uint)) — Objects that did not match the glob or regex pattern and were skipped during listing.
+- `ProfileEvent_ObjectStoragePredicateFilteredObjects` ([UInt64](/core/reference/data-types/int-uint)) — Objects removed by virtual column predicate filtering on _path/_file.
+- `ProfileEvent_ObjectStorageReadObjects` ([UInt64](/core/reference/data-types/int-uint)) — Objects actually opened for reading by the object storage source.
+- `ProfileEvent_ServerStartupMilliseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time elapsed from starting server to listening to sockets in milliseconds
+- `ProfileEvent_IOUringSQEsSubmitted` ([UInt64](/core/reference/data-types/int-uint)) — Total number of io_uring SQEs submitted
+- `ProfileEvent_IOUringSQEsResubmitsAsync` ([UInt64](/core/reference/data-types/int-uint)) — Total number of asynchronous io_uring SQE resubmits performed
+- `ProfileEvent_IOUringSQEsResubmitsSync` ([UInt64](/core/reference/data-types/int-uint)) — Total number of synchronous io_uring SQE resubmits performed
+- `ProfileEvent_IOUringCQEsCompleted` ([UInt64](/core/reference/data-types/int-uint)) — Total number of successfully completed io_uring CQEs
+- `ProfileEvent_IOUringCQEsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Total number of completed io_uring CQEs with failures
+- `ProfileEvent_BackupsOpenedForRead` ([UInt64](/core/reference/data-types/int-uint)) — Number of backups opened for reading
+- `ProfileEvent_BackupsOpenedForWrite` ([UInt64](/core/reference/data-types/int-uint)) — Number of backups opened for writing
+- `ProfileEvent_BackupsOpenedForUnlock` ([UInt64](/core/reference/data-types/int-uint)) — Number of backups opened for unlocking
+- `ProfileEvent_BackupReadMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent reading backup metadata from .backup file
+- `ProfileEvent_BackupWriteMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent writing backup metadata to .backup file
+- `ProfileEvent_BackupEntriesCollectorMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent making backup entries
+- `ProfileEvent_BackupEntriesCollectorForTablesDataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent making backup entries for tables data
+- `ProfileEvent_BackupEntriesCollectorRunPostTasksMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent running post tasks after making backup entries
+- `ProfileEvent_BackupPreparingFileInfosMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent preparing file infos for backup entries
+- `ProfileEvent_BackupReadLocalFilesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Number of files read locally to calculate checksums for backup entries
+- `ProfileEvent_BackupReadLocalBytesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files read locally to calculate checksums for backup entries
+- `ProfileEvent_BackupReadRemoteFilesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Number of files read from remote disks to calculate checksums for backup entries
+- `ProfileEvent_BackupReadRemoteBytesToCalculateChecksums` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files read from remote disks to calculate checksums for backup entries
+- `ProfileEvent_BackupLockFileReads` ([UInt64](/core/reference/data-types/int-uint)) — How many times the '.lock' file was read while making backup
+- `ProfileEvent_RestorePartsSkippedFiles` ([UInt64](/core/reference/data-types/int-uint)) — Number of files skipped while restoring parts
+- `ProfileEvent_RestorePartsSkippedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total size of files skipped while restoring parts
+- `ProfileEvent_ReadTaskRequestsReceived` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for s3Cluster table function and similar). Measured on the initiator server side.
+- `ProfileEvent_MergeTreeReadTaskRequestsReceived` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for MergeTree tables). Measured on the initiator server side.
+- `ProfileEvent_ReadTaskRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for s3Cluster table function and similar). Measured on the remote server side.
+- `ProfileEvent_MergeTreeReadTaskRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — The number of callbacks requested from the remote server back to the initiator server to choose the read task (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_MergeTreeAllRangesAnnouncementsSent` ([UInt64](/core/reference/data-types/int-uint)) — The number of announcements sent from the remote server to the initiator server about the set of data parts (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_ReadTaskRequestsSentElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in callbacks requested from the remote server back to the initiator server to choose the read task (for s3Cluster table function and similar). Measured on the remote server side.
+- `ProfileEvent_MergeTreeReadTaskRequestsSentElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in callbacks requested from the remote server back to the initiator server to choose the read task (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_MergeTreeAllRangesAnnouncementsSentElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in sending the announcement from the remote server to the initiator server about the set of data parts (for MergeTree tables). Measured on the remote server side.
+- `ProfileEvent_MergerMutatorsGetPartsForMergeElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to take data parts snapshot to build ranges from them.
+- `ProfileEvent_MergerMutatorPrepareRangesForMergeElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to prepare parts ranges which can be merged according to merge predicate.
+- `ProfileEvent_MergerMutatorSelectPartsForMergeElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent to select parts from ranges which can be merged.
+- `ProfileEvent_MergerMutatorRangesForMergeCount` ([UInt64](/core/reference/data-types/int-uint)) — Amount of candidate ranges for merge
+- `ProfileEvent_MergerMutatorPartsInRangesForMergeCount` ([UInt64](/core/reference/data-types/int-uint)) — Amount of candidate parts for merge
+- `ProfileEvent_MergerMutatorSelectRangePartsCount` ([UInt64](/core/reference/data-types/int-uint)) — Amount of parts in selected range for merge
+- `ProfileEvent_ConnectionPoolIsFullMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent waiting for a slot in connection pool.
+- `ProfileEvent_AsyncLoaderWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting for async loader jobs.
+- `ProfileEvent_DistrCacheServerSwitches` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of server switches between distributed cache servers in read/write-through cache
+- `ProfileEvent_DistrCacheReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spent reading from distributed cache
+- `ProfileEvent_DistrCacheFallbackReadMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spend reading from fallback buffer instead of distributed cache
+- `ProfileEvent_DistrCachePrecomputeRangesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spent to precompute read ranges
+- `ProfileEvent_DistrCacheNextImplMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spend in ReadBufferFromDistributedCache::nextImpl
+- `ProfileEvent_DistrCacheStartRangeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Time spent to start a new read range with distributed cache
+- `ProfileEvent_DistrCacheRangeChange` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of times we changed read range because of seek/last_position change
+- `ProfileEvent_DistrCacheRangeResetBackward` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of times we reset read range because of seek/last_position change
+- `ProfileEvent_DistrCacheRangeResetForward` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of times we reset read range because of seek/last_position change
+- `ProfileEvent_DistrCacheReconnectsAfterTimeout` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. The number of reconnects after timeout
+- `ProfileEvent_DistrCacheServerUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache event. The number of server switches during read or write because the hash-chosen server changed (e.g. due to server deregistration)
+- `ProfileEvent_DistrCacheReadErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Number of distributed cache errors during read
+- `ProfileEvent_DistrCacheWriteErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Number of distributed cache errors during write
+- `ProfileEvent_DistrCacheWriteReconnectsAfterTimeout` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. The number of reconnects after timeout
+- `ProfileEvent_DistrCacheWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Time spent in WriteBufferFromDistributedCache::writeToFileSegment
+- `ProfileEvent_DistrCacheWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Number of bytes written to distributed cache
+- `ProfileEvent_DistrCacheObjectStorageWriteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Time spent writing to object storage
+- `ProfileEvent_DistrCacheObjectStorageWriteBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache write buffer event. Number of bytes written to object storage
+- `ProfileEvent_DistrCacheGetResponseMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Time spend to wait for response from distributed cache
+- `ProfileEvent_DistrCacheMakeRequestErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Number of distributed cache errors when making a request
+- `ProfileEvent_DistrCacheReceiveResponseErrors` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Number of distributed cache errors when receiving response a request
+- `ProfileEvent_DistrCacheReceivedDataPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received data packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedDataPacketsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of bytes in Data packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedOkPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received Ok packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedErrorPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received Error packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedCredentialsRefreshPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received RefreshCredentials packets received from distributed cache
+- `ProfileEvent_DistrCacheReceivedStopPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of received Stop packets received from distributed cache
+- `ProfileEvent_DistrCacheSentDataPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Total number of data packets sent to distributed cache
+- `ProfileEvent_DistrCacheSentDataPacketsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of bytes in Data packets sent to distributed cache
+- `ProfileEvent_DistrCacheUnusedPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. Number of skipped unused packets from distributed cache
+- `ProfileEvent_DistrCacheUnusedDataPacketsBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of bytes in Data packets which were ignored
+- `ProfileEvent_DistrCacheUnusedPacketsBufferAllocations` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache client event. The number of extra buffer allocations in case we could not reuse existing buffer
+- `ProfileEvent_DistrCacheLockRegistryMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Time spent to take DistributedCacheRegistry lock
+- `ProfileEvent_DistrCacheRegistryUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Time spent updating distributed cache registry
+- `ProfileEvent_DistrCacheRegistryUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Number of distributed cache registry updates
+- `ProfileEvent_DistrCacheHashRingRebuilds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. Number of distributed cache hash ring rebuilds
+- `ProfileEvent_DistrCacheSuccessfulRegistryUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. The number of successful server registry updates
+- `ProfileEvent_DistrCacheUnsuccessfulRegistryUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache registry event. The number of unsuccessful server registry updates
+- `ProfileEvent_DistrCacheReadBytesFromFallbackBuffer` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache read buffer event. Bytes read from fallback buffer
+- `ProfileEvent_DistrCacheOpenedConnections` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of open connections to distributed cache
+- `ProfileEvent_DistrCacheReusedConnections` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of reused connections to distributed cache
+- `ProfileEvent_DistrCacheStaleReconnections` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of reconnections due to stale (peer-closed) pooled connections
+- `ProfileEvent_DistrCacheRemoveOutdatedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The time spent removing outdated connections from the pool
+- `ProfileEvent_DistrCacheOpenedConnectionsBypassingPool` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of open connections to distributed cache bypassing pool
+- `ProfileEvent_DistrCacheConnectMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The time spent to connect to distributed cache
+- `ProfileEvent_DistrCacheConnectAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of connection attempts to distributed cache
+- `ProfileEvent_DistrCacheSuccessfulConnectAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of successful connection attempts to distributed cache
+- `ProfileEvent_DistrCacheUnsuccessfulConnectAttempts` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. The number of unsuccessful connection attempts to distributed cache
+- `ProfileEvent_DistrCacheGetClientMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. Time spent getting client for distributed cache
+- `ProfileEvent_DistrCacheTemporaryFilesCreated` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. Number of temporary files created in distributed cache
+- `ProfileEvent_DistrCacheTemporaryFilesBytesWritten` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache connection event. Number of bytes written to temporary files created in distributed cache
+- `ProfileEvent_DistrCacheServerProcessRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Time spent processing request on DistributedCache server side
+- `ProfileEvent_DistrCacheServerStartRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of StartRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerContinueRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of ContinueRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerEndRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of EndRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerReceivedCredentialsRefreshPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of RefreshCredentials client packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerAckRequestPackets` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. Number of AckRequest packets in DistributedCacheServer
+- `ProfileEvent_DistrCacheServerNewS3CachedClients` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of new cached s3 clients
+- `ProfileEvent_DistrCacheServerReusedS3CachedClients` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of reused cached s3 clients
+- `ProfileEvent_DistrCacheServerCredentialsRefresh` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of expired credentials were refreshed
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheHits` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of times distributed cache hit the cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheMisses` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of times distributed cache missed the cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes written to cache in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCacheReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes read from cache in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferObjectStorageReadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes read from object storage in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerCachedReadBufferCachePredownloadBytes` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of bytes read from object storage for predownload in distributed cache while reading from filesystem cache
+- `ProfileEvent_DistrCacheServerSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Distributed Cache server event. The number of times distributed cache server was skipped because of previous failed connection attempts
+- `ProfileEvent_LogTest` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Test
+- `ProfileEvent_LogTrace` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Trace
+- `ProfileEvent_LogDebug` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Debug
+- `ProfileEvent_LogInfo` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Info
+- `ProfileEvent_LogWarning` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Warning
+- `ProfileEvent_LogError` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Error
+- `ProfileEvent_LogFatal` ([UInt64](/core/reference/data-types/int-uint)) — Number of log messages with level Fatal
+- `ProfileEvent_LoggerElapsedNanoseconds` ([UInt64](/core/reference/data-types/int-uint)) — Cumulative time spend in logging
+- `ProfileEvent_InterfaceHTTPSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through HTTP interfaces
+- `ProfileEvent_InterfaceHTTPReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through HTTP interfaces
+- `ProfileEvent_InterfaceNativeSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through native interfaces
+- `ProfileEvent_InterfaceNativeReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through native interfaces
+- `ProfileEvent_InterfacePrometheusSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through Prometheus interfaces
+- `ProfileEvent_InterfacePrometheusReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through Prometheus interfaces
+- `ProfileEvent_InterfaceInterserverSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through interserver interfaces
+- `ProfileEvent_InterfaceInterserverReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through interserver interfaces
+- `ProfileEvent_InterfaceMySQLSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through MySQL interfaces
+- `ProfileEvent_InterfaceMySQLReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through MySQL interfaces
+- `ProfileEvent_InterfacePostgreSQLSendBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes sent through PostgreSQL interfaces
+- `ProfileEvent_InterfacePostgreSQLReceiveBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes received through PostgreSQL interfaces
+- `ProfileEvent_ParallelReplicasUsedCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas used to execute a query with task-based parallel replicas
+- `ProfileEvent_ParallelReplicasAvailableCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas available to execute a query with task-based parallel replicas
+- `ProfileEvent_ParallelReplicasUnavailableCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of replicas which was chosen, but found to be unavailable during query execution with task-based parallel replicas
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdates` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts update count
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesByLeader` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates by leader
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts update microseconds
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromZooKeeper` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates count from ZooKeeper
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromZooKeeperMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates from ZooKeeper microseconds
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesPeerNotFound` ([UInt64](/core/reference/data-types/int-uint)) — Virtual updates from peer failed because no one found
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromPeer` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates count from peer
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesFromPeerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates from peer microseconds
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesForMergesOrStatus` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates from non-default background job
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesLeaderFailedElection` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates leader election failed
+- `ProfileEvent_SharedMergeTreeVirtualPartsUpdatesLeaderSuccessfulElection` ([UInt64](/core/reference/data-types/int-uint)) — Virtual parts updates leader election successful
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentAttempt` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentFailedWithNothingToDo` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation and failed because nothing to merge
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentFailedWithConflict` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation and failed because of conflict in Keeper
+- `ProfileEvent_SharedMergeTreeMergeMutationAssignmentSuccessful` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to assign merge or mutation
+- `ProfileEvent_SharedMergeTreeMergePartsMovedToOudated` ([UInt64](/core/reference/data-types/int-uint)) — How many parts moved to outdated directory
+- `ProfileEvent_SharedMergeTreeMergePartsMovedToCondemned` ([UInt64](/core/reference/data-types/int-uint)) — How many parts moved to condemned directory
+- `ProfileEvent_SharedMergeTreeOutdatedPartsConfirmationRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many ZooKeeper requests were used to config outdated parts
+- `ProfileEvent_SharedMergeTreeOutdatedPartsConfirmationInvocations` ([UInt64](/core/reference/data-types/int-uint)) — How many invocations were made to confirm outdated parts
+- `ProfileEvent_SharedMergeTreeOutdatedPartsHTTPRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many HTTP requests were send to confirm outdated parts
+- `ProfileEvent_SharedMergeTreeOutdatedPartsHTTPResponse` ([UInt64](/core/reference/data-types/int-uint)) — How many HTTP responses were send to confirm outdated parts
+- `ProfileEvent_SharedMergeTreeCondemnedPartsKillRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many ZooKeeper requests were used to remove condemned parts
+- `ProfileEvent_SharedMergeTreeCondemnedPartsLockConflict` ([UInt64](/core/reference/data-types/int-uint)) — How many times we failed to acquire lock because of conflict
+- `ProfileEvent_SharedMergeTreeCondemnedPartsRemoved` ([UInt64](/core/reference/data-types/int-uint)) — How many condemned parts were removed
+- `ProfileEvent_SharedMergeTreePartsKillerRuns` ([UInt64](/core/reference/data-types/int-uint)) — How many times parts killer has been running
+- `ProfileEvent_SharedMergeTreePartsKillerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time does parts killer main thread takes
+- `ProfileEvent_SharedMergeTreePartsKillerParts` ([UInt64](/core/reference/data-types/int-uint)) — How many parts has been scheduled by the killer
+- `ProfileEvent_SharedMergeTreePartsKillerPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How many time does it take to remove parts (executed from multiple threads)
+- `ProfileEvent_SharedMergeTreeMergeSelectingTaskMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Merge selecting task microseconds for SMT
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdateTaskRuns` ([UInt64](/core/reference/data-types/int-uint)) — Number of times updateReplicaSetTask has run
+- `ProfileEvent_SharedMergeTreeOptimizeAsync` ([UInt64](/core/reference/data-types/int-uint)) — Asynchronous OPTIMIZE queries executed
+- `ProfileEvent_SharedMergeTreeOptimizeSync` ([UInt64](/core/reference/data-types/int-uint)) — Synchronous OPTIMIZE queries executed
+- `ProfileEvent_SharedMergeTreeScheduleDataProcessingJob` ([UInt64](/core/reference/data-types/int-uint)) — How many times scheduleDataProcessingJob called/
+- `ProfileEvent_SharedMergeTreeScheduleDataProcessingJobNothingToScheduled` ([UInt64](/core/reference/data-types/int-uint)) — How many times scheduleDataProcessingJob called but nothing to do
+- `ProfileEvent_SharedMergeTreeScheduleDataProcessingJobMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — scheduleDataProcessingJob execute time
+- `ProfileEvent_SharedMergeTreeHandleBlockingParts` ([UInt64](/core/reference/data-types/int-uint)) — How many blocking parts to handle in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleBlockingPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of handling blocking parts in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleFetchPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of handling fetched parts in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleOutdatedParts` ([UInt64](/core/reference/data-types/int-uint)) — How many outdated parts to handle in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeHandleOutdatedPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of handling outdated parts in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeSelectPartsForRendezvousFetchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of selectPartsForRendezvousFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForRendezvousFetchParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts selected by selectPartsForRendezvousFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForCoordinatedFetchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of selectPartsForCoordinatedFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForCoordinatedFetchParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts selected by selectPartsForCoordinatedFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForFullFetchMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of selectPartsForFullFetch
+- `ProfileEvent_SharedMergeTreeSelectPartsForFullFetchParts` ([UInt64](/core/reference/data-types/int-uint)) — Number of parts selected by selectPartsForFullFetch
+- `ProfileEvent_SharedMergeTreeTryUpdateDiskMetadataCacheForPartMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of tryUpdateDiskMetadataCacheForPart in scheduleDataProcessingJob
+- `ProfileEvent_SharedMergeTreeLoadChecksumAndIndexesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of loadColumnsChecksumsIndexes only for SharedMergeTree
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanRequest` ([UInt64](/core/reference/data-types/int-uint)) — How many times SnapshotCleanerThread decides to clean a part
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerParts` ([UInt64](/core/reference/data-types/int-uint)) — How long time SnapshotCleanerThread tries to clean a part
+- `ProfileEvent_SharedMergeTreeSnapshotPartsRemoved` ([UInt64](/core/reference/data-types/int-uint)) — How many times SnapshotCleanerThread successfully clean a part
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerRuns` ([UInt64](/core/reference/data-types/int-uint)) — How many times SnapshotCleanerThread runs
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How long time SnapshotCleanerThread has run
+- `ProfileEvent_SharedMergeTreeSnapshotPartsCleanerPartsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How long time SnapshotCleanerThread takes to clean parts
+- `ProfileEvent_SharedMergeTreeDataPartsFetchAttempt` ([UInt64](/core/reference/data-types/int-uint)) — How many times we tried to fetch data parts
+- `ProfileEvent_SharedMergeTreeDataPartsFetchFromPeer` ([UInt64](/core/reference/data-types/int-uint)) — How many times we fetch data parts from peer
+- `ProfileEvent_SharedMergeTreeDataPartsFetchFromPeerMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Data parts fetch from peer microseconds
+- `ProfileEvent_SharedMergeTreeDataPartsFetchFromS3` ([UInt64](/core/reference/data-types/int-uint)) — How many times we fetch data parts from S3
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdatesFromZooKeeper` ([UInt64](/core/reference/data-types/int-uint)) — How many times we have update replica set from ZooKeeper
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdatesFromZooKeeperRequests` ([UInt64](/core/reference/data-types/int-uint)) — How many total ZooKeeper requests we made to update replica set
+- `ProfileEvent_SharedMergeTreeReplicaSetUpdatesFromZooKeeperMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — How much time we spend to update replica set
+- `ProfileEvent_KeeperLogsEntryReadFromLatestCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being read from latest logs cache
+- `ProfileEvent_KeeperLogsEntryReadFromCommitCache` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being read from commit logs cache
+- `ProfileEvent_KeeperLogsEntryReadFromFile` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being read directly from the changelog file
+- `ProfileEvent_KeeperLogsPrefetchedEntries` ([UInt64](/core/reference/data-types/int-uint)) — Number of log entries in Keeper being prefetched from the changelog file
+- `ProfileEvent_KeeperChangelogWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to the changelog in Keeper
+- `ProfileEvent_KeeperChangelogFileSyncMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in fsync for Keeper changelog (uncompressed logs only)
+- `ProfileEvent_KeeperSnapshotWrittenBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes written to snapshot files in Keeper
+- `ProfileEvent_KeeperSnapshotFileSyncMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent in fsync for Keeper snapshot files
+- `ProfileEvent_StorageConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created connections for storages
+- `ProfileEvent_StorageConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused connections for storages
+- `ProfileEvent_StorageConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset connections for storages
+- `ProfileEvent_StorageConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved connections for storages
+- `ProfileEvent_StorageConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired connections for storages
+- `ProfileEvent_StorageConnectionsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of cases when creation of a connection for storage is failed
+- `ProfileEvent_StorageConnectionsElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on creating connections for storages
+- `ProfileEvent_DiskConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created connections for disk
+- `ProfileEvent_DiskConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused connections for disk
+- `ProfileEvent_DiskConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset connections for disk
+- `ProfileEvent_DiskConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved connections for disk
+- `ProfileEvent_DiskConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired connections for disk
+- `ProfileEvent_DiskConnectionsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of cases when creation of a connection for disk is failed
+- `ProfileEvent_DiskConnectionsElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on creating connections for disk
+- `ProfileEvent_HTTPConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created client HTTP connections
+- `ProfileEvent_HTTPConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused client HTTP connections
+- `ProfileEvent_HTTPConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset client HTTP connections
+- `ProfileEvent_HTTPConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved client HTTP connections
+- `ProfileEvent_HTTPConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired client HTTP connections
+- `ProfileEvent_HTTPConnectionsErrors` ([UInt64](/core/reference/data-types/int-uint)) — Number of cases when creation of a client HTTP connection failed
+- `ProfileEvent_HTTPConnectionsElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on creating client HTTP connections
+- `ProfileEvent_HTTPServerConnectionsCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of created server HTTP connections
+- `ProfileEvent_HTTPServerConnectionsReused` ([UInt64](/core/reference/data-types/int-uint)) — Number of reused server HTTP connections
+- `ProfileEvent_HTTPServerConnectionsPreserved` ([UInt64](/core/reference/data-types/int-uint)) — Number of preserved server HTTP connections. Connection kept alive successfully
+- `ProfileEvent_HTTPServerConnectionsExpired` ([UInt64](/core/reference/data-types/int-uint)) — Number of expired server HTTP connections.
+- `ProfileEvent_HTTPServerConnectionsClosed` ([UInt64](/core/reference/data-types/int-uint)) — Number of closed server HTTP connections. Keep alive has not been negotiated
+- `ProfileEvent_HTTPServerConnectionsReset` ([UInt64](/core/reference/data-types/int-uint)) — Number of reset server HTTP connections. Server closes connection
+- `ProfileEvent_AddressesDiscovered` ([UInt64](/core/reference/data-types/int-uint)) — Total count of new addresses in DNS resolve results for HTTP connections
+- `ProfileEvent_AddressesExpired` ([UInt64](/core/reference/data-types/int-uint)) — Total count of expired addresses which is no longer presented in DNS resolve results for HTTP connections
+- `ProfileEvent_AddressesMarkedAsFailed` ([UInt64](/core/reference/data-types/int-uint)) — Total count of addresses which have been marked as faulty due to connection errors for HTTP connections
+- `ProfileEvent_ReadWriteBufferFromHTTPRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — Number of HTTP requests sent by ReadWriteBufferFromHTTP
+- `ProfileEvent_ReadWriteBufferFromHTTPBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total size of payload bytes received and sent by ReadWriteBufferFromHTTP. Doesn't include HTTP headers.
+- `ProfileEvent_WriteBufferFromHTTPRequestsSent` ([UInt64](/core/reference/data-types/int-uint)) — Number of HTTP requests sent by WriteBufferFromHTTP
+- `ProfileEvent_WriteBufferFromHTTPBytes` ([UInt64](/core/reference/data-types/int-uint)) — Total size of payload bytes received and sent by WriteBufferFromHTTP. Doesn't include HTTP headers.
+- `ProfileEvent_ConcurrencyControlSlotsGranted` ([UInt64](/core/reference/data-types/int-uint)) — Number of CPU slot granted according to guarantee of 1 thread per query and for queries with setting 'use_concurrency_control' = 0
+- `ProfileEvent_ConcurrencyControlSlotsDelayed` ([UInt64](/core/reference/data-types/int-uint)) — Number of CPU slot not granted initially and required to wait for a free CPU slot
+- `ProfileEvent_ConcurrencyControlSlotsAcquired` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU slots acquired
+- `ProfileEvent_ConcurrencyControlSlotsAcquiredNonCompeting` ([UInt64](/core/reference/data-types/int-uint)) — Total number of noncompeting CPU slot acquired
+- `ProfileEvent_ConcurrencyControlQueriesDelayed` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU slot allocations (queries) that were required to wait for slots to upscale
+- `ProfileEvent_ConcurrencyControlWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting on resource requests for CPU slots.
+- `ProfileEvent_ConcurrencyControlPreemptedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting due to preemption of CPU slots.
+- `ProfileEvent_ConcurrencyControlPreemptions` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU preemptions
+- `ProfileEvent_ConcurrencyControlUpscales` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU upscaling events
+- `ProfileEvent_ConcurrencyControlDownscales` ([UInt64](/core/reference/data-types/int-uint)) — Total number of CPU downscaling events
+- `ProfileEvent_ConcurrentQuerySlotsAcquired` ([UInt64](/core/reference/data-types/int-uint)) — Total number of query slots acquired
+- `ProfileEvent_ConcurrentQueryWaitMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time a query was waiting for a query slots
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorUpdateCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of merge coordinator updates
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on updating merge coordinator state
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorFetchMetadataMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on fetching fresh metadata inside merge coordinator
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorFilterMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on filtering prepared merges inside merge coordinator
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorSelectMergesMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on finding merge using merge selectors inside merge coordinator
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateForShareCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of for share captures of coordinator state lock
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateExclusivelyCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number of exclusive captures of coordinator state lock
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateForShareMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on locking coordinator state mutex for share
+- `ProfileEvent_CoordinatedMergesMergeCoordinatorLockStateExclusivelyMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on locking coordinator state mutex exclusively
+- `ProfileEvent_CoordinatedMergesMergeWorkerUpdateCount` ([UInt64](/core/reference/data-types/int-uint)) — Total number merge worker updates
+- `ProfileEvent_CoordinatedMergesMergeWorkerUpdateMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on updating local state of assigned merges on worker
+- `ProfileEvent_CoordinatedMergesMergeAssignmentRequest` ([UInt64](/core/reference/data-types/int-uint)) — Total number of merge assignment requests
+- `ProfileEvent_CoordinatedMergesMergeAssignmentResponse` ([UInt64](/core/reference/data-types/int-uint)) — Total number of merge assignment requests
+- `ProfileEvent_CoordinatedMergesMergeAssignmentRequestMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend in merge assignment client
+- `ProfileEvent_CoordinatedMergesMergeAssignmentResponseMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend in merge assignment handler
+- `ProfileEvent_SharedDatabaseCatalogFailedToApplyState` ([UInt64](/core/reference/data-types/int-uint)) — Number of failures to apply new state in SharedDatabaseCatalog
+- `ProfileEvent_SharedDatabaseCatalogStateApplicationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spend on application of new state in SharedDatabaseCatalog
+- `ProfileEvent_MemoryWorkerRun` ([UInt64](/core/reference/data-types/int-uint)) — Number of runs done by MemoryWorker in background
+- `ProfileEvent_MemoryWorkerRunElapsedMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Total time spent by MemoryWorker for background work
+- `ProfileEvent_ParquetFetchWaitTimeMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time of waiting for parquet file reads from decoding threads (not prefetching threads)
+- `ProfileEvent_WasmSerializationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmDeserializationMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmGuestExecuteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmTotalExecuteMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Time spent executing WebAssembly code
+- `ProfileEvent_WasmModuleInstatiate` ([UInt64](/core/reference/data-types/int-uint)) — Number of WebAssembly compartments created
+- `ProfileEvent_WasmMemoryAllocated` ([UInt64](/core/reference/data-types/int-uint)) — Total memory allocated for WebAssembly compartments
+- `ProfileEvent_ParquetReadRowGroups` ([UInt64](/core/reference/data-types/int-uint)) — The total number of row groups read from parquet data
+- `ProfileEvent_ParquetPrunedRowGroups` ([UInt64](/core/reference/data-types/int-uint)) — The total number of row groups pruned from parquet data
+- `ProfileEvent_ParquetDecodingTasks` ([UInt64](/core/reference/data-types/int-uint)) — Tasks issued by parquet reader
+- `ProfileEvent_ParquetDecodingTaskBatches` ([UInt64](/core/reference/data-types/int-uint)) — Task groups sent to a thread pool by parquet reader
+- `ProfileEvent_ParquetPrefetcherReadRandomRead` ([UInt64](/core/reference/data-types/int-uint)) — The total number of reads with ReadMode::RandomRead by DB::Parquet::Prefetcher
+- `ProfileEvent_ParquetPrefetcherReadSeekAndRead` ([UInt64](/core/reference/data-types/int-uint)) — The total number of reads with ReadMode::SeekAndRead by DB::Parquet::Prefetcher
+- `ProfileEvent_ParquetPrefetcherReadEntireFile` ([UInt64](/core/reference/data-types/int-uint)) — The total number of read with ReadMode::EntireFileIsInMemory by DB::Parquet::Prefetcher
+- `ProfileEvent_ParquetRowsFilterExpression` ([UInt64](/core/reference/data-types/int-uint)) — The total number of rows that were passed through filter
+- `ProfileEvent_ParquetColumnsFilterExpression` ([UInt64](/core/reference/data-types/int-uint)) — The total number of columns that were passed through filter
+- `ProfileEvent_FilterTransformPassedRows` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that passed the filter in the query
+- `ProfileEvent_FilterTransformPassedBytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of bytes that passed the filter in the query
+- `ProfileEvent_QueryPreempted` ([UInt64](/core/reference/data-types/int-uint)) — How many times tasks are paused and waiting due to 'priority' setting
+- `ProfileEvent_IndexBinarySearchAlgorithm` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the binary search algorithm is used over the index marks
+- `ProfileEvent_IndexGenericExclusionSearchAlgorithm` ([UInt64](/core/reference/data-types/int-uint)) — Number of times the generic exclusion search algorithm is used over the index marks
+- `ProfileEvent_ParallelReplicasQueryCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of (sub)queries executed using parallel replicas during a query execution
+- `ProfileEvent_DistributedConnectionReconnectCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of reconnects to other servers done during distributed query execution. It can happen when a stale connection has been acquired from connection pool
+- `ProfileEvent_DistributedConnectionConnectCount` ([UInt64](/core/reference/data-types/int-uint)) — Number of connects to other servers done during distributed query execution. Happens when new connection is established instead of using existing from pool.
+- `ProfileEvent_RefreshableViewRefreshSuccess` ([UInt64](/core/reference/data-types/int-uint)) — How many times refreshable materialized views refreshed
+- `ProfileEvent_RefreshableViewRefreshFailed` ([UInt64](/core/reference/data-types/int-uint)) — How many times refreshable materialized views failed to refresh
+- `ProfileEvent_RefreshableViewSyncReplicaSuccess` ([UInt64](/core/reference/data-types/int-uint)) — How many times a SELECT from refreshable materialized view did an implicit SYNC REPLICA
+- `ProfileEvent_RefreshableViewSyncReplicaRetry` ([UInt64](/core/reference/data-types/int-uint)) — How many times a SELECT from refreshable materialized view failed and retried an implicit SYNC REPLICA
+- `ProfileEvent_RefreshableViewLockTableRetry` ([UInt64](/core/reference/data-types/int-uint)) — How many times a SELECT from refreshable materialized view had to switch to a new table because the old table was dropped
+- `ProfileEvent_AsyncLoggingConsoleTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the console log
+- `ProfileEvent_AsyncLoggingFileLogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the file log
+- `ProfileEvent_AsyncLoggingErrorFileLogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the error file log
+- `ProfileEvent_AsyncLoggingSyslogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the syslog
+- `ProfileEvent_AsyncLoggingTextLogTotalMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages (accepted or dropped) have been sent to the async queue for the text_log
+- `ProfileEvent_AsyncLoggingConsoleDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from the console log due to the async log queue being full
+- `ProfileEvent_AsyncLoggingFileLogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from the file log due to the async log queue being full
+- `ProfileEvent_AsyncLoggingErrorFileLogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from error file log due to the async log queue being full
+- `ProfileEvent_AsyncLoggingSyslogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from the syslog due to the async log queue being full
+- `ProfileEvent_AsyncLoggingTextLogDroppedMessages` ([UInt64](/core/reference/data-types/int-uint)) — How many messages have been dropped from text_log due to the async log queue being full
+- `ProfileEvent_JemallocFailedAllocationSampleTracking` ([UInt64](/core/reference/data-types/int-uint)) — Total number of times tracking of jemalloc allocation sample failed
+- `ProfileEvent_JemallocFailedDeallocationSampleTracking` ([UInt64](/core/reference/data-types/int-uint)) — Total number of times tracking of jemalloc deallocation sample failed
+- `ProfileEvent_LoadedStatisticsMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Elapsed time of loading statistics from parts
+- `ProfileEvent_RuntimeDataflowStatisticsInputBytes` ([UInt64](/core/reference/data-types/int-uint)) — Collected statistics on the number of bytes replicas would read if the query was executed with parallel replicas
+- `ProfileEvent_RuntimeDataflowStatisticsOutputBytes` ([UInt64](/core/reference/data-types/int-uint)) — Collected statistics on the number of bytes replicas would send to the initiator if the query was executed with parallel replicas
+- `ProfileEvent_S3CachedCredentialsProvidersReused` ([UInt64](/core/reference/data-types/int-uint)) — Total number of reused credentials provider from the cache
+- `ProfileEvent_S3CachedCredentialsProvidersAdded` ([UInt64](/core/reference/data-types/int-uint)) — Total number of newly added credentials providers to the cache
+- `ProfileEvent_RuntimeFiltersCreated` ([UInt64](/core/reference/data-types/int-uint)) — Number of distinct JOIN Runtime Filters created within a query
+- `ProfileEvent_RuntimeFilterBlocksProcessed` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks processed by JOIN Runtime Filters
+- `ProfileEvent_RuntimeFilterBlocksSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of blocks skipped by JOIN Runtime Filters without processing due to filter being dynamically disabled because of poor filtering ratio
+- `ProfileEvent_RuntimeFilterRowsChecked` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows checked by JOIN Runtime Filters
+- `ProfileEvent_RuntimeFilterRowsPassed` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that passed (not filtered out by) JOIN Runtime Filters
+- `ProfileEvent_RuntimeFilterRowsSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows in blocks that were skipped by JOIN Runtime Filters
+- `ProfileEvent_JoinBuildPostProcessingMicroseconds` ([UInt64](/core/reference/data-types/int-uint)) — Elapsed time of post-processing steps after building the right JOIN side.
+- `ProfileEvent_AIInputTokens` ([UInt64](/core/reference/data-types/int-uint)) — Total prompt tokens consumed across all AI function calls in the query.
+- `ProfileEvent_AIOutputTokens` ([UInt64](/core/reference/data-types/int-uint)) — Total completion tokens consumed across all AI function calls in the query.
+- `ProfileEvent_AIAPICalls` ([UInt64](/core/reference/data-types/int-uint)) — Number of HTTP requests dispatched to AI providers.
+- `ProfileEvent_AIRowsProcessed` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that received an AI result.
+- `ProfileEvent_AIRowsSkipped` ([UInt64](/core/reference/data-types/int-uint)) — Number of rows that received a default value due to quota or error.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.query_metric_log LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+query_id: 97c8ba04-b6d4-4bd7-b13e-6201c5c6e49d
+hostname: clickhouse.eu-central1.internal
+event_date: 2020-09-05
+event_time: 2020-09-05 16:22:33
+event_time_microseconds: 2020-09-05 16:22:33.196807
+memory_usage: 313434219
+peak_memory_usage: 598951986
+ProfileEvent_Query: 0
+ProfileEvent_SelectQuery: 0
+ProfileEvent_InsertQuery: 0
+ProfileEvent_FailedQuery: 0
+ProfileEvent_FailedSelectQuery: 0
+...
+```
+
+## See Also {#see-also}
+
+- [query_metric_log setting](/core/reference/settings/server-settings/settings#query_metric_log) — Enabling and disabling the setting.
+- [query_metric_log_interval](/core/reference/settings/session-settings#query_metric_log_interval)
+- [system.asynchronous_metrics](/core/reference/system-tables/asynchronous_metrics) — Contains periodically calculated metrics.
+- [system.events](/core/reference/system-tables/events) — Contains a number of events that occurred.
+- [system.metrics](/core/reference/system-tables/metrics) — Contains instantly calculated metrics.
+- [Monitoring](/core/guides/oss/deployment-and-scaling/monitoring/monitoring) — Base concepts of ClickHouse monitoring.
diff --git a/core/reference/system-tables/query_thread_log.mdx b/core/reference/system-tables/query_thread_log.mdx
new file mode 100644
index 00000000..07060172
--- /dev/null
+++ b/core/reference/system-tables/query_thread_log.mdx
@@ -0,0 +1,144 @@
+---
+description: 'System table containing information about threads that execute queries,
+ for example, thread name, thread start time, duration of query processing.'
+keywords: ['system table', 'query_thread_log']
+slug: /operations/system-tables/query_thread_log
+title: 'system.query_thread_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about threads that execute queries, for example, thread name, thread start time, duration of query processing.
+
+To start logging:
+
+1. Configure parameters in the [query_thread_log](/core/reference/settings/server-settings/settings#query_thread_log) section.
+2. Set [log_query_threads](/core/reference/settings/session-settings#log_query_threads) to 1.
+
+The flushing period of data is set in `flush_interval_milliseconds` parameter of the [query_thread_log](/core/reference/settings/server-settings/settings#query_thread_log) server settings section. To force flushing, use the [SYSTEM FLUSH LOGS](/core/reference/statements/system#flush-logs) query.
+
+ClickHouse does not delete data from the table automatically. See [Introduction](/core/reference/system-tables/overview#system-tables-introduction) for more details.
+
+You can use the [log_queries_probability](/core/reference/settings/session-settings#log_queries_probability)) setting to reduce the number of queries, registered in the `query_thread_log` table.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — The date when the thread has finished execution of the query.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — The date and time when the thread has finished execution of the query.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — The date and time when the thread has finished execution of the query with microseconds precision.
+- `query_start_time` ([DateTime](/core/reference/data-types/datetime)) — Start time of query execution.
+- `query_start_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Start time of query execution with microsecond precision.
+- `query_duration_ms` ([UInt64](/core/reference/data-types/int-uint)) — Duration of query execution.
+- `read_rows` ([UInt64](/core/reference/data-types/int-uint)) — Number of read rows.
+- `read_bytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of read bytes.
+- `written_rows` ([UInt64](/core/reference/data-types/int-uint)) — For INSERT queries, the number of written rows. For other queries, the column value is 0.
+- `written_bytes` ([UInt64](/core/reference/data-types/int-uint)) — For INSERT queries, the number of written bytes. For other queries, the column value is 0.
+- `memory_usage` ([Int64](/core/reference/data-types/int-uint)) — The difference between the amount of allocated and freed memory in context of this thread.
+- `peak_memory_usage` ([Int64](/core/reference/data-types/int-uint)) — The maximum difference between the amount of allocated and freed memory in context of this thread.
+- `thread_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the thread.
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint)) — Internal thread ID.
+- `master_thread_id` ([UInt64](/core/reference/data-types/int-uint)) — OS initial ID of initial thread.
+- `current_database` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the current database.
+- `query` ([String](/core/reference/data-types/string)) — Query string.
+- `normalized_query_hash` ([UInt64](/core/reference/data-types/int-uint)) — The hash of normalized query - with wiped constants, etc.
+- `is_initial_query` ([UInt8](/core/reference/data-types/int-uint)) — Query type. Possible values: 1 — Query was initiated by the client, 0 — Query was initiated by another query for distributed query execution.
+- `connection_address` ([IPv6](/core/reference/data-types/ipv6)) — The client IP address from which the connection was made. When connected through a proxy, this will be the address of the proxy.
+- `connection_port` ([UInt16](/core/reference/data-types/int-uint)) — The client port from which the connection was made. When connected through a proxy, this will be the port of the proxy.
+- `user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the user who initiated the current query.
+- `query_id` ([String](/core/reference/data-types/string)) — ID of the query.
+- `address` ([IPv6](/core/reference/data-types/ipv6)) — IP address that was used to make the query. When connected through a proxy and `auth_use_forwarded_address` is set, this will be the address of the client instead of the proxy.
+- `port` ([UInt16](/core/reference/data-types/int-uint)) — The client port that was used to make the query. When connected through a proxy and `auth_use_forwarded_address` is set, this will be the port of the client instead of the proxy.
+- `initial_user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the user who ran the initial query (for distributed query execution).
+- `initial_query_id` ([String](/core/reference/data-types/string)) — ID of the initial query (for distributed query execution).
+- `initial_address` ([IPv6](/core/reference/data-types/ipv6)) — IP address that the parent query was launched from.
+- `initial_port` ([UInt16](/core/reference/data-types/int-uint)) — The client port that was used to make the parent query.
+- `initial_query_start_time` ([DateTime](/core/reference/data-types/datetime)) — Start time of the initial query execution.
+- `initial_query_start_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Start time of the initial query execution
+- `authenticated_user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the user who was authenticated in the session.
+- `interface` ([UInt8](/core/reference/data-types/int-uint)) — Interface that the query was initiated from. Possible values: 1 — TCP, 2 — HTTP.
+- `is_secure` ([UInt8](/core/reference/data-types/int-uint)) — The flag which shows whether the connection was secure.
+- `os_user` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — OSs username who runs clickhouse-client.
+- `client_hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the client machine where the clickhouse-client or another TCP client is run.
+- `client_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The clickhouse-client or another TCP client name.
+- `client_revision` ([UInt32](/core/reference/data-types/int-uint)) — Revision of the clickhouse-client or another TCP client.
+- `client_version_major` ([UInt32](/core/reference/data-types/int-uint)) — Major version of the clickhouse-client or another TCP client.
+- `client_version_minor` ([UInt32](/core/reference/data-types/int-uint)) — Minor version of the clickhouse-client or another TCP client.
+- `client_version_patch` ([UInt32](/core/reference/data-types/int-uint)) — Patch component of the clickhouse-client or another TCP client version.
+- `script_query_number` ([UInt32](/core/reference/data-types/int-uint)) — A sequential query number in a multi-query script.
+- `script_line_number` ([UInt32](/core/reference/data-types/int-uint)) — A line number in a multi-query script where the current query starts.
+- `http_method` ([UInt8](/core/reference/data-types/int-uint)) — HTTP method that initiated the query. Possible values: 0 — The query was launched from the TCP interface, 1 — GET method was used., 2 — POST method was used.
+- `http_user_agent` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The UserAgent header passed in the HTTP request.
+- `http_referer` ([String](/core/reference/data-types/string)) — HTTP header `Referer` passed in the HTTP query (contains an absolute or partial address of the page making the query).
+- `forwarded_for` ([String](/core/reference/data-types/string)) — HTTP header `X-Forwarded-For` passed in the HTTP query.
+- `quota_key` ([String](/core/reference/data-types/string)) — The 'quota key' specified in the quotas setting.
+- `distributed_depth` ([UInt64](/core/reference/data-types/int-uint)) — How many times a query was forwarded between servers.
+- `revision` ([UInt32](/core/reference/data-types/int-uint)) — ClickHouse revision.
+- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types/map)) — ProfileEvents that measure different metrics for this thread. The description of them could be found in the table system.events.
+
+**Aliases:**
+
+- `ProfileEvents.Names` — Alias for `mapKeys(ProfileEvents)`.
+- `ProfileEvents.Values` — Alias for `mapValues(ProfileEvents)`.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+ SELECT * FROM system.query_thread_log LIMIT 1 \G
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+event_date: 2020-09-11
+event_time: 2020-09-11 10:08:17
+event_time_microseconds: 2020-09-11 10:08:17.134042
+query_start_time: 2020-09-11 10:08:17
+query_start_time_microseconds: 2020-09-11 10:08:17.063150
+query_duration_ms: 70
+read_rows: 0
+read_bytes: 0
+written_rows: 1
+written_bytes: 12
+memory_usage: 4300844
+peak_memory_usage: 4300844
+thread_name: TCPHandler
+thread_id: 638133
+master_thread_id: 638133
+query: INSERT INTO test1 VALUES
+is_initial_query: 1
+user: default
+query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
+address: ::ffff:127.0.0.1
+port: 33452
+initial_user: default
+initial_query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
+initial_address: ::ffff:127.0.0.1
+initial_port: 33452
+interface: 1
+os_user: bharatnc
+client_hostname: tower
+client_name: ClickHouse
+client_revision: 54437
+client_version_major: 20
+client_version_minor: 7
+client_version_patch: 2
+http_method: 0
+http_user_agent:
+quota_key:
+revision: 54440
+ProfileEvents: {'Query':1,'SelectQuery':1,'ReadCompressedBytes':36,'CompressedReadBufferBlocks':1,'CompressedReadBufferBytes':10,'IOBufferAllocs':1,'IOBufferAllocBytes':89,'ContextLock':15,'RWLockAcquiredReadLocks':1}
+```
+
+## See Also {#see-also}
+
+- [system.query_log](/core/reference/system-tables/query_log) — Description of the `query_log` system table which contains common information about queries execution.
+- [system.query_views_log](/core/reference/system-tables/query_views_log) — This table contains information about each view executed during a query.
diff --git a/core/reference/system-tables/query_views_log.mdx b/core/reference/system-tables/query_views_log.mdx
new file mode 100644
index 00000000..7c291c23
--- /dev/null
+++ b/core/reference/system-tables/query_views_log.mdx
@@ -0,0 +1,95 @@
+---
+description: 'System table containing information about the dependent views executed
+ when running a query, for example, the view type or the execution time.'
+keywords: ['system table', 'query_views_log']
+slug: /operations/system-tables/query_views_log
+title: 'system.query_views_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about the dependent views executed when running a query, for example, the view type or the execution time.
+
+To start logging:
+
+1. Configure parameters in the [query_views_log](/core/reference/settings/server-settings/settings#query_views_log) section.
+2. Set [log_query_views](/core/reference/settings/session-settings#log_query_views) to 1.
+
+The flushing period of data is set in `flush_interval_milliseconds` parameter of the [query_views_log](/core/reference/settings/server-settings/settings#query_views_log) server settings section. To force flushing, use the [SYSTEM FLUSH LOGS](/core/reference/statements/system#flush-logs) query.
+
+ClickHouse does not delete data from the table automatically. See [Introduction](/core/reference/system-tables/overview#system-tables-introduction) for more details.
+
+You can use the [log_queries_probability](/core/reference/settings/session-settings#log_queries_probability)) setting to reduce the number of queries, registered in the `query_views_log` table.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — The date when the last event of the view happened.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — The date and time when the view finished execution.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — The date and time when the view finished execution with microseconds precision.
+- `view_duration_ms` ([UInt64](/core/reference/data-types/int-uint)) — Duration of view execution (sum of its stages) in milliseconds.
+- `initial_query_id` ([String](/core/reference/data-types/string)) — ID of the initial query (for distributed query execution).
+- `view_name` ([String](/core/reference/data-types/string)) — Name of the view.
+- `view_uuid` ([UUID](/core/reference/data-types/uuid)) — UUID of the view.
+- `view_type` ([Enum8('Default' = 1, 'Materialized' = 2, 'Live' = 3, 'Window' = 4)](/core/reference/data-types/enum)) — Type of the view. Values: 'Default' = 1 — Default views. Should not appear in this log, 'Materialized' = 2 — Materialized views, 'Live' = 3 — Live views.
+- `view_query` ([String](/core/reference/data-types/string)) — The query executed by the view.
+- `view_target` ([String](/core/reference/data-types/string)) — The name of the view target table.
+- `read_rows` ([UInt64](/core/reference/data-types/int-uint)) — Number of read rows.
+- `read_bytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of read bytes.
+- `written_rows` ([UInt64](/core/reference/data-types/int-uint)) — Number of written rows.
+- `written_bytes` ([UInt64](/core/reference/data-types/int-uint)) — Number of written bytes.
+- `peak_memory_usage` ([Int64](/core/reference/data-types/int-uint)) — The maximum difference between the amount of allocated and freed memory in context of this view.
+- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types/map)) — ProfileEvents that measure different metrics. The description of them could be found in the table system.events.
+- `status` ([Enum8('QueryStart' = 1, 'QueryFinish' = 2, 'ExceptionBeforeStart' = 3, 'ExceptionWhileProcessing' = 4)](/core/reference/data-types/enum)) — Status of the view. Values: 'QueryStart' = 1 — Successful start the view execution. Should not appear, 'QueryFinish' = 2 — Successful end of the view execution, 'ExceptionBeforeStart' = 3 — Exception before the start of the view execution., 'ExceptionWhileProcessing' = 4 — Exception during the view execution.
+- `exception_code` ([Int32](/core/reference/data-types/int-uint)) — Code of an exception.
+- `exception` ([String](/core/reference/data-types/string)) — Exception message.
+- `stack_trace` ([String](/core/reference/data-types/string)) — Stack trace. An empty string, if the query was completed successfully.
+
+**Aliases:**
+
+- `ProfileEvents.Names` — Alias for `mapKeys(ProfileEvents)`.
+- `ProfileEvents.Values` — Alias for `mapValues(ProfileEvents)`.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.query_views_log LIMIT 1 \G;
+```
+
+```text title="Response"
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+event_date: 2021-06-22
+event_time: 2021-06-22 13:23:07
+event_time_microseconds: 2021-06-22 13:23:07.738221
+view_duration_ms: 0
+initial_query_id: c3a1ac02-9cad-479b-af54-9e9c0a7afd70
+view_name: default.matview_inner
+view_uuid: 00000000-0000-0000-0000-000000000000
+view_type: Materialized
+view_query: SELECT * FROM default.table_b
+view_target: default.`.inner.matview_inner`
+read_rows: 4
+read_bytes: 64
+written_rows: 2
+written_bytes: 32
+peak_memory_usage: 4196188
+ProfileEvents: {'FileOpen':2,'WriteBufferFromFileDescriptorWrite':2,'WriteBufferFromFileDescriptorWriteBytes':187,'IOBufferAllocs':3,'IOBufferAllocBytes':3145773,'FunctionExecute':3,'DiskWriteElapsedMicroseconds':13,'InsertedRows':2,'InsertedBytes':16,'SelectedRows':4,'SelectedBytes':48,'ContextLock':16,'RWLockAcquiredReadLocks':1,'RealTimeMicroseconds':698,'SoftPageFaults':4,'OSReadChars':463}
+status: QueryFinish
+exception_code: 0
+exception:
+stack_trace:
+```
+
+## See Also {#see-also}
+
+{/*AUTOGENERATED_START*/}
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/quota_limits.mdx b/core/reference/system-tables/quota_limits.mdx
new file mode 100644
index 00000000..f208a907
--- /dev/null
+++ b/core/reference/system-tables/quota_limits.mdx
@@ -0,0 +1,32 @@
+---
+description: 'System table containing information about maximums for all intervals
+ of all quotas. Any number of rows or zero can correspond to one quota.'
+keywords: ['system table', 'quota_limits']
+slug: /operations/system-tables/quota_limits
+title: 'system.quota_limits'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about maximums for all intervals of all quotas. Any number of rows or zero can correspond to one quota.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `quota_name` ([String](/core/reference/data-types)) — Quota name.
+- `duration` ([UInt32](/core/reference/data-types)) — Length of the time interval for calculating resource consumption, in seconds.
+- `is_randomized_interval` ([UInt8](/core/reference/data-types)) — Boolean value. It shows whether the interval is randomized. Interval always starts at the same time if it is not randomized. For example, an interval of 1 minute always starts at an integer number of minutes (i.e. it can start at 11:20:00, but it never starts at 11:20:01), an interval of one day always starts at midnight UTC. If interval is randomized, the very first interval starts at random time, and subsequent intervals starts one by one. Values: 0 — Interval is not randomized, 1 — Interval is randomized.
+- `max_queries` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of queries of all types allowed to be executed.
+- `max_query_selects` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of SELECT queries allowed to be executed.
+- `max_query_inserts` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of INSERT queries allowed to be executed.
+- `max_errors` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of queries resulted in an error allowed within the specified period of time.
+- `max_result_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum total number of rows in the result set of all queries allowed within the specified period of time.
+- `max_result_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum total number of bytes in the result set of all queries allowed within the specified period of time.
+- `max_read_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of rows to read during execution of all queries allowed within the specified period of time.
+- `max_read_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of bytes to read during execution of all queries allowed within the specified period of time.
+- `max_execution_time` ([Nullable(Float64)](/core/reference/data-types)) — The maximum amount of time (in nanoseconds) allowed for all queries to execute within the specified period of time
+- `max_written_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of bytes to written during execution of all queries allowed within the specified period of time.
+- `max_failed_sequential_authentications` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of consecutive authentication failures allowed within the specified period of time.
+- `max_queries_per_normalized_hash` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of executions of any single normalized query allowed within the specified period of time.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/quota_usage.mdx b/core/reference/system-tables/quota_usage.mdx
new file mode 100644
index 00000000..50bbd93f
--- /dev/null
+++ b/core/reference/system-tables/quota_usage.mdx
@@ -0,0 +1,54 @@
+---
+description: 'System table containing formation about quota usage by the current user
+ such as how much of the quota is used and how much is left.'
+keywords: ['system table', 'quota_usage']
+slug: /operations/system-tables/quota_usage
+title: 'system.quota_usage'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Quota usage by the current user: how much is used and how much is left.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `quota_name` ([String](/core/reference/data-types)) — Quota name.
+- `quota_key` ([String](/core/reference/data-types)) — Key value.
+- `start_time` ([Nullable(DateTime)](/core/reference/data-types)) — Start time for calculating resource consumption.
+- `end_time` ([Nullable(DateTime)](/core/reference/data-types)) — End time for calculating resource consumption.
+- `duration` ([Nullable(UInt32)](/core/reference/data-types)) — Length of the time interval for calculating resource consumption, in seconds.
+- `queries` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of executed queries.
+- `max_queries` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of queries of all types allowed to be executed.
+- `query_selects` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of executed SELECT queries.
+- `max_query_selects` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of SELECT queries allowed to be executed.
+- `query_inserts` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of executed INSERT queries.
+- `max_query_inserts` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of INSERT queries allowed to be executed.
+- `errors` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of queries resulted in an error.
+- `max_errors` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of queries resulted in an error allowed within the specified period of time.
+- `result_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of rows in the result set of all queries within the current period of time.
+- `max_result_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum total number of rows in the result set of all queries allowed within the specified period of time.
+- `result_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of bytes in the result set of all queries within the current period of time.
+- `max_result_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum total number of bytes in the result set of all queries allowed within the specified period of time.
+- `read_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of rows read during execution of all queries within the current period of time.
+- `max_read_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of rows to read during execution of all queries allowed within the specified period of time.
+- `read_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of bytes read during execution of all queries within the current period of time.
+- `max_read_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of bytes to read during execution of all queries allowed within the specified period of time.
+- `execution_time` ([Nullable(Float64)](/core/reference/data-types)) — The current total amount of time (in nanoseconds) spent to execute queries within the current period of time
+- `max_execution_time` ([Nullable(Float64)](/core/reference/data-types)) — The maximum amount of time (in nanoseconds) allowed for all queries to execute within the specified period of time
+- `written_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of bytes written during execution of all queries within the current period of time.
+- `max_written_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of bytes to written during execution of all queries allowed within the specified period of time.
+- `failed_sequential_authentications` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of consecutive authentication failures within the current period of time.
+- `max_failed_sequential_authentications` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of consecutive authentication failures allowed within the specified period of time.
+- `queries_per_normalized_hash` ([Nullable(UInt64)](/core/reference/data-types)) — The current maximum number of executions of any single normalized query within the current period of time.
+- `max_queries_per_normalized_hash` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of executions of any single normalized query allowed within the specified period of time.
+{/*AUTOGENERATED_END*/}
+
+## See Also {#see-also}
+
+- [SHOW QUOTA](/core/reference/statements/show#show-quota))
diff --git a/core/reference/system-tables/quotas.mdx b/core/reference/system-tables/quotas.mdx
new file mode 100644
index 00000000..f1685c58
--- /dev/null
+++ b/core/reference/system-tables/quotas.mdx
@@ -0,0 +1,28 @@
+---
+description: 'System table containing information about quotas.'
+keywords: ['system table', 'quotas', 'quota']
+slug: /operations/system-tables/quotas
+title: 'system.quotas'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about [quotas](/core/reference/system-tables/quotas).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — Quota name.
+- `id` ([UUID](/core/reference/data-types)) — Quota ID.
+- `storage` ([String](/core/reference/data-types)) — Storage of quotas. Possible value: 'users.xml' if a quota configured in the users.xml file, 'disk' if a quota configured by an SQL-query.
+- `keys` ([Array(Enum8('user_name' = 1, 'ip_address' = 2, 'forwarded_ip_address' = 3, 'client_key' = 4, 'normalized_query_hash' = 7))](/core/reference/data-types)) — Key specifies how the quota should be shared. If two connections use the same quota and key, they share the same amounts of resources. Values: [] — All users share the same quota, ['user_name'] — Connections with the same user name share the same quota, ['ip_address'] — Connections from the same IP share the same quota. ['client_key'] — Connections with the same key share the same quota. A key must be explicitly provided by a client. When using clickhouse-client, pass a key value in the --quota_key parameter, or use the quota_key parameter in the client configuration file. When using HTTP interface, use the X-ClickHouse-Quota header, ['user_name', 'client_key'] — Connections with the same client_key share the same quota. If a key isn't provided by a client, the quota is tracked for `user_name`, ['client_key', 'ip_address'] — Connections with the same client_key share the same quota. If a key isn't provided by a client, the quota is tracked for ip_address.
+- `durations` ([Array(UInt32)](/core/reference/data-types)) — Time interval lengths in seconds.
+- `apply_to_all` ([UInt8](/core/reference/data-types)) — Logical value. It shows which users the quota is applied to. Values: 0 — The quota applies to users specify in the apply_to_list. 1 — The quota applies to all users except those listed in apply_to_except.
+- `apply_to_list` ([Array(String)](/core/reference/data-types)) — List of user names/roles that the quota should be applied to.
+- `apply_to_except` ([Array(String)](/core/reference/data-types)) — List of user names/roles that the quota should not apply to.
+{/*AUTOGENERATED_END*/}
+
+## See Also {#see-also}
+
+- [SHOW QUOTAS](/core/reference/statements/show#show-quotas)
diff --git a/core/reference/system-tables/quotas_usage.mdx b/core/reference/system-tables/quotas_usage.mdx
new file mode 100644
index 00000000..3edba00e
--- /dev/null
+++ b/core/reference/system-tables/quotas_usage.mdx
@@ -0,0 +1,54 @@
+---
+description: 'System table containing formation about quota usage by all users.'
+keywords: ['system table', 'quotas_usage', 'quota']
+slug: /operations/system-tables/quotas_usage
+title: 'system.quotas_usage'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Quota usage by all users.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `quota_name` ([String](/core/reference/data-types)) — Quota name.
+- `quota_key` ([String](/core/reference/data-types)) — Key value.
+- `is_current` ([UInt8](/core/reference/data-types)) — Quota usage for current user.
+- `start_time` ([Nullable(DateTime)](/core/reference/data-types)) — Start time for calculating resource consumption.
+- `end_time` ([Nullable(DateTime)](/core/reference/data-types)) — End time for calculating resource consumption.
+- `duration` ([Nullable(UInt32)](/core/reference/data-types)) — Length of the time interval for calculating resource consumption, in seconds.
+- `queries` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of executed queries.
+- `max_queries` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of queries of all types allowed to be executed.
+- `query_selects` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of executed SELECT queries.
+- `max_query_selects` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of SELECT queries allowed to be executed.
+- `query_inserts` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of executed INSERT queries.
+- `max_query_inserts` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum allowed number of INSERT queries allowed to be executed.
+- `errors` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of queries resulted in an error.
+- `max_errors` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of queries resulted in an error allowed within the specified period of time.
+- `result_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of rows in the result set of all queries within the current period of time.
+- `max_result_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum total number of rows in the result set of all queries allowed within the specified period of time.
+- `result_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of bytes in the result set of all queries within the current period of time.
+- `max_result_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum total number of bytes in the result set of all queries allowed within the specified period of time.
+- `read_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of rows read during execution of all queries within the current period of time.
+- `max_read_rows` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of rows to read during execution of all queries allowed within the specified period of time.
+- `read_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of bytes read during execution of all queries within the current period of time.
+- `max_read_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of bytes to read during execution of all queries allowed within the specified period of time.
+- `execution_time` ([Nullable(Float64)](/core/reference/data-types)) — The current total amount of time (in nanoseconds) spent to execute queries within the current period of time
+- `max_execution_time` ([Nullable(Float64)](/core/reference/data-types)) — The maximum amount of time (in nanoseconds) allowed for all queries to execute within the specified period of time
+- `written_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The current total number of bytes written during execution of all queries within the current period of time.
+- `max_written_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of bytes to written during execution of all queries allowed within the specified period of time.
+- `failed_sequential_authentications` ([Nullable(UInt64)](/core/reference/data-types)) — The current number of consecutive authentication failures within the current period of time.
+- `max_failed_sequential_authentications` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of consecutive authentication failures allowed within the specified period of time.
+- `queries_per_normalized_hash` ([Nullable(UInt64)](/core/reference/data-types)) — The current maximum number of executions of any single normalized query within the current period of time.
+- `max_queries_per_normalized_hash` ([Nullable(UInt64)](/core/reference/data-types)) — The maximum number of executions of any single normalized query allowed within the specified period of time.
+{/*AUTOGENERATED_END*/}
+
+## See Also {#see-also}
+
+- [SHOW QUOTA](/core/reference/statements/show#show-quota))
diff --git a/reference/system-tables/remote_data_paths.mdx b/core/reference/system-tables/remote_data_paths.mdx
similarity index 52%
rename from reference/system-tables/remote_data_paths.mdx
rename to core/reference/system-tables/remote_data_paths.mdx
index 88acf489..06308897 100644
--- a/reference/system-tables/remote_data_paths.mdx
+++ b/core/reference/system-tables/remote_data_paths.mdx
@@ -16,14 +16,14 @@ Each row represents one remote blob object associated with a data file.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `disk_name` ([String](/reference/data-types)) — Disk name.
-- `path` ([String](/reference/data-types)) — Disk path.
-- `cache_base_path` ([String](/reference/data-types)) — Base directory of cache files.
-- `local_path` ([String](/reference/data-types)) — Path of ClickHouse file, also used as metadata path.
-- `remote_path` ([String](/reference/data-types)) — Blob path in object storage, with which ClickHouse file is associated with.
-- `size` ([UInt64](/reference/data-types)) — Size of the file (compressed).
-- `common_prefix_for_blobs` ([String](/reference/data-types)) — Common prefix for blobs in object storage.
-- `cache_paths` ([Array(String)](/reference/data-types)) — Cache files for corresponding blob.
+- `disk_name` ([String](/core/reference/data-types)) — Disk name.
+- `path` ([String](/core/reference/data-types)) — Disk path.
+- `cache_base_path` ([String](/core/reference/data-types)) — Base directory of cache files.
+- `local_path` ([String](/core/reference/data-types)) — Path of ClickHouse file, also used as metadata path.
+- `remote_path` ([String](/core/reference/data-types)) — Blob path in object storage, with which ClickHouse file is associated with.
+- `size` ([UInt64](/core/reference/data-types)) — Size of the file (compressed).
+- `common_prefix_for_blobs` ([String](/core/reference/data-types)) — Common prefix for blobs in object storage.
+- `cache_paths` ([Array(String)](/core/reference/data-types)) — Cache files for corresponding blob.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -47,6 +47,6 @@ cache_paths: ['/var/lib/clickhouse/disks/s3_cache/a1/b2/c3d4e5f6']
## See Also {#see-also}
-- [Using external storage for data storage](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3)
-- [Configuring external storage](/concepts/features/configuration/server-config/storing-data#configuring-external-storage)
-- [system.disks](/reference/system-tables/disks)
+- [Using external storage for data storage](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-s3)
+- [Configuring external storage](/core/concepts/features/configuration/server-config/storing-data#configuring-external-storage)
+- [system.disks](/core/reference/system-tables/disks)
diff --git a/core/reference/system-tables/replicas.mdx b/core/reference/system-tables/replicas.mdx
new file mode 100644
index 00000000..741e3b88
--- /dev/null
+++ b/core/reference/system-tables/replicas.mdx
@@ -0,0 +1,105 @@
+---
+description: 'System table containing information about and status of replicated tables
+ residing on the local server. Useful for monitoring.'
+keywords: ['system table', 'replicas']
+slug: /operations/system-tables/replicas
+title: 'system.replicas'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information and status for replicated tables residing on the local server.
+This table can be used for monitoring. The table contains a row for every Replicated\* table.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name.
+- `uuid` ([UUID](/core/reference/data-types)) — Table UUID.
+- `engine` ([String](/core/reference/data-types)) — Table engine name.
+- `is_leader` ([UInt8](/core/reference/data-types)) — Whether the replica is the leader. Multiple replicas can be leaders at the same time. A replica can be prevented from becoming a leader using the merge_tree setting replicated_can_become_leader. The leaders are responsible for scheduling background merges. Note that writes can be performed to any replica that is available and has a session in ZK, regardless of whether it is a leader.
+- `can_become_leader` ([UInt8](/core/reference/data-types)) — Whether the replica can be a leader.
+- `is_readonly` ([UInt8](/core/reference/data-types)) — Whether the replica is in read-only mode. This mode is turned on if the config does not have sections with ClickHouse Keeper, if an unknown error occurred when reinitializing sessions in ClickHouse Keeper, and during session reinitialization in ClickHouse Keeper.
+- `readonly_start_time` ([Nullable(DateTime)](/core/reference/data-types)) — The timestamp when the replica transitioned into readonly mode. Null if the replica is not in readonly mode.
+- `is_session_expired` ([UInt8](/core/reference/data-types)) — Whether the session with ClickHouse Keeper has expired. Basically the same as `is_readonly`.
+- `future_parts` ([UInt32](/core/reference/data-types)) — The number of data parts that will appear as the result of INSERTs or merges that haven't been done yet.
+- `parts_to_check` ([UInt32](/core/reference/data-types)) — The number of data parts in the queue for verification. A part is put in the verification queue if there is suspicion that it might be damaged.
+- `zookeeper_name` ([String](/core/reference/data-types)) — The name of the [Zoo]Keeper cluster (possibly auxiliary one) where the table's metadata is stored
+- `zookeeper_path` ([String](/core/reference/data-types)) — Path to table data in ClickHouse Keeper.
+- `replica_name` ([String](/core/reference/data-types)) — Replica name in ClickHouse Keeper. Different replicas of the same table have different names.
+- `replica_path` ([String](/core/reference/data-types)) — Path to replica data in ClickHouse Keeper. The same as concatenating 'zookeeper_path/replicas/replica_path'.
+- `columns_version` ([Int32](/core/reference/data-types)) — Version number of the table structure. Indicates how many times ALTER was performed. If replicas have different versions, it means some replicas haven't made all of the ALTERs yet.
+- `queue_size` ([UInt32](/core/reference/data-types)) — Size of the queue for operations waiting to be performed. Operations include inserting blocks of data, merges, and certain other actions. It usually coincides with future_parts.
+- `inserts_in_queue` ([UInt32](/core/reference/data-types)) — Number of inserts of blocks of data that need to be made. Insertions are usually replicated fairly quickly. If this number is large, it means something is wrong.
+- `merges_in_queue` ([UInt32](/core/reference/data-types)) — The number of merges waiting to be made. Sometimes merges are lengthy, so this value may be greater than zero for a long time.
+- `part_mutations_in_queue` ([UInt32](/core/reference/data-types)) — The number of mutations waiting to be made.
+- `queue_oldest_time` ([DateTime](/core/reference/data-types)) — If `queue_size` greater than 0, shows when the oldest operation was added to the queue.
+- `inserts_oldest_time` ([DateTime](/core/reference/data-types)) — See `queue_oldest_time`.
+- `merges_oldest_time` ([DateTime](/core/reference/data-types)) — See `queue_oldest_time`.
+- `part_mutations_oldest_time` ([DateTime](/core/reference/data-types)) — See `queue_oldest_time`.
+- `oldest_part_to_get` ([String](/core/reference/data-types)) — The name of the part to fetch from other replicas obtained from the oldest GET_PARTS entry in the replication queue.
+- `oldest_part_to_merge_to` ([String](/core/reference/data-types)) — The result part name to merge to obtained from the oldest MERGE_PARTS entry in the replication queue.
+- `oldest_part_to_mutate_to` ([String](/core/reference/data-types)) — The result part name to mutate to obtained from the oldest MUTATE_PARTS entry in the replication queue.
+- `log_max_index` ([UInt64](/core/reference/data-types)) — Maximum entry number in the log of general activity. This column and the next three (`log_pointer`, `total_replicas`, `active_replicas`) have a non-zero value only where there is an active session with ClickHouse Keeper.
+- `log_pointer` ([UInt64](/core/reference/data-types)) — Maximum entry number in the log of general activity that the replica copied to its execution queue, plus one. If log_pointer is much smaller than log_max_index, something is wrong.
+- `last_queue_update` ([DateTime](/core/reference/data-types)) — When the queue was updated last time.
+- `absolute_delay` ([UInt64](/core/reference/data-types)) — How big lag in seconds the current replica has.
+- `total_replicas` ([UInt32](/core/reference/data-types)) — The total number of known replicas of this table.
+- `active_replicas` ([UInt32](/core/reference/data-types)) — The number of replicas of this table that have a session in ClickHouse Keeper (i.e., the number of functioning replicas).
+- `lost_part_count` ([UInt64](/core/reference/data-types)) — The number of data parts lost in the table by all replicas in total since table creation. Value is persisted in ClickHouse Keeper and can only increase.
+- `last_queue_update_exception` ([String](/core/reference/data-types)) — When the queue contains broken entries. Especially important when ClickHouse breaks backward compatibility between versions and log entries written by newer versions aren't parseable by old versions.
+- `zookeeper_exception` ([String](/core/reference/data-types)) — The last exception message, got if the error happened when fetching the info from ClickHouse Keeper.
+- `replica_is_active` ([Map(String, UInt8)](/core/reference/data-types)) — Map between replica name and is replica active.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT *
+FROM system.replicas
+WHERE table = 'test_table'
+FORMAT Vertical
+```
+
+```text
+Query id: dc6dcbcb-dc28-4df9-ae27-4354f5b3b13e
+
+Row 1:
+───────
+database: db
+table: test_table
+engine: ReplicatedMergeTree
+is_leader: 1
+can_become_leader: 1
+is_readonly: 0
+is_session_expired: 0
+future_parts: 0
+parts_to_check: 0
+zookeeper_path: /test/test_table
+replica_name: r1
+replica_path: /test/test_table/replicas/r1
+columns_version: -1
+queue_size: 27
+inserts_in_queue: 27
+merges_in_queue: 0
+part_mutations_in_queue: 0
+queue_oldest_time: 2021-10-12 14:48:48
+inserts_oldest_time: 2021-10-12 14:48:48
+merges_oldest_time: 1970-01-01 03:00:00
+part_mutations_oldest_time: 1970-01-01 03:00:00
+oldest_part_to_get: 1_17_17_0
+oldest_part_to_merge_to:
+oldest_part_to_mutate_to:
+log_max_index: 206
+log_pointer: 207
+last_queue_update: 2021-10-12 14:50:08
+absolute_delay: 99
+total_replicas: 5
+active_replicas: 5
+lost_part_count: 0
+last_queue_update_exception:
+zookeeper_exception:
+replica_is_active: {'r1':1,'r2':1}
+```
diff --git a/core/reference/system-tables/replicated_fetches.mdx b/core/reference/system-tables/replicated_fetches.mdx
new file mode 100644
index 00000000..0790b4ed
--- /dev/null
+++ b/core/reference/system-tables/replicated_fetches.mdx
@@ -0,0 +1,68 @@
+---
+description: 'System table containing information about currently running background
+ fetches.'
+keywords: ['system table', 'replicated_fetches']
+slug: /operations/system-tables/replicated_fetches
+title: 'system.replicated_fetches'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about currently running background fetches.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `elapsed` ([Float64](/core/reference/data-types)) — The time elapsed (in seconds) since showing currently running background fetches started.
+- `progress` ([Float64](/core/reference/data-types)) — The percentage of completed work from 0 to 1.
+- `result_part_name` ([String](/core/reference/data-types)) — The name of the part that will be formed as the result of showing currently running background fetches.
+- `result_part_path` ([String](/core/reference/data-types)) — Absolute path to the part that will be formed as the result of showing currently running background fetches.
+- `partition_id` ([String](/core/reference/data-types)) — ID of the partition.
+- `total_size_bytes_compressed` ([UInt64](/core/reference/data-types)) — The total size (in bytes) of the compressed data in the result part.
+- `bytes_read_compressed` ([UInt64](/core/reference/data-types)) — The number of compressed bytes read from the result part.
+- `source_replica_path` ([String](/core/reference/data-types)) — Absolute path to the source replica.
+- `source_replica_hostname` ([String](/core/reference/data-types)) — Hostname of the source replica.
+- `source_replica_port` ([UInt16](/core/reference/data-types)) — Port number of the source replica.
+- `interserver_scheme` ([String](/core/reference/data-types)) — Name of the interserver scheme.
+- `URI` ([String](/core/reference/data-types)) — Uniform resource identifier.
+- `to_detached` ([UInt8](/core/reference/data-types)) — The flag indicates whether the currently running background fetch is being performed using the TO DETACHED expression.
+- `thread_id` ([UInt64](/core/reference/data-types)) — Thread identifier.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.replicated_fetches LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+database: default
+table: t
+elapsed: 7.243039876
+progress: 0.41832135995612835
+result_part_name: all_0_0_0
+result_part_path: /var/lib/clickhouse/store/700/70080a04-b2de-4adf-9fa5-9ea210e81766/all_0_0_0/
+partition_id: all
+total_size_bytes_compressed: 1052783726
+bytes_read_compressed: 440401920
+source_replica_path: /clickhouse/test/t/replicas/1
+source_replica_hostname: node1
+source_replica_port: 9009
+interserver_scheme: http
+URI: http://node1:9009/?endpoint=DataPartsExchange%3A%2Fclickhouse%2Ftest%2Ft%2Freplicas%2F1&part=all_0_0_0&client_protocol_version=4&compress=false
+to_detached: 0
+thread_id: 54
+```
+
+## See Also {#see-also}
+
+- [Managing ReplicatedMergeTree Tables](/core/reference/statements/system#managing-replicatedmergetree-tables)
diff --git a/reference/system-tables/replicated_merge_tree_settings.mdx b/core/reference/system-tables/replicated_merge_tree_settings.mdx
similarity index 53%
rename from reference/system-tables/replicated_merge_tree_settings.mdx
rename to core/reference/system-tables/replicated_merge_tree_settings.mdx
index 53b3f699..58f51de3 100644
--- a/reference/system-tables/replicated_merge_tree_settings.mdx
+++ b/core/reference/system-tables/replicated_merge_tree_settings.mdx
@@ -13,18 +13,18 @@ Contains a list of all ReplicatedMergeTree engine specific settings, their curre
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Setting name.
-- `value` ([String](/reference/data-types)) — Setting value.
-- `default` ([String](/reference/data-types)) — Setting default value.
-- `changed` ([UInt8](/reference/data-types)) — 1 if the setting was explicitly defined in the config or explicitly changed.
-- `description` ([String](/reference/data-types)) — Setting description.
-- `min` ([Nullable(String)](/reference/data-types)) — Minimum value of the setting, if any is set via constraints. If the setting has no minimum value, contains NULL.
-- `max` ([Nullable(String)](/reference/data-types)) — Maximum value of the setting, if any is set via constraints. If the setting has no maximum value, contains NULL.
-- `disallowed_values` ([Array(String)](/reference/data-types)) — List of disallowed values
-- `readonly` ([UInt8](/reference/data-types)) — Shows whether the current user can change the setting: 0 — Current user can change the setting, 1 — Current user can't change the setting.
-- `type` ([String](/reference/data-types)) — Setting type (implementation specific string value).
-- `is_obsolete` ([UInt8](/reference/data-types)) — Shows whether a setting is obsolete.
-- `tier` ([Enum8('Production' = 0, 'Obsolete' = 4, 'Experimental' = 8, 'Beta' = 12)](/reference/data-types)) —
+- `name` ([String](/core/reference/data-types)) — Setting name.
+- `value` ([String](/core/reference/data-types)) — Setting value.
+- `default` ([String](/core/reference/data-types)) — Setting default value.
+- `changed` ([UInt8](/core/reference/data-types)) — 1 if the setting was explicitly defined in the config or explicitly changed.
+- `description` ([String](/core/reference/data-types)) — Setting description.
+- `min` ([Nullable(String)](/core/reference/data-types)) — Minimum value of the setting, if any is set via constraints. If the setting has no minimum value, contains NULL.
+- `max` ([Nullable(String)](/core/reference/data-types)) — Maximum value of the setting, if any is set via constraints. If the setting has no maximum value, contains NULL.
+- `disallowed_values` ([Array(String)](/core/reference/data-types)) — List of disallowed values
+- `readonly` ([UInt8](/core/reference/data-types)) — Shows whether the current user can change the setting: 0 — Current user can change the setting, 1 — Current user can't change the setting.
+- `type` ([String](/core/reference/data-types)) — Setting type (implementation specific string value).
+- `is_obsolete` ([UInt8](/core/reference/data-types)) — Shows whether a setting is obsolete.
+- `tier` ([Enum8('Production' = 0, 'Obsolete' = 4, 'Experimental' = 8, 'Beta' = 12)](/core/reference/data-types)) —
Support level for this feature. ClickHouse features are organized in tiers, varying depending on the current status of their
development and the expectations one might have when using them:
* PRODUCTION: The feature is stable, safe to use and does not have issues interacting with other PRODUCTION features.
diff --git a/core/reference/system-tables/replication_queue.mdx b/core/reference/system-tables/replication_queue.mdx
new file mode 100644
index 00000000..10afc913
--- /dev/null
+++ b/core/reference/system-tables/replication_queue.mdx
@@ -0,0 +1,73 @@
+---
+description: 'System table containing information about tasks from replication queues
+ stored in ClickHouse Keeper, or ZooKeeper, for tables in the `ReplicatedMergeTree`
+ family.'
+keywords: ['system table', 'replication_queue']
+slug: /operations/system-tables/replication_queue
+title: 'system.replication_queue'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about tasks from replication queues stored in ClickHouse Keeper, or ZooKeeper, for tables in the `ReplicatedMergeTree` family.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Name of the database.
+- `table` ([String](/core/reference/data-types)) — Name of the table.
+- `replica_name` ([String](/core/reference/data-types)) — Replica name in ClickHouse Keeper. Different replicas of the same table have different names.
+- `position` ([UInt32](/core/reference/data-types)) — Position of the task in the queue.
+- `node_name` ([String](/core/reference/data-types)) — Node name in ClickHouse Keeper.
+- `type` ([String](/core/reference/data-types)) — Type of the task in the queue, one of: • GET_PART — Get the part from another replica, • ATTACH_PART — Attach the part, possibly from our own replica (if found in the detached folder). You may think of it as a GET_PART with some optimizations as they're nearly identical, • MERGE_PARTS — Merge the parts, • DROP_RANGE — Delete the parts in the specified partition in the specified number range. • CLEAR_COLUMN — NOTE: Deprecated. Drop specific column from specified partition. • CLEAR_INDEX — NOTE: Deprecated. Drop specific index from specified partition. • REPLACE_RANGE — Drop a certain range of parts and replace them with new ones. • MUTATE_PART — Apply one or several mutations to the part. • ALTER_METADATA — Apply alter modification according to global /metadata and /columns paths.
+- `create_time` ([DateTime](/core/reference/data-types)) — Date and time when the task was submitted for execution.
+- `required_quorum` ([UInt32](/core/reference/data-types)) — The number of replicas waiting for the task to complete with confirmation of completion. This column is only relevant for the GET_PARTS task.
+- `source_replica` ([String](/core/reference/data-types)) — Name of the source replica.
+- `new_part_name` ([String](/core/reference/data-types)) — Name of the new part.
+- `parts_to_merge` ([Array(String)](/core/reference/data-types)) — Names of parts to merge or update.
+- `is_detach` ([UInt8](/core/reference/data-types)) — The flag indicates whether the DETACH_PARTS task is in the queue.
+- `is_currently_executing` ([UInt8](/core/reference/data-types)) — The flag indicates whether a specific task is being performed right now.
+- `num_tries` ([UInt32](/core/reference/data-types)) — The number of failed attempts to complete the task.
+- `last_exception` ([String](/core/reference/data-types)) — Text message about the last error that occurred (if any).
+- `last_exception_time` ([DateTime](/core/reference/data-types)) — Date and time when the last error occurred.
+- `last_attempt_time` ([DateTime](/core/reference/data-types)) — Date and time when the task was last attempted.
+- `num_postponed` ([UInt32](/core/reference/data-types)) — The number of times the action was postponed.
+- `postpone_reason` ([String](/core/reference/data-types)) — The reason why the task was postponed.
+- `last_postpone_time` ([DateTime](/core/reference/data-types)) — Date and time when the task was last postponed.
+- `merge_type` ([String](/core/reference/data-types)) — Type of the current merge. Empty if it's a mutation.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.replication_queue LIMIT 1 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+database: merge
+table: visits_v2
+replica_name: mtgiga001-1t
+position: 15
+node_name: queue-0009325559
+type: MERGE_PARTS
+create_time: 2020-12-07 14:04:21
+required_quorum: 0
+source_replica: mtgiga001-1t
+new_part_name: 20201130_121373_121384_2
+parts_to_merge: ['20201130_121373_121378_1','20201130_121379_121379_0','20201130_121380_121380_0','20201130_121381_121381_0','20201130_121382_121382_0','20201130_121383_121383_0','20201130_121384_121384_0']
+is_detach: 0
+is_currently_executing: 0
+num_tries: 36
+last_exception: Code: 226, e.displayText() = DB::Exception: Marks file '/opt/clickhouse/data/merge/visits_v2/tmp_fetch_20201130_121373_121384_2/CounterID.mrk' does not exist (version 20.8.7.15 (official build))
+last_attempt_time: 2020-12-08 17:35:54
+num_postponed: 0
+postpone_reason:
+last_postpone_time: 1970-01-01 03:00:00
+```
+
+## See Also {#see-also}
+
+- [Managing ReplicatedMergeTree Tables](/core/reference/statements/system#managing-replicatedmergetree-tables)
diff --git a/core/reference/system-tables/resources.mdx b/core/reference/system-tables/resources.mdx
new file mode 100644
index 00000000..a9210700
--- /dev/null
+++ b/core/reference/system-tables/resources.mdx
@@ -0,0 +1,46 @@
+---
+description: 'System table containing information about resources residing on the
+ local server with one row for every resource.'
+keywords: ['system table', 'resources']
+slug: /operations/system-tables/resources
+title: 'system.resources'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about [resources](/core/concepts/features/configuration/server-config/workload-scheduling#workload_entity_storage) residing on the local server. The table contains a row for every resource.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — The name of the resource.
+- `read_disks` ([Array(String)](/core/reference/data-types)) — The list of disk names that uses this resource for read operations.
+- `write_disks` ([Array(String)](/core/reference/data-types)) — The list of disk names that uses this resource for write operations.
+- `unit` ([String](/core/reference/data-types)) — Resource unit used for cost measurements.
+- `create_query` ([String](/core/reference/data-types)) — CREATE query of the resource.
+{/*AUTOGENERATED_END*/}
+
+Example:
+
+```sql
+SELECT *
+FROM system.resources
+FORMAT Vertical
+```
+
+```text
+Row 1:
+──────
+name: io_read
+read_disks: ['s3']
+write_disks: []
+create_query: CREATE RESOURCE io_read (READ DISK s3)
+
+Row 2:
+──────
+name: io_write
+read_disks: []
+write_disks: ['s3']
+create_query: CREATE RESOURCE io_write (WRITE DISK s3)
+```
diff --git a/reference/system-tables/rocksdb.mdx b/core/reference/system-tables/rocksdb.mdx
similarity index 54%
rename from reference/system-tables/rocksdb.mdx
rename to core/reference/system-tables/rocksdb.mdx
index 6bfad346..867b8cb8 100644
--- a/reference/system-tables/rocksdb.mdx
+++ b/core/reference/system-tables/rocksdb.mdx
@@ -13,8 +13,8 @@ Contains a list of metrics exposed from embedded RocksDB.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `database` ([String](/reference/data-types)) — Database name.
-- `table` ([String](/reference/data-types)) — Name of the table with StorageEmbeddedRocksDB engine.
-- `name` ([String](/reference/data-types)) — Metric name.
-- `value` ([UInt64](/reference/data-types)) — Metric value.
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Name of the table with StorageEmbeddedRocksDB engine.
+- `name` ([String](/core/reference/data-types)) — Metric name.
+- `value` ([UInt64](/core/reference/data-types)) — Metric value.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/role_grants.mdx b/core/reference/system-tables/role_grants.mdx
new file mode 100644
index 00000000..9275d5a8
--- /dev/null
+++ b/core/reference/system-tables/role_grants.mdx
@@ -0,0 +1,22 @@
+---
+description: 'System table containing the role grants for users and roles.'
+keywords: ['system table', 'role_grants']
+slug: /operations/system-tables/role_grants
+title: 'system.role_grants'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains the role grants for users and roles. To add entries to this table, use `GRANT role TO user`.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `user_name` ([Nullable(String)](/core/reference/data-types)) — User name.
+- `role_name` ([Nullable(String)](/core/reference/data-types)) — Role name.
+- `granted_role_name` ([String](/core/reference/data-types)) — Name of role granted to the `role_name` role. To grant one role to another one use `GRANT role1 TO role2`.
+- `granted_role_id` ([UUID](/core/reference/data-types)) — The ID of the role.
+- `granted_role_is_default` ([UInt8](/core/reference/data-types)) — Flag that shows whether `granted_role` is a default role. Possible values: • 1 — `granted_role` is a default role, • 0 — `granted_role` is not a default role.
+- `with_admin_option` ([UInt8](/core/reference/data-types)) — Flag that shows whether `granted_role` is a role with `ADMIN OPTION` privilege. Possible values: • 1 — The role has `ADMIN OPTION` privilege.• 0 — The role without `ADMIN OPTION` privilege.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/roles.mdx b/core/reference/system-tables/roles.mdx
new file mode 100644
index 00000000..fad89c61
--- /dev/null
+++ b/core/reference/system-tables/roles.mdx
@@ -0,0 +1,23 @@
+---
+description: 'System table containing information about configured roles.'
+keywords: ['system table', 'roles']
+slug: /operations/system-tables/roles
+title: 'system.roles'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about configured [roles](/core/concepts/features/security/access-rights#role-management).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — Role name.
+- `id` ([UUID](/core/reference/data-types)) — Role ID.
+- `storage` ([String](/core/reference/data-types)) — Path to the storage of roles. Configured in the `access_control_path` parameter.
+{/*AUTOGENERATED_END*/}
+
+## See Also {#see-also}
+
+- [SHOW ROLES](/core/reference/statements/show#show-roles)
diff --git a/core/reference/system-tables/row_policies.mdx b/core/reference/system-tables/row_policies.mdx
new file mode 100644
index 00000000..c0b6f09c
--- /dev/null
+++ b/core/reference/system-tables/row_policies.mdx
@@ -0,0 +1,32 @@
+---
+description: 'System table containing filters for one particular table, as well as
+ a list of roles and/or users which should use this row policy.'
+keywords: ['system table', 'row_policies']
+slug: /operations/system-tables/row_policies
+title: 'system.row_policies'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains filters for one particular table, as well as a list of roles and/or users which should use this row policy.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — Name of a row policy.
+- `short_name` ([String](/core/reference/data-types)) — Short name of a row policy. Names of row policies are compound, for example: myfilter ON mydb.mytable. Here 'myfilter ON mydb.mytable' is the name of the row policy, 'myfilter' is it's short name.
+- `database` ([String](/core/reference/data-types)) — Database name.
+- `table` ([String](/core/reference/data-types)) — Table name. Empty if policy for database.
+- `id` ([UUID](/core/reference/data-types)) — Row policy ID.
+- `storage` ([String](/core/reference/data-types)) — Name of the directory where the row policy is stored.
+- `select_filter` ([Nullable(String)](/core/reference/data-types)) — Expression which is used for filtering in SELECT queries.
+- `is_restrictive` ([UInt8](/core/reference/data-types)) — Shows whether the row policy restricts access to rows. Value: • 0 — The row policy is defined with `AS PERMISSIVE` clause, • 1 — The row policy is defined with AS RESTRICTIVE clause.
+- `apply_to_all` ([UInt8](/core/reference/data-types)) — Shows that the row policies set for all roles and/or users.
+- `apply_to_list` ([Array(String)](/core/reference/data-types)) — List of the roles and/or users to which the row policies is applied.
+- `apply_to_except` ([Array(String)](/core/reference/data-types)) — The row policies is applied to all roles and/or users excepting of the listed ones.
+{/*AUTOGENERATED_END*/}
+
+## See Also {#see-also}
+
+- [SHOW POLICIES](/core/reference/statements/show#show-policies)
diff --git a/core/reference/system-tables/s3_queue_settings.mdx b/core/reference/system-tables/s3_queue_settings.mdx
new file mode 100644
index 00000000..9ee533f1
--- /dev/null
+++ b/core/reference/system-tables/s3_queue_settings.mdx
@@ -0,0 +1,25 @@
+---
+description: 'System table containing information about the settings of S3Queue tables.
+ Available from server version `24.10`.'
+keywords: ['system table', 's3_queue_settings']
+slug: /operations/system-tables/s3_queue_settings
+title: 'system.s3_queue_settings'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains information about the settings of [S3Queue](/core/reference/engines/table-engines/integrations/s3queue) tables. Available from server version `24.10`.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — Database of the table with S3Queue engine.
+- `table` ([String](/core/reference/data-types)) — Name of the table with S3Queue engine.
+- `name` ([String](/core/reference/data-types)) — Setting name.
+- `value` ([String](/core/reference/data-types)) — Setting value.
+- `type` ([String](/core/reference/data-types)) — Setting type (implementation specific string value).
+- `changed` ([UInt8](/core/reference/data-types)) — 1 if the setting was explicitly defined in the config or explicitly changed.
+- `description` ([String](/core/reference/data-types)) — Setting description.
+- `alterable` ([UInt8](/core/reference/data-types)) — Shows whether the current user can change the setting via ALTER TABLE MODIFY SETTING: 0 — Current user can't change the setting, 1 — Current user can change the setting.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/s3queue_log.mdx b/core/reference/system-tables/s3queue_log.mdx
new file mode 100644
index 00000000..bc1cc30a
--- /dev/null
+++ b/core/reference/system-tables/s3queue_log.mdx
@@ -0,0 +1,34 @@
+---
+description: 'Contains log entries with information about files processed by the S3Queue engine.
+
+It is safe to truncate or drop this table at any time.'
+keywords: ['system table', 's3queue_log']
+slug: /operations/system-tables/s3queue_log
+title: 'system.s3queue_log'
+doc_type: 'reference'
+---
+
+Contains log entries with information about files processed by the S3Queue engine.
+
+It is safe to truncate or drop this table at any time.
+
+Columns:
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname
+- `event_date` ([Date](/core/reference/data-types/date)) — Event date of writing this log row
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Event time of writing this log row
+- `database` ([String](/core/reference/data-types/string)) — The name of the database where the queue table (`S3Queue` or `AzureQueue`) lives.
+- `table` ([String](/core/reference/data-types/string)) — The name of the queue table (`S3Queue` or `AzureQueue`).
+- `uuid` ([String](/core/reference/data-types/string)) — The UUID of the queue table (`S3Queue` or `AzureQueue`).
+- `file_name` ([String](/core/reference/data-types/string)) — File name of the processing file.
+- `rows_processed` ([UInt64](/core/reference/data-types/int-uint)) — Number of processed rows.
+- `status` ([Enum8('Processed' = 0, 'Failed' = 1)](/core/reference/data-types/enum)) — Status of the processing file.
+- `processing_start_time` ([Nullable(DateTime)](/core/reference/data-types/nullable)) — Time of the start of processing the file.
+- `processing_end_time` ([Nullable(DateTime)](/core/reference/data-types/nullable)) — Time of the end of processing the file.
+- `exception` ([String](/core/reference/data-types/string)) — Exception message if happened.
+- `commit_id` ([UInt64](/core/reference/data-types/int-uint)) — Id of the transaction in which this file was committed.
+- `commit_time` ([DateTime](/core/reference/data-types/datetime)) — Time of committing file in keeper (as either failed or processed).
+- `transaction_start_time` ([DateTime](/core/reference/data-types/datetime)) — Time when the whole processing transaction started.
+- `get_object_time_ms` ([UInt64](/core/reference/data-types/int-uint)) — Time which took us to find the object in object storage.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/s3queue_metadata_cache.mdx b/core/reference/system-tables/s3queue_metadata_cache.mdx
new file mode 100644
index 00000000..30e119af
--- /dev/null
+++ b/core/reference/system-tables/s3queue_metadata_cache.mdx
@@ -0,0 +1,24 @@
+---
+description: 'Contains in-memory state of S3Queue metadata and currently processed rows per file.'
+keywords: ['system table', 's3queue_metadata_cache']
+slug: /operations/system-tables/s3queue_metadata_cache
+title: 'system.s3queue_metadata_cache'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains in-memory state of S3Queue metadata and currently processed rows per file.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `zookeeper_path` ([String](/core/reference/data-types)) — Path in zookeeper to metadata
+- `file_path` ([String](/core/reference/data-types)) — File path of a file which is being processed
+- `file_name` ([String](/core/reference/data-types)) — File name of a file which is being processed
+- `rows_processed` ([UInt64](/core/reference/data-types)) — Currently processed number of rows
+- `status` ([String](/core/reference/data-types)) — Status of processing: Processed, Processing, Failed
+- `processing_start_time` ([Nullable(DateTime)](/core/reference/data-types)) — Time at which processing of the file started
+- `processing_end_time` ([Nullable(DateTime)](/core/reference/data-types)) — Time at which processing of the file ended
+- `exception` ([String](/core/reference/data-types)) — Exception which happened during processing
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/scheduler.mdx b/core/reference/system-tables/scheduler.mdx
new file mode 100644
index 00000000..08f8bb7a
--- /dev/null
+++ b/core/reference/system-tables/scheduler.mdx
@@ -0,0 +1,89 @@
+---
+description: 'System table containing information about and status of scheduling nodes
+ residing on the local server.'
+keywords: ['system table', 'scheduler']
+slug: /operations/system-tables/scheduler
+title: 'system.scheduler'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about and status of [scheduling nodes](/core/concepts/features/configuration/server-config/workload-scheduling#hierarchy) residing on the local server.
+This table can be used for monitoring. The table contains a row for every scheduling node.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `resource` ([String](/core/reference/data-types)) — Resource name
+- `path` ([String](/core/reference/data-types)) — Path to a scheduling node within this resource scheduling hierarchy
+- `type` ([String](/core/reference/data-types)) — Type of a scheduling node.
+- `weight` ([Float64](/core/reference/data-types)) — Weight of a node, used by a parent node of `fair` type.
+- `priority` ([Int64](/core/reference/data-types)) — Priority of a node, used by a parent node of 'priority' type (Lower value means higher priority).
+- `is_active` ([UInt8](/core/reference/data-types)) — Whether this node is currently active - has resource requests to be dequeued and constraints satisfied.
+- `active_children` ([UInt64](/core/reference/data-types)) — The number of children in active state.
+- `dequeued_requests` ([UInt64](/core/reference/data-types)) — The total number of resource requests dequeued from this node.
+- `canceled_requests` ([UInt64](/core/reference/data-types)) — The total number of resource requests canceled from this node.
+- `dequeued_cost` ([Int64](/core/reference/data-types)) — The sum of costs (e.g. size in bytes) of all requests dequeued from this node.
+- `throughput` ([Float64](/core/reference/data-types)) — Current average throughput (dequeued cost per second).
+- `canceled_cost` ([Int64](/core/reference/data-types)) — The sum of costs (e.g. size in bytes) of all requests canceled from this node.
+- `busy_periods` ([UInt64](/core/reference/data-types)) — The total number of deactivations of this node.
+- `vruntime` ([Nullable(Float64)](/core/reference/data-types)) — For children of `fair` nodes only. Virtual runtime of a node used by SFQ algorithm to select the next child to process in a max-min fair manner.
+- `system_vruntime` ([Nullable(Float64)](/core/reference/data-types)) — For `fair` nodes only. Virtual runtime showing `vruntime` of the last processed resource request. Used during child activation as the new value of `vruntime`.
+- `queue_length` ([Nullable(UInt64)](/core/reference/data-types)) — For `fifo` nodes only. Current number of resource requests residing in the queue.
+- `queue_cost` ([Nullable(Int64)](/core/reference/data-types)) — For fifo nodes only. Sum of costs (e.g. size in bytes) of all requests residing in the queue.
+- `budget` ([Nullable(Int64)](/core/reference/data-types)) — For fifo nodes only. The number of available 'cost units' for new resource requests. Can appear in case of discrepancy of estimated and real costs of resource requests (e.g. after read/write failure)
+- `is_satisfied` ([Nullable(UInt8)](/core/reference/data-types)) — For constraint nodes only (e.g. `inflight_limit`). Equals to `1` if all the constraint of this node are satisfied.
+- `inflight_requests` ([Nullable(Int64)](/core/reference/data-types)) — For `inflight_limit` nodes only. The number of resource requests dequeued from this node, that are currently in consumption state.
+- `inflight_cost` ([Nullable(Int64)](/core/reference/data-types)) — For `inflight_limit` nodes only. The sum of costs (e.g. bytes) of all resource requests dequeued from this node, that are currently in consumption state.
+- `max_requests` ([Nullable(Int64)](/core/reference/data-types)) — For `inflight_limit` nodes only. Upper limit for inflight_requests leading to constraint violation.
+- `max_cost` ([Nullable(Int64)](/core/reference/data-types)) — For `inflight_limit` nodes only. Upper limit for inflight_cost leading to constraint violation.
+- `max_speed` ([Nullable(Float64)](/core/reference/data-types)) — For `bandwidth_limit` nodes only. Upper limit for bandwidth in tokens per second.
+- `max_burst` ([Nullable(Float64)](/core/reference/data-types)) — For `bandwidth_limit` nodes only. Upper limit for tokens available in token-bucket throttler.
+- `throttling_us` ([Nullable(Int64)](/core/reference/data-types)) — For `bandwidth_limit` nodes only. Total number of microseconds this node was in throttling state.
+- `tokens` ([Nullable(Float64)](/core/reference/data-types)) — For `bandwidth_limit` nodes only. Number of tokens currently available in token-bucket throttler.
+{/*AUTOGENERATED_END*/}
+
+Example:
+
+```sql
+SELECT *
+FROM system.scheduler
+WHERE resource = 'network_read' AND path = '/prio/fair/prod'
+FORMAT Vertical
+```
+
+```text
+Row 1:
+──────
+resource: network_read
+path: /prio/fair/prod
+type: fifo
+weight: 5
+priority: 0
+is_active: 0
+active_children: 0
+dequeued_requests: 67
+canceled_requests: 0
+dequeued_cost: 4692272
+canceled_cost: 0
+busy_periods: 63
+vruntime: 938454.1999999989
+system_vruntime: ᴺᵁᴸᴸ
+queue_length: 0
+queue_cost: 0
+budget: -60524
+is_satisfied: ᴺᵁᴸᴸ
+inflight_requests: ᴺᵁᴸᴸ
+inflight_cost: ᴺᵁᴸᴸ
+max_requests: ᴺᵁᴸᴸ
+max_cost: ᴺᵁᴸᴸ
+max_speed: ᴺᵁᴸᴸ
+max_burst: ᴺᵁᴸᴸ
+throttling_us: ᴺᵁᴸᴸ
+tokens: ᴺᵁᴸᴸ
+```
diff --git a/reference/system-tables/schema_inference_cache.mdx b/core/reference/system-tables/schema_inference_cache.mdx
similarity index 75%
rename from reference/system-tables/schema_inference_cache.mdx
rename to core/reference/system-tables/schema_inference_cache.mdx
index 7c39fbf0..7a2cce04 100644
--- a/reference/system-tables/schema_inference_cache.mdx
+++ b/core/reference/system-tables/schema_inference_cache.mdx
@@ -17,14 +17,14 @@ Contains information about all cached file schemas.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `storage` ([String](/reference/data-types)) — Storage name: File, URL, S3 or HDFS.
-- `source` ([String](/reference/data-types)) — File source.
-- `format` ([String](/reference/data-types)) — Format name.
-- `additional_format_info` ([String](/reference/data-types)) — Additional information required to identify the schema. For example, format specific settings.
-- `registration_time` ([DateTime](/reference/data-types)) — Timestamp when schema was added in cache.
-- `schema` ([Nullable(String)](/reference/data-types)) — Cached schema.
-- `number_of_rows` ([Nullable(UInt64)](/reference/data-types)) — Number of rows in the file in given format. It's used for caching trivial count() from data files and for caching number of rows from the metadata during schema inference.
-- `schema_inference_mode` ([Nullable(String)](/reference/data-types)) — Scheme inference mode.
+- `storage` ([String](/core/reference/data-types)) — Storage name: File, URL, S3 or HDFS.
+- `source` ([String](/core/reference/data-types)) — File source.
+- `format` ([String](/core/reference/data-types)) — Format name.
+- `additional_format_info` ([String](/core/reference/data-types)) — Additional information required to identify the schema. For example, format specific settings.
+- `registration_time` ([DateTime](/core/reference/data-types)) — Timestamp when schema was added in cache.
+- `schema` ([Nullable(String)](/core/reference/data-types)) — Cached schema.
+- `number_of_rows` ([Nullable(UInt64)](/core/reference/data-types)) — Number of rows in the file in given format. It's used for caching trivial count() from data files and for caching number of rows from the metadata during schema inference.
+- `schema_inference_mode` ([Nullable(String)](/core/reference/data-types)) — Scheme inference mode.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -79,4 +79,4 @@ schema: id Nullable(Float64), age Nullable(Float64), name Nullab
```
## See Also {#see-also}
-- [Automatic schema inference from input data](/integrations/connectors/data-integrations/drivers-and-interfaces/schema-inference)
+- [Automatic schema inference from input data](/core/concepts/features/interfaces/schema-inference)
diff --git a/reference/system-tables/server_settings.mdx b/core/reference/system-tables/server_settings.mdx
similarity index 86%
rename from reference/system-tables/server_settings.mdx
rename to core/reference/system-tables/server_settings.mdx
index a913da93..ef260368 100644
--- a/reference/system-tables/server_settings.mdx
+++ b/core/reference/system-tables/server_settings.mdx
@@ -14,19 +14,19 @@ import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
## Description {#description}
Contains information about global settings for the server, which are specified in `config.xml`.
-Currently, the table shows only settings from the first layer of `config.xml` and doesn't support nested configs (e.g. [logger](/reference/settings/server-settings/settings#logger)).
+Currently, the table shows only settings from the first layer of `config.xml` and doesn't support nested configs (e.g. [logger](/core/reference/settings/server-settings/settings#logger)).
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Server setting name.
-- `value` ([String](/reference/data-types)) — Server setting value.
-- `default` ([String](/reference/data-types)) — Server setting default value.
-- `changed` ([UInt8](/reference/data-types)) — Shows whether a setting was specified in config.xml
-- `description` ([String](/reference/data-types)) — Short server setting description.
-- `type` ([String](/reference/data-types)) — Server setting value type.
-- `changeable_without_restart` ([Enum8('No' = 0, 'IncreaseOnly' = 1, 'DecreaseOnly' = 2, 'Yes' = 3)](/reference/data-types)) — Shows whether a setting can be changed at runtime.
-- `is_obsolete` ([UInt8](/reference/data-types)) — Shows whether a setting is obsolete.
+- `name` ([String](/core/reference/data-types)) — Server setting name.
+- `value` ([String](/core/reference/data-types)) — Server setting value.
+- `default` ([String](/core/reference/data-types)) — Server setting default value.
+- `changed` ([UInt8](/core/reference/data-types)) — Shows whether a setting was specified in config.xml
+- `description` ([String](/core/reference/data-types)) — Short server setting description.
+- `type` ([String](/core/reference/data-types)) — Server setting value type.
+- `changeable_without_restart` ([Enum8('No' = 0, 'IncreaseOnly' = 1, 'DecreaseOnly' = 2, 'Yes' = 3)](/core/reference/data-types)) — Shows whether a setting can be changed at runtime.
+- `is_obsolete` ([UInt8](/core/reference/data-types)) — Shows whether a setting is obsolete.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -69,6 +69,6 @@ SELECT * FROM system.server_settings WHERE changed AND name='max_thread_pool_siz
## See Also {#see-also}
-- [Settings](/reference/system-tables/settings)
-- [Configuration Files](/concepts/features/configuration/server-config/configuration-files)
-- [Server Settings](/reference/settings/server-settings/settings)
+- [Settings](/core/reference/system-tables/settings)
+- [Configuration Files](/core/concepts/features/configuration/server-config/configuration-files)
+- [Server Settings](/core/reference/settings/server-settings/settings)
diff --git a/core/reference/system-tables/session_log.mdx b/core/reference/system-tables/session_log.mdx
new file mode 100644
index 00000000..213dce27
--- /dev/null
+++ b/core/reference/system-tables/session_log.mdx
@@ -0,0 +1,76 @@
+---
+description: 'System table containing information about all successful and failed
+ login and logout events.'
+keywords: ['system table', 'session_log']
+slug: /operations/system-tables/session_log
+title: 'system.session_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains information about all successful and failed login and logout events.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `type` ([Enum8('LoginFailure' = 0, 'LoginSuccess' = 1, 'Logout' = 2)](/core/reference/data-types/enum)) — Login/logout result. Possible values: LoginFailure — Login error. LoginSuccess — Successful login. Logout — Logout from the system.
+- `auth_id` ([UUID](/core/reference/data-types/uuid)) — Authentication ID, which is a UUID that is automatically generated each time user logins.
+- `session_id` ([String](/core/reference/data-types/string)) — Session ID that is passed by client via HTTP interface.
+- `event_date` ([Date](/core/reference/data-types/date)) — Login/logout date.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Login/logout time.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Login/logout starting time with microseconds precision.
+- `user` ([Nullable(String)](/core/reference/data-types/nullable)) — User name.
+- `auth_type` ([Nullable(Enum8('NO_PASSWORD' = 0, 'PLAINTEXT_PASSWORD' = 1, 'SHA256_PASSWORD' = 2, 'DOUBLE_SHA1_PASSWORD' = 3, 'LDAP' = 4, 'KERBEROS' = 5, 'SSL_CERTIFICATE' = 6, 'BCRYPT_PASSWORD' = 7, 'SSH_KEY' = 8, 'HTTP' = 9, 'JWT' = 10, 'SCRAM_SHA256_PASSWORD' = 11, 'NO_AUTHENTICATION' = 12))](/core/reference/data-types/nullable)) — The authentication type.
+- `profiles` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — The list of profiles set for all roles and/or users.
+- `roles` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — The list of roles to which the profile is applied.
+- `settings` ([Array(Tuple(LowCardinality(String), String))](/core/reference/data-types/array)) — Settings that were changed when the client logged in/out.
+- `client_address` ([IPv6](/core/reference/data-types/ipv6)) — The IP address that was used to log in/out.
+- `client_port` ([UInt16](/core/reference/data-types/int-uint)) — The client port that was used to log in/out.
+- `interface` ([Enum8('TCP' = 1, 'HTTP' = 2, 'gRPC' = 3, 'MySQL' = 4, 'PostgreSQL' = 5, 'Local' = 6, 'TCP_Interserver' = 7, 'Prometheus' = 8, 'Background' = 9)](/core/reference/data-types/enum)) — The interface from which the login was initiated.
+- `client_hostname` ([String](/core/reference/data-types/string)) — The hostname of the client machine where the clickhouse-client or another TCP client is run.
+- `client_name` ([String](/core/reference/data-types/string)) — The clickhouse-client or another TCP client name.
+- `client_revision` ([UInt32](/core/reference/data-types/int-uint)) — Revision of the clickhouse-client or another TCP client.
+- `client_version_major` ([UInt32](/core/reference/data-types/int-uint)) — The major version of the clickhouse-client or another TCP client.
+- `client_version_minor` ([UInt32](/core/reference/data-types/int-uint)) — The minor version of the clickhouse-client or another TCP client.
+- `client_version_patch` ([UInt32](/core/reference/data-types/int-uint)) — Patch component of the clickhouse-client or another TCP client version.
+- `failure_reason` ([String](/core/reference/data-types/string)) — The exception message containing the reason for the login/logout failure.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.session_log LIMIT 1 FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+type: LoginSuccess
+auth_id: 45e6bd83-b4aa-4a23-85e6-bd83b4aa1a23
+session_id:
+event_date: 2021-10-14
+event_time: 2021-10-14 20:33:52
+event_time_microseconds: 2021-10-14 20:33:52.104247
+user: default
+auth_type: PLAINTEXT_PASSWORD
+profiles: ['default']
+roles: []
+settings: [('load_balancing','random'),('max_memory_usage','10000000000')]
+client_address: ::ffff:127.0.0.1
+client_port: 38490
+interface: TCP
+client_hostname:
+client_name: ClickHouse client
+client_revision: 54449
+client_version_major: 21
+client_version_minor: 10
+client_version_patch: 0
+failure_reason:
+```
diff --git a/reference/system-tables/settings.mdx b/core/reference/system-tables/settings.mdx
similarity index 61%
rename from reference/system-tables/settings.mdx
rename to core/reference/system-tables/settings.mdx
index c8b0582f..c1026697 100644
--- a/reference/system-tables/settings.mdx
+++ b/core/reference/system-tables/settings.mdx
@@ -14,19 +14,19 @@ Contains information about session settings for current user.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Setting name.
-- `value` ([String](/reference/data-types)) — Setting value.
-- `changed` ([UInt8](/reference/data-types)) — Shows whether the setting was explicitly defined in the config or explicitly changed.
-- `description` ([String](/reference/data-types)) — Short setting description.
-- `min` ([Nullable(String)](/reference/data-types)) — Minimum value of the setting, if any is set via constraints. If the setting has no minimum value, contains NULL.
-- `max` ([Nullable(String)](/reference/data-types)) — Maximum value of the setting, if any is set via constraints. If the setting has no maximum value, contains NULL.
-- `disallowed_values` ([Array(String)](/reference/data-types)) — List of disallowed values
-- `readonly` ([UInt8](/reference/data-types)) — Shows whether the current user can change the setting: 0 — Current user can change the setting, 1 — Current user can't change the setting.
-- `type` ([String](/reference/data-types)) — The type of the value that can be assigned to this setting.
-- `default` ([String](/reference/data-types)) — Setting default value.
-- `alias_for` ([String](/reference/data-types)) — The name of the original setting if the setting is an alias for another setting.
-- `is_obsolete` ([UInt8](/reference/data-types)) — Shows whether a setting is obsolete.
-- `tier` ([Enum8('Production' = 0, 'Obsolete' = 4, 'Experimental' = 8, 'Beta' = 12)](/reference/data-types)) —
+- `name` ([String](/core/reference/data-types)) — Setting name.
+- `value` ([String](/core/reference/data-types)) — Setting value.
+- `changed` ([UInt8](/core/reference/data-types)) — Shows whether the setting was explicitly defined in the config or explicitly changed.
+- `description` ([String](/core/reference/data-types)) — Short setting description.
+- `min` ([Nullable(String)](/core/reference/data-types)) — Minimum value of the setting, if any is set via constraints. If the setting has no minimum value, contains NULL.
+- `max` ([Nullable(String)](/core/reference/data-types)) — Maximum value of the setting, if any is set via constraints. If the setting has no maximum value, contains NULL.
+- `disallowed_values` ([Array(String)](/core/reference/data-types)) — List of disallowed values
+- `readonly` ([UInt8](/core/reference/data-types)) — Shows whether the current user can change the setting: 0 — Current user can change the setting, 1 — Current user can't change the setting.
+- `type` ([String](/core/reference/data-types)) — The type of the value that can be assigned to this setting.
+- `default` ([String](/core/reference/data-types)) — Setting default value.
+- `alias_for` ([String](/core/reference/data-types)) — The name of the original setting if the setting is an alias for another setting.
+- `is_obsolete` ([UInt8](/core/reference/data-types)) — Shows whether a setting is obsolete.
+- `tier` ([Enum8('Production' = 0, 'Obsolete' = 4, 'Experimental' = 8, 'Beta' = 12)](/core/reference/data-types)) —
Support level for this feature. ClickHouse features are organized in tiers, varying depending on the current status of their
development and the expectations one might have when using them:
* PRODUCTION: The feature is stable, safe to use and does not have issues interacting with other PRODUCTION features.
@@ -93,7 +93,7 @@ Row 3:
name: min_insert_block_size_rows_for_materialized_views
value: 0
changed: 0
-description: Sets the minimum number of rows in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
+description: Sets the minimum number of rows in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/core/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
Possible values:
@@ -102,7 +102,7 @@ Possible values:
## See Also {#see-also}
-- [min_insert_block_size_rows](/reference/settings/session-settings#min_insert_block_size_rows)
+- [min_insert_block_size_rows](/core/reference/settings/session-settings#min_insert_block_size_rows)
min: ᴺᵁᴸᴸ
max: ᴺᵁᴸᴸ
readonly: 0
@@ -117,7 +117,7 @@ Row 4:
name: min_insert_block_size_bytes_for_materialized_views
value: 0
changed: 0
-description: Sets the minimum number of bytes in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
+description: Sets the minimum number of bytes in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](/core/reference/statements/create/view). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.
Possible values:
@@ -126,7 +126,7 @@ Possible values:
## See Also {#see-also}
-- [min_insert_block_size_bytes](/reference/settings/session-settings#min_insert_block_size_bytes)
+- [min_insert_block_size_bytes](/core/reference/settings/session-settings#min_insert_block_size_bytes)
min: ᴺᵁᴸᴸ
max: ᴺᵁᴸᴸ
readonly: 0
@@ -148,7 +148,7 @@ SELECT * FROM system.settings WHERE changed AND name='load_balancing'
## See Also {#see-also}
-- [Settings](/reference/system-tables/overview#system-tables-introduction)
-- [Permissions for Queries](/concepts/features/configuration/settings/permissions-for-queries)
-- [Constraints on Settings](/concepts/features/configuration/settings/constraints-on-settings)
-- [SHOW SETTINGS](/reference/statements/show#show-settings) statement
+- [Settings](/core/reference/system-tables/overview#system-tables-introduction)
+- [Permissions for Queries](/core/concepts/features/configuration/settings/permissions-for-queries)
+- [Constraints on Settings](/core/concepts/features/configuration/settings/constraints-on-settings)
+- [SHOW SETTINGS](/core/reference/statements/show#show-settings) statement
diff --git a/reference/system-tables/settings_changes.mdx b/core/reference/system-tables/settings_changes.mdx
similarity index 72%
rename from reference/system-tables/settings_changes.mdx
rename to core/reference/system-tables/settings_changes.mdx
index ae81e07e..7319e3f2 100644
--- a/reference/system-tables/settings_changes.mdx
+++ b/core/reference/system-tables/settings_changes.mdx
@@ -14,9 +14,9 @@ Contains information about setting changes in previous ClickHouse versions.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `type` ([Enum8('Session' = 0, 'MergeTree' = 1)](/reference/data-types)) — The group of settings (Session, MergeTree...)
-- `version` ([String](/reference/data-types)) — The ClickHouse server version.
-- `changes` ([Array(Tuple(name String, previous_value String, new_value String, reason String))](/reference/data-types)) — The list of changes in settings which changed the behaviour of ClickHouse.
+- `type` ([Enum8('Session' = 0, 'MergeTree' = 1)](/core/reference/data-types)) — The group of settings (Session, MergeTree...)
+- `version` ([String](/core/reference/data-types)) — The ClickHouse server version.
+- `changes` ([Array(Tuple(name String, previous_value String, new_value String, reason String))](/core/reference/data-types)) — The list of changes in settings which changed the behaviour of ClickHouse.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -38,5 +38,5 @@ changes: [('input_format_parquet_preserve_order','1','0','Allow Parquet reader t
## See Also {#see-also}
-- [Settings](/reference/system-tables/overview#system-tables-introduction)
-- [system.settings](/reference/system-tables/settings)
+- [Settings](/core/reference/system-tables/overview#system-tables-introduction)
+- [system.settings](/core/reference/system-tables/settings)
diff --git a/core/reference/system-tables/settings_profile_elements.mdx b/core/reference/system-tables/settings_profile_elements.mdx
new file mode 100644
index 00000000..59453aae
--- /dev/null
+++ b/core/reference/system-tables/settings_profile_elements.mdx
@@ -0,0 +1,31 @@
+---
+description: 'System table which describes the content of the settings profile: constraints,
+ roles and users that the setting applies to, parent settings profiles.'
+keywords: ['system table', 'settings_profile_elements']
+slug: /operations/system-tables/settings_profile_elements
+title: 'system.settings_profile_elements'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Describes the content of the settings profile:
+
+- Сonstraints.
+- Roles and users that the setting applies to.
+- Parent settings profiles.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `profile_name` ([Nullable(String)](/core/reference/data-types)) — Setting profile name.
+- `user_name` ([Nullable(String)](/core/reference/data-types)) — User name.
+- `role_name` ([Nullable(String)](/core/reference/data-types)) — Role name.
+- `index` ([UInt64](/core/reference/data-types)) — Sequential number of the settings profile element.
+- `setting_name` ([Nullable(String)](/core/reference/data-types)) — Setting name.
+- `value` ([Nullable(String)](/core/reference/data-types)) — Setting value.
+- `min` ([Nullable(String)](/core/reference/data-types)) — The minimum value of the setting. NULL if not set.
+- `max` ([Nullable(String)](/core/reference/data-types)) — The maximum value of the setting. NULL if not set.
+- `writability` ([Nullable(Enum8('WRITABLE' = 0, 'CONST' = 1, 'CHANGEABLE_IN_READONLY' = 2))](/core/reference/data-types)) — The property which shows whether a setting can be changed or not.
+- `inherit_profile` ([Nullable(String)](/core/reference/data-types)) — A parent profile for this setting profile. NULL if not set. Setting profile will inherit all the settings' values and constraints (min, max, readonly) from its parent profiles.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/settings_profiles.mdx b/core/reference/system-tables/settings_profiles.mdx
new file mode 100644
index 00000000..150f1190
--- /dev/null
+++ b/core/reference/system-tables/settings_profiles.mdx
@@ -0,0 +1,27 @@
+---
+description: 'System table which contains properties of configured setting profiles.'
+keywords: ['system table', 'settings_profiles']
+slug: /operations/system-tables/settings_profiles
+title: 'system.settings_profiles'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains properties of configured setting profiles.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — Setting profile name.
+- `id` ([UUID](/core/reference/data-types)) — Setting profile ID.
+- `storage` ([String](/core/reference/data-types)) — Path to the storage of setting profiles. Configured in the `access_control_path` parameter.
+- `num_elements` ([UInt64](/core/reference/data-types)) — Number of elements for this profile in the `system.settings_profile_elements` table.
+- `apply_to_all` ([UInt8](/core/reference/data-types)) — Shows that the settings profile set for all roles and/or users.
+- `apply_to_list` ([Array(String)](/core/reference/data-types)) — List of the roles and/or users to which the setting profile is applied.
+- `apply_to_except` ([Array(String)](/core/reference/data-types)) — The setting profile is applied to all roles and/or users excepting of the listed ones.
+{/*AUTOGENERATED_END*/}
+
+## See Also {#see-also}
+
+- [SHOW PROFILES](/core/reference/statements/show#show-profiles)
diff --git a/reference/system-tables/stack_trace.mdx b/core/reference/system-tables/stack_trace.mdx
similarity index 82%
rename from reference/system-tables/stack_trace.mdx
rename to core/reference/system-tables/stack_trace.mdx
index dbca14f7..8a827ebf 100644
--- a/reference/system-tables/stack_trace.mdx
+++ b/core/reference/system-tables/stack_trace.mdx
@@ -15,16 +15,16 @@ import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
Contains stack traces of all server threads. Allows developers to introspect the server state.
-To analyze stack frames, use the `addressToLine`, `addressToLineWithInlines`, `addressToSymbol` and `demangle` [introspection functions](/reference/functions/regular-functions/introspection).
+To analyze stack frames, use the `addressToLine`, `addressToLineWithInlines`, `addressToSymbol` and `demangle` [introspection functions](/core/reference/functions/regular-functions/introspection).
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `thread_name` ([String](/reference/data-types)) — The name of the thread.
-- `thread_id` ([UInt64](/reference/data-types)) — The thread identifier
-- `query_id` ([String](/reference/data-types)) — The ID of the query this thread belongs to.
-- `trace` ([Array(UInt64)](/reference/data-types)) — The stacktrace of this thread. Basically just an array of addresses.
-- `untracked_memory` ([Int64](/reference/data-types)) — Per-thread atomic-less counter of memory allocations not yet propagated to the parent MemoryTracker. May be negative if more was freed than allocated since the last flush.
+- `thread_name` ([String](/core/reference/data-types)) — The name of the thread.
+- `thread_id` ([UInt64](/core/reference/data-types)) — The thread identifier
+- `query_id` ([String](/core/reference/data-types)) — The ID of the query this thread belongs to.
+- `trace` ([Array(UInt64)](/core/reference/data-types)) — The stacktrace of this thread. Basically just an array of addresses.
+- `untracked_memory` ([Int64](/core/reference/data-types)) — Per-thread atomic-less counter of memory allocations not yet propagated to the parent MemoryTracker. May be negative if more was freed than allocated since the last flush.
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -99,7 +99,7 @@ res: /lib/x86_64-linux-gnu/libc-2.27.so
## See Also {#see-also}
-- [Introspection Functions](/reference/functions/regular-functions/introspection) — Which introspection functions are available and how to use them.
-- [system.trace_log](/reference/system-tables/trace_log) — Contains stack traces collected by the sampling query profiler.
-- [arrayMap](/reference/functions/regular-functions/array-functions#arrayMap)) — Description and usage example of the `arrayMap` function.
-- [arrayFilter](/reference/functions/regular-functions/array-functions#arrayFilter) — Description and usage example of the `arrayFilter` function.
+- [Introspection Functions](/core/reference/functions/regular-functions/introspection) — Which introspection functions are available and how to use them.
+- [system.trace_log](/core/reference/system-tables/trace_log) — Contains stack traces collected by the sampling query profiler.
+- [arrayMap](/core/reference/functions/regular-functions/array-functions#arrayMap)) — Description and usage example of the `arrayMap` function.
+- [arrayFilter](/core/reference/functions/regular-functions/array-functions#arrayFilter) — Description and usage example of the `arrayFilter` function.
diff --git a/reference/system-tables/storage_policies.mdx b/core/reference/system-tables/storage_policies.mdx
similarity index 65%
rename from reference/system-tables/storage_policies.mdx
rename to core/reference/system-tables/storage_policies.mdx
index b74305e2..f45d0885 100644
--- a/reference/system-tables/storage_policies.mdx
+++ b/core/reference/system-tables/storage_policies.mdx
@@ -9,21 +9,21 @@ doc_type: 'reference'
## Description {#description}
-Contains information about storage policies and volumes which are defined in [server configuration](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes_configure).
+Contains information about storage policies and volumes which are defined in [server configuration](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes_configure).
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `policy_name` ([String](/reference/data-types)) — The name of the storage policy.
-- `volume_name` ([String](/reference/data-types)) — The name of the volume.
-- `volume_priority` ([UInt64](/reference/data-types)) — The priority of the volume.
-- `disks` ([Array(String)](/reference/data-types)) — The list of all disks names which are a part of this storage policy.
-- `volume_type` ([Enum8('JBOD' = 0, 'SINGLE_DISK' = 1, 'UNKNOWN' = 2)](/reference/data-types)) — The type of the volume - JBOD or a single disk.
-- `max_data_part_size` ([UInt64](/reference/data-types)) — the maximum size of a part that can be stored on any of the volumes disks.
-- `move_factor` ([Float32](/reference/data-types)) — When the amount of available space gets lower than this factor, data automatically starts to move on the next volume if any (by default, 0.1).
-- `prefer_not_to_merge` ([UInt8](/reference/data-types)) — You should not use this setting. Disables merging of data parts on this volume (this is harmful and leads to performance degradation).
-- `perform_ttl_move_on_insert` ([UInt8](/reference/data-types)) — Disables TTL move on data part INSERT. By default (if enabled) if we insert a data part that already expired by the TTL move rule it immediately goes to a volume/disk declared in move rule.
-- `load_balancing` ([Enum8('ROUND_ROBIN' = 0, 'LEAST_USED' = 1)](/reference/data-types)) — Policy for disk balancing, `round_robin` or `least_used`.
+- `policy_name` ([String](/core/reference/data-types)) — The name of the storage policy.
+- `volume_name` ([String](/core/reference/data-types)) — The name of the volume.
+- `volume_priority` ([UInt64](/core/reference/data-types)) — The priority of the volume.
+- `disks` ([Array(String)](/core/reference/data-types)) — The list of all disks names which are a part of this storage policy.
+- `volume_type` ([Enum8('JBOD' = 0, 'SINGLE_DISK' = 1, 'UNKNOWN' = 2)](/core/reference/data-types)) — The type of the volume - JBOD or a single disk.
+- `max_data_part_size` ([UInt64](/core/reference/data-types)) — the maximum size of a part that can be stored on any of the volumes disks.
+- `move_factor` ([Float32](/core/reference/data-types)) — When the amount of available space gets lower than this factor, data automatically starts to move on the next volume if any (by default, 0.1).
+- `prefer_not_to_merge` ([UInt8](/core/reference/data-types)) — You should not use this setting. Disables merging of data parts on this volume (this is harmful and leads to performance degradation).
+- `perform_ttl_move_on_insert` ([UInt8](/core/reference/data-types)) — Disables TTL move on data part INSERT. By default (if enabled) if we insert a data part that already expired by the TTL move rule it immediately goes to a volume/disk declared in move rule.
+- `load_balancing` ([Enum8('ROUND_ROBIN' = 0, 'LEAST_USED' = 1)](/core/reference/data-types)) — Policy for disk balancing, `round_robin` or `least_used`.
{/*AUTOGENERATED_END*/}
## Volume selection on `INSERT` {#volume-selection-on-insert}
@@ -75,4 +75,4 @@ the TTL destination volume (for `TO DISK 'X'`, on the volume that contains
disk `X`). The part is then written to the priority-N volume first and
moved to the TTL destination by a background move task (observable via
`system.moves`). See the
-[`perform_ttl_move_on_insert` setting on the MergeTree engine](/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes_configure).
+[`perform_ttl_move_on_insert` setting on the MergeTree engine](/core/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes_configure).
diff --git a/reference/system-tables/symbols.mdx b/core/reference/system-tables/symbols.mdx
similarity index 88%
rename from reference/system-tables/symbols.mdx
rename to core/reference/system-tables/symbols.mdx
index dd8cd2d6..176b4c16 100644
--- a/reference/system-tables/symbols.mdx
+++ b/core/reference/system-tables/symbols.mdx
@@ -15,9 +15,9 @@ This table is only useful for C++ experts and ClickHouse engineers.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `symbol` ([String](/reference/data-types)) — Symbol name in the binary. It is mangled. You can apply demangle(symbol) to obtain a readable name.
-- `address_begin` ([UInt64](/reference/data-types)) — Start address of the symbol in the binary.
-- `address_end` ([UInt64](/reference/data-types)) — End address of the symbol in the binary.
+- `symbol` ([String](/core/reference/data-types)) — Symbol name in the binary. It is mangled. You can apply demangle(symbol) to obtain a readable name.
+- `address_begin` ([UInt64](/core/reference/data-types)) — Start address of the symbol in the binary.
+- `address_end` ([UInt64](/core/reference/data-types)) — End address of the symbol in the binary.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/system_warnings.mdx b/core/reference/system-tables/system_warnings.mdx
similarity index 50%
rename from reference/system-tables/system_warnings.mdx
rename to core/reference/system-tables/system_warnings.mdx
index cc749b1f..bda82762 100644
--- a/reference/system-tables/system_warnings.mdx
+++ b/core/reference/system-tables/system_warnings.mdx
@@ -19,20 +19,20 @@ If current value drops below the threshold, the entry is removed from the table.
The table can be configured with these settings:
-- [max_table_num_to_warn](/reference/settings/server-settings/settings#max_table_num_to_warn)
-- [max_database_num_to_warn](/reference/settings/server-settings/settings#max_database_num_to_warn)
-- [max_dictionary_num_to_warn](/reference/settings/server-settings/settings#max_dictionary_num_to_warn)
-- [max_view_num_to_warn](/reference/settings/server-settings/settings#max_view_num_to_warn)
-- [max_part_num_to_warn](/reference/settings/server-settings/settings#max_part_num_to_warn)
-- [max_pending_mutations_to_warn](/reference/settings/server-settings/settings#max_pending_mutations_to_warn)
-- [max_pending_mutations_execution_time_to_warn](/reference/settings/server-settings/settings#max_pending_mutations_execution_time_to_warn)
-- [max_named_collection_num_to_warn](/reference/settings/server-settings/settings#max_named_collection_num_to_warn)
-- [resource_overload_warnings](/concepts/features/configuration/settings/server-overload#resource-overload-warnings)
+- [max_table_num_to_warn](/core/reference/settings/server-settings/settings#max_table_num_to_warn)
+- [max_database_num_to_warn](/core/reference/settings/server-settings/settings#max_database_num_to_warn)
+- [max_dictionary_num_to_warn](/core/reference/settings/server-settings/settings#max_dictionary_num_to_warn)
+- [max_view_num_to_warn](/core/reference/settings/server-settings/settings#max_view_num_to_warn)
+- [max_part_num_to_warn](/core/reference/settings/server-settings/settings#max_part_num_to_warn)
+- [max_pending_mutations_to_warn](/core/reference/settings/server-settings/settings#max_pending_mutations_to_warn)
+- [max_pending_mutations_execution_time_to_warn](/core/reference/settings/server-settings/settings#max_pending_mutations_execution_time_to_warn)
+- [max_named_collection_num_to_warn](/core/reference/settings/server-settings/settings#max_named_collection_num_to_warn)
+- [resource_overload_warnings](/core/concepts/features/configuration/settings/server-overload#resource-overload-warnings)
## Columns {#columns}
-- `message` ([String](/reference/data-types/string)) — Warning message.
-- `message_format_string` ([LowCardinality(String)](/reference/data-types/string)) — The format string used to format the message.
+- `message` ([String](/core/reference/data-types/string)) — Warning message.
+- `message_format_string` ([LowCardinality(String)](/core/reference/data-types/string)) — The format string used to format the message.
## Example {#example}
diff --git a/reference/system-tables/table_engines.mdx b/core/reference/system-tables/table_engines.mdx
similarity index 60%
rename from reference/system-tables/table_engines.mdx
rename to core/reference/system-tables/table_engines.mdx
index d1dc7d44..98786140 100644
--- a/reference/system-tables/table_engines.mdx
+++ b/core/reference/system-tables/table_engines.mdx
@@ -14,15 +14,15 @@ Contains description of table engines supported by server and their feature supp
This table contains the following columns (the column type is shown in brackets):
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — The name of table engine.
-- `supports_settings` ([UInt8](/reference/data-types)) — Flag that indicates if table engine supports SETTINGS clause.
-- `supports_skipping_indices` ([UInt8](/reference/data-types)) — Flag that indicates if table engine supports skipping indices.
-- `supports_projections` ([UInt8](/reference/data-types)) — Flag that indicated if table engine supports projections.
-- `supports_sort_order` ([UInt8](/reference/data-types)) — Flag that indicates if table engine supports clauses PARTITION_BY, PRIMARY_KEY, ORDER_BY and SAMPLE_BY.
-- `supports_ttl` ([UInt8](/reference/data-types)) — Flag that indicates if table engine supports TTL.
-- `supports_replication` ([UInt8](/reference/data-types)) — Flag that indicates if table engine supports data replication.
-- `supports_deduplication` ([UInt8](/reference/data-types)) — Flag that indicates if table engine supports data deduplication.
-- `supports_parallel_insert` ([UInt8](/reference/data-types)) — Flag that indicates if table engine supports parallel insert (see max_insert_threads setting).
+- `name` ([String](/core/reference/data-types)) — The name of table engine.
+- `supports_settings` ([UInt8](/core/reference/data-types)) — Flag that indicates if table engine supports SETTINGS clause.
+- `supports_skipping_indices` ([UInt8](/core/reference/data-types)) — Flag that indicates if table engine supports skipping indices.
+- `supports_projections` ([UInt8](/core/reference/data-types)) — Flag that indicated if table engine supports projections.
+- `supports_sort_order` ([UInt8](/core/reference/data-types)) — Flag that indicates if table engine supports clauses PARTITION_BY, PRIMARY_KEY, ORDER_BY and SAMPLE_BY.
+- `supports_ttl` ([UInt8](/core/reference/data-types)) — Flag that indicates if table engine supports TTL.
+- `supports_replication` ([UInt8](/core/reference/data-types)) — Flag that indicates if table engine supports data replication.
+- `supports_deduplication` ([UInt8](/core/reference/data-types)) — Flag that indicates if table engine supports data deduplication.
+- `supports_parallel_insert` ([UInt8](/core/reference/data-types)) — Flag that indicates if table engine supports parallel insert (see max_insert_threads setting).
{/*AUTOGENERATED_END*/}
## Example {#example}
@@ -43,6 +43,6 @@ WHERE name IN ('Kafka', 'MergeTree', 'ReplicatedCollapsingMergeTree')
## See also {#see-also}
-- MergeTree family [query clauses](/reference/engines/table-engines/mergetree-family/mergetree#mergetree-query-clauses)
-- Kafka [settings](/reference/engines/table-engines/integrations/kafka#creating-a-table)
-- Join [settings](/reference/engines/table-engines/special/join#join-limitations-and-settings)
+- MergeTree family [query clauses](/core/reference/engines/table-engines/mergetree-family/mergetree#mergetree-query-clauses)
+- Kafka [settings](/core/reference/engines/table-engines/integrations/kafka#creating-a-table)
+- Join [settings](/core/reference/engines/table-engines/special/join#join-limitations-and-settings)
diff --git a/reference/system-tables/table_functions.mdx b/core/reference/system-tables/table_functions.mdx
similarity index 58%
rename from reference/system-tables/table_functions.mdx
rename to core/reference/system-tables/table_functions.mdx
index 3b6e60a4..37d22410 100644
--- a/reference/system-tables/table_functions.mdx
+++ b/core/reference/system-tables/table_functions.mdx
@@ -13,7 +13,7 @@ Contains a list of all available table functions with their descriptions.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Name of a table function.
-- `description` ([String](/reference/data-types)) — Brief description of a table function.
-- `allow_readonly` ([UInt8](/reference/data-types)) — Flag that indicated whether a readonly user may use this function.
+- `name` ([String](/core/reference/data-types)) — Name of a table function.
+- `description` ([String](/core/reference/data-types)) — Brief description of a table function.
+- `allow_readonly` ([UInt8](/core/reference/data-types)) — Flag that indicated whether a readonly user may use this function.
{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/tables.mdx b/core/reference/system-tables/tables.mdx
new file mode 100644
index 00000000..131d6856
--- /dev/null
+++ b/core/reference/system-tables/tables.mdx
@@ -0,0 +1,131 @@
+---
+description: 'System table containing metadata of each table that the server knows
+ about.'
+keywords: ['system table', 'tables']
+slug: /operations/system-tables/tables
+title: 'system.tables'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains metadata of each table that the server knows about.
+
+[Detached](/core/reference/statements/detach) tables are not shown in `system.tables`.
+
+[Temporary tables](/core/reference/statements/create/table#temporary-tables) are visible in the `system.tables` only in those session where they have been created. They are shown with the empty `database` field and with the `is_temporary` flag switched on.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — The name of the database the table is in.
+- `name` ([String](/core/reference/data-types)) — Table name.
+- `uuid` ([UUID](/core/reference/data-types)) — Table uuid (Atomic database).
+- `engine` ([String](/core/reference/data-types)) — Table engine name (without parameters).
+- `is_temporary` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the table is temporary.
+- `data_paths` ([Array(String)](/core/reference/data-types)) — Paths to the table data in the file systems.
+- `metadata_path` ([String](/core/reference/data-types)) — Path to the table metadata in the file system.
+- `metadata_modification_time` ([DateTime](/core/reference/data-types)) — Time of latest modification of the table metadata.
+- `metadata_version` ([Int32](/core/reference/data-types)) — Metadata version for ReplicatedMergeTree table, 0 for non ReplicatedMergeTree table.
+- `dependencies_database` ([Array(String)](/core/reference/data-types)) — Database dependencies.
+- `dependencies_table` ([Array(String)](/core/reference/data-types)) — Table dependencies (materialized views the current table).
+- `create_table_query` ([String](/core/reference/data-types)) — The query that was used to create the table.
+- `engine_full` ([String](/core/reference/data-types)) — Parameters of the table engine.
+- `as_select` ([String](/core/reference/data-types)) — SELECT query for view.
+- `parameterized_view_parameters` ([Array(Tuple(name String, type String))](/core/reference/data-types)) — Parameters of parameterized view.
+- `partition_key` ([String](/core/reference/data-types)) — The partition key expression specified in the table.
+- `sorting_key` ([String](/core/reference/data-types)) — The sorting key expression specified in the table.
+- `primary_key` ([String](/core/reference/data-types)) — The primary key expression specified in the table.
+- `sampling_key` ([String](/core/reference/data-types)) — The sampling key expression specified in the table.
+- `unique_key` ([String](/core/reference/data-types)) — The unique key expression specified in the table (UNIQUE KEY clause).
+- `storage_policy` ([String](/core/reference/data-types)) — The storage policy. Relevant for tables using MergeTree and Distributed engines.
+- `total_rows` ([Nullable(UInt64)](/core/reference/data-types)) — Total number of rows, if it is possible to quickly determine exact number of rows in the table, otherwise NULL (including underlying Buffer table).
+- `total_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — Total number of bytes, if it is possible to quickly determine exact number of bytes for the table on storage, otherwise NULL (does not includes any underlying storage). If the table stores data on disk, returns used space on disk (i.e. compressed). If the table stores data in memory, returns approximated number of used bytes in memory.
+- `total_bytes_uncompressed` ([Nullable(UInt64)](/core/reference/data-types)) — Total number of uncompressed bytes, if it's possible to quickly determine the exact number of bytes from the part checksums for the table on storage, otherwise NULL (does not take underlying storage (if any) into account).
+- `parts` ([Nullable(UInt64)](/core/reference/data-types)) — The total number of parts in this table.
+- `active_parts` ([Nullable(UInt64)](/core/reference/data-types)) — The number of active parts in this table.
+- `total_marks` ([Nullable(UInt64)](/core/reference/data-types)) — The total number of marks in all parts in this table.
+- `active_on_fly_data_mutations` ([UInt64](/core/reference/data-types)) — Total number of active data mutations (UPDATEs and DELETEs) suitable for applying on the fly.
+- `active_on_fly_alter_mutations` ([UInt64](/core/reference/data-types)) — Total number of active alter mutations (MODIFY COLUMN) suitable for applying on the fly.
+- `active_on_fly_metadata_mutations` ([UInt64](/core/reference/data-types)) — Total number of active metadata mutations (RENAMEs) suitable for applying on the fly.
+- `columns_descriptions_cache_size` ([UInt64](/core/reference/data-types)) — Size of columns description cache for *MergeTree tables
+- `lifetime_rows` ([Nullable(UInt64)](/core/reference/data-types)) — Total number of rows INSERTed since server start (only for Buffer tables).
+- `lifetime_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — Total number of bytes INSERTed since server start (only for Buffer tables).
+- `comment` ([String](/core/reference/data-types)) — The comment for the table.
+- `has_own_data` ([UInt8](/core/reference/data-types)) — Flag that indicates whether the table itself stores some data on disk or only accesses some other source.
+- `loading_dependencies_database` ([Array(String)](/core/reference/data-types)) — Database loading dependencies (list of objects which should be loaded before the current object).
+- `loading_dependencies_table` ([Array(String)](/core/reference/data-types)) — Table loading dependencies (list of objects which should be loaded before the current object).
+- `loading_dependent_database` ([Array(String)](/core/reference/data-types)) — Dependent loading database.
+- `loading_dependent_table` ([Array(String)](/core/reference/data-types)) — Dependent loading table.
+- `definer` ([String](/core/reference/data-types)) — SQL security definer's name used for the table.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.tables LIMIT 2 FORMAT Vertical;
+```
+
+```text
+Row 1:
+──────
+database: base
+name: t1
+uuid: 81b1c20a-b7c6-4116-a2ce-7583fb6b6736
+engine: MergeTree
+is_temporary: 0
+data_paths: ['/var/lib/clickhouse/store/81b/81b1c20a-b7c6-4116-a2ce-7583fb6b6736/']
+metadata_path: /var/lib/clickhouse/store/461/461cf698-fd0b-406d-8c01-5d8fd5748a91/t1.sql
+metadata_modification_time: 2021-01-25 19:14:32
+dependencies_database: []
+dependencies_table: []
+create_table_query: CREATE TABLE base.t1 (`n` UInt64) ENGINE = MergeTree ORDER BY n
+engine_full: MergeTree ORDER BY n
+as_select: SELECT database AS table_catalog
+partition_key:
+sorting_key: n
+primary_key: n
+sampling_key:
+storage_policy: default
+total_rows: 1
+total_bytes: 99
+lifetime_rows: ᴺᵁᴸᴸ
+lifetime_bytes: ᴺᵁᴸᴸ
+comment:
+has_own_data: 0
+loading_dependencies_database: []
+loading_dependencies_table: []
+loading_dependent_database: []
+loading_dependent_table: []
+
+Row 2:
+──────
+database: default
+name: 53r93yleapyears
+uuid: 00000000-0000-0000-0000-000000000000
+engine: MergeTree
+is_temporary: 0
+data_paths: ['/var/lib/clickhouse/data/default/53r93yleapyears/']
+metadata_path: /var/lib/clickhouse/metadata/default/53r93yleapyears.sql
+metadata_modification_time: 2020-09-23 09:05:36
+dependencies_database: []
+dependencies_table: []
+create_table_query: CREATE TABLE default.`53r93yleapyears` (`id` Int8, `febdays` Int8) ENGINE = MergeTree ORDER BY id
+engine_full: MergeTree ORDER BY id
+as_select: SELECT name AS catalog_name
+partition_key:
+sorting_key: id
+primary_key: id
+sampling_key:
+storage_policy: default
+total_rows: 2
+total_bytes: 155
+lifetime_rows: ᴺᵁᴸᴸ
+lifetime_bytes: ᴺᵁᴸᴸ
+comment:
+has_own_data: 0
+loading_dependencies_database: []
+loading_dependencies_table: []
+loading_dependent_database: []
+loading_dependent_table: []
+```
diff --git a/core/reference/system-tables/text_log.mdx b/core/reference/system-tables/text_log.mdx
new file mode 100644
index 00000000..71e5102c
--- /dev/null
+++ b/core/reference/system-tables/text_log.mdx
@@ -0,0 +1,80 @@
+---
+description: 'System table containing logging entries.'
+keywords: ['system table', 'text_log']
+slug: /operations/system-tables/text_log
+title: 'system.text_log'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Contains logging entries. The logging level which goes to this table can be limited to the `text_log.level` server setting.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of the entry.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Time of the entry.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Time of the entry with microseconds precision.
+- `thread_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the thread from which the logging was done.
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint)) — OS thread ID.
+- `level` ([Enum8('Fatal' = 1, 'Critical' = 2, 'Error' = 3, 'Warning' = 4, 'Notice' = 5, 'Information' = 6, 'Debug' = 7, 'Trace' = 8, 'Test' = 9)](/core/reference/data-types/enum)) — Entry level. Possible values: 1 or 'Fatal', 2 or 'Critical', 3 or 'Error', 4 or 'Warning', 5 or 'Notice', 6 or 'Information', 7 or 'Debug', 8 or 'Trace'.
+- `query_id` ([String](/core/reference/data-types/string)) — ID of the query.
+- `logger_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Name of the logger (e.g., DDLWorker).
+- `message` ([String](/core/reference/data-types/string)) — The message itself.
+- `revision` ([UInt32](/core/reference/data-types/int-uint)) — ClickHouse revision.
+- `source_file` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Source file from which the logging was done.
+- `source_line` ([UInt64](/core/reference/data-types/int-uint)) — Source line from which the logging was done.
+- `message_format_string` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — A format string that was used to format the message.
+- `value1` ([String](/core/reference/data-types/string)) — Argument 1 that was used to format the message.
+- `value2` ([String](/core/reference/data-types/string)) — Argument 2 that was used to format the message.
+- `value3` ([String](/core/reference/data-types/string)) — Argument 3 that was used to format the message.
+- `value4` ([String](/core/reference/data-types/string)) — Argument 4 that was used to format the message.
+- `value5` ([String](/core/reference/data-types/string)) — Argument 5 that was used to format the message.
+- `value6` ([String](/core/reference/data-types/string)) — Argument 6 that was used to format the message.
+- `value7` ([String](/core/reference/data-types/string)) — Argument 7 that was used to format the message.
+- `value8` ([String](/core/reference/data-types/string)) — Argument 8 that was used to format the message.
+- `value9` ([String](/core/reference/data-types/string)) — Argument 9 that was used to format the message.
+- `value10` ([String](/core/reference/data-types/string)) — Argument 10 that was used to format the message.
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT * FROM system.text_log LIMIT 1 \G
+```
+
+```text
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+event_date: 2020-09-10
+event_time: 2020-09-10 11:23:07
+event_time_microseconds: 2020-09-10 11:23:07.871397
+microseconds: 871397
+thread_name: clickhouse-serv
+thread_id: 564917
+level: Information
+query_id:
+logger_name: DNSCacheUpdater
+message: Update period 15 seconds
+revision: 54440
+source_file: /ClickHouse/src/Interpreters/DNSCacheUpdater.cpp; void DB::DNSCacheUpdater::start()
+source_line: 45
+message_format_string: Update period {} seconds
+value1: 15
+value2:
+value3:
+value4:
+value5:
+value6:
+value7:
+value8:
+value9:
+value10:
+```
diff --git a/reference/system-tables/time_zones.mdx b/core/reference/system-tables/time_zones.mdx
similarity index 91%
rename from reference/system-tables/time_zones.mdx
rename to core/reference/system-tables/time_zones.mdx
index 1750229f..c3db9e5c 100644
--- a/reference/system-tables/time_zones.mdx
+++ b/core/reference/system-tables/time_zones.mdx
@@ -14,7 +14,7 @@ Contains a list of time zones that are supported by the ClickHouse server. This
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `time_zone` ([String](/reference/data-types)) — List of supported time zones.
+- `time_zone` ([String](/core/reference/data-types)) — List of supported time zones.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/tokenizers.mdx b/core/reference/system-tables/tokenizers.mdx
similarity index 63%
rename from reference/system-tables/tokenizers.mdx
rename to core/reference/system-tables/tokenizers.mdx
index d5f37b95..b2373699 100644
--- a/reference/system-tables/tokenizers.mdx
+++ b/core/reference/system-tables/tokenizers.mdx
@@ -13,12 +13,12 @@ import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
## Description {#description}
Shows all available tokenizers.
-These can be used in functions [tokens](/reference/functions/regular-functions/splitting-merging-functions#tokens), [hasAllTokens](/reference/functions/regular-functions/string-search-functions#hasAllTokens), [hasAnyTokens](/reference/functions/regular-functions/string-search-functions#hasAnyTokens), and the [text index](/reference/engines/table-engines/mergetree-family/textindexes).
+These can be used in functions [tokens](/core/reference/functions/regular-functions/splitting-merging-functions#tokens), [hasAllTokens](/core/reference/functions/regular-functions/string-search-functions#hasAllTokens), [hasAnyTokens](/core/reference/functions/regular-functions/string-search-functions#hasAnyTokens), and the [text index](/core/reference/engines/table-engines/mergetree-family/textindexes).
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — Name of the tokenizer
+- `name` ([String](/core/reference/data-types)) — Name of the tokenizer
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/trace_log.mdx b/core/reference/system-tables/trace_log.mdx
similarity index 53%
rename from reference/system-tables/trace_log.mdx
rename to core/reference/system-tables/trace_log.mdx
index b432ea02..0b9306d6 100644
--- a/reference/system-tables/trace_log.mdx
+++ b/core/reference/system-tables/trace_log.mdx
@@ -13,41 +13,41 @@ import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
## Description {#description}
-Contains stack traces collected by the [sampling query profiler](/concepts/features/performance/troubleshoot/sampling-query-profiler).
+Contains stack traces collected by the [sampling query profiler](/core/concepts/features/performance/troubleshoot/sampling-query-profiler).
-ClickHouse creates this table when the [trace_log](/reference/settings/server-settings/settings#trace_log) server configuration section is set. Also see settings: [query_profiler_real_time_period_ns](/reference/settings/session-settings#query_profiler_real_time_period_ns), [query_profiler_cpu_time_period_ns](/reference/settings/session-settings#query_profiler_cpu_time_period_ns), [memory_profiler_step](/reference/settings/session-settings#memory_profiler_step),
-[memory_profiler_sample_probability](/reference/settings/session-settings#memory_profiler_sample_probability), [trace_profile_events](/reference/settings/session-settings#trace_profile_events).
+ClickHouse creates this table when the [trace_log](/core/reference/settings/server-settings/settings#trace_log) server configuration section is set. Also see settings: [query_profiler_real_time_period_ns](/core/reference/settings/session-settings#query_profiler_real_time_period_ns), [query_profiler_cpu_time_period_ns](/core/reference/settings/session-settings#query_profiler_cpu_time_period_ns), [memory_profiler_step](/core/reference/settings/session-settings#memory_profiler_step),
+[memory_profiler_sample_probability](/core/reference/settings/session-settings#memory_profiler_sample_probability), [trace_profile_events](/core/reference/settings/session-settings#trace_profile_events).
To analyze logs, use the `addressToLine`, `addressToLineWithInlines`, `addressToSymbol` and `demangle` introspection functions.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
-- `event_date` ([Date](/reference/data-types/date)) — Date of sampling moment.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Timestamp of the sampling moment.
-- `event_time_microseconds` ([DateTime64(6)](/reference/data-types/datetime64)) — Timestamp of the sampling moment with microseconds precision.
-- `timestamp_ns` ([UInt64](/reference/data-types/int-uint)) — Timestamp of the sampling moment in nanoseconds.
-- `revision` ([UInt32](/reference/data-types/int-uint)) — ClickHouse server build revision. When connecting to the server by `clickhouse-client`, you see a string similar to `Connected to ClickHouse server version 19.18.1.`. This field contains the `revision`, but not the `version` of a server.
-- `trace_type` ([Enum8('Real' = 0, 'CPU' = 1, 'Memory' = 2, 'MemorySample' = 3, 'MemoryPeak' = 4, 'ProfileEvent' = 5, 'JemallocSample' = 6, 'MemoryAllocatedWithoutCheck' = 7, 'Instrumentation' = 8)](/reference/data-types/enum)) — Trace type: `Real` represents collecting stack traces by wall-clock time. `CPU` represents collecting stack traces by CPU time. `Memory` represents collecting allocations and deallocations when memory allocation exceeds the subsequent watermark. `MemorySample` represents collecting random allocations and deallocations. `MemoryPeak` represents collecting updates of peak memory usage. `ProfileEvent` represents collecting of increments of profile events. `JemallocSample` represents collecting of jemalloc samples. `MemoryAllocatedWithoutCheck` represents collection of significant allocations (>16MiB) that is done with ignoring any memory limits (for ClickHouse developers only).`Instrumentation` represents traces collected by the instrumentation performed through XRay.
-- `cpu_id` ([UInt64](/reference/data-types/int-uint)) — CPU identifier.
-- `thread_id` ([UInt64](/reference/data-types/int-uint)) — Thread identifier.
-- `thread_name` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Thread name.
-- `query_id` ([String](/reference/data-types/string)) — Query identifier that can be used to get details about a query that was running from the query_log system table.
-- `trace` ([Array(UInt64)](/reference/data-types/array)) — Stack trace at the moment of sampling. Each element is a virtual memory address inside ClickHouse server process.
-- `size` ([Int64](/reference/data-types/int-uint)) — For trace types Memory, MemorySample, MemoryAllocatedWithoutCheck or MemoryPeak is the amount of memory allocated, for other trace types is 0.
-- `ptr` ([UInt64](/reference/data-types/int-uint)) — The address of the allocated chunk.
-- `memory_context` ([Enum8('Unknown' = -1, 'Global' = 0, 'User' = 1, 'Process' = 2, 'Thread' = 3, 'Max' = 4)](/reference/data-types/enum)) — Memory Tracker context (only for Memory/MemoryPeak): `Unknown` context is not defined for this trace_type. `Global` represents server context. `User` represents user/merge context. `Process` represents process (i.e. query) context. `Thread` represents thread (thread of particular process) context. `Max` this is a special value means that memory tracker is not blocked (for blocked_context column).
-- `memory_blocked_context` ([Enum8('Unknown' = -1, 'Global' = 0, 'User' = 1, 'Process' = 2, 'Thread' = 3, 'Max' = 4)](/reference/data-types/enum)) — Context for which memory tracker is blocked (for ClickHouse developers only): `Unknown` context is not defined for this trace_type. `Global` represents server context. `User` represents user/merge context. `Process` represents process (i.e. query) context. `Thread` represents thread (thread of particular process) context. `Max` this is a special value means that memory tracker is not blocked (for blocked_context column).
-- `event` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — For trace type ProfileEvent is the name of updated profile event, for other trace types is an empty string.
-- `increment` ([Int64](/reference/data-types/int-uint)) — For trace type ProfileEvent is the amount of increment of profile event, for other trace types is 0.
-- `symbols` ([Array(LowCardinality(String))](/reference/data-types/array)) — If the symbolization is enabled, contains demangled symbol names, corresponding to the `trace`. Symbolization can be enabled or disabled in the `symbolize` setting under `trace_log` in the server configuration file.
-- `lines` ([Array(LowCardinality(String))](/reference/data-types/array)) — If the symbolization is enabled, contains strings with file names with line numbers, corresponding to the `trace`.
-- `function_id` ([Nullable(Int32)](/reference/data-types/nullable)) — For trace type Instrumentation, ID assigned to the function in xray_instr_map section of elf-binary.
-- `function_name` ([Nullable(String)](/reference/data-types/nullable)) — For trace type Instrumentation, name of the instrumented function.
-- `handler` ([Nullable(String)](/reference/data-types/nullable)) — For trace type Instrumentation, handler of the instrumented function.
-- `entry_type` ([Nullable(Enum8('Entry' = 0, 'Exit' = 1))](/reference/data-types/nullable)) — For trace type Instrumentation, entry type of the instrumented function.
-- `duration_nanoseconds` ([Nullable(UInt64)](/reference/data-types/nullable)) — For trace type Instrumentation, time the function was running for in nanoseconds.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of sampling moment.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Timestamp of the sampling moment.
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Timestamp of the sampling moment with microseconds precision.
+- `timestamp_ns` ([UInt64](/core/reference/data-types/int-uint)) — Timestamp of the sampling moment in nanoseconds.
+- `revision` ([UInt32](/core/reference/data-types/int-uint)) — ClickHouse server build revision. When connecting to the server by `clickhouse-client`, you see a string similar to `Connected to ClickHouse server version 19.18.1.`. This field contains the `revision`, but not the `version` of a server.
+- `trace_type` ([Enum8('Real' = 0, 'CPU' = 1, 'Memory' = 2, 'MemorySample' = 3, 'MemoryPeak' = 4, 'ProfileEvent' = 5, 'JemallocSample' = 6, 'MemoryAllocatedWithoutCheck' = 7, 'Instrumentation' = 8)](/core/reference/data-types/enum)) — Trace type: `Real` represents collecting stack traces by wall-clock time. `CPU` represents collecting stack traces by CPU time. `Memory` represents collecting allocations and deallocations when memory allocation exceeds the subsequent watermark. `MemorySample` represents collecting random allocations and deallocations. `MemoryPeak` represents collecting updates of peak memory usage. `ProfileEvent` represents collecting of increments of profile events. `JemallocSample` represents collecting of jemalloc samples. `MemoryAllocatedWithoutCheck` represents collection of significant allocations (>16MiB) that is done with ignoring any memory limits (for ClickHouse developers only).`Instrumentation` represents traces collected by the instrumentation performed through XRay.
+- `cpu_id` ([UInt64](/core/reference/data-types/int-uint)) — CPU identifier.
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint)) — Thread identifier.
+- `thread_name` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Thread name.
+- `query_id` ([String](/core/reference/data-types/string)) — Query identifier that can be used to get details about a query that was running from the query_log system table.
+- `trace` ([Array(UInt64)](/core/reference/data-types/array)) — Stack trace at the moment of sampling. Each element is a virtual memory address inside ClickHouse server process.
+- `size` ([Int64](/core/reference/data-types/int-uint)) — For trace types Memory, MemorySample, MemoryAllocatedWithoutCheck or MemoryPeak is the amount of memory allocated, for other trace types is 0.
+- `ptr` ([UInt64](/core/reference/data-types/int-uint)) — The address of the allocated chunk.
+- `memory_context` ([Enum8('Unknown' = -1, 'Global' = 0, 'User' = 1, 'Process' = 2, 'Thread' = 3, 'Max' = 4)](/core/reference/data-types/enum)) — Memory Tracker context (only for Memory/MemoryPeak): `Unknown` context is not defined for this trace_type. `Global` represents server context. `User` represents user/merge context. `Process` represents process (i.e. query) context. `Thread` represents thread (thread of particular process) context. `Max` this is a special value means that memory tracker is not blocked (for blocked_context column).
+- `memory_blocked_context` ([Enum8('Unknown' = -1, 'Global' = 0, 'User' = 1, 'Process' = 2, 'Thread' = 3, 'Max' = 4)](/core/reference/data-types/enum)) — Context for which memory tracker is blocked (for ClickHouse developers only): `Unknown` context is not defined for this trace_type. `Global` represents server context. `User` represents user/merge context. `Process` represents process (i.e. query) context. `Thread` represents thread (thread of particular process) context. `Max` this is a special value means that memory tracker is not blocked (for blocked_context column).
+- `event` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — For trace type ProfileEvent is the name of updated profile event, for other trace types is an empty string.
+- `increment` ([Int64](/core/reference/data-types/int-uint)) — For trace type ProfileEvent is the amount of increment of profile event, for other trace types is 0.
+- `symbols` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — If the symbolization is enabled, contains demangled symbol names, corresponding to the `trace`. Symbolization can be enabled or disabled in the `symbolize` setting under `trace_log` in the server configuration file.
+- `lines` ([Array(LowCardinality(String))](/core/reference/data-types/array)) — If the symbolization is enabled, contains strings with file names with line numbers, corresponding to the `trace`.
+- `function_id` ([Nullable(Int32)](/core/reference/data-types/nullable)) — For trace type Instrumentation, ID assigned to the function in xray_instr_map section of elf-binary.
+- `function_name` ([Nullable(String)](/core/reference/data-types/nullable)) — For trace type Instrumentation, name of the instrumented function.
+- `handler` ([Nullable(String)](/core/reference/data-types/nullable)) — For trace type Instrumentation, handler of the instrumented function.
+- `entry_type` ([Nullable(Enum8('Entry' = 0, 'Exit' = 1))](/core/reference/data-types/nullable)) — For trace type Instrumentation, entry type of the instrumented function.
+- `duration_nanoseconds` ([Nullable(UInt64)](/core/reference/data-types/nullable)) — For trace type Instrumentation, time the function was running for in nanoseconds.
**Aliases:**
@@ -132,6 +132,6 @@ We can omit the stack part if we want a more compact but less informative trace.
## See Also {#see-also}
-- [SYSTEM INSTRUMENT](/reference/statements/system#instrument) — Add or remove instrumentation points.
-- [system.instrumentation](/reference/system-tables/instrumentation) — Inspect instrumented points.
-- [system.symbols](/reference/system-tables/symbols) — Inspect symbols to add instrumentation points.
+- [SYSTEM INSTRUMENT](/core/reference/statements/system#instrument) — Add or remove instrumentation points.
+- [system.instrumentation](/core/reference/system-tables/instrumentation) — Inspect instrumented points.
+- [system.symbols](/core/reference/system-tables/symbols) — Inspect symbols to add instrumentation points.
diff --git a/core/reference/system-tables/transactions.mdx b/core/reference/system-tables/transactions.mdx
new file mode 100644
index 00000000..22735dac
--- /dev/null
+++ b/core/reference/system-tables/transactions.mdx
@@ -0,0 +1,21 @@
+---
+description: 'Contains a list of transactions and their state.'
+keywords: ['system table', 'transactions']
+slug: /operations/system-tables/transactions
+title: 'system.transactions'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains a list of transactions and their state.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `tid` ([Tuple(UInt64, UInt64, UUID)](/core/reference/data-types/tuple)) — The identifier of the transaction.
+- `tid_hash` ([UInt64](/core/reference/data-types/int-uint)) — The hash of the identifier.
+- `elapsed` ([Float64](/core/reference/data-types/float)) — The amount of time the transaction being processed.
+- `is_readonly` ([UInt8](/core/reference/data-types/int-uint)) — The flag which shows whether the transaction has executed any write operation.
+- `state` ([Enum8('RUNNING' = 0, 'COMMITTING' = 1, 'COMMITTED' = 2, 'ROLLED_BACK' = 3)](/core/reference/data-types/enum)) — The state of the transaction. Possible values: RUNNING, COMMITTING, COMMITTED, ROLLED_BACK.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/transactions_info_log.mdx b/core/reference/system-tables/transactions_info_log.mdx
new file mode 100644
index 00000000..605d831f
--- /dev/null
+++ b/core/reference/system-tables/transactions_info_log.mdx
@@ -0,0 +1,31 @@
+---
+description: 'Contains information about all transactions executed on a current server.
+
+It is safe to truncate or drop this table at any time.'
+keywords: ['system table', 'transactions_info_log']
+slug: /operations/system-tables/transactions_info_log
+title: 'system.transactions_info_log'
+doc_type: 'reference'
+---
+
+Contains information about all transactions executed on a current server.
+
+It is safe to truncate or drop this table at any time.
+
+Columns:
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — The hostname where transaction was executed.
+- `type` ([Enum8('Begin' = 1, 'Commit' = 2, 'Rollback' = 3, 'AddPart' = 10, 'LockPart' = 11, 'UnlockPart' = 12)](/core/reference/data-types/enum)) — The type of the transaction. Possible values: Begin, Commit, Rollback, AddPart, LockPart, UnlockPart.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of the entry.
+- `event_time` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Time of the entry
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint)) — The identifier of a thread.
+- `query_id` ([String](/core/reference/data-types/string)) — The ID of a query executed in a scope of transaction.
+- `tid` ([Tuple(UInt64, UInt64, UUID)](/core/reference/data-types/tuple)) — The identifier of a transaction.
+- `tid_hash` ([UInt64](/core/reference/data-types/int-uint)) — The hash of the identifier.
+- `csn` ([UInt64](/core/reference/data-types/int-uint)) — The Commit Sequence Number
+- `database` ([String](/core/reference/data-types/string)) — The name of the database the transaction was executed against.
+- `table` ([String](/core/reference/data-types/string)) — The name of the table the transaction was executed against.
+- `uuid` ([UUID](/core/reference/data-types/uuid)) — The uuid of the table the transaction was executed against.
+- `part` ([String](/core/reference/data-types/string)) — The name of the part participated in the transaction.
+{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/unicode.mdx b/core/reference/system-tables/unicode.mdx
similarity index 94%
rename from reference/system-tables/unicode.mdx
rename to core/reference/system-tables/unicode.mdx
index 99a28f9b..54620365 100644
--- a/reference/system-tables/unicode.mdx
+++ b/core/reference/system-tables/unicode.mdx
@@ -15,9 +15,9 @@ The property names of Unicode code points from ICU are converted to `snake_case`
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `code_point` ([String](/reference/data-types)) — The Unicode code point represented as U+XXXX.
-- `code_point_value` ([Int32](/reference/data-types)) — The integer value of the Unicode code point.
-- `notation` ([String](/reference/data-types)) — The character notation (visual representation of the code point).
+- `code_point` ([String](/core/reference/data-types)) — The Unicode code point represented as U+XXXX.
+- `code_point_value` ([Int32](/core/reference/data-types)) — The integer value of the Unicode code point.
+- `notation` ([String](/core/reference/data-types)) — The character notation (visual representation of the code point).
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/user_defined_functions.mdx b/core/reference/system-tables/user_defined_functions.mdx
new file mode 100644
index 00000000..7ffffd8b
--- /dev/null
+++ b/core/reference/system-tables/user_defined_functions.mdx
@@ -0,0 +1,80 @@
+---
+description: 'System table containing loading status and configuration metadata for User-Defined Functions (UDFs).'
+keywords: ['system table', 'user_defined_functions', 'udf', 'executable']
+slug: /operations/system-tables/user_defined_functions
+title: 'system.user_defined_functions'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains loading status, error information, and configuration metadata for [User-Defined Functions (UDFs)](/core/reference/functions/regular-functions/udf).
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — UDF name.
+- `load_status` ([Enum8('Success' = 0, 'Failed' = 1)](/core/reference/data-types)) — Loading status.Possible values:
+ - **Success** — UDF loaded and ready to use
+ - **Failed** — UDF failed to load (see field 'loading_error_message' for details).
+- `loading_error_message` ([String](/core/reference/data-types)) — Detailed error message when loading failed. Empty if loaded successfully.
+- `last_successful_update_time` ([Nullable(DateTime)](/core/reference/data-types)) — Timestamp of the last successful update. NULL if never succeeded.
+- `loading_duration_ms` ([UInt64](/core/reference/data-types)) — Time spent loading the UDF, in milliseconds.
+- `type` ([Enum8('executable' = 0, 'executable_pool' = 1)](/core/reference/data-types)) — UDF type: 'executable' (single process) or 'executable_pool' (process pool).
+- `command` ([String](/core/reference/data-types)) — Script or command to execute for this UDF.
+- `format` ([String](/core/reference/data-types)) — Data format for I/O (e.g., 'TabSeparated', 'JSONEachRow').
+- `return_type` ([String](/core/reference/data-types)) — Function return type (e.g., 'String', 'UInt64').
+- `return_name` ([String](/core/reference/data-types)) — Optional return value identifier. Empty if not configured.
+- `argument_types` ([Array(String)](/core/reference/data-types)) — Array of argument types (e.g., ['String', 'UInt64']).
+- `argument_names` ([Array(String)](/core/reference/data-types)) — Array of argument names. Empty strings for unnamed arguments.
+- `max_command_execution_time` ([UInt64](/core/reference/data-types)) — Maximum seconds to process a data block. Only for 'executable_pool' type.
+- `command_termination_timeout` ([UInt64](/core/reference/data-types)) — Seconds before sending SIGTERM to command process.
+- `command_read_timeout` ([UInt64](/core/reference/data-types)) — Milliseconds for reading from command stdout.
+- `command_write_timeout` ([UInt64](/core/reference/data-types)) — Milliseconds for writing to command stdin.
+- `pool_size` ([UInt64](/core/reference/data-types)) — Number of command process instances. Only for 'executable_pool' type.
+- `send_chunk_header` ([UInt8](/core/reference/data-types)) — Whether to send row count before each data chunk (boolean).
+- `execute_direct` ([UInt8](/core/reference/data-types)) — Whether to execute command directly (1) or via /bin/bash (0).
+- `lifetime` ([UInt64](/core/reference/data-types)) — Reload interval in seconds. 0 means reload is disabled.
+- `deterministic` ([UInt8](/core/reference/data-types)) — Whether function returns the same result for the same arguments (boolean).
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+View all UDFs and their loading status:
+
+```sql
+SELECT
+ name,
+ load_status,
+ type,
+ command,
+ return_type,
+ argument_types
+FROM system.user_defined_functions
+FORMAT Vertical;
+```
+
+```response
+Row 1:
+──────
+name: my_sum_udf
+load_status: Success
+type: executable
+command: /var/lib/clickhouse/user_scripts/sum.py
+return_type: UInt64
+argument_types: ['UInt64','UInt64']
+```
+
+Find failed UDFs:
+
+```sql
+SELECT
+ name,
+ loading_error_message
+FROM system.user_defined_functions
+WHERE load_status = 'Failed';
+```
+
+## See Also {#see-also}
+
+- [User-Defined Functions](/core/reference/functions/regular-functions/udf) — How to create and configure UDFs.
diff --git a/reference/system-tables/user_directories.mdx b/core/reference/system-tables/user_directories.mdx
similarity index 54%
rename from reference/system-tables/user_directories.mdx
rename to core/reference/system-tables/user_directories.mdx
index 780a8306..4b80fb5a 100644
--- a/reference/system-tables/user_directories.mdx
+++ b/core/reference/system-tables/user_directories.mdx
@@ -13,8 +13,8 @@ Contains the information about configured user directories - directories on the
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — The name of the directory.
-- `type` ([String](/reference/data-types)) — The type of the access storage e.g. users.xml or replicated or memory etc.
-- `params` ([String](/reference/data-types)) — JSON with the parameters of the access storage.
-- `precedence` ([UInt64](/reference/data-types)) — The order in which this directory is declared in the config. The same order is used when ClickHouse tries to find a user or role.
+- `name` ([String](/core/reference/data-types)) — The name of the directory.
+- `type` ([String](/core/reference/data-types)) — The type of the access storage e.g. users.xml or replicated or memory etc.
+- `params` ([String](/core/reference/data-types)) — JSON with the parameters of the access storage.
+- `precedence` ([UInt64](/core/reference/data-types)) — The order in which this directory is declared in the config. The same order is used when ClickHouse tries to find a user or role.
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/user_processes.mdx b/core/reference/system-tables/user_processes.mdx
similarity index 72%
rename from reference/system-tables/user_processes.mdx
rename to core/reference/system-tables/user_processes.mdx
index 54627129..4b11ebfc 100644
--- a/reference/system-tables/user_processes.mdx
+++ b/core/reference/system-tables/user_processes.mdx
@@ -18,10 +18,10 @@ This system table can be used to get overview of memory usage and ProfileEvents
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `user` ([String](/reference/data-types)) — User name.
-- `memory_usage` ([Int64](/reference/data-types)) — Sum of RAM used by all processes of the user. It might not include some types of dedicated memory. See the max_memory_usage setting.
-- `peak_memory_usage` ([Int64](/reference/data-types)) — The peak of memory usage of the user. It can be reset when no queries are run for the user.
-- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/reference/data-types)) — Summary of ProfileEvents that measure different metrics for the user. The description of them could be found in the table system.events
+- `user` ([String](/core/reference/data-types)) — User name.
+- `memory_usage` ([Int64](/core/reference/data-types)) — Sum of RAM used by all processes of the user. It might not include some types of dedicated memory. See the max_memory_usage setting.
+- `peak_memory_usage` ([Int64](/core/reference/data-types)) — The peak of memory usage of the user. It can be reset when no queries are run for the user.
+- `ProfileEvents` ([Map(LowCardinality(String), UInt64)](/core/reference/data-types)) — Summary of ProfileEvents that measure different metrics for the user. The description of them could be found in the table system.events
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/core/reference/system-tables/users.mdx b/core/reference/system-tables/users.mdx
new file mode 100644
index 00000000..f4b1922d
--- /dev/null
+++ b/core/reference/system-tables/users.mdx
@@ -0,0 +1,37 @@
+---
+description: 'System table containing a list of user accounts configured on the server.'
+keywords: ['system table', 'users']
+slug: /operations/system-tables/users
+title: 'system.users'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+Contains a list of [user accounts](/core/concepts/features/security/access-rights#user-account-management) configured on the server.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `name` ([String](/core/reference/data-types)) — User name.
+- `id` ([UUID](/core/reference/data-types)) — User ID.
+- `storage` ([String](/core/reference/data-types)) — Path to the storage of users. Configured in the access_control_path parameter.
+- `auth_type` ([Array(Enum8('no_password' = 0, 'plaintext_password' = 1, 'sha256_password' = 2, 'double_sha1_password' = 3, 'ldap' = 4, 'kerberos' = 5, 'ssl_certificate' = 6, 'bcrypt_password' = 7, 'ssh_key' = 8, 'http' = 9, 'jwt' = 10, 'scram_sha256_password' = 11, 'no_authentication' = 12))](/core/reference/data-types)) — Shows the authentication types. There are multiple ways of user identification: with no password, with plain text password, with SHA256-encoded password, with double SHA-1-encoded password or with bcrypt-encoded password.
+- `auth_params` ([Array(String)](/core/reference/data-types)) — Authentication parameters in the JSON format depending on the auth_type.
+- `valid_until` ([Array(DateTime)](/core/reference/data-types)) — The expiration date and time for user credentials.
+- `host_ip` ([Array(String)](/core/reference/data-types)) — IP addresses of hosts that are allowed to connect to the ClickHouse server.
+- `host_names` ([Array(String)](/core/reference/data-types)) — Names of hosts that are allowed to connect to the ClickHouse server.
+- `host_names_regexp` ([Array(String)](/core/reference/data-types)) — Regular expression for host names that are allowed to connect to the ClickHouse server.
+- `host_names_like` ([Array(String)](/core/reference/data-types)) — Names of hosts that are allowed to connect to the ClickHouse server, set using the LIKE predicate.
+- `default_roles_all` ([UInt8](/core/reference/data-types)) — Shows that all granted roles set for user by default.
+- `default_roles_list` ([Array(String)](/core/reference/data-types)) — List of granted roles provided by default.
+- `default_roles_except` ([Array(String)](/core/reference/data-types)) — All the granted roles set as default excepting of the listed ones.
+- `grantees_any` ([UInt8](/core/reference/data-types)) — The flag that indicates whether a user with any grant option can grant it to anyone.
+- `grantees_list` ([Array(String)](/core/reference/data-types)) — The list of users or roles to which this user is allowed to grant options to.
+- `grantees_except` ([Array(String)](/core/reference/data-types)) — The list of users or roles to which this user is forbidden from grant options to.
+- `default_database` ([String](/core/reference/data-types)) — The name of the default database for this user.
+{/*AUTOGENERATED_END*/}
+
+## See also {#see-also}
+
+- [SHOW USERS](/core/reference/statements/show#show-users)
diff --git a/core/reference/system-tables/view_refreshes.mdx b/core/reference/system-tables/view_refreshes.mdx
new file mode 100644
index 00000000..48bc8c6d
--- /dev/null
+++ b/core/reference/system-tables/view_refreshes.mdx
@@ -0,0 +1,54 @@
+---
+description: 'System table containing information about Refreshable Materialized Views.'
+keywords: ['system table', 'view_refreshes']
+slug: /operations/system-tables/view_refreshes
+title: 'system.view_refreshes'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+Information about [Refreshable Materialized Views](/core/reference/statements/create/view#refreshable-materialized-view). Contains all refreshable materialized views, regardless of whether there's a refresh in progress or not.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `database` ([String](/core/reference/data-types)) — The name of the database the table is in.
+- `view` ([String](/core/reference/data-types)) — Table name.
+- `uuid` ([UUID](/core/reference/data-types)) — Table uuid (Atomic database).
+- `status` ([String](/core/reference/data-types)) — Current state of the refresh.
+- `last_success_time` ([Nullable(DateTime)](/core/reference/data-types)) — Time when the latest successful refresh started. NULL if no successful refreshes happened since server startup or table creation.
+- `last_success_duration_ms` ([Nullable(UInt64)](/core/reference/data-types)) — How long the latest refresh took.
+- `last_refresh_time` ([Nullable(DateTime)](/core/reference/data-types)) — Time when the latest refresh attempt finished (if known) or started (if unknown or still running). NULL if no refresh attempts happened since server startup or table creation.
+- `last_refresh_replica` ([String](/core/reference/data-types)) — If coordination is enabled, name of the replica that made the current (if running) or previous (if not running) refresh attempt.
+- `next_refresh_time` ([Nullable(DateTime)](/core/reference/data-types)) — Time at which the next refresh is scheduled to start, if status = Scheduled.
+- `exception` ([String](/core/reference/data-types)) — Error message from previous attempt if it failed.
+- `retry` ([UInt64](/core/reference/data-types)) — How many failed attempts there were so far, for the current refresh. Not available if status is `RunningOnAnotherReplica`.
+- `progress` ([Nullable(Float64)](/core/reference/data-types)) — Progress of the current running or most recently completed refresh at the given replica, between 0 and 1. NULL if status is `RunningOnAnotherReplica` or the refresh is not running.
+- `read_rows` ([Nullable(UInt64)](/core/reference/data-types)) — Number of rows read by the current running or most recently completed refresh at the given replica. NULL if status is `RunningOnAnotherReplica`.
+- `read_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — Number of bytes read by the current running or most recently completed refresh at the given replica. NULL if status is `RunningOnAnotherReplica`
+- `total_rows` ([Nullable(UInt64)](/core/reference/data-types)) — Estimated total number of rows that need to be read by the current running or most recently completed refresh at the given replica. NULL if status is `RunningOnAnotherReplica`
+- `written_rows` ([Nullable(UInt64)](/core/reference/data-types)) — Number of rows written by the current running or most recently completed refresh at the given replica. NULL if status is `RunningOnAnotherReplica`
+- `written_bytes` ([Nullable(UInt64)](/core/reference/data-types)) — Number of bytes written by the current running or most recently completed refresh at the given replica. NULL if status is `RunningOnAnotherReplica`
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql
+SELECT
+ database,
+ view,
+ status,
+ last_refresh_result,
+ last_refresh_time,
+ next_refresh_time
+FROM system.view_refreshes
+
+┌─database─┬─view───────────────────────┬─status────┬─last_refresh_result─┬───last_refresh_time─┬───next_refresh_time─┐
+│ default │ hello_documentation_reader │ Scheduled │ Finished │ 2023-12-01 01:24:00 │ 2023-12-01 01:25:00 │
+└──────────┴────────────────────────────┴───────────┴─────────────────────┴─────────────────────┴─────────────────────┘
+```
diff --git a/reference/system-tables/warnings.mdx b/core/reference/system-tables/warnings.mdx
similarity index 67%
rename from reference/system-tables/warnings.mdx
rename to core/reference/system-tables/warnings.mdx
index 5d35a7ef..fbef772a 100644
--- a/reference/system-tables/warnings.mdx
+++ b/core/reference/system-tables/warnings.mdx
@@ -13,6 +13,6 @@ Contains warnings about server configuration to be displayed by clickhouse-clien
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `message` ([String](/reference/data-types)) — A warning message issued by ClickHouse server.
-- `message_format_string` ([LowCardinality(String)](/reference/data-types)) — A format string that was used to format the message.
+- `message` ([String](/core/reference/data-types)) — A warning message issued by ClickHouse server.
+- `message_format_string` ([LowCardinality(String)](/core/reference/data-types)) — A format string that was used to format the message.
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/workloads.mdx b/core/reference/system-tables/workloads.mdx
similarity index 62%
rename from reference/system-tables/workloads.mdx
rename to core/reference/system-tables/workloads.mdx
index dce3ad8a..12a04559 100644
--- a/reference/system-tables/workloads.mdx
+++ b/core/reference/system-tables/workloads.mdx
@@ -9,14 +9,14 @@ doc_type: 'reference'
## Description {#description}
-Contains information for [workloads](/concepts/features/configuration/server-config/workload-scheduling#workload_entity_storage) residing on the local server. The table contains a row for every workload.
+Contains information for [workloads](/core/concepts/features/configuration/server-config/workload-scheduling#workload_entity_storage) residing on the local server. The table contains a row for every workload.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types)) — The name of the workload.
-- `parent` ([String](/reference/data-types)) — The name of the parent workload.
-- `create_query` ([String](/reference/data-types)) — CREATE query of the workload.
+- `name` ([String](/core/reference/data-types)) — The name of the workload.
+- `parent` ([String](/core/reference/data-types)) — The name of the parent workload.
+- `create_query` ([String](/core/reference/data-types)) — CREATE query of the workload.
{/*AUTOGENERATED_END*/}
## Example {#example}
diff --git a/reference/system-tables/zeros.mdx b/core/reference/system-tables/zeros.mdx
similarity index 86%
rename from reference/system-tables/zeros.mdx
rename to core/reference/system-tables/zeros.mdx
index 66ed2e72..8bbf80ad 100644
--- a/reference/system-tables/zeros.mdx
+++ b/core/reference/system-tables/zeros.mdx
@@ -13,5 +13,5 @@ Produces unlimited number of non-materialized zeros.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `zero` ([UInt8](/reference/data-types)) — dummy
+- `zero` ([UInt8](/core/reference/data-types)) — dummy
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/zeros_mt.mdx b/core/reference/system-tables/zeros_mt.mdx
similarity index 85%
rename from reference/system-tables/zeros_mt.mdx
rename to core/reference/system-tables/zeros_mt.mdx
index b8df634d..f5c1d52f 100644
--- a/reference/system-tables/zeros_mt.mdx
+++ b/core/reference/system-tables/zeros_mt.mdx
@@ -13,5 +13,5 @@ Multithreaded version of system.zeros.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `zero` ([UInt8](/reference/data-types)) — dummy
+- `zero` ([UInt8](/core/reference/data-types)) — dummy
{/*AUTOGENERATED_END*/}
diff --git a/reference/system-tables/zookeeper.mdx b/core/reference/system-tables/zookeeper.mdx
similarity index 100%
rename from reference/system-tables/zookeeper.mdx
rename to core/reference/system-tables/zookeeper.mdx
diff --git a/reference/system-tables/zookeeper_connection.mdx b/core/reference/system-tables/zookeeper_connection.mdx
similarity index 55%
rename from reference/system-tables/zookeeper_connection.mdx
rename to core/reference/system-tables/zookeeper_connection.mdx
index 1ae35e9e..a39e85d6 100644
--- a/reference/system-tables/zookeeper_connection.mdx
+++ b/core/reference/system-tables/zookeeper_connection.mdx
@@ -18,20 +18,20 @@ This table does not exist if ZooKeeper is not configured. The 'system.zookeeper_
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `name` ([String](/reference/data-types/string)) — ZooKeeper cluster's name.
-- `host` ([String](/reference/data-types/string)) — The hostname/IP of the ZooKeeper node that ClickHouse connected to.
-- `port` ([UIn16](/reference/data-types/int-uint)) — The port of the ZooKeeper node that ClickHouse connected to.
-- `index` ([Nullable(UInt8)](/reference/data-types/int-uint)) — The index of the ZooKeeper node that ClickHouse connected to. The index is from ZooKeeper config. If not connected, this column is NULL.
-- `connected_time` ([DateTime](/reference/data-types/datetime)) — When the connection was established
-- `session_uptime_elapsed_seconds` ([UInt64](/reference/data-types/int-uint)) — Seconds elapsed since the connection was established.
-- `is_expired` ([UInt8](/reference/data-types/int-uint)) — Is the current connection expired.
-- `keeper_api_version` ([UInt8](/reference/data-types/int-uint)) — Keeper API version.
-- `client_id` ([Int64](/reference/data-types/int-uint)) — Session id of the connection.
-- `xid` ([Int64](/reference/data-types/int-uint)) — XID of the current session.
-- `enabled_feature_flags` ([Array(Enum16)](/reference/data-types/array)) — Feature flags which are enabled. Only applicable to ClickHouse Keeper. Possible values are `FILTERED_LIST`, `MULTI_READ`, `CHECK_NOT_EXISTS`, `CREATE_IF_NOT_EXISTS`, `REMOVE_RECURSIVE`.
-- `availability_zone` ([String](/reference/data-types/string)) — Availability zone.
-- `session_timeout_ms` ([UInt64](/reference/data-types/int-uint)) — Session timeout (in milliseconds).
-- `last_zxid_seen` ([Int64](/reference/data-types/int-uint)) — Last zxid seen by the current session.
+- `name` ([String](/core/reference/data-types/string)) — ZooKeeper cluster's name.
+- `host` ([String](/core/reference/data-types/string)) — The hostname/IP of the ZooKeeper node that ClickHouse connected to.
+- `port` ([UIn16](/core/reference/data-types/int-uint)) — The port of the ZooKeeper node that ClickHouse connected to.
+- `index` ([Nullable(UInt8)](/core/reference/data-types/int-uint)) — The index of the ZooKeeper node that ClickHouse connected to. The index is from ZooKeeper config. If not connected, this column is NULL.
+- `connected_time` ([DateTime](/core/reference/data-types/datetime)) — When the connection was established
+- `session_uptime_elapsed_seconds` ([UInt64](/core/reference/data-types/int-uint)) — Seconds elapsed since the connection was established.
+- `is_expired` ([UInt8](/core/reference/data-types/int-uint)) — Is the current connection expired.
+- `keeper_api_version` ([UInt8](/core/reference/data-types/int-uint)) — Keeper API version.
+- `client_id` ([Int64](/core/reference/data-types/int-uint)) — Session id of the connection.
+- `xid` ([Int64](/core/reference/data-types/int-uint)) — XID of the current session.
+- `enabled_feature_flags` ([Array(Enum16)](/core/reference/data-types/array)) — Feature flags which are enabled. Only applicable to ClickHouse Keeper. Possible values are `FILTERED_LIST`, `MULTI_READ`, `CHECK_NOT_EXISTS`, `CREATE_IF_NOT_EXISTS`, `REMOVE_RECURSIVE`.
+- `availability_zone` ([String](/core/reference/data-types/string)) — Availability zone.
+- `session_timeout_ms` ([UInt64](/core/reference/data-types/int-uint)) — Session timeout (in milliseconds).
+- `last_zxid_seen` ([Int64](/core/reference/data-types/int-uint)) — Last zxid seen by the current session.
{/*AUTOGENERATED_END*/}
Example:
diff --git a/reference/system-tables/zookeeper_connection_log.mdx b/core/reference/system-tables/zookeeper_connection_log.mdx
similarity index 78%
rename from reference/system-tables/zookeeper_connection_log.mdx
rename to core/reference/system-tables/zookeeper_connection_log.mdx
index 03be127d..ef70ee8e 100644
--- a/reference/system-tables/zookeeper_connection_log.mdx
+++ b/core/reference/system-tables/zookeeper_connection_log.mdx
@@ -21,20 +21,20 @@ The table doesn't contain events for disconnections caused by server shutdown.
## Columns {#columns}
{/*AUTOGENERATED_START*/}
-- `hostname` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Hostname of the server which is connected to or disconnected from ZooKeeper.
-- `type` ([Enum8('Connected' = 0, 'Disconnected' = 1)](/reference/data-types/enum)) — The type of the event. Possible values: Connected, Disconnected.
-- `event_date` ([Date](/reference/data-types/date)) — Date of the entry.
-- `event_time` ([DateTime](/reference/data-types/datetime)) — Time of the entry
-- `event_time_microseconds` ([DateTime64(6)](/reference/data-types/datetime64)) — Time of the entry with microseconds precision.
-- `name` ([String](/reference/data-types/string)) — ZooKeeper cluster's name.
-- `host` ([String](/reference/data-types/string)) — The hostname/IP of the ZooKeeper node that ClickHouse connected to or disconnected from.
-- `port` ([UInt16](/reference/data-types/int-uint)) — The port of the ZooKeeper node that ClickHouse connected to or disconnected from.
-- `index` ([UInt8](/reference/data-types/int-uint)) — The index of the ZooKeeper node that ClickHouse connected to or disconnected from. The index is from ZooKeeper config.
-- `client_id` ([Int64](/reference/data-types/int-uint)) — Session id of the connection.
-- `keeper_api_version` ([UInt8](/reference/data-types/int-uint)) — Keeper API version.
-- `enabled_feature_flags` ([Array(Enum16('FILTERED_LIST' = 0, 'MULTI_READ' = 1, 'CHECK_NOT_EXISTS' = 2, 'CREATE_IF_NOT_EXISTS' = 3, 'REMOVE_RECURSIVE' = 4, 'MULTI_WATCHES' = 5, 'CHECK_STAT' = 6, 'PERSISTENT_WATCHES' = 7, 'CREATE_WITH_STATS' = 8, 'TRY_REMOVE' = 9, 'LIST_WITH_STAT_AND_DATA' = 10, 'GET_CHILDREN_RECURSIVE' = 11))](/reference/data-types/array)) — Feature flags which are enabled. Only applicable to ClickHouse Keeper.
-- `availability_zone` ([String](/reference/data-types/string)) — Availability zone
-- `reason` ([LowCardinality(String)](/reference/data-types/lowcardinality)) — Reason for the connection or disconnection.
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server which is connected to or disconnected from ZooKeeper.
+- `type` ([Enum8('Connected' = 0, 'Disconnected' = 1)](/core/reference/data-types/enum)) — The type of the event. Possible values: Connected, Disconnected.
+- `event_date` ([Date](/core/reference/data-types/date)) — Date of the entry.
+- `event_time` ([DateTime](/core/reference/data-types/datetime)) — Time of the entry
+- `event_time_microseconds` ([DateTime64(6)](/core/reference/data-types/datetime64)) — Time of the entry with microseconds precision.
+- `name` ([String](/core/reference/data-types/string)) — ZooKeeper cluster's name.
+- `host` ([String](/core/reference/data-types/string)) — The hostname/IP of the ZooKeeper node that ClickHouse connected to or disconnected from.
+- `port` ([UInt16](/core/reference/data-types/int-uint)) — The port of the ZooKeeper node that ClickHouse connected to or disconnected from.
+- `index` ([UInt8](/core/reference/data-types/int-uint)) — The index of the ZooKeeper node that ClickHouse connected to or disconnected from. The index is from ZooKeeper config.
+- `client_id` ([Int64](/core/reference/data-types/int-uint)) — Session id of the connection.
+- `keeper_api_version` ([UInt8](/core/reference/data-types/int-uint)) — Keeper API version.
+- `enabled_feature_flags` ([Array(Enum16('FILTERED_LIST' = 0, 'MULTI_READ' = 1, 'CHECK_NOT_EXISTS' = 2, 'CREATE_IF_NOT_EXISTS' = 3, 'REMOVE_RECURSIVE' = 4, 'MULTI_WATCHES' = 5, 'CHECK_STAT' = 6, 'PERSISTENT_WATCHES' = 7, 'CREATE_WITH_STATS' = 8, 'TRY_REMOVE' = 9, 'LIST_WITH_STAT_AND_DATA' = 10, 'GET_CHILDREN_RECURSIVE' = 11))](/core/reference/data-types/array)) — Feature flags which are enabled. Only applicable to ClickHouse Keeper.
+- `availability_zone` ([String](/core/reference/data-types/string)) — Availability zone
+- `reason` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Reason for the connection or disconnection.
{/*AUTOGENERATED_END*/}
Example:
diff --git a/core/reference/system-tables/zookeeper_info.mdx b/core/reference/system-tables/zookeeper_info.mdx
new file mode 100644
index 00000000..815ab0db
--- /dev/null
+++ b/core/reference/system-tables/zookeeper_info.mdx
@@ -0,0 +1,58 @@
+---
+description: 'System table which outputs introspection of all available keeper nodes.'
+keywords: ['system table', 'zookeeper_info']
+slug: /operations/system-tables/zookeeper_info
+title: 'system.zookeeper_info'
+doc_type: 'reference'
+---
+
+import SystemTableCloud from '/snippets/_system_table_cloud.mdx';
+
+
+
+## Description {#description}
+
+This table outputs combined introspection about zookeeper and the nodes are taken from config.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `zookeeper_cluster_name` ([String](/core/reference/data-types/string)) — ZooKeeper cluster's name.
+- `host` ([String](/core/reference/data-types/string)) — The hostname/IP of the ZooKeeper node that ClickHouse connected to.
+- `port` ([UInt16](/core/reference/data-types/int-uint)) — The port of the ZooKeeper node that ClickHouse connected to.
+- `index` ([Nullable(UInt8)](/core/reference/data-types/int-uint)) — The index of the ZooKeeper node that ClickHouse connected to. The index is from ZooKeeper config. If not connected, this column is NULL.
+- `is_connected` ([Nullable(UInt8)](/core/reference/data-types/int-uint)) — If zookeeper is connected or not.
+- `is_readonly` ([UInt8](/core/reference/data-types/int-uint)) — Is read only.
+- `version` ([String](/core/reference/data-types/string)) — The ZooKeeper version.
+- `avg_latency` ([UInt64](/core/reference/data-types/int-uint)) — The average latency.
+- `max_latency` ([UInt64](/core/reference/data-types/int-uint)) — The max latency.
+- `min_latency` ([UInt64](/core/reference/data-types/int-uint)) — The min latency.
+- `packets_received` ([UInt64](/core/reference/data-types/int-uint)) — The number of packets received.
+- `packets_sent` ([UInt64](/core/reference/data-types/int-uint)) — The number of packets sent.
+- `outstanding_requests` ([UInt64](/core/reference/data-types/int-uint)) — The number of outstanding requests.
+- `server_state` ([String](/core/reference/data-types/string)) — Server state.
+- `is_leader` ([UInt8](/core/reference/data-types/int-uint)) — Is this zookeeper leader.
+- `znode_count` ([UInt64](/core/reference/data-types/int-uint)) — The znode count.
+- `watch_count` ([UInt64](/core/reference/data-types/int-uint)) — The watch count.
+- `ephemerals_count` ([UInt64](/core/reference/data-types/int-uint)) — The ephemerals count.
+- `approximate_data_size` ([UInt64](/core/reference/data-types/int-uint)) — The approximate data size.
+- `followers` ([UInt64](/core/reference/data-types/int-uint)) — The followers of the leader. This field is only exposed by the leader.
+- `synced_followers` ([UInt64](/core/reference/data-types/int-uint)) — TThe synced followers of the leader. This field is only exposed by the leader.
+- `pending_syncs` ([UInt64](/core/reference/data-types/int-uint)) — The pending syncs of the leader. This field is only exposed by the leader.
+- `open_file_descriptor_count` ([UInt64](/core/reference/data-types/int-uint)) — The open file descriptor count. Only available on Unix platforms.
+- `max_file_descriptor_count` ([UInt64](/core/reference/data-types/int-uint)) — The max file descriptor count. Only available on Unix platforms.
+- `connections` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper connections.
+- `outstanding` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper outstanding.
+- `zxid` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper zxid.
+- `node_count` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper node count.
+- `snapshot_dir_size` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper snapshot directory size.
+- `log_dir_size` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper log directory size.
+- `first_log_idx` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper first log index.
+- `first_log_term` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper first log term.
+- `last_log_idx` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper last log index.
+- `last_log_term` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper last log term.
+- `last_committed_idx` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper last committed index.
+- `leader_committed_log_idx` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper leader committed log index.
+- `target_committed_log_idx` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper target committed log index.
+- `last_snapshot_idx` ([UInt64](/core/reference/data-types/int-uint)) — The ZooKeeper last snapshot index.
+{/*AUTOGENERATED_END*/}
diff --git a/core/reference/system-tables/zookeeper_log.mdx b/core/reference/system-tables/zookeeper_log.mdx
new file mode 100644
index 00000000..27788b58
--- /dev/null
+++ b/core/reference/system-tables/zookeeper_log.mdx
@@ -0,0 +1,130 @@
+---
+description: 'System table containing information about the parameters of the request
+ to the ZooKeeper server and the response from it.'
+keywords: ['system table', 'zookeeper_log']
+slug: /operations/system-tables/zookeeper_log
+title: 'system.zookeeper_log'
+doc_type: 'reference'
+---
+
+## Description {#description}
+
+This table contains information about the parameters of the request to the ZooKeeper server and the response from it.
+
+For requests, only columns with request parameters are filled in, and the remaining columns are filled with default values (`0` or `NULL`). When the response arrives, the data from the response is added to the other columns.
+
+## Columns {#columns}
+
+{/*AUTOGENERATED_START*/}
+- `hostname` ([LowCardinality(String)](/core/reference/data-types/lowcardinality)) — Hostname of the server executing the query.
+- `type` ([Enum8('Request' = 1, 'Response' = 2, 'Finalize' = 3)](/core/reference/data-types/enum)) — Event type in the ZooKeeper client. Can have one of the following values: Request — The request has been sent, Response — The response was received, Finalize — The connection is lost, no response was received.
+- `event_date` ([Date](/core/reference/data-types/date)) — The date when the event happened.
+- `event_time` ([DateTime64(6)](/core/reference/data-types/datetime64)) — The date and time when the event happened.
+- `thread_id` ([UInt64](/core/reference/data-types/int-uint)) — The ID of the thread executed this request.
+- `query_id` ([String](/core/reference/data-types/string)) — The ID of a query in scope of which this request was executed.
+- `address` ([IPv6](/core/reference/data-types/ipv6)) — IP address of ZooKeeper server that was used to make the request.
+- `port` ([UInt16](/core/reference/data-types/int-uint)) — The port of ZooKeeper server that was used to make the request.
+- `session_id` ([Int64](/core/reference/data-types/int-uint)) — The session ID that the ZooKeeper server sets for each connection.
+- `duration_microseconds` ([UInt64](/core/reference/data-types/int-uint)) — The time taken by ZooKeeper to execute the request.
+- `xid` ([Int64](/core/reference/data-types/int-uint)) — The ID of the request within the session. This is usually a sequential request number. It is the same for the request row and the paired response/finalize row.
+- `has_watch` ([UInt8](/core/reference/data-types/int-uint)) — The request whether the watch has been set.
+- `op_num` ([Enum16('Close' = -11, 'Error' = -1, 'Watch' = 0, 'Create' = 1, 'Remove' = 2, 'Exists' = 3, 'Get' = 4, 'Set' = 5, 'GetACL' = 6, 'SetACL' = 7, 'SimpleList' = 8, 'Sync' = 9, 'Heartbeat' = 11, 'List' = 12, 'Check' = 13, 'Multi' = 14, 'Create2' = 15, 'Reconfig' = 16, 'CheckWatch' = 17, 'RemoveWatch' = 18, 'MultiRead' = 22, 'Auth' = 100, 'SetWatch' = 101, 'SetWatch2' = 105, 'AddWatch' = 106, 'FilteredList' = 500, 'CheckNotExists' = 501, 'CreateIfNotExists' = 502, 'RemoveRecursive' = 503, 'CheckStat' = 504, 'TryRemove' = 505, 'FilteredListWithStatsAndData' = 506, 'ListRecursive' = 507, 'SessionID' = 997)](/core/reference/data-types/enum)) — The type of request or response.
+- `path` ([String](/core/reference/data-types/string)) — The path to the ZooKeeper node specified in the request, or an empty string if the request not requires specifying a path.
+- `data` ([String](/core/reference/data-types/string)) — The data written to the ZooKeeper node (for the SET and CREATE requests — what the request wanted to write, for the response to the GET request — what was read) or an empty string.
+- `is_ephemeral` ([UInt8](/core/reference/data-types/int-uint)) — Is the ZooKeeper node being created as an ephemeral.
+- `is_sequential` ([UInt8](/core/reference/data-types/int-uint)) — Is the ZooKeeper node being created as an sequential.
+- `version` ([Nullable(Int32)](/core/reference/data-types/nullable)) — The version of the ZooKeeper node that the request expects when executing. This is supported for CHECK, SET, REMOVE requests (is relevant -1 if the request does not check the version or NULL for other requests that do not support version checking).
+- `requests_size` ([UInt32](/core/reference/data-types/int-uint)) — The number of requests included in the multi request (this is a special request that consists of several consecutive ordinary requests and executes them atomically). All requests included in multi request will have the same xid.
+- `request_idx` ([UInt32](/core/reference/data-types/int-uint)) — The number of the request included in multi request (for multi request — 0, then in order from 1).
+- `zxid` ([Int64](/core/reference/data-types/int-uint)) — ZooKeeper transaction ID. The serial number issued by the ZooKeeper server in response to a successfully executed request (0 if the request was not executed/returned an error/the client does not know whether the request was executed).
+- `error` ([Nullable(Enum8('ZNOWATCHER' = -121, 'ZNOTREADONLY' = -119, 'ZSESSIONMOVED' = -118, 'ZNOTHING' = -117, 'ZCLOSING' = -116, 'ZAUTHFAILED' = -115, 'ZINVALIDACL' = -114, 'ZINVALIDCALLBACK' = -113, 'ZSESSIONEXPIRED' = -112, 'ZNOTEMPTY' = -111, 'ZNODEEXISTS' = -110, 'ZNOCHILDRENFOREPHEMERALS' = -108, 'ZBADVERSION' = -103, 'ZNOAUTH' = -102, 'ZNONODE' = -101, 'ZAPIERROR' = -100, 'ZOUTOFMEMORY' = -10, 'ZINVALIDSTATE' = -9, 'ZBADARGUMENTS' = -8, 'ZOPERATIONTIMEOUT' = -7, 'ZUNIMPLEMENTED' = -6, 'ZMARSHALLINGERROR' = -5, 'ZCONNECTIONLOSS' = -4, 'ZDATAINCONSISTENCY' = -3, 'ZRUNTIMEINCONSISTENCY' = -2, 'ZSYSTEMERROR' = -1, 'ZOK' = 0))](/core/reference/data-types/nullable)) — Error code. Can have many values, here are just some of them: ZOK — The request was executed successfully, ZCONNECTIONLOSS — The connection was lost, ZOPERATIONTIMEOUT — The request execution timeout has expired, ZSESSIONEXPIRED — The session has expired, NULL — The request is completed.
+- `watch_type` ([Nullable(Enum8('NOTWATCHING' = -2, 'SESSION' = -1, 'CREATED' = 1, 'DELETED' = 2, 'CHANGED' = 3, 'CHILD' = 4))](/core/reference/data-types/nullable)) — The type of the watch event (for responses with op_num = Watch), for the remaining responses: NULL.
+- `watch_state` ([Nullable(Enum16('AUTH_FAILED' = -113, 'EXPIRED_SESSION' = -112, 'CONNECTING' = 1, 'ASSOCIATING' = 2, 'CONNECTED' = 3, 'READONLY' = 5, 'NOTCONNECTED' = 999))](/core/reference/data-types/nullable)) — The status of the watch event (for responses with op_num = Watch), for the remaining responses: NULL.
+- `path_created` ([String](/core/reference/data-types/string)) — The path to the created ZooKeeper node (for responses to the CREATE request), may differ from the path if the node is created as a sequential.
+- `stat_czxid` ([Int64](/core/reference/data-types/int-uint)) — The zxid of the change that caused this ZooKeeper node to be created.
+- `stat_mzxid` ([Int64](/core/reference/data-types/int-uint)) — The zxid of the change that last modified this ZooKeeper node.
+- `stat_pzxid` ([Int64](/core/reference/data-types/int-uint)) — The transaction ID of the change that last modified children of this ZooKeeper node.
+- `stat_version` ([Int32](/core/reference/data-types/int-uint)) — The number of changes to the data of this ZooKeeper node.
+- `stat_cversion` ([Int32](/core/reference/data-types/int-uint)) — The number of changes to the children of this ZooKeeper node.
+- `stat_dataLength` ([Int32](/core/reference/data-types/int-uint)) — The length of the data field of this ZooKeeper node.
+- `stat_numChildren` ([Int32](/core/reference/data-types/int-uint)) — The number of children of this ZooKeeper node.
+- `children` ([Array(String)](/core/reference/data-types/array)) — The list of child ZooKeeper nodes (for responses to LIST request).
+{/*AUTOGENERATED_END*/}
+
+## Example {#example}
+
+```sql title="Query"
+SELECT * FROM system.zookeeper_log WHERE (session_id = '106662742089334927') AND (xid = '10858') FORMAT Vertical;
+```
+
+```text title="Response"
+Row 1:
+──────
+hostname: clickhouse.eu-central1.internal
+type: Request
+event_date: 2021-08-09
+event_time: 2021-08-09 21:38:30.291792
+address: ::
+port: 2181
+session_id: 106662742089334927
+xid: 10858
+has_watch: 1
+op_num: List
+path: /clickhouse/task_queue/ddl
+data:
+is_ephemeral: 0
+is_sequential: 0
+version: ᴺᵁᴸᴸ
+requests_size: 0
+request_idx: 0
+zxid: 0
+error: ᴺᵁᴸᴸ
+watch_type: ᴺᵁᴸᴸ
+watch_state: ᴺᵁᴸᴸ
+path_created:
+stat_czxid: 0
+stat_mzxid: 0
+stat_pzxid: 0
+stat_version: 0
+stat_cversion: 0
+stat_dataLength: 0
+stat_numChildren: 0
+children: []
+
+Row 2:
+──────
+type: Response
+event_date: 2021-08-09
+event_time: 2021-08-09 21:38:30.292086
+address: ::
+port: 2181
+session_id: 106662742089334927
+xid: 10858
+has_watch: 1
+op_num: List
+path: /clickhouse/task_queue/ddl
+data:
+is_ephemeral: 0
+is_sequential: 0
+version: ᴺᵁᴸᴸ
+requests_size: 0
+request_idx: 0
+zxid: 16926267
+error: ZOK
+watch_type: ᴺᵁᴸᴸ
+watch_state: ᴺᵁᴸᴸ
+path_created:
+stat_czxid: 16925469
+stat_mzxid: 16925469
+stat_pzxid: 16926179
+stat_version: 0
+stat_cversion: 7
+stat_dataLength: 0
+stat_numChildren: 7
+children: ['query-0000000006','query-0000000005','query-0000000004','query-0000000003','query-0000000002','query-0000000001','query-0000000000']
+```
+
+## See also {#see-also}
+
+- [ZooKeeper](/core/guides/oss/best-practices/tips#zookeeper)
+- [ZooKeeper guide](https://zookeeper.apache.org/doc/r3.3.3/zookeeperProgrammers.html)
diff --git a/reference/system-tables/zookeeper_watches.mdx b/core/reference/system-tables/zookeeper_watches.mdx
similarity index 57%
rename from reference/system-tables/zookeeper_watches.mdx
rename to core/reference/system-tables/zookeeper_watches.mdx
index 9c4907d8..38f924d0 100644
--- a/reference/system-tables/zookeeper_watches.mdx
+++ b/core/reference/system-tables/zookeeper_watches.mdx
@@ -13,14 +13,14 @@ Shows currently active [watches](https://zookeeper.apache.org/doc/r3.3.3/zookeep
## Columns {#columns}
-- `zookeeper_name` ([String](/reference/data-types/string)) — Name of the ZooKeeper connection (`default` for the main connection, or the auxiliary name).
-- `create_time` ([DateTime](/reference/data-types/datetime)) — Time when the watch was created.
-- `create_time_microseconds` ([DateTime64](/reference/data-types/datetime64)) — Time when the watch was created with microsecond precision.
-- `path` ([String](/reference/data-types/string)) — ZooKeeper path being watched.
-- `session_id` ([Int64](/reference/data-types/int-uint)) — Session ID of the connection that registered the watch.
-- `request_xid` ([Int64](/reference/data-types/int-uint)) — XID of the request that created the watch.
-- `op_num` ([Enum](/reference/data-types/enum)) — The type of the request that created the watch.
-- `watch_type` ([Enum8](/reference/data-types/enum)) — Watch type. Possible values:
+- `zookeeper_name` ([String](/core/reference/data-types/string)) — Name of the ZooKeeper connection (`default` for the main connection, or the auxiliary name).
+- `create_time` ([DateTime](/core/reference/data-types/datetime)) — Time when the watch was created.
+- `create_time_microseconds` ([DateTime64](/core/reference/data-types/datetime64)) — Time when the watch was created with microsecond precision.
+- `path` ([String](/core/reference/data-types/string)) — ZooKeeper path being watched.
+- `session_id` ([Int64](/core/reference/data-types/int-uint)) — Session ID of the connection that registered the watch.
+- `request_xid` ([Int64](/core/reference/data-types/int-uint)) — XID of the request that created the watch.
+- `op_num` ([Enum](/core/reference/data-types/enum)) — The type of the request that created the watch.
+- `watch_type` ([Enum8](/core/reference/data-types/enum)) — Watch type. Possible values:
- `Children` — watching for changes in the list of child nodes (set by `List` operations).
- `Exists` — watching for node creation or deletion.
- `Data` — watching for changes in node data (set by `Get` operations).
@@ -46,5 +46,5 @@ watch_type: Children
**See Also**
-- [ZooKeeper](/guides/oss/best-practices/tips#zookeeper)
+- [ZooKeeper](/core/guides/oss/best-practices/tips#zookeeper)
- [ZooKeeper guide](https://zookeeper.apache.org/doc/r3.3.3/zookeeperProgrammers.html)
diff --git a/customize-layout.js b/customize-layout.js
deleted file mode 100644
index c8236494..00000000
--- a/customize-layout.js
+++ /dev/null
@@ -1,89 +0,0 @@
-(function () {
- 'use strict';
-
- // Track if we've moved the element to avoid unnecessary operations
- let hasMoved = false;
-
- // Function to add Beta tag to sidebar titles
- // Configure which titles should get the Beta tag
- const betaTitles = ['MongoDB'];
-
- function addBetaTagsToSidebarTitles() {
- // Find all h5 elements with id="sidebar-title" (querySelector gets all)
- const sidebarTitles = document.querySelectorAll('h5#sidebar-title');
-
- if (sidebarTitles.length === 0) {
- console.log('No sidebar title elements found');
- return false;
- }
-
- let addedCount = 0;
-
- sidebarTitles.forEach(sidebarTitle => {
- // Get just the text content without any child elements
- let titleText = '';
- for (let node of sidebarTitle.childNodes) {
- if (node.nodeType === Node.TEXT_NODE) {
- titleText += node.textContent;
- }
- }
- titleText = titleText.trim();
-
- // Check if this title should have a Beta tag
- if (!betaTitles.includes(titleText)) {
- return; // Skip this one
- }
-
- // Check if tag already exists
- if (sidebarTitle.querySelector('.nav-tag-pill')) {
- return; // Skip, already has tag
- }
-
- // Create the Beta tag pill
- const tagPillSpan = document.createElement('span');
- tagPillSpan.className = 'nav-tag-pill flex items-center w-fit';
-
- const tagTextSpan = document.createElement('span');
- tagTextSpan.className = 'nav-tag-pill-text px-1 py-0.5 rounded-md text-[0.65rem] leading-tight font-bold text-primary dark:text-primary-light bg-primary/10';
- tagTextSpan.setAttribute('data-nav-tag', 'Beta');
- tagTextSpan.textContent = 'Beta';
-
- tagPillSpan.appendChild(tagTextSpan);
-
- // Add a space before the tag
- sidebarTitle.appendChild(document.createTextNode(' '));
- sidebarTitle.appendChild(tagPillSpan);
-
- console.log('Beta tag added to sidebar title:', titleText);
- addedCount++;
- });
-
- return addedCount > 0;
- }
-
- // Try to move elements immediately
- addBetaTagsToSidebarTitles();
-
- // Try again on DOMContentLoaded
- document.addEventListener('DOMContentLoaded', function() {
- addBetaTagsToSidebarTitles();
- });
-
- // Try again on window load (after all resources are loaded)
- window.addEventListener('load', function() {
- addBetaTagsToSidebarTitles();
- });
-
- // Keep watching for changes indefinitely - don't disconnect
- const observer = new MutationObserver(function(mutations) {
- // Always try to add beta tags to sidebar titles
- addBetaTagsToSidebarTitles();
- });
-
- // Start observing the document for changes
- observer.observe(document.documentElement, {
- childList: true,
- subtree: true
- });
-
-})();
\ No newline at end of file
diff --git a/docs.json b/docs.json
index 5b949402..3924b865 100644
--- a/docs.json
+++ b/docs.json
@@ -19,29 +19,26 @@
"interaction": {
"drilldown": false
},
- "favicon": "/favicon.svg",
+ "favicon": "/_site/favicon.svg",
"banner": {
- "content": "Introducing Managed ClickStack: Observability for OpenTelemetry at scale [Read more →](https://clickhouse.com/blog)",
+ "content": "Introducing Managed ClickStack: Observability for OpenTelemetry at scale [Read more \u2192](https://clickhouse.com/blog)",
"dismissible": true
},
"scripts": [
{
- "src": "/inject-product-headers.js"
+ "src": "/_site/customizations/cookie-banner.js"
},
{
- "src": "/cookie-banner.js"
+ "src": "/_site/customizations/custom-footer.js"
},
{
- "src": "/custom-footer.js"
+ "src": "/_site/customizations/navbar-cta.js"
},
{
- "src": "/navbar-cta.js"
+ "src": "/_site/customizations/kapa-init.js"
},
{
- "src": "/kapa-init.js"
- },
- {
- "src": "/ask-ai-button.js"
+ "src": "/_site/customizations/ask-ai-button.js"
}
],
"navigation": {
@@ -53,1775 +50,16 @@
"tab": "Database",
"menu": [
{
- "item": "Get started",
- "icon": "/images/icons/icon-get-started.svg",
- "pages": [
- "index",
- {
- "group": "Get started",
- "pages": [
- {
- "group": "FAQ",
- "expandable": true,
- "expanded": true,
- "pages": [
- "get-started/about/intro",
- "get-started/about/olap",
- "get-started/about/why-clickhouse-is-so-fast",
- "get-started/about/distinctive-features"
- ]
- },
- "get-started/about/deployment-modes",
- {
- "group": "Use cases",
- "expanded": true,
- "root": "get-started/use-cases/overview",
- "pages": [
- "get-started/use-cases/real-time-analytics",
- "get-started/use-cases/observability",
- "get-started/use-cases/data-warehousing",
- {
- "group": "Machine learning & generative AI",
- "pages": [
- "get-started/use-cases/machine-learning-and-genai/machine-learning",
- "get-started/use-cases/machine-learning-and-genai/agent-facing-analytics",
- "use-cases/ai/mcp/remote-mcp",
- "use-cases/ai-ml/aichat/using-ai-chat",
- "use-cases/ai-ml/aichat/customizing-semantic-layer"
- ]
- }
- ]
- },
- "get-started/quickstarts/home"
- ]
- },
- {
- "group": "Setup",
- "root": "get-started/setup/overview",
- "expanded": true,
- "pages": [
- "get-started/setup/cloud",
- {
- "group": "Self-managed",
- "expanded": true,
- "root": "get-started/setup/self-managed/overview",
- "pages": [
- "get-started/setup/self-managed/quick-install",
- "get-started/setup/self-managed/debian-ubuntu",
- "get-started/setup/self-managed/redhat",
- "get-started/setup/self-managed/other-linux",
- "get-started/setup/self-managed/macos",
- "get-started/setup/self-managed/windows",
- "get-started/setup/self-managed/docker",
- "get-started/setup/self-managed/nixos",
- "get-started/setup/self-managed/advanced"
- ]
- },
- {
- "group": "Migration guides",
- "root": "get-started/setup/migration-guides/overview",
- "pages": [
- {
- "group": "PostgreSQL",
- "pages": [
- "get-started/setup/migration-guides/postgres/overview",
- {
- "group": "Migration guide",
- "pages": [
- "get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part1",
- "get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part2",
- "get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3"
- ]
- },
- "get-started/setup/migration-guides/postgres/appendix"
- ]
- },
- {
- "group": "BigQuery",
- "pages": [
- "get-started/setup/migration-guides/bigquery/overview",
- "get-started/setup/migration-guides/bigquery/migrating-to-clickhouse-cloud",
- "get-started/setup/migration-guides/bigquery/loading-data"
- ]
- },
- {
- "group": "Snowflake",
- "pages": [
- "get-started/setup/migration-guides/snowflake/overview",
- "get-started/setup/migration-guides/snowflake/migration-guide",
- "get-started/setup/migration-guides/snowflake/sql-translation-reference"
- ]
- },
- {
- "group": "Elasticsearch",
- "pages": [
- "get-started/setup/migration-guides/elastic/overview"
- ]
- },
- {
- "group": "Redshift",
- "pages": [
- "get-started/setup/migration-guides/redshift/overview",
- "get-started/setup/migration-guides/redshift/migration-guide",
- "get-started/setup/migration-guides/redshift/sql-translation-reference"
- ]
- },
- {
- "group": "OSS to Cloud",
- "pages": [
- "get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud"
- ]
- },
- {
- "group": "Other methods",
- "pages": [
- "get-started/setup/migration-guides/other-methods/clickhouse-local-etl",
- "get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse",
- "get-started/setup/migration-guides/other-methods/object-storage-to-clickhouse"
- ]
- }
- ]
- }
- ]
- },
- {
- "group": "Sample datasets",
- "expanded": true,
- "root": "get-started/sample-datasets/index",
- "pages": [
- "get-started/sample-datasets/playground",
- {
- "group": "Benchmarks",
- "pages": [
- "get-started/sample-datasets/amplab-benchmark",
- "get-started/sample-datasets/brown-benchmark",
- "get-started/sample-datasets/criteo",
- "get-started/sample-datasets/star-schema",
- "get-started/sample-datasets/tpcds",
- "get-started/sample-datasets/tpch"
- ]
- },
- {
- "group": "Vector search & embeddings",
- "pages": [
- "get-started/sample-datasets/dbpedia",
- "get-started/sample-datasets/hacker-news-vector-search",
- "get-started/sample-datasets/laion",
- "get-started/sample-datasets/laion5b"
- ]
- },
- {
- "group": "Web & social analytics",
- "pages": [
- "get-started/sample-datasets/amazon-reviews",
- "get-started/sample-datasets/anon-web-analytics-metrica",
- "get-started/sample-datasets/github",
- "get-started/sample-datasets/github-events",
- "get-started/sample-datasets/hacker-news",
- "get-started/sample-datasets/stackoverflow",
- "get-started/sample-datasets/youtube-dislikes"
- ]
- },
- {
- "group": "Geo & location",
- "pages": [
- "get-started/sample-datasets/cell-towers",
- "get-started/sample-datasets/foursquare-os-places",
- "get-started/sample-datasets/nyc-taxi"
- ]
- },
- {
- "group": "Time series & sensors",
- "pages": [
- "get-started/sample-datasets/environmental-sensors",
- "get-started/sample-datasets/noaa",
- "get-started/sample-datasets/tw-weather",
- "get-started/sample-datasets/wikistat"
- ]
- },
- {
- "group": "Public records & open data",
- "pages": [
- "get-started/sample-datasets/covid19",
- "get-started/sample-datasets/menus",
- "get-started/sample-datasets/nypd-complaint-data",
- "get-started/sample-datasets/ontime",
- "get-started/sample-datasets/uk-price-paid"
- ]
- }
- ]
- }
- ]
+ "$ref": "core/get-started/navigation.json"
},
{
- "item": "Concepts",
- "icon": "/images/icons/icon-concepts.svg",
- "root": "concepts/index",
- "pages": [
- "concepts/index",
- {
- "group": "Fundamentals",
- "root": "concepts/core-concepts/index",
- "expanded": true,
- "pages": [
- "concepts/core-concepts/glossary",
- "concepts/core-concepts/parts",
- "concepts/core-concepts/partitions",
- "concepts/core-concepts/merges",
- "concepts/core-concepts/primary-indexes",
- "concepts/core-concepts/query-parallelism",
- "concepts/core-concepts/academic-overview"
- ]
- },
- {
- "group": "ClickHouse concepts",
- "root": "concepts/features/index",
- "expanded": true,
- "pages": [
- {
- "group": "Materialized views",
- "root": "concepts/features/materialized-views/index",
- "pages": [
- "concepts/features/materialized-views/incremental-materialized-view",
- "concepts/features/materialized-views/refreshable-materialized-view",
- "concepts/features/materialized-views/cascading-materialized-views"
- ]
- },
- {
- "group": "Dictionaries",
- "pages": [
- "concepts/features/dictionaries/index",
- "concepts/features/dictionaries/best-practices"
- ]
- },
- {
- "group": "Projections",
- "pages": [
- "concepts/features/projections/projections",
- "concepts/features/projections/materialized-views-versus-projections"
- ]
- },
- {
- "group": "Performance",
- "pages": [
- "concepts/features/performance/prewhere",
- "concepts/features/performance/allocation-profiling",
- "concepts/features/performance/allocation-profiling-old",
- {
- "group": "Caches",
- "pages": [
- "concepts/features/performance/caches/caches",
- "concepts/features/performance/caches/query-cache",
- "concepts/features/performance/caches/query-condition-cache",
- "concepts/features/performance/caches/userspace-page-cache"
- ]
- },
- {
- "group": "Skipping-indexes",
- "pages": [
- "concepts/features/performance/skip-indexes/skipping-indexes",
- "concepts/features/performance/skip-indexes/skipping-indexes-examples"
- ]
- },
- "concepts/features/performance/lazy-materialization",
- {
- "group": "Troubleshooting",
- "pages": [
- "concepts/features/performance/troubleshoot/debugging-memory-issues",
- "concepts/features/performance/troubleshoot/performance-test",
- "concepts/features/performance/troubleshoot/sampling-query-profiler"
- ]
- }
- ]
- },
- {
- "group": "Operations",
- "pages": [
- {
- "group": "Insert",
- "pages": [
- "concepts/operations/insert/asyncinserts",
- "concepts/operations/insert/bulkinserts",
- "concepts/operations/insert/deduplication",
- "concepts/operations/insert/deduplicating-inserts-on-retries",
- "concepts/operations/insert/transactions"
- ]
- },
- {
- "group": "Select",
- "pages": [
- "concepts/operations/select/joining-tables"
- ]
- },
- {
- "group": "Update",
- "root": "concepts/operations/update/index",
- "pages": [
- "concepts/operations/update/overview",
- "concepts/operations/update/on-fly-mutations",
- "concepts/operations/update/replacing-merge-tree"
- ]
- },
- {
- "group": "Delete",
- "root": "concepts/operations/delete/overview",
- "pages": [
- "concepts/operations/delete/overview",
- "concepts/operations/delete/delete-mutations",
- "concepts/operations/delete/drop-partition",
- "concepts/operations/delete/lightweight-delete",
- "concepts/operations/delete/truncate",
- "concepts/operations/delete/ttl"
- ]
- }
- ]
- },
- {
- "group": "Configuration",
- "pages": [
- {
- "group": "Settings",
- "pages": [
- "concepts/features/configuration/settings/overview",
- "concepts/features/configuration/settings/settings-query-level",
- "concepts/features/configuration/settings/settings-users",
- "concepts/features/configuration/settings/settings-profiles",
- "concepts/features/configuration/settings/constraints-on-settings",
- "concepts/features/configuration/settings/query-complexity",
- "concepts/features/configuration/settings/permissions-for-queries",
- "concepts/features/configuration/settings/memory-overcommit",
- "concepts/features/configuration/settings/server-overload",
- "concepts/features/configuration/settings/tcp-connection-limits",
- "concepts/features/configuration/settings/alternative-query-languages"
- ]
- },
- {
- "group": "Server config",
- "pages": [
- "concepts/features/configuration/server-config/configuration-files",
- "concepts/features/configuration/server-config/storing-data",
- "concepts/features/configuration/server-config/named-collections",
- "concepts/features/configuration/server-config/workload-scheduling",
- "concepts/features/configuration/server-config/quotas",
- "concepts/features/configuration/server-config/composable-protocols",
- "concepts/features/configuration/server-config/startup-scripts"
- ]
- }
- ]
- },
- {
- "group": "Security and auth",
- "root": "concepts/features/security/access-rights",
- "pages": [
- "concepts/features/security/access-rights",
- "concepts/features/security/network-ports",
- {
- "group": "TLS",
- "root": "concepts/features/security/tls/index",
- "pages": [
- "concepts/features/security/tls/configuring-tls",
- "concepts/features/security/tls/configuring-tls-acme-client"
- ]
- },
- {
- "group": "External authenticators",
- "root": "concepts/features/security/external-authenticators/index",
- "pages": [
- {
- "group": "SSL",
- "pages": [
- "concepts/features/security/external-authenticators/ssl-x509",
- "concepts/features/security/ssl-user-auth"
- ]
- },
- {
- "group": "LDAP",
- "pages": [
- "concepts/features/security/external-authenticators/ldap",
- "concepts/features/security/configuring-ldap"
- ]
- },
- "concepts/features/security/external-authenticators/http",
- "concepts/features/security/external-authenticators/kerberos"
- ]
- }
- ]
- },
- {
- "group": "Backup and restore",
- "pages": [
- "concepts/features/backup-restore/overview",
- "concepts/features/backup-restore/local-disk",
- "concepts/features/backup-restore/s3-endpoint",
- "concepts/features/backup-restore/azure-blob-storage",
- "concepts/features/backup-restore/snapshot",
- "concepts/features/backup-restore/alternative-methods"
- ]
- },
- {
- "group": "Tools and utilities",
- "root": "concepts/features/tools-and-utilities/index",
- "pages": [
- "concepts/features/tools-and-utilities/backupview",
- "concepts/features/tools-and-utilities/clickhouse-benchmark",
- "concepts/features/tools-and-utilities/clickhouse-compressor",
- "concepts/features/tools-and-utilities/clickhouse-disks",
- "concepts/features/tools-and-utilities/clickhouse-format",
- "concepts/features/tools-and-utilities/clickhouse-keeper-client",
- "concepts/features/tools-and-utilities/clickhouse-keeper-http-api",
- "concepts/features/tools-and-utilities/clickhouse-local",
- "concepts/features/tools-and-utilities/clickhouse-obfuscator",
- "concepts/features/tools-and-utilities/odbc-bridge",
- "concepts/features/tools-and-utilities/static-files-disk-uploader"
- ]
- }
- ]
- },
- {
- "group": "Best practices",
- "root": "concepts/best-practices/index",
- "expanded": true,
- "pages": [
- "concepts/best-practices/choosing-a-primary-key",
- "concepts/best-practices/select-data-type",
- "concepts/best-practices/use-materialized-views",
- "concepts/best-practices/minimize-optimize-joins",
- "concepts/best-practices/partitioning-keys",
- "concepts/best-practices/selecting-an-insert-strategy",
- "concepts/best-practices/using-data-skipping-indices",
- "concepts/best-practices/avoid-mutations",
- "concepts/best-practices/avoid-optimize-final",
- "concepts/best-practices/avoidnullablecolumns",
- "concepts/best-practices/json-type"
- ]
- }
- ]
+ "$ref": "core/concepts/navigation.json"
},
{
- "item": "Guides",
- "icon": "/images/icons/icon-guides.svg",
- "groups": [
- {
- "group": "ClickHouse guides",
- "pages": [
- {
- "group": "Data modelling",
- "root": "guides/cloud-oss/data-modelling/index",
- "pages": [
- "guides/cloud-oss/data-modelling/schema-design",
- "guides/cloud-oss/data-modelling/sparse-primary-indexes",
- "guides/cloud-oss/data-modelling/denormalization",
- "guides/cloud-oss/data-modelling/backfilling",
- "guides/cloud-oss/data-modelling/merge-table-function",
- "guides/cloud-oss/data-modelling/stored-procedures-and-prepared-statements",
- {
- "group": "Compression",
- "expanded": false,
- "pages": [
- "guides/cloud-oss/data-modelling/compression/compression-in-clickhouse",
- "guides/cloud-oss/data-modelling/compression/compression-modes"
- ]
- },
- "guides/cloud-oss/working-with-arrays",
- "guides/cloud-oss/working-with-joins"
- ]
- },
- {
- "group": "Performance & monitoring",
- "root": "guides/performance-and-monitoring/index",
- "pages": [
- "guides/cloud-oss/performance-and-monitoring/query-optimization",
- "guides/cloud-oss/performance-and-monitoring/analyzer",
- "guides/cloud-oss/performance-and-monitoring/understanding-query-execution-with-the-analyzer",
- "guides/cloud-oss/performance-and-monitoring/dynamic-column-selection"
- ]
- },
- {
- "group": "Aggregate combinator examples",
- "expanded": false,
- "pages": [
- "guides/cloud-oss/examples/aggregate-function-combinators/anyIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/argMaxIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/argMinIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/avgIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/avgMap",
- "guides/cloud-oss/examples/aggregate-function-combinators/avgMerge",
- "guides/cloud-oss/examples/aggregate-function-combinators/avgMergeState",
- "guides/cloud-oss/examples/aggregate-function-combinators/avgResample",
- "guides/cloud-oss/examples/aggregate-function-combinators/avgState",
- "guides/cloud-oss/examples/aggregate-function-combinators/countIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/countResample",
- "guides/cloud-oss/examples/aggregate-function-combinators/groupArrayDistinct",
- "guides/cloud-oss/examples/aggregate-function-combinators/groupArrayResample",
- "guides/cloud-oss/examples/aggregate-function-combinators/maxMap",
- "guides/cloud-oss/examples/aggregate-function-combinators/maxSimpleState",
- "guides/cloud-oss/examples/aggregate-function-combinators/minMap",
- "guides/cloud-oss/examples/aggregate-function-combinators/minSimpleState",
- "guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingArrayIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/quantilesTimingIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/sumArray",
- "guides/cloud-oss/examples/aggregate-function-combinators/sumForEach",
- "guides/cloud-oss/examples/aggregate-function-combinators/sumIf",
- "guides/cloud-oss/examples/aggregate-function-combinators/sumMap",
- "guides/cloud-oss/examples/aggregate-function-combinators/sumSimpleState",
- "guides/cloud-oss/examples/aggregate-function-combinators/uniqArray",
- "guides/cloud-oss/examples/aggregate-function-combinators/uniqArrayIf"
- ]
- },
- "guides/cloud/index",
- "guides/oss/update",
- {
- "group": "OSS best practices",
- "pages": [
- "guides/oss/best-practices/sizing-and-hardware-recommendations",
- "guides/oss/best-practices/tips"
- ]
- },
- {
- "group": "Deployment and scaling",
- "expanded": false,
- "root": "guides/oss/deployment-and-scaling/index",
- "pages": [
- "guides/oss/deployment-and-scaling/terminology",
- "guides/oss/deployment-and-scaling/shards",
- "guides/oss/deployment-and-scaling/scaling-clusters",
- "guides/oss/deployment-and-scaling/separation-storage-compute",
- "guides/oss/deployment-and-scaling/cluster-discovery",
- {
- "group": "Keeper",
- "expanded": false,
- "pages": [
- "guides/oss/deployment-and-scaling/keeper/index",
- "guides/oss/deployment-and-scaling/keeper/ssl-zookeeper"
- ]
- },
- {
- "group": "Monitoring",
- "expanded": false,
- "pages": [
- "guides/oss/deployment-and-scaling/monitoring/monitoring",
- "guides/oss/deployment-and-scaling/monitoring/opentelemetry"
- ]
- },
- {
- "group": "Examples",
- "expanded": false,
- "pages": [
- "guides/oss/deployment-and-scaling/examples/1-shard-2-replicas",
- "guides/oss/deployment-and-scaling/examples/2-shards-1-replica",
- "guides/oss/deployment-and-scaling/examples/2-shards-2-replicas"
- ]
- }
- ]
- }
- ]
- },
- {
- "group": "Use case guides",
- "expandable": true,
- "expanded": false,
- "pages": [
- {
- "group": "Real-time analytics",
- "pages": [
- {
- "group": "Time series",
- "expanded": false,
- "pages": [
- "guides/real-time-analytics/time-series/index",
- "guides/real-time-analytics/time-series/date-time-data-types",
- "guides/real-time-analytics/time-series/basic-operations",
- "guides/real-time-analytics/time-series/analysis-functions",
- "guides/real-time-analytics/time-series/storage-efficiency",
- "guides/real-time-analytics/time-series/query-performance",
- "guides/real-time-analytics/time-series/materialized-view-rollup",
- "guides/real-time-analytics/time-series/time-series-filling-gaps"
- ]
- }
- ]
- },
- {
- "group": "Observability",
- "root": "guides/observability/index",
- "pages": [
- "guides/observability/cloud-monitoring",
- "guides/observability/self-managed-monitoring",
- {
- "group": "Build your own",
- "pages": [
- "guides/observability/build-your-own/index",
- "guides/observability/build-your-own/introduction",
- "guides/observability/build-your-own/schema-design",
- "guides/observability/build-your-own/integrating-opentelemetry",
- "guides/observability/build-your-own/managing-data",
- "guides/observability/build-your-own/grafana",
- "guides/observability/build-your-own/demo-application"
- ]
- }
- ]
- },
- {
- "group": "Data warehousing",
- "root": "guides/data-warehousing/index",
- "pages": [
- "guides/data-warehousing/glue-catalog",
- "guides/data-warehousing/lakekeeper-catalog",
- "guides/data-warehousing/nessie-catalog",
- "guides/data-warehousing/onelake-catalog",
- "guides/data-warehousing/polaris-catalog",
- "guides/data-warehousing/rest-catalog",
- "guides/data-warehousing/unity-catalog",
- "guides/data-warehousing/biglake-catalog"
- ]
- },
- {
- "group": "AI/ML",
- "root": "guides/ai-ml/index",
- "pages": [
- "guides/ai-ml/vector-search",
- "guides/ai-ml/ai-powered-sql-generation",
- {
- "group": "Data exploration",
- "pages": [
- "guides/ai-ml/data-exploration/jupyter-notebook",
- "guides/ai-ml/data-exploration/marimo-notebook"
- ]
- },
- {
- "group": "MCP",
- "pages": [
- "guides/ai-ml/MCP/index",
- "guides/ai-ml/MCP/claude-desktop",
- "guides/ai-ml/MCP/librechat",
- "guides/ai-ml/MCP/anythingllm",
- "guides/ai-ml/MCP/open-webui",
- "guides/ai-ml/MCP/ollama",
- "guides/ai-ml/MCP/janai",
- {
- "group": "AI agent libraries",
- "pages": [
- "guides/ai-ml/MCP/ai-agent-libraries/index",
- "guides/ai-ml/MCP/ai-agent-libraries/streamlit",
- "guides/ai-ml/MCP/ai-agent-libraries/langchain",
- "guides/ai-ml/MCP/ai-agent-libraries/llamaindex",
- "guides/ai-ml/MCP/ai-agent-libraries/pydantic-ai",
- "guides/ai-ml/MCP/ai-agent-libraries/slackbot",
- "guides/ai-ml/MCP/ai-agent-libraries/agno",
- "guides/ai-ml/MCP/ai-agent-libraries/chainlit",
- "guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk",
- "guides/ai-ml/MCP/ai-agent-libraries/copilotkit",
- "guides/ai-ml/MCP/ai-agent-libraries/crewai",
- "guides/ai-ml/MCP/ai-agent-libraries/dspy",
- "guides/ai-ml/MCP/ai-agent-libraries/mcp-agent",
- "guides/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework",
- "guides/ai-ml/MCP/ai-agent-libraries/upsonic",
- "guides/ai-ml/MCP/ai-agent-libraries/openai-agents"
- ]
- }
- ]
- }
- ]
- }
- ]
- }
- ]
+ "$ref": "core/guides/navigation.json"
},
{
- "item": "Reference",
- "icon": "/images/icons/icon-reference.svg",
- "pages": [
- "reference/home",
- {
- "group": "SQL Reference",
- "expandable": true,
- "expanded": true,
- "pages": [
- "reference/syntax",
- {
- "group": "Statements",
- "expandable": true,
- "expanded": false,
- "root": "reference/statements/index",
- "pages": [
- {
- "group": "ALTER",
- "expanded": false,
- "pages": [
- "reference/statements/alter/index",
- "reference/statements/alter/apply-deleted-mask",
- "reference/statements/alter/apply-patches",
- "reference/statements/alter/column",
- "reference/statements/alter/comment",
- "reference/statements/alter/constraint",
- "reference/statements/alter/database-comment",
- "reference/statements/alter/delete",
- "reference/statements/alter/named-collection",
- "reference/statements/alter/order-by",
- "reference/statements/alter/partition",
- "reference/statements/alter/projection",
- "reference/statements/alter/quota",
- "reference/statements/alter/role",
- "reference/statements/alter/row-policy",
- "reference/statements/alter/sample-by",
- "reference/statements/alter/setting",
- "reference/statements/alter/settings-profile",
- "reference/statements/alter/skipping-index",
- "reference/statements/alter/statistics",
- "reference/statements/alter/ttl",
- "reference/statements/alter/update",
- "reference/statements/alter/user",
- "reference/statements/alter/masking-policy",
- "reference/statements/alter/view"
- ]
- },
- "reference/statements/attach",
- "reference/statements/check-grant",
- "reference/statements/check-table",
- {
- "group": "CREATE",
- "expanded": false,
- "pages": [
- "reference/statements/create/index",
- "reference/statements/create/database",
- {
- "group": "DICTIONARY",
- "expanded": false,
- "root": "reference/statements/create/dictionary",
- "pages": [
- "reference/statements/create/dictionary/attributes",
- "reference/statements/create/dictionary/embedded",
- "reference/statements/create/dictionary/lifetime",
- {
- "group": "Layouts",
- "expanded": false,
- "root": "reference/statements/create/dictionary/layouts/overview",
- "pages": [
- "reference/statements/create/dictionary/layouts/flat",
- "reference/statements/create/dictionary/layouts/hashed",
- "reference/statements/create/dictionary/layouts/hashed-array",
- "reference/statements/create/dictionary/layouts/cache",
- "reference/statements/create/dictionary/layouts/ssd-cache",
- "reference/statements/create/dictionary/layouts/direct",
- "reference/statements/create/dictionary/layouts/range-hashed",
- "reference/statements/create/dictionary/layouts/hierarchical",
- "reference/statements/create/dictionary/layouts/polygon",
- "reference/statements/create/dictionary/layouts/ip-trie",
- "reference/statements/create/dictionary/layouts/regexp-tree"
- ]
- },
- {
- "group": "Sources",
- "expanded": false,
- "root": "reference/statements/create/dictionary/sources/overview",
- "pages": [
- "reference/statements/create/dictionary/sources/local-file",
- "reference/statements/create/dictionary/sources/executable-file",
- "reference/statements/create/dictionary/sources/executable-pool",
- "reference/statements/create/dictionary/sources/http",
- "reference/statements/create/dictionary/sources/clickhouse",
- "reference/statements/create/dictionary/sources/mysql",
- "reference/statements/create/dictionary/sources/postgresql",
- "reference/statements/create/dictionary/sources/mongodb",
- "reference/statements/create/dictionary/sources/redis",
- "reference/statements/create/dictionary/sources/cassandra",
- "reference/statements/create/dictionary/sources/odbc",
- "reference/statements/create/dictionary/sources/null",
- "reference/statements/create/dictionary/sources/yamlregexptree",
- "reference/statements/create/dictionary/sources/ytsaurus"
- ]
- }
- ]
- },
- "reference/statements/create/masking-policy",
- "reference/statements/create/function",
- "reference/statements/create/named-collection",
- "reference/statements/create/quota",
- "reference/statements/create/role",
- "reference/statements/create/row-policy",
- "reference/statements/create/settings-profile",
- "reference/statements/create/table",
- "reference/statements/create/user",
- "reference/statements/create/view"
- ]
- },
- "reference/statements/delete",
- "reference/statements/describe-table",
- "reference/statements/detach",
- "reference/statements/distributed-ddl",
- "reference/statements/drop",
- "reference/statements/exchange",
- "reference/statements/execute_as",
- "reference/statements/exists",
- "reference/statements/explain",
- "reference/statements/grant",
- "reference/statements/in",
- "reference/statements/insert-into",
- "reference/statements/kill",
- "reference/statements/move",
- "reference/statements/optimize",
- "reference/statements/parallel_with",
- "reference/statements/rename",
- "reference/statements/revoke",
- {
- "group": "SELECT",
- "expanded": false,
- "pages": [
- "reference/statements/select/index",
- "reference/statements/select/all",
- "reference/statements/select/apply_modifier",
- "reference/statements/select/array-join",
- "reference/statements/select/distinct",
- "reference/statements/select/except",
- "reference/statements/select/except_modifier",
- "reference/statements/select/format",
- "reference/statements/select/from",
- "reference/statements/select/group-by",
- "reference/statements/select/having",
- "reference/statements/select/intersect",
- "reference/statements/select/into-outfile",
- "reference/statements/select/join",
- "reference/statements/select/limit-by",
- "reference/statements/select/limit",
- "reference/statements/select/offset",
- "reference/statements/select/order-by",
- "reference/statements/select/qualify",
- "reference/statements/select/replace_modifier",
- "reference/statements/select/sample",
- "reference/statements/select/union",
- "reference/statements/select/where",
- "reference/statements/select/with"
- ]
- },
- "reference/statements/set-role",
- "reference/statements/set",
- "reference/statements/show",
- "reference/statements/system",
- "reference/statements/truncate",
- "reference/statements/undrop",
- "reference/statements/update",
- "reference/statements/use",
- "reference/statements/watch"
- ]
- },
- {
- "group": "Operators",
- "expandable": true,
- "expanded": false,
- "root": "reference/operators/index",
- "pages": [
- "reference/operators/exists",
- "reference/operators/distributed-ddl"
- ]
- }
- ]
- },
- {
- "group": "Data Types",
- "expandable": true,
- "expanded": false,
- "root": "reference/data-types/index",
- "pages": [
- {
- "group": "Numeric types",
- "expanded": false,
- "pages": [
- "reference/data-types/int-uint",
- "reference/data-types/float",
- "reference/data-types/decimal",
- "reference/data-types/boolean"
- ]
- },
- {
- "group": "String types",
- "expanded": false,
- "pages": [
- "reference/data-types/string",
- "reference/data-types/fixedstring"
- ]
- },
- {
- "group": "Date and time types",
- "expanded": false,
- "pages": [
- "reference/data-types/date",
- "reference/data-types/date32",
- "reference/data-types/datetime",
- "reference/data-types/datetime64",
- "reference/data-types/time",
- "reference/data-types/time64"
- ]
- },
- {
- "group": "Network types",
- "expanded": false,
- "pages": [
- "reference/data-types/ipv4",
- "reference/data-types/ipv6"
- ]
- },
- {
- "group": "Composite types",
- "expanded": false,
- "pages": [
- "reference/data-types/array",
- "reference/data-types/tuple",
- "reference/data-types/map",
- "reference/data-types/nested-data-structures/index"
- ]
- },
- {
- "group": "Semi-structured types",
- "expanded": false,
- "pages": [
- "reference/data-types/newjson",
- "reference/data-types/dynamic",
- "reference/data-types/variant"
- ]
- },
- {
- "group": "Nullable and optional types",
- "expanded": false,
- "pages": [
- "reference/data-types/nullable",
- "reference/data-types/lowcardinality"
- ]
- },
- {
- "group": "Specialized types",
- "expanded": false,
- "pages": [
- "reference/data-types/uuid",
- "reference/data-types/enum",
- "reference/data-types/geo",
- "reference/data-types/qbit",
- "reference/data-types/domains/index"
- ]
- },
- {
- "group": "Aggregate function types",
- "expanded": false,
- "pages": [
- "reference/data-types/aggregatefunction",
- "reference/data-types/simpleaggregatefunction"
- ]
- },
- {
- "group": "Special Data Types",
- "expanded": false,
- "pages": [
- "reference/data-types/special-data-types/index",
- "reference/data-types/special-data-types/expression",
- "reference/data-types/special-data-types/interval",
- "reference/data-types/special-data-types/nothing",
- "reference/data-types/special-data-types/set"
- ]
- },
- {
- "group": "Binary encoding",
- "pages": [
- "reference/data-types/data-types-binary-encoding"
- ]
- }
- ]
- },
- {
- "group": "Engines",
- "expandable": true,
- "expanded": false,
- "root": "reference/engines/engines",
- "pages": [
- {
- "group": "Table Engines",
- "expanded": false,
- "pages": [
- "reference/engines/table-engines/index",
- {
- "group": "Integrations",
- "expanded": false,
- "pages": [
- "reference/engines/table-engines/integrations/index",
- "reference/engines/table-engines/integrations/ExternalDistributed",
- "reference/engines/table-engines/integrations/arrowflight",
- "reference/engines/table-engines/integrations/azure-queue",
- "reference/engines/table-engines/integrations/azureBlobStorage",
- "reference/engines/table-engines/integrations/deltalake",
- "reference/engines/table-engines/integrations/embedded-rocksdb",
- "reference/engines/table-engines/integrations/hdfs",
- "reference/engines/table-engines/integrations/hive",
- "reference/engines/table-engines/integrations/hudi",
- "reference/engines/table-engines/integrations/iceberg",
- "reference/engines/table-engines/integrations/jdbc",
- "reference/engines/table-engines/integrations/kafka",
- "reference/engines/table-engines/integrations/materialized-postgresql",
- "reference/engines/table-engines/integrations/mongodb",
- "reference/engines/table-engines/integrations/mysql",
- "reference/engines/table-engines/integrations/nats",
- "reference/engines/table-engines/integrations/odbc",
- "reference/engines/table-engines/integrations/paimon",
- "reference/engines/table-engines/integrations/postgresql",
- "reference/engines/table-engines/integrations/rabbitmq",
- "reference/engines/table-engines/integrations/redis",
- "reference/engines/table-engines/integrations/s3",
- "reference/engines/table-engines/integrations/s3queue",
- "reference/engines/table-engines/integrations/sqlite",
- "reference/engines/table-engines/integrations/time-series",
- "reference/engines/table-engines/integrations/ytsaurus"
- ]
- },
- {
- "group": "Log Family",
- "expanded": false,
- "pages": [
- "reference/engines/table-engines/log-family/index",
- "reference/engines/table-engines/log-family/log",
- "reference/engines/table-engines/log-family/stripelog",
- "reference/engines/table-engines/log-family/tinylog"
- ]
- },
- {
- "group": "MergeTree Family",
- "expanded": false,
- "pages": [
- "reference/engines/table-engines/mergetree-family/index",
- "reference/engines/table-engines/mergetree-family/mergetree",
- "reference/engines/table-engines/mergetree-family/aggregatingmergetree",
- "reference/engines/table-engines/mergetree-family/annindexes",
- "reference/engines/table-engines/mergetree-family/coalescingmergetree",
- "reference/engines/table-engines/mergetree-family/collapsingmergetree",
- "reference/engines/table-engines/mergetree-family/custom-partitioning-key",
- "reference/engines/table-engines/mergetree-family/graphitemergetree",
- "reference/engines/table-engines/mergetree-family/invertedindexes",
- "reference/engines/table-engines/mergetree-family/replacingmergetree",
- "reference/engines/table-engines/mergetree-family/replication",
- "reference/engines/table-engines/mergetree-family/summingmergetree",
- "reference/engines/table-engines/mergetree-family/textindexes",
- "reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree"
- ]
- },
- {
- "group": "Special",
- "expanded": false,
- "pages": [
- "reference/engines/table-engines/special/index",
- "reference/engines/table-engines/special/alias",
- "reference/engines/table-engines/special/buffer",
- "reference/engines/table-engines/special/dictionary",
- "reference/engines/table-engines/special/distributed",
- "reference/engines/table-engines/special/executable",
- "reference/engines/table-engines/special/external-data",
- "reference/engines/table-engines/special/file",
- "reference/engines/table-engines/special/filelog",
- "reference/engines/table-engines/special/generate",
- "reference/engines/table-engines/special/join",
- "reference/engines/table-engines/special/keepermap",
- "reference/engines/table-engines/special/memory",
- "reference/engines/table-engines/special/merge",
- "reference/engines/table-engines/special/null",
- "reference/engines/table-engines/special/set",
- "reference/engines/table-engines/special/url",
- "reference/engines/table-engines/special/view"
- ]
- }
- ]
- },
- {
- "group": "Database Engines",
- "expanded": false,
- "pages": [
- "reference/engines/database-engines/index",
- "reference/engines/database-engines/atomic",
- "reference/engines/database-engines/backup",
- "reference/engines/database-engines/datalake",
- "reference/engines/database-engines/materialized-postgresql",
- "reference/engines/database-engines/mysql",
- "reference/engines/database-engines/postgresql",
- "reference/engines/database-engines/replicated",
- "reference/engines/database-engines/shared",
- "reference/engines/database-engines/sqlite"
- ]
- }
- ]
- },
- {
- "group": "Functions",
- "expandable": true,
- "expanded": false,
- "root": "reference/functions/index",
- "pages": [
- {
- "group": "Regular functions",
- "expanded": false,
- "pages": [
- "reference/functions/regular-functions/overview",
- "reference/functions/regular-functions/ai-functions",
- "reference/functions/regular-functions/arithmetic-functions",
- "reference/functions/regular-functions/array-functions",
- "reference/functions/regular-functions/array-join",
- "reference/functions/regular-functions/bit-functions",
- "reference/functions/regular-functions/bitmap-functions",
- "reference/functions/regular-functions/comparison-functions",
- "reference/functions/regular-functions/conditional-functions",
- "reference/functions/regular-functions/date-time-functions",
- "reference/functions/regular-functions/distance-functions",
- "reference/functions/regular-functions/embedded-dict-functions",
- "reference/functions/regular-functions/encoding-functions",
- "reference/functions/regular-functions/encryption-functions",
- "reference/functions/regular-functions/ext-dict-functions",
- "reference/functions/regular-functions/files",
- "reference/functions/regular-functions/financial-functions",
- "reference/functions/regular-functions/functions-for-nulls",
- {
- "group": "Geo",
- "expanded": false,
- "pages": [
- "reference/functions/regular-functions/geo/index",
- "reference/functions/regular-functions/geo/coordinates",
- "reference/functions/regular-functions/geo/flipCoordinates",
- "reference/functions/regular-functions/geo/geometry",
- "reference/functions/regular-functions/geo/geohash",
- "reference/functions/regular-functions/geo/h3",
- "reference/functions/regular-functions/geo/polygon",
- "reference/functions/regular-functions/geo/s2",
- "reference/functions/regular-functions/geo/svg"
- ]
- },
- "reference/functions/regular-functions/hash-functions",
- "reference/functions/regular-functions/in-functions",
- "reference/functions/regular-functions/introspection",
- "reference/functions/regular-functions/ip-address-functions",
- "reference/functions/regular-functions/json-functions",
- "reference/functions/regular-functions/logical-functions",
- "reference/functions/regular-functions/machine-learning-functions",
- "reference/functions/regular-functions/math-functions",
- "reference/functions/regular-functions/nlp-functions",
- "reference/functions/regular-functions/numeric-indexed-vector-functions",
- "reference/functions/regular-functions/other-functions",
- "reference/functions/regular-functions/random-functions",
- "reference/functions/regular-functions/regular-functions-index",
- "reference/functions/regular-functions/rounding-functions",
- "reference/functions/regular-functions/splitting-merging-functions",
- "reference/functions/regular-functions/string-functions",
- "reference/functions/regular-functions/string-replace-functions",
- "reference/functions/regular-functions/string-search-functions",
- "reference/functions/regular-functions/time-series-functions",
- "reference/functions/regular-functions/time-window-functions",
- "reference/functions/regular-functions/tuple-functions",
- "reference/functions/regular-functions/tuple-map-functions",
- "reference/functions/regular-functions/type-conversion-functions",
- "reference/functions/regular-functions/ulid-functions",
- "reference/functions/regular-functions/uniqtheta-functions",
- "reference/functions/regular-functions/url-functions",
- "reference/functions/regular-functions/uuid-functions"
- ]
- },
- {
- "group": "Aggregate Functions",
- "expanded": false,
- "pages": [
- "reference/functions/aggregate-functions/index",
- "reference/functions/aggregate-functions/combinators",
- "reference/functions/aggregate-functions/grouping_function",
- "reference/functions/aggregate-functions/parametric-functions",
- {
- "group": "Reference",
- "expanded": false,
- "pages": [
- "reference/functions/aggregate-functions/reference/index",
- "reference/functions/aggregate-functions/reference/aggThrow",
- "reference/functions/aggregate-functions/reference/analysis_of_variance",
- "reference/functions/aggregate-functions/reference/any",
- "reference/functions/aggregate-functions/reference/anyHeavy",
- "reference/functions/aggregate-functions/reference/anyLast",
- "reference/functions/aggregate-functions/reference/approxtopk",
- "reference/functions/aggregate-functions/reference/approxtopsum",
- "reference/functions/aggregate-functions/reference/argMax",
- "reference/functions/aggregate-functions/reference/argAndMax",
- "reference/functions/aggregate-functions/reference/argMin",
- "reference/functions/aggregate-functions/reference/argAndMin",
- "reference/functions/aggregate-functions/reference/avg",
- "reference/functions/aggregate-functions/reference/avgWeighted",
- "reference/functions/aggregate-functions/reference/boundrat",
- "reference/functions/aggregate-functions/reference/categoricalInformationValue",
- "reference/functions/aggregate-functions/reference/contingency",
- "reference/functions/aggregate-functions/reference/corr",
- "reference/functions/aggregate-functions/reference/corrMatrix",
- "reference/functions/aggregate-functions/reference/corrStable",
- "reference/functions/aggregate-functions/reference/count",
- "reference/functions/aggregate-functions/reference/covarPop",
- "reference/functions/aggregate-functions/reference/covarPopMatrix",
- "reference/functions/aggregate-functions/reference/covarPopStable",
- "reference/functions/aggregate-functions/reference/covarSamp",
- "reference/functions/aggregate-functions/reference/covarSampMatrix",
- "reference/functions/aggregate-functions/reference/covarSampStable",
- "reference/functions/aggregate-functions/reference/cramersV",
- "reference/functions/aggregate-functions/reference/cramersVBiasCorrected",
- "reference/functions/aggregate-functions/reference/deltaSum",
- "reference/functions/aggregate-functions/reference/deltaSumTimestamp",
- "reference/functions/aggregate-functions/reference/distinctDynamicTypes",
- "reference/functions/aggregate-functions/reference/distinctJSONPaths",
- "reference/functions/aggregate-functions/reference/distinctJSONPathsAndTypes",
- "reference/functions/aggregate-functions/reference/entropy",
- "reference/functions/aggregate-functions/reference/estimateCompressionRatio",
- "reference/functions/aggregate-functions/reference/exponentialMovingAverage",
- "reference/functions/aggregate-functions/reference/exponentialTimeDecayedAvg",
- "reference/functions/aggregate-functions/reference/exponentialTimeDecayedCount",
- "reference/functions/aggregate-functions/reference/exponentialTimeDecayedMax",
- "reference/functions/aggregate-functions/reference/exponentialTimeDecayedSum",
- "reference/functions/aggregate-functions/reference/first_value",
- "reference/functions/aggregate-functions/reference/flame_graph",
- "reference/functions/aggregate-functions/reference/groupArray",
- "reference/functions/aggregate-functions/reference/groupArrayArray",
- "reference/functions/aggregate-functions/reference/groupArrayInsertAt",
- "reference/functions/aggregate-functions/reference/groupArrayIntersect",
- "reference/functions/aggregate-functions/reference/groupArrayLast",
- "reference/functions/aggregate-functions/reference/groupArrayMovingAvg",
- "reference/functions/aggregate-functions/reference/groupArrayMovingSum",
- "reference/functions/aggregate-functions/reference/groupArraySample",
- "reference/functions/aggregate-functions/reference/groupArraySorted",
- "reference/functions/aggregate-functions/reference/groupBitAnd",
- "reference/functions/aggregate-functions/reference/groupBitmap",
- "reference/functions/aggregate-functions/reference/groupBitmapAnd",
- "reference/functions/aggregate-functions/reference/groupBitmapOr",
- "reference/functions/aggregate-functions/reference/groupBitmapXor",
- "reference/functions/aggregate-functions/reference/groupBitOr",
- "reference/functions/aggregate-functions/reference/groupBitXor",
- "reference/functions/aggregate-functions/reference/groupConcat",
- "reference/functions/aggregate-functions/reference/groupUniqArray",
- "reference/functions/aggregate-functions/reference/intervalLengthSum",
- "reference/functions/aggregate-functions/reference/kolmogorovSmirnovTest",
- "reference/functions/aggregate-functions/reference/kurtPop",
- "reference/functions/aggregate-functions/reference/kurtSamp",
- "reference/functions/aggregate-functions/reference/largestTriangleThreeBuckets",
- "reference/functions/aggregate-functions/reference/last_value",
- "reference/functions/aggregate-functions/reference/mannWhitneyUTest",
- "reference/functions/aggregate-functions/reference/max",
- "reference/functions/aggregate-functions/reference/maxIntersections",
- "reference/functions/aggregate-functions/reference/maxIntersectionsPosition",
- "reference/functions/aggregate-functions/reference/maxMap",
- "reference/functions/aggregate-functions/reference/meanZTest",
- "reference/functions/aggregate-functions/reference/median",
- "reference/functions/aggregate-functions/reference/min",
- "reference/functions/aggregate-functions/reference/minMap",
- "reference/functions/aggregate-functions/reference/quantile",
- "reference/functions/aggregate-functions/reference/quantileGK",
- "reference/functions/aggregate-functions/reference/quantileBFloat16",
- "reference/functions/aggregate-functions/reference/quantileddsketch",
- "reference/functions/aggregate-functions/reference/quantileDeterministic",
- "reference/functions/aggregate-functions/reference/quantileExact",
- "reference/functions/aggregate-functions/reference/quantileExactExclusive",
- "reference/functions/aggregate-functions/reference/quantileExactHigh",
- "reference/functions/aggregate-functions/reference/quantileExactInclusive",
- "reference/functions/aggregate-functions/reference/quantileExactLow",
- "reference/functions/aggregate-functions/reference/quantileExactWeighted",
- "reference/functions/aggregate-functions/reference/quantileExactWeightedInterpolated",
- "reference/functions/aggregate-functions/reference/quantileInterpolatedWeighted",
- "reference/functions/aggregate-functions/reference/quantilePrometheusHistogram",
- "reference/functions/aggregate-functions/reference/quantiles",
- "reference/functions/aggregate-functions/reference/quantilesExactExclusive",
- "reference/functions/aggregate-functions/reference/quantilesExactInclusive",
- "reference/functions/aggregate-functions/reference/quantilesGK",
- "reference/functions/aggregate-functions/reference/quantileTDigest",
- "reference/functions/aggregate-functions/reference/quantileTDigestWeighted",
- "reference/functions/aggregate-functions/reference/quantileTiming",
- "reference/functions/aggregate-functions/reference/quantileTimingWeighted",
- "reference/functions/aggregate-functions/reference/quantilesTimingWeighted",
- "reference/functions/aggregate-functions/reference/rankCorr",
- "reference/functions/aggregate-functions/reference/simpleLinearRegression",
- "reference/functions/aggregate-functions/reference/singleValueOrNull",
- "reference/functions/aggregate-functions/reference/skewPop",
- "reference/functions/aggregate-functions/reference/skewSamp",
- "reference/functions/aggregate-functions/reference/sparkbar",
- "reference/functions/aggregate-functions/reference/stddevPop",
- "reference/functions/aggregate-functions/reference/stddevPopStable",
- "reference/functions/aggregate-functions/reference/stddevSamp",
- "reference/functions/aggregate-functions/reference/stddevSampStable",
- "reference/functions/aggregate-functions/reference/stochasticLinearRegression",
- "reference/functions/aggregate-functions/reference/stochasticLogisticRegression",
- "reference/functions/aggregate-functions/reference/studentTTest",
- "reference/functions/aggregate-functions/reference/studentTTestOneSample",
- "reference/functions/aggregate-functions/reference/sum",
- "reference/functions/aggregate-functions/reference/sumCount",
- "reference/functions/aggregate-functions/reference/sumKahan",
- "reference/functions/aggregate-functions/reference/sumMap",
- "reference/functions/aggregate-functions/reference/sumMapWithOverflow",
- "reference/functions/aggregate-functions/reference/sumWithOverflow",
- "reference/functions/aggregate-functions/reference/theilsU",
- "reference/functions/aggregate-functions/reference/timeSeriesChangesToGrid",
- "reference/functions/aggregate-functions/reference/timeSeriesDeltaToGrid",
- "reference/functions/aggregate-functions/reference/timeSeriesDerivToGrid",
- "reference/functions/aggregate-functions/reference/timeSeriesGroupArray",
- "reference/functions/aggregate-functions/reference/timeSeriesInstantDeltaToGrid",
- "reference/functions/aggregate-functions/reference/timeSeriesInstantRateToGrid",
- "reference/functions/aggregate-functions/reference/timeSeriesLastTwoSamples",
- "reference/functions/aggregate-functions/reference/timeSeriesPredictLinearToGrid",
- "reference/functions/aggregate-functions/reference/timeSeriesRateToGrid",
- "reference/functions/aggregate-functions/reference/timeSeriesResampleToGridWithStaleness",
- "reference/functions/aggregate-functions/reference/timeSeriesResetsToGrid",
- "reference/functions/aggregate-functions/reference/topK",
- "reference/functions/aggregate-functions/reference/topKWeighted",
- "reference/functions/aggregate-functions/reference/uniq",
- "reference/functions/aggregate-functions/reference/uniqCombined",
- "reference/functions/aggregate-functions/reference/uniqCombined64",
- "reference/functions/aggregate-functions/reference/uniqExact",
- "reference/functions/aggregate-functions/reference/uniqHLL12",
- "reference/functions/aggregate-functions/reference/uniqthetasketch",
- "reference/functions/aggregate-functions/reference/varPop",
- "reference/functions/aggregate-functions/reference/varPopStable",
- "reference/functions/aggregate-functions/reference/varSamp",
- "reference/functions/aggregate-functions/reference/varSampStable",
- "reference/functions/aggregate-functions/reference/welchTTest"
- ]
- }
- ]
- },
- {
- "group": "Table functions",
- "expanded": false,
- "pages": [
- "reference/functions/table-functions/index",
- "reference/functions/table-functions/arrowflight",
- "reference/functions/table-functions/azureBlobStorage",
- "reference/functions/table-functions/azureBlobStorageCluster",
- "reference/functions/table-functions/cluster",
- "reference/functions/table-functions/deltalake",
- "reference/functions/table-functions/deltalakeCluster",
- "reference/functions/table-functions/dictionary",
- "reference/functions/table-functions/executable",
- "reference/functions/table-functions/file",
- "reference/functions/table-functions/fileCluster",
- "reference/functions/table-functions/filesystem",
- "reference/functions/table-functions/format",
- "reference/functions/table-functions/fuzzJSON",
- "reference/functions/table-functions/fuzzQuery",
- "reference/functions/table-functions/gcs",
- "reference/functions/table-functions/generate",
- "reference/functions/table-functions/generate_series",
- "reference/functions/table-functions/hdfs",
- "reference/functions/table-functions/hdfsCluster",
- "reference/functions/table-functions/hudi",
- "reference/functions/table-functions/hudiCluster",
- "reference/functions/table-functions/iceberg",
- "reference/functions/table-functions/icebergCluster",
- "reference/functions/table-functions/input",
- "reference/functions/table-functions/jdbc",
- "reference/functions/table-functions/loop",
- "reference/functions/table-functions/merge",
- "reference/functions/table-functions/mergeTreeIndex",
- "reference/functions/table-functions/mergeTreeProjection",
- "reference/functions/table-functions/mergeTreeTextIndex",
- "reference/functions/table-functions/mongodb",
- "reference/functions/table-functions/mysql",
- "reference/functions/table-functions/null",
- "reference/functions/table-functions/numbers",
- "reference/functions/table-functions/odbc",
- "reference/functions/table-functions/paimon",
- "reference/functions/table-functions/paimonCluster",
- "reference/functions/table-functions/postgresql",
- "reference/functions/table-functions/primes",
- "reference/functions/table-functions/prometheusQuery",
- "reference/functions/table-functions/prometheusQueryRange",
- "reference/functions/table-functions/redis",
- "reference/functions/table-functions/remote",
- "reference/functions/table-functions/s3",
- "reference/functions/table-functions/s3Cluster",
- "reference/functions/table-functions/sqlite",
- "reference/functions/table-functions/timeSeriesData",
- "reference/functions/table-functions/timeSeriesMetrics",
- "reference/functions/table-functions/timeSeriesSelector",
- "reference/functions/table-functions/timeSeriesTags",
- "reference/functions/table-functions/url",
- "reference/functions/table-functions/urlCluster",
- "reference/functions/table-functions/values",
- "reference/functions/table-functions/view",
- "reference/functions/table-functions/ytsaurus",
- "reference/functions/table-functions/zeros"
- ]
- },
- {
- "group": "Window functions",
- "expanded": false,
- "pages": [
- "reference/functions/window-functions/index",
- "reference/functions/window-functions/cume_dist",
- "reference/functions/window-functions/dense_rank",
- "reference/functions/window-functions/first_value",
- "reference/functions/window-functions/lag",
- "reference/functions/window-functions/lagInFrame",
- "reference/functions/window-functions/last_value",
- "reference/functions/window-functions/lead",
- "reference/functions/window-functions/leadInFrame",
- "reference/functions/window-functions/nth_value",
- "reference/functions/window-functions/percent_rank",
- "reference/functions/window-functions/rank",
- "reference/functions/window-functions/row_number"
- ]
- },
- {
- "group": "User Defined Functions",
- "pages": [
- "reference/functions/regular-functions/udf",
- "reference/functions/regular-functions/wasm_udf"
- ]
- }
- ]
- },
- {
- "group": "Formats",
- "expandable": true,
- "root": "reference/formats/index",
- "expanded": false,
- "pages": [
- {
- "group": "Arrow",
- "expanded": false,
- "pages": [
- "reference/formats/Arrow/Arrow",
- "reference/formats/Arrow/ArrowStream"
- ]
- },
- {
- "group": "Avro",
- "expanded": false,
- "pages": [
- "reference/formats/Avro/Avro",
- "reference/formats/Avro/AvroConfluent"
- ]
- },
- "reference/formats/BSONEachRow",
- "reference/formats/Buffers",
- {
- "group": "CSV",
- "expanded": false,
- "pages": [
- "reference/formats/CSV/CSV",
- "reference/formats/CSV/CSVWithNames",
- "reference/formats/CSV/CSVWithNamesAndTypes"
- ]
- },
- "reference/formats/CapnProto",
- {
- "group": "CustomSeparated",
- "expanded": false,
- "pages": [
- "reference/formats/CustomSeparated/CustomSeparated",
- "reference/formats/CustomSeparated/CustomSeparatedIgnoreSpaces",
- "reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNames",
- "reference/formats/CustomSeparated/CustomSeparatedIgnoreSpacesWithNamesAndTypes",
- "reference/formats/CustomSeparated/CustomSeparatedWithNames",
- "reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes"
- ]
- },
- "reference/formats/DWARF",
- "reference/formats/Form",
- "reference/formats/Hash",
- "reference/formats/HiveText",
- {
- "group": "JSON",
- "expanded": false,
- "pages": [
- "reference/formats/JSON/JSON",
- "reference/formats/JSON/JSONAsObject",
- "reference/formats/JSON/JSONAsString",
- "reference/formats/JSON/JSONColumns",
- "reference/formats/JSON/JSONColumnsWithMetadata",
- "reference/formats/JSON/JSONCompact",
- "reference/formats/JSON/JSONCompactColumns",
- "reference/formats/JSON/JSONCompactEachRow",
- "reference/formats/JSON/JSONCompactEachRowWithNames",
- "reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes",
- "reference/formats/JSON/JSONCompactEachRowWithProgress",
- "reference/formats/JSON/JSONCompactStrings",
- "reference/formats/JSON/JSONCompactStringsEachRow",
- "reference/formats/JSON/JSONCompactStringsEachRowWithNames",
- "reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes",
- "reference/formats/JSON/JSONCompactStringsEachRowWithProgress",
- "reference/formats/JSON/JSONEachRow",
- "reference/formats/JSON/JSONEachRowWithProgress",
- "reference/formats/JSON/JSONLines",
- "reference/formats/JSON/JSONObjectEachRow",
- "reference/formats/JSON/JSONStrings",
- "reference/formats/JSON/JSONStringsEachRow",
- "reference/formats/JSON/JSONStringsEachRowWithProgress",
- "reference/formats/JSON/PrettyJSONEachRow",
- "reference/formats/JSON/format-settings"
- ]
- },
- {
- "group": "LineAsString",
- "expanded": false,
- "pages": [
- "reference/formats/LineAsString/LineAsString",
- "reference/formats/LineAsString/LineAsStringWithNames",
- "reference/formats/LineAsString/LineAsStringWithNamesAndTypes"
- ]
- },
- "reference/formats/Markdown",
- "reference/formats/MsgPack",
- "reference/formats/MySQLDump",
- "reference/formats/MySQLWire",
- "reference/formats/Native",
- "reference/formats/Npy",
- "reference/formats/Null",
- "reference/formats/ODBCDriver2",
- "reference/formats/ORC",
- "reference/formats/One",
- {
- "group": "Parquet",
- "expanded": false,
- "pages": [
- "reference/formats/Parquet/Parquet",
- "reference/formats/Parquet/ParquetMetadata"
- ]
- },
- "reference/formats/PostgreSQLWire",
- {
- "group": "Pretty",
- "expanded": false,
- "pages": [
- "reference/formats/Pretty/Pretty",
- "reference/formats/Pretty/PrettyCompact",
- "reference/formats/Pretty/PrettyCompactMonoBlock",
- "reference/formats/Pretty/PrettyCompactNoEscapes",
- "reference/formats/Pretty/PrettyCompactNoEscapesMonoBlock",
- "reference/formats/Pretty/PrettyMonoBlock",
- "reference/formats/Pretty/PrettyNoEscapes",
- "reference/formats/Pretty/PrettyNoEscapesMonoBlock",
- "reference/formats/Pretty/PrettySpace",
- "reference/formats/Pretty/PrettySpaceMonoBlock",
- "reference/formats/Pretty/PrettySpaceNoEscapes",
- "reference/formats/Pretty/PrettySpaceNoEscapesMonoBlock"
- ]
- },
- "reference/formats/Prometheus",
- {
- "group": "Protobuf",
- "expanded": false,
- "pages": [
- "reference/formats/Protobuf/Protobuf",
- "reference/formats/Protobuf/ProtobufList",
- "reference/formats/Protobuf/ProtobufSingle"
- ]
- },
- "reference/formats/RawBLOB",
- "reference/formats/Regexp",
- {
- "group": "RowBinary",
- "expanded": false,
- "pages": [
- "reference/formats/RowBinary/RowBinary",
- "reference/formats/RowBinary/RowBinaryWithDefaults",
- "reference/formats/RowBinary/RowBinaryWithNames",
- "reference/formats/RowBinary/RowBinaryWithNamesAndTypes"
- ]
- },
- "reference/formats/SQLInsert",
- {
- "group": "TabSeparated",
- "expanded": false,
- "pages": [
- "reference/formats/TabSeparated/TSKV",
- "reference/formats/TabSeparated/TabSeparated",
- "reference/formats/TabSeparated/TabSeparatedRaw",
- "reference/formats/TabSeparated/TabSeparatedRawWithNames",
- "reference/formats/TabSeparated/TabSeparatedRawWithNamesAndTypes",
- "reference/formats/TabSeparated/TabSeparatedWithNames",
- "reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes"
- ]
- },
- {
- "group": "Template",
- "expanded": false,
- "pages": [
- "reference/formats/Template/Template",
- "reference/formats/Template/TemplateIgnoreSpaces"
- ]
- },
- "reference/formats/Values",
- "reference/formats/Vertical",
- "reference/formats/XML"
- ]
- },
- {
- "group": "Settings",
- "expandable": true,
- "expanded": false,
- "root": "reference/settings/index",
- "pages": [
- "reference/settings/server-settings/settings",
- "reference/settings/session-settings",
- "reference/settings/merge-tree-settings",
- "reference/settings/formats",
- "reference/settings/beta-and-experimental-features"
- ]
- },
- {
- "group": "System Tables",
- "expandable": true,
- "expanded": false,
- "root": "reference/system-tables/index",
- "pages": [
- "reference/system-tables/aggregate_function_combinators",
- "reference/system-tables/aggregated_zookeeper_log",
- "reference/system-tables/asynchronous_insert_log",
- "reference/system-tables/asynchronous_inserts",
- "reference/system-tables/asynchronous_loader",
- "reference/system-tables/asynchronous_metric_log",
- "reference/system-tables/asynchronous_metrics",
- "reference/system-tables/azure_queue_log",
- "reference/system-tables/azure_queue_metadata_cache",
- "reference/system-tables/azure_queue_settings",
- "reference/system-tables/backup_log",
- "reference/system-tables/backups",
- "reference/system-tables/background_schedule_pool",
- "reference/system-tables/background_schedule_pool_log",
- "reference/system-tables/blob_storage_log",
- "reference/system-tables/build_options",
- "reference/system-tables/certificates",
- "reference/system-tables/clusters",
- "reference/system-tables/codecs",
- "reference/system-tables/collations",
- "reference/system-tables/columns",
- "reference/system-tables/completions",
- "reference/system-tables/contributors",
- "reference/system-tables/crash_log",
- "reference/system-tables/current_roles",
- "reference/system-tables/dashboards",
- "reference/system-tables/data_skipping_indices",
- "reference/system-tables/data_type_families",
- "reference/system-tables/database_engines",
- "reference/system-tables/database_replicas",
- "reference/system-tables/databases",
- "reference/system-tables/dead_letter_queue",
- "reference/system-tables/delta_metadata_log",
- "reference/system-tables/detached_parts",
- "reference/system-tables/detached_tables",
- "reference/system-tables/dictionaries",
- "reference/system-tables/dimensional_metrics",
- "reference/system-tables/disks",
- "reference/system-tables/distributed_ddl_queue",
- "reference/system-tables/distribution_queue",
- "reference/system-tables/dns_cache",
- "reference/system-tables/dropped_tables",
- "reference/system-tables/dropped_tables_parts",
- "reference/system-tables/enabled_roles",
- "reference/system-tables/error_log",
- "reference/system-tables/errors",
- "reference/system-tables/events",
- "reference/system-tables/fail_points",
- "reference/system-tables/formats",
- "reference/system-tables/filesystem_cache_log",
- "reference/system-tables/filesystem_cache_settings",
- "reference/system-tables/filesystem_cache",
- "reference/system-tables/filesystem_read_prefetches_log",
- "reference/system-tables/functions",
- "reference/system-tables/grants",
- "reference/system-tables/graphite_retentions",
- "reference/system-tables/histogram_metric_log",
- "reference/system-tables/histogram_metrics",
- "reference/system-tables/iceberg_history",
- "reference/system-tables/iceberg_metadata_log",
- "reference/system-tables/information_schema",
- "reference/system-tables/instrumentation",
- "reference/system-tables/jemalloc_bins",
- "reference/system-tables/jemalloc_stats",
- "reference/system-tables/jemalloc_profile_text",
- "reference/system-tables/kafka_consumers",
- "reference/system-tables/keywords",
- "reference/system-tables/licenses",
- "reference/system-tables/macros",
- "reference/system-tables/masking_policies",
- "reference/system-tables/merge_tree_settings",
- "reference/system-tables/merges",
- "reference/system-tables/metric_log",
- "reference/system-tables/metrics",
- "reference/system-tables/models",
- "reference/system-tables/moves",
- "reference/system-tables/mutations",
- "reference/system-tables/named_collections",
- "reference/system-tables/numbers",
- "reference/system-tables/numbers_mt",
- "reference/system-tables/one",
- "reference/system-tables/opentelemetry_span_log",
- "reference/system-tables/part_log",
- "reference/system-tables/part_moves_between_shards",
- "reference/system-tables/parts",
- "reference/system-tables/parts_columns",
- "reference/system-tables/predicate_statistics_log",
- "reference/system-tables/primes",
- "reference/system-tables/privileges",
- "reference/system-tables/processes",
- "reference/system-tables/processors_profile_log",
- "reference/system-tables/projection_parts",
- "reference/system-tables/projection_parts_columns",
- "reference/system-tables/projections",
- "reference/system-tables/query_cache",
- "reference/system-tables/query_condition_cache",
- "reference/system-tables/query_log",
- "reference/system-tables/query_metric_log",
- "reference/system-tables/query_thread_log",
- "reference/system-tables/query_views_log",
- "reference/system-tables/quota_limits",
- "reference/system-tables/quota_usage",
- "reference/system-tables/quotas",
- "reference/system-tables/quotas_usage",
- "reference/system-tables/remote_data_paths",
- "reference/system-tables/replicas",
- "reference/system-tables/replicated_fetches",
- "reference/system-tables/replicated_merge_tree_settings",
- "reference/system-tables/replication_queue",
- "reference/system-tables/resources",
- "reference/system-tables/rocksdb",
- "reference/system-tables/role_grants",
- "reference/system-tables/roles",
- "reference/system-tables/row_policies",
- "reference/system-tables/s3_queue_settings",
- "reference/system-tables/s3queue_log",
- "reference/system-tables/s3queue_metadata_cache",
- "reference/system-tables/scheduler",
- "reference/system-tables/schema_inference_cache",
- "reference/system-tables/server_settings",
- "reference/system-tables/session_log",
- "reference/system-tables/settings",
- "reference/system-tables/settings_changes",
- "reference/system-tables/settings_profile_elements",
- "reference/system-tables/settings_profiles",
- "reference/system-tables/stack_trace",
- "reference/system-tables/storage_policies",
- "reference/system-tables/symbols",
- "reference/system-tables/system_warnings",
- "reference/system-tables/table_engines",
- "reference/system-tables/table_functions",
- "reference/system-tables/tables",
- "reference/system-tables/text_log",
- "reference/system-tables/time_zones",
- "reference/system-tables/tokenizers",
- "reference/system-tables/trace_log",
- "reference/system-tables/transactions",
- "reference/system-tables/transactions_info_log",
- "reference/system-tables/unicode",
- "reference/system-tables/user_defined_functions",
- "reference/system-tables/user_directories",
- "reference/system-tables/user_processes",
- "reference/system-tables/users",
- "reference/system-tables/view_refreshes",
- "reference/system-tables/warnings",
- "reference/system-tables/workloads",
- "reference/system-tables/zeros",
- "reference/system-tables/zeros_mt",
- "reference/system-tables/zookeeper",
- "reference/system-tables/zookeeper_info",
- "reference/system-tables/zookeeper_connection",
- "reference/system-tables/zookeeper_connection_log",
- "reference/system-tables/zookeeper_log",
- "reference/system-tables/zookeeper_watches"
- ]
- },
- {
- "group": "Data Lakes",
- "root": "reference/datalakes",
- "pages": []
- }
- ]
+ "$ref": "core/reference/navigation.json"
}
]
},
@@ -1834,672 +72,13 @@
"href": "#"
},
{
- "item": "ClickHouse Cloud",
- "icon": "/images/icons/icon-clickhouse-cloud.svg",
- "groups": [
- {
- "group": "ClickHouse Cloud",
- "pages": [
- {
- "group": "Get started",
- "root": "products/cloud/getting-started/cloud-get-started",
- "pages": [
- "products/cloud/getting-started/intro",
- "products/cloud/getting-started/resource-tour"
- ]
- },
- {
- "group": "Features",
- "pages": [
- "products/cloud/features/cloud-tiers",
- "products/cloud/features/cli",
- "products/cloud/features/integrations",
- "products/cloud/features/data-catalogs",
- "products/cloud/reference/architecture",
- "products/cloud/reference/supported-regions",
- {
- "group": "SQL console",
- "expanded": false,
- "pages": [
- "products/cloud/features/sql-console-features/sql-console",
- "products/cloud/features/sql-console-features/query-insights",
- "products/cloud/features/sql-console-features/query-endpoints",
- "products/cloud/features/sql-console-features/dashboards",
- "products/cloud/features/sql-console-features/hyperdx",
- "products/cloud/features/sql-console-features/user-defined-functions"
- ]
- },
- {
- "group": "Infrastructure",
- "expanded": false,
- "pages": [
- {
- "group": "Automatic scaling",
- "root": "products/cloud/features/autoscaling/overview",
- "pages": [
- "products/cloud/features/autoscaling/vertical",
- "products/cloud/features/autoscaling/horizontal",
- "products/cloud/features/autoscaling/make-before-break",
- "products/cloud/features/autoscaling/idling",
- "products/cloud/features/autoscaling/scaling-recommendations",
- "products/cloud/features/autoscaling/scheduled-scaling"
- ]
- },
- "products/cloud/features/infrastructure/parallel-replicas",
- "products/cloud/features/infrastructure/deployment-options",
- "products/cloud/features/infrastructure/replica-aware-routing",
- "products/cloud/features/infrastructure/shared-catalog",
- "products/cloud/features/infrastructure/shared-merge-tree",
- "products/cloud/features/infrastructure/warehouses"
- ]
- },
- {
- "group": "Admin",
- "expanded": false,
- "pages": [
- {
- "group": "Cloud API",
- "pages": [
- "products/cloud/features/admin-features/api/api-overview",
- "products/cloud/features/admin-features/api/openapi",
- "products/cloud/features/admin-features/api/postman"
- ]
- },
- "products/cloud/features/admin-features/upgrades"
- ]
- },
- "products/cloud/features/security",
- {
- "group": "Monitoring",
- "expanded": false,
- "pages": [
- "products/cloud/features/monitoring/overview",
- "products/cloud/features/monitoring/cloud-console",
- "products/cloud/features/monitoring/advanced-dashboard",
- "products/cloud/features/monitoring/notifications",
- "products/cloud/features/monitoring/prometheus",
- "products/cloud/features/monitoring/system-tables",
- "products/cloud/features/monitoring/integrations"
- ]
- },
- {
- "group": "Backups",
- "root": "products/cloud/features/backups/overview",
- "pages": [
- "products/cloud/features/backups/faq"
- ]
- },
- "products/cloud/features/support",
- {
- "group": "AI/ML",
- "expanded": false,
- "pages": [
- "products/cloud/features/ai-ml/index",
- "products/cloud/features/ai-ml/ask-ai",
- "products/cloud/features/ai-ml/langfuse",
- "products/cloud/features/ai-ml/remote-mcp",
- "products/cloud/features/ai-ml/model-developer-terms"
- ]
- }
- ]
- },
- {
- "group": "Cloud reference",
- "pages": [
- "products/cloud/reference/service-uptime",
- "products/cloud/reference/account-close",
- "products/cloud/reference/security/console-roles",
- "products/cloud/reference/security/audit-logging",
- "products/cloud/reference/security/compliance-overview",
- "products/cloud/reference/security/ai-compliance",
- "products/cloud/reference/personal-data-access"
- ]
- },
- {
- "group": "Billing",
- "pages": [
- "products/cloud/reference/billing/billing-overview",
- {
- "group": "Marketplace",
- "expanded": false,
- "pages": [
- "products/cloud/reference/billing/marketplace/overview",
- "products/cloud/reference/billing/marketplace/aws-marketplace-committed",
- "products/cloud/reference/billing/marketplace/aws-marketplace-payg",
- "products/cloud/reference/billing/marketplace/azure-marketplace-committed",
- "products/cloud/reference/billing/marketplace/azure-marketplace-payg",
- "products/cloud/reference/billing/marketplace/gcp-marketplace-committed",
- "products/cloud/reference/billing/marketplace/gcp-marketplace-payg",
- "products/cloud/reference/billing/marketplace/migrate-marketplace-payg-committed"
- ]
- },
- {
- "group": "ClickPipes",
- "expanded": false,
- "pages": [
- "products/cloud/reference/billing/clickpipes/clickpipes-for-cdc",
- "products/cloud/reference/billing/clickpipes/clickpipes-for-streaming-and-object-storage"
- ]
- },
- "products/cloud/reference/billing/network-data-transfer",
- "products/cloud/reference/billing/payment-thresholds",
- "products/cloud/reference/billing/managing-payment-methods",
- "products/cloud/reference/billing/billing-compliance"
- ]
- },
- {
- "group": "Guides",
- "pages": [
- {
- "group": "Best practices",
- "pages": [
- "products/cloud/guides/best-practices/multitenancy",
- "products/cloud/guides/best-practices/usagelimits"
- ]
- },
- {
- "group": "General",
- "expanded": false,
- "pages": [
- "products/cloud/guides/cloud-compatibility",
- "products/cloud/guides/production-readiness"
- ]
- },
- {
- "group": "Migration",
- "expanded": false,
- "pages": [
- "products/cloud/guides/migration/upload-a-csv-file",
- "products/cloud/guides/migration/oss-to-cloud-backup-restore"
- ]
- },
- {
- "group": "SQL console",
- "expanded": false,
- "pages": [
- "products/cloud/guides/sql-console/connection-details",
- "products/cloud/guides/sql-console/query-endpoints"
- ]
- },
- {
- "group": "Backups",
- "expanded": false,
- "pages": [
- "products/cloud/guides/backups/review-and-restore-backups",
- "products/cloud/guides/backups/configurable-backups",
- {
- "group": "Bring Your Own Backup",
- "expanded": false,
- "pages": [
- "products/cloud/guides/backups/bring-your-own-backup/export-backups-to-own-cloud-account",
- "products/cloud/guides/backups/bring-your-own-backup/backup-restore-from-ui",
- "products/cloud/guides/backups/bring-your-own-backup/backup-restore-using-commands"
- ]
- }
- ]
- },
- {
- "group": "Data sources",
- "expanded": false,
- "pages": [
- "products/cloud/guides/data-sources/cloud-endpoints-api",
- "products/cloud/guides/data-sources/accessing-s3-data-securely",
- "products/cloud/guides/data-sources/secure-azure",
- "products/cloud/guides/data-sources/secure-gcs",
- "products/cloud/guides/data-sources/accessing-iceberg-data-securely"
- ]
- },
- {
- "group": "Infrastructure",
- "expanded": false,
- "pages": [
- {
- "group": "Deployment modes",
- "expanded": false,
- "pages": [
- "products/cloud/guides/infrastructure/deployment-options/clickhouse-private",
- "products/cloud/guides/infrastructure/deployment-options/clickhouse-government",
- "products/cloud/guides/infrastructure/deployment-options/byoc/overview"
- ]
- }
- ]
- },
- {
- "group": "Security",
- "expanded": false,
- "pages": [
- {
- "group": "Cloud access management",
- "expanded": false,
- "pages": [
- "products/cloud/guides/security/cloud-access-management/manage-my-account",
- "products/cloud/guides/security/cloud-access-management/manage-cloud-users",
- "products/cloud/guides/security/cloud-access-management/manage-custom-roles",
- "products/cloud/guides/security/cloud-access-management/manage-sql-console-role-assignments",
- "products/cloud/guides/security/cloud-access-management/manage-database-users",
- "products/cloud/guides/security/cloud-access-management/saml-sso-setup",
- "products/cloud/guides/security/cloud-access-management/common-access-management-queries",
- "products/cloud/guides/security/cloud-access-management/manage-database-service-accounts",
- "products/cloud/guides/security/saml-sso-removal"
- ]
- },
- {
- "group": "Connectivity",
- "expanded": false,
- "pages": [
- "products/cloud/guides/security/connectivity/setting-ip-filters",
- {
- "group": "Private networking",
- "expanded": false,
- "pages": [
- "products/cloud/guides/security/connectivity/private-networking/aws-privatelink",
- "products/cloud/guides/security/connectivity/private-networking/gcp-private-service-connect",
- "products/cloud/guides/security/connectivity/private-networking/azure-privatelink"
- ]
- }
- ]
- },
- {
- "group": "Data security",
- "expanded": false,
- "pages": [
- "products/cloud/guides/security/data-masking",
- "products/cloud/guides/security/cmek",
- "products/cloud/guides/security/cmek-migration"
- ]
- },
- {
- "group": "Compliance",
- "expanded": false,
- "pages": [
- "products/cloud/guides/security/compliance/hipaa-onboarding",
- "products/cloud/guides/security/compliance/pci-onboarding"
- ]
- }
- ]
- }
- ]
- },
- {
- "group": "API reference",
- "openapi": "api-reference/cloud/cloud-openapi.json"
- }
- ]
- },
- {
- "group": "ClickHouse Private",
- "pages": [
- {
- "group": "Overview",
- "pages": [
- "products/clickhouse-private/overview/overview",
- "products/clickhouse-private/overview/versions",
- "products/clickhouse-private/overview/breaking-changes"
- ]
- },
- {
- "group": "Deployment",
- "pages": [
- "products/clickhouse-private/deployment/aws",
- "products/clickhouse-private/deployment/gcp",
- "products/clickhouse-private/deployment/bare-metal",
- "products/clickhouse-private/deployment/government"
- ]
- },
- {
- "group": "Management",
- "pages": [
- "products/clickhouse-private/management/operational-guide",
- "products/clickhouse-private/management/api",
- "products/clickhouse-private/management/howto-guides",
- "products/clickhouse-private/management/faq"
- ]
- }
- ]
- },
- {
- "group": "Bring Your Own Cloud",
- "pages": [
- {
- "group": "Overview",
- "pages": [
- "products/bring-your-own-cloud/overview/overview",
- "products/bring-your-own-cloud/overview/architecture"
- ]
- },
- {
- "group": "Configuration",
- "pages": [
- "products/bring-your-own-cloud/configuration/configurations",
- "products/bring-your-own-cloud/configuration/connect",
- "products/bring-your-own-cloud/configuration/operations"
- ]
- },
- {
- "group": "Onboarding",
- "pages": [
- "products/bring-your-own-cloud/onboarding/aws",
- "products/bring-your-own-cloud/onboarding/standard",
- {
- "group": "Customization",
- "pages": [
- "products/bring-your-own-cloud/onboarding/customization-aws",
- "products/bring-your-own-cloud/onboarding/customization-gcp"
- ]
- },
- {
- "group": "Network",
- "root": "products/bring-your-own-cloud/onboarding/network",
- "pages": [
- "products/bring-your-own-cloud/onboarding/network-aws",
- "products/bring-your-own-cloud/onboarding/network-gcp"
- ]
- },
- "products/bring-your-own-cloud/onboarding/new-region",
- "products/bring-your-own-cloud/onboarding/azure-private-preview"
- ]
- },
- {
- "group": "Reference",
- "pages": [
- "products/bring-your-own-cloud/reference/network-security",
- "products/bring-your-own-cloud/reference/privilege",
- "products/bring-your-own-cloud/reference/clickhouse-data-access",
- "products/bring-your-own-cloud/reference/observability-aws",
- "products/bring-your-own-cloud/reference/billable-aws-services",
- "products/bring-your-own-cloud/reference/cost-model-aws",
- "products/bring-your-own-cloud/reference/aws-service-limits",
- "products/bring-your-own-cloud/reference/faq",
- "products/bring-your-own-cloud/reference/faq-aws"
- ]
- }
- ]
- }
- ]
+ "$ref": "products/cloud/navigation.json"
},
{
- "item": "Managed Postgres",
- "icon": "/images/icons/icon-postgres.svg",
- "groups": [
- {
- "group": "Get started",
- "pages": [
- "products/managed-postgres/overview",
- "products/managed-postgres/quickstart"
- ]
- },
- {
- "group": "Features",
- "pages": [
- "products/managed-postgres/connection",
- "products/managed-postgres/settings",
- "products/managed-postgres/scaling",
- "products/managed-postgres/security",
- "products/managed-postgres/high-availability",
- "products/managed-postgres/read-replicas",
- "products/managed-postgres/backup-and-restore",
- "products/managed-postgres/extensions",
- "products/managed-postgres/upgrades",
- "products/managed-postgres/openapi"
- ]
- },
- {
- "group": "Benchmarks",
- "pages": [
- "products/managed-postgres/benchmarks"
- ]
- },
- {
- "group": "ClickHouse Integration",
- "pages": [
- "products/managed-postgres/clickhouse-integration"
- ]
- },
- {
- "group": "Migrations",
- "pages": [
- "products/managed-postgres/migrations/pg_dump-pg_restore",
- "products/managed-postgres/migrations/logical-replication",
- "products/managed-postgres/migrations/peerdb",
- "products/managed-postgres/migrations/data-validation",
- "products/managed-postgres/migrations/clickhouse-cloud"
- ]
- },
- {
- "group": "Monitoring",
- "pages": [
- "products/managed-postgres/monitoring/overview",
- "products/managed-postgres/monitoring/dashboard",
- "products/managed-postgres/monitoring/metrics",
- "products/managed-postgres/monitoring/prometheus",
- "products/managed-postgres/monitoring/query-insights"
- ]
- },
- {
- "group": "FAQ",
- "pages": [
- "products/managed-postgres/faq"
- ]
- }
- ]
+ "$ref": "products/managed-postgres/navigation.json"
},
{
- "item": "ClickStack",
- "icon": "/images/icons/icon-clickstack.svg",
- "groups": [
- {
- "group": "Get started",
- "pages": [
- "products/clickstack/overview",
- {
- "group": "Getting started",
- "root": "products/clickstack/getting-started/index",
- "pages": [
- "products/clickstack/getting-started/managed",
- "products/clickstack/getting-started/oss"
- ]
- },
- {
- "group": "Sample datasets",
- "pages": [
- "products/clickstack/example-datasets/sample-data",
- "products/clickstack/example-datasets/kubernetes",
- "products/clickstack/example-datasets/local-data",
- "products/clickstack/example-datasets/remote-demo-data",
- "products/clickstack/example-datasets/session-replay"
- ]
- },
- "products/clickstack/architecture",
- "products/clickstack/faq"
- ]
- },
- {
- "group": "Features",
- "pages": [
- {
- "group": "Deployment",
- "pages": [
- {
- "group": "Open Source",
- "root": "products/clickstack/deployment/oss",
- "pages": [
- "products/clickstack/deployment/all-in-one",
- {
- "group": "Helm",
- "pages": [
- {
- "group": "v2.x",
- "root": "products/clickstack/deployment/helm",
- "pages": [
- "products/clickstack/deployment/helm-configuration",
- "products/clickstack/deployment/helm-deployment-options",
- "products/clickstack/deployment/helm-cloud",
- "products/clickstack/deployment/helm-additional-manifests",
- "products/clickstack/deployment/helm-upgrade"
- ]
- },
- {
- "group": "v1.x (deprecated)",
- "root": "products/clickstack/deployment/helm-v1",
- "pages": [
- "products/clickstack/deployment/helm-configuration-v1",
- "products/clickstack/deployment/helm-deployment-options-v1",
- "products/clickstack/deployment/helm-cloud-v1"
- ]
- }
- ]
- },
- "products/clickstack/deployment/docker-compose",
- "products/clickstack/deployment/hyperdx-only",
- "products/clickstack/deployment/local-mode-only",
- "products/clickstack/deployment/clickhouse-embedded"
- ]
- },
- "products/clickstack/deployment/managed"
- ]
- },
- "products/clickstack/features/search",
- {
- "group": "Dashboards",
- "root": "products/clickstack/features/dashboards/overview",
- "pages": [
- "products/clickstack/features/dashboards/dashboard-templates",
- "products/clickstack/features/dashboards/sql-visualizations"
- ]
- },
- "products/clickstack/notebooks",
- "products/clickstack/text-to-chart",
- "products/clickstack/features/event-patterns",
- "products/clickstack/features/event-deltas",
- "products/clickstack/features/alerts",
- "products/clickstack/service-maps",
- "products/clickstack/features/session-replay",
- {
- "group": "Demo days",
- "root": "products/clickstack/demo-days/index",
- "pages": [
- {
- "group": "2026",
- "pages": [
- "products/clickstack/demo-days/2026/2026-04-03",
- "products/clickstack/demo-days/2026/2026-04-10",
- "products/clickstack/demo-days/2026/2026-04-17",
- "products/clickstack/demo-days/2026/2026-05-08"
- ]
- }
- ]
- }
- ]
- },
- {
- "group": "Managing ClickStack",
- "expanded": true,
- "root": "products/clickstack/managing",
- "pages": [
- "products/clickstack/managing/admin",
- "products/clickstack/managing/estimating-resources",
- "products/clickstack/managing/materialized-views",
- "products/clickstack/managing/performance-tuning",
- "products/clickstack/managing/production",
- "products/clickstack/managing/rbac"
- ]
- },
- {
- "group": "Guides",
- "pages": [
- {
- "group": "Ingesting data",
- "pages": [
- "products/clickstack/ingesting-data/overview",
- "products/clickstack/ingesting-data/opentelemetry",
- "products/clickstack/ingesting-data/vector",
- "products/clickstack/ingesting-data/collector",
- "products/clickstack/ingesting-data/schemas",
- "products/clickstack/ingesting-data/schema/map-vs-json",
- "products/clickstack/ingesting-data/trace-sampling",
- {
- "group": "Integrations",
- "pages": [
- "products/clickstack/integration-examples/nginx-logs",
- "products/clickstack/integration-examples/nginx-traces",
- "products/clickstack/integration-examples/redis-logs",
- "products/clickstack/integration-examples/redis-metrics",
- "products/clickstack/integration-examples/cloudwatch",
- "products/clickstack/integration-examples/aws-lambda",
- {
- "group": "Host logs",
- "pages": [
- "products/clickstack/integration-examples/host-logs",
- "products/clickstack/integration-examples/host-logs/ec2"
- ]
- },
- "products/clickstack/integration-examples/jvm-metrics",
- "products/clickstack/integration-examples/kafka-metrics",
- "products/clickstack/integration-examples/kubernetes",
- "products/clickstack/integration-examples/mysql",
- "products/clickstack/integration-examples/nodejs-traces",
- "products/clickstack/integration-examples/postgres-logs",
- "products/clickstack/integration-examples/postgres-metrics",
- "products/clickstack/integration-examples/systemd",
- "products/clickstack/integration-examples/temporal",
- "products/clickstack/integration-examples/cloudflare",
- "products/clickstack/integration-examples/kafka-logs",
- "products/clickstack/integration-examples/mongodb-logs"
- ]
- },
- {
- "group": "Language SDKs",
- "pages": [
- "products/clickstack/ingesting-data/sdks/browser",
- "products/clickstack/ingesting-data/sdks/nodejs",
- "products/clickstack/ingesting-data/sdks/python",
- "products/clickstack/ingesting-data/sdks/golang",
- "products/clickstack/ingesting-data/sdks/java",
- "products/clickstack/ingesting-data/sdks/ruby",
- "products/clickstack/ingesting-data/sdks/elixir",
- "products/clickstack/ingesting-data/sdks/deno",
- "products/clickstack/ingesting-data/sdks/nestjs",
- "products/clickstack/ingesting-data/sdks/nextjs",
- "products/clickstack/ingesting-data/sdks/react-native",
- "products/clickstack/ingesting-data/sdks/aws-lambda"
- ]
- }
- ]
- },
- {
- "group": "Migration guides",
- "expanded": true,
- "pages": [
- {
- "group": "Migrating from Elastic",
- "pages": [
- "products/clickstack/migration/elastic/intro",
- "products/clickstack/migration/elastic/concepts",
- "products/clickstack/migration/elastic/types",
- "products/clickstack/migration/elastic/search",
- "products/clickstack/migration/elastic/migrating-data",
- "products/clickstack/migration/elastic/migrating-agents",
- "products/clickstack/migration/elastic/migrating-sdks"
- ]
- }
- ]
- },
- "products/clickstack/ttl"
- ]
- },
- {
- "group": "Integration partners",
- "root": "products/clickstack/integration-partners/index",
- "pages": [
- "products/clickstack/integration-partners/bindplane"
- ]
- },
- {
- "group": "API reference",
- "root": "products/clickstack/api-reference",
- "openapi": "api-reference/hyperdx/hyperdx-openapi.json"
- }
- ]
+ "$ref": "products/clickstack/navigation.json"
},
{
"item": "LangFuse",
@@ -2512,98 +91,10 @@
"href": "#"
},
{
- "item": "Agentic Data Stack",
- "icon": "/images/icons/icon-agentic-data-stack.svg",
- "groups": [
- {
- "group": "Overview",
- "pages": [
- "products/agentic-data-stack/overview"
- ]
- }
- ]
+ "$ref": "products/agentic-data-stack/navigation.json"
},
{
- "item": "chDB",
- "icon": "/images/icons/icon-chdb.svg",
- "groups": [
- {
- "group": "Get started",
- "pages": [
- "products/chdb/index",
- "products/chdb/getting-started"
- ]
- },
- {
- "group": "Language integrations",
- "pages": [
- "products/chdb/install/python",
- "products/chdb/install/nodejs",
- "products/chdb/install/go",
- "products/chdb/install/rust",
- "products/chdb/install/bun",
- "products/chdb/install/c"
- ]
- },
- {
- "group": "DataStore",
- "pages": [
- "products/chdb/datastore/index",
- "products/chdb/datastore/quickstart",
- "products/chdb/datastore/factory-methods",
- "products/chdb/datastore/query-building",
- "products/chdb/datastore/aggregation",
- "products/chdb/datastore/accessors",
- "products/chdb/datastore/io",
- "products/chdb/datastore/execution-model",
- "products/chdb/datastore/pandas-compat",
- "products/chdb/datastore/class-reference"
- ]
- },
- {
- "group": "Configuration",
- "pages": [
- "products/chdb/configuration/index",
- "products/chdb/configuration/execution-engine",
- "products/chdb/configuration/function-config",
- "products/chdb/configuration/performance-mode"
- ]
- },
- {
- "group": "Debugging",
- "pages": [
- "products/chdb/debugging/index",
- "products/chdb/debugging/explain",
- "products/chdb/debugging/logging",
- "products/chdb/debugging/profiling"
- ]
- },
- {
- "group": "Developer guides",
- "pages": [
- "products/chdb/guides/jupysql",
- "products/chdb/guides/querying-pandas",
- "products/chdb/guides/querying-apache-arrow",
- "products/chdb/guides/querying-s3-bucket",
- "products/chdb/guides/querying-parquet",
- "products/chdb/guides/query-remote-clickhouse",
- "products/chdb/guides/clickhouse-local",
- "products/chdb/guides/migration-from-pandas",
- "products/chdb/guides/pandas-cookbook",
- "products/chdb/guides/pandas-differences",
- "products/chdb/guides/pandas-performance",
- "products/chdb/guides/pandas-to-sql"
- ]
- },
- {
- "group": "Technical reference",
- "pages": [
- "products/chdb/reference/data-formats",
- "products/chdb/reference/sql-reference",
- "products/chdb/api/python"
- ]
- }
- ]
+ "$ref": "products/chdb/navigation.json"
},
{
"$ref": "products/kubernetes-operator/navigation.json"
@@ -2614,514 +105,13 @@
"tab": "Integrations",
"menu": [
{
- "item": "ClickPipes",
- "icon": "/images/icons/icon-clickpipes.svg",
- "root": "integrations/clickpipes/home",
- "groups": [
- {
- "group": "ClickPipes for Object Storage",
- "root": "integrations/clickpipes/home",
- "pages": [
- {
- "group": "Amazon S3",
- "pages": [
- "integrations/clickpipes/object-storage/amazon-s3/overview",
- "integrations/clickpipes/object-storage/amazon-s3/get-started",
- "integrations/clickpipes/object-storage/amazon-s3/unordered-mode"
- ]
- },
- {
- "group": "Google Cloud Storage",
- "pages": [
- "integrations/clickpipes/object-storage/google-cloud-storage/overview",
- "integrations/clickpipes/object-storage/google-cloud-storage/get-started",
- "integrations/clickpipes/object-storage/google-cloud-storage/unordered-mode"
- ]
- },
- {
- "group": "Azure Blob Storage",
- "pages": [
- "integrations/clickpipes/object-storage/azure-blob-storage/overview",
- "integrations/clickpipes/object-storage/azure-blob-storage/get-started"
- ]
- }
- ]
- },
- {
- "group": "ClickPipes for Postgres",
- "pages": [
- "integrations/clickpipes/postgres/index",
- "integrations/clickpipes/postgres/deduplication",
- "integrations/clickpipes/postgres/ordering-keys",
- "integrations/clickpipes/postgres/toast",
- "integrations/clickpipes/postgres/connecting-to-postgresql",
- "integrations/clickpipes/postgres/inserting-data",
- "integrations/clickpipes/postgres/schema-changes",
- "integrations/clickpipes/postgres/faq",
- "integrations/clickpipes/postgres/parallel-initial-load",
- "integrations/clickpipes/postgres/lifecycle",
- "integrations/clickpipes/postgres/auth",
- {
- "group": "Operations",
- "pages": [
- "integrations/clickpipes/postgres/add-table",
- "integrations/clickpipes/postgres/pause-and-resume",
- "integrations/clickpipes/postgres/remove-table",
- "integrations/clickpipes/postgres/table-resync",
- "integrations/clickpipes/postgres/resync",
- "integrations/clickpipes/postgres/controlling-sync",
- "integrations/clickpipes/postgres/scaling"
- ]
- },
- {
- "group": "Source",
- "pages": [
- "integrations/clickpipes/postgres/source/alloydb",
- "integrations/clickpipes/postgres/source/rds",
- "integrations/clickpipes/postgres/source/aurora",
- "integrations/clickpipes/postgres/source/supabase",
- "integrations/clickpipes/postgres/source/google-cloudsql",
- "integrations/clickpipes/postgres/source/azure-flexible-server-postgres",
- "integrations/clickpipes/postgres/source/neon-postgres",
- "integrations/clickpipes/postgres/source/crunchy-postgres",
- "integrations/clickpipes/postgres/source/generic",
- "integrations/clickpipes/postgres/source/timescale",
- "integrations/clickpipes/postgres/source/planetscale"
- ]
- }
- ]
- },
- {
- "group": "ClickPipes for Kafka",
- "pages": [
- "integrations/clickpipes/kafka/index",
- "integrations/clickpipes/kafka/create-kafka-clickpipe",
- "integrations/clickpipes/kafka/schema-registries",
- "integrations/clickpipes/kafka/reference",
- "integrations/clickpipes/kafka/best-practices",
- "integrations/clickpipes/kafka/faq"
- ]
- },
- {
- "group": "ClickPipes for Kinesis",
- "pages": [
- "integrations/clickpipes/kinesis/overview",
- "integrations/clickpipes/kinesis/index",
- "integrations/clickpipes/kinesis/auth"
- ]
- },
- {
- "group": "ClickPipes for MySQL",
- "pages": [
- "integrations/clickpipes/mysql/index",
- "integrations/clickpipes/mysql/faq",
- "integrations/clickpipes/mysql/datatypes",
- "integrations/clickpipes/mysql/parallel-initial-load",
- "integrations/clickpipes/mysql/schema-changes",
- "integrations/clickpipes/mysql/lifecycle",
- {
- "group": "Operations",
- "pages": [
- "integrations/clickpipes/mysql/add-table",
- "integrations/clickpipes/mysql/pause-and-resume",
- "integrations/clickpipes/mysql/remove-table",
- "integrations/clickpipes/mysql/table-resync",
- "integrations/clickpipes/mysql/resync",
- "integrations/clickpipes/mysql/controlling-sync",
- "integrations/clickpipes/mysql/scaling"
- ]
- },
- {
- "group": "Source",
- "pages": [
- "integrations/clickpipes/mysql/source/rds",
- "integrations/clickpipes/mysql/source/aurora",
- "integrations/clickpipes/mysql/source/gcp",
- "integrations/clickpipes/mysql/source/azure-flexible-server-mysql",
- "integrations/clickpipes/mysql/source/generic",
- "integrations/clickpipes/mysql/source/rds-maria",
- "integrations/clickpipes/mysql/source/generic-maria"
- ]
- }
- ]
- },
- {
- "group": "ClickPipes for MongoDB",
- "pages": [
- "integrations/clickpipes/mongodb/index",
- "integrations/clickpipes/mongodb/datatypes",
- "integrations/clickpipes/mongodb/quickstart",
- "integrations/clickpipes/mongodb/lifecycle",
- "integrations/clickpipes/mongodb/faq",
- {
- "group": "Operations",
- "pages": [
- "integrations/clickpipes/mongodb/add-table",
- "integrations/clickpipes/mongodb/remove-table",
- "integrations/clickpipes/mongodb/pause-and-resume",
- "integrations/clickpipes/mongodb/table-resync",
- "integrations/clickpipes/mongodb/resync",
- "integrations/clickpipes/mongodb/controlling-sync",
- "integrations/clickpipes/mongodb/scaling"
- ]
- },
- {
- "group": "Source",
- "pages": [
- "integrations/clickpipes/mongodb/source/atlas",
- "integrations/clickpipes/mongodb/source/generic",
- "integrations/clickpipes/mongodb/source/documentdb"
- ]
- }
- ]
- },
- {
- "group": "ClickPipes for BigQuery",
- "pages": [
- "integrations/clickpipes/bigquery/overview",
- "integrations/clickpipes/bigquery/get-started"
- ]
- },
- {
- "group": "Programmatic access",
- "pages": [
- "integrations/clickpipes/programmatic-access/openapi",
- "integrations/clickpipes/programmatic-access/terraform"
- ]
- },
- {
- "group": "Other",
- "pages": [
- "integrations/clickpipes/aws-privatelink",
- "integrations/clickpipes/dynamodb",
- "integrations/clickpipes/monitoring"
- ]
- }
- ]
+ "$ref": "integrations/clickpipes/navigation.json"
},
{
- "item": "Language clients",
- "icon": "/images/icons/icon-language-clients.svg",
- "groups": [
- {
- "group": "Home",
- "icon": "house",
- "root": "integrations/language-clients/index",
- "pages": []
- },
- {
- "group": "JavaScript",
- "icon": "/images/integrations/logos/node_js.svg",
- "root": "integrations/language-clients/js",
- "pages": []
- },
- {
- "group": "Python",
- "icon": "/images/integrations/logos/notext-python.svg",
- "root": "integrations/language-clients/python/index",
- "expanded": true,
- "pages": [
- "integrations/language-clients/python/driver-api",
- "integrations/language-clients/python/additional-options",
- "integrations/language-clients/python/advanced-querying",
- "integrations/language-clients/python/advanced-inserting",
- "integrations/language-clients/python/advanced-usage",
- "integrations/language-clients/python/sqlalchemy"
- ]
- },
- {
- "group": "Go",
- "icon": "/images/integrations/logos/golang.svg",
- "root": "integrations/language-clients/go/index",
- "expanded": true,
- "pages": [
- "integrations/language-clients/go/clickhouse-api",
- "integrations/language-clients/go/configuration",
- "integrations/language-clients/go/config-reference",
- "integrations/language-clients/go/data-types",
- "integrations/language-clients/go/database-sql-api"
- ]
- },
- {
- "group": "Java",
- "expanded": true,
- "icon": "/images/integrations/logos/java.svg",
- "root": "integrations/language-clients/java/index",
- "pages": [
- "integrations/language-clients/java/client",
- "integrations/language-clients/java/jdbc",
- "integrations/language-clients/java/r2dbc",
- "integrations/language-clients/java/date-time-guide"
- ]
- },
- {
- "group": "C#",
- "icon": "/images/integrations/logos/csharp.svg",
- "root": "integrations/language-clients/csharp/overview",
- "pages": []
- },
- {
- "group": "Rust",
- "icon": "/images/integrations/logos/rust.png",
- "root": "integrations/language-clients/rust",
- "pages": []
- },
- {
- "group": "C++",
- "icon": "/images/integrations/logos/logo_cpp.svg",
- "root": "integrations/language-clients/cpp",
- "pages": []
- },
- {
- "group": "Third-party clients",
- "icon": "users",
- "pages": [
- "integrations/language-clients/third-party/moose-olap",
- "integrations/language-clients/third-party/client-libraries"
- ]
- }
- ]
+ "$ref": "integrations/language-clients/navigation.json"
},
{
- "item": "Connectors",
- "icon": "/images/icons/icon-connectors.svg",
- "root": "integrations/connectors/home",
- "groups": [
- {
- "group": "Data sources",
- "pages": [
- "integrations/connectors/data-sources/index",
- {
- "group": "AWS S3",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse",
- "integrations/connectors/data-ingestion/AWS/performance",
- "integrations/connectors/data-ingestion/AWS/creating-an-s3-iam-role-and-bucket"
- ]
- },
- "integrations/connectors/data-sources/postgres",
- {
- "group": "Kafka",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/kafka/index",
- "integrations/connectors/data-ingestion/kafka/kafka-clickhouse-connect-sink",
- "integrations/connectors/data-ingestion/kafka/confluent/confluent-cloud",
- "integrations/connectors/data-ingestion/kafka/confluent/custom-connector",
- "integrations/connectors/data-ingestion/kafka/msk/index",
- "integrations/connectors/data-ingestion/kafka/kafka-vector",
- "integrations/connectors/data-ingestion/kafka/kafka-table-engine",
- "integrations/connectors/data-ingestion/kafka/confluent/index",
- "integrations/connectors/data-ingestion/kafka/confluent/kafka-connect-http",
- "integrations/connectors/data-ingestion/kafka/kafka-connect-jdbc",
- "integrations/connectors/data-ingestion/kafka/kafka-table-engine-named-collections"
- ]
- },
- "integrations/connectors/data-sources/mysql",
- "integrations/connectors/data-sources/cassandra",
- "integrations/connectors/data-sources/gcs",
- "integrations/connectors/data-ingestion/s3-minio",
- "integrations/connectors/data-ingestion/emqx/index",
- "integrations/connectors/data-ingestion/insert-local-files",
- "integrations/connectors/data-ingestion/jdbc-with-clickhouse",
- "integrations/connectors/data-ingestion/odbc-with-clickhouse"
- ]
- },
- {
- "group": "Data visualization",
- "pages": [
- "integrations/connectors/data-visualization/index",
- {
- "group": "Grafana",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-visualization/grafana/index",
- "integrations/connectors/data-visualization/grafana/query-builder",
- "integrations/connectors/data-visualization/grafana/config"
- ]
- },
- "integrations/connectors/data-visualization/lightdash-and-clickhouse",
- "integrations/connectors/data-visualization/looker-and-clickhouse",
- "integrations/connectors/data-visualization/looker-studio-and-clickhouse",
- "integrations/connectors/data-visualization/metabase-and-clickhouse",
- "integrations/connectors/data-visualization/omni-and-clickhouse",
- "integrations/connectors/data-visualization/powerbi-and-clickhouse",
- "integrations/connectors/data-visualization/quicksight-and-clickhouse",
- "integrations/connectors/data-visualization/superset-and-clickhouse",
- "integrations/connectors/data-visualization/splunk-and-clickhouse",
- {
- "group": "Tableau",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-visualization/tableau/tableau-and-clickhouse",
- "integrations/connectors/data-visualization/tableau/tableau-online-and-clickhouse",
- "integrations/connectors/data-visualization/tableau/tableau-connection-tips",
- "integrations/connectors/data-visualization/tableau/tableau-analysis-tips"
- ]
- },
- {
- "group": "Community integrations",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-visualization/community-integrations/astrato-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/chartbrew-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/databrain-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/deepnote",
- "integrations/connectors/data-visualization/community-integrations/dot-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/draxlr-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/embeddable-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/explo-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/fabi-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/hashboard-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/luzmo-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/mitzu-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/rocketbi-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/zingdata-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/querio-and-clickhouse",
- "integrations/connectors/data-visualization/community-integrations/holistics-and-clickhouse"
- ]
- }
- ]
- },
- {
- "group": "Data ingestion",
- "pages": [
- "integrations/connectors/data-ingestion/index",
- "integrations/connectors/data-ingestion/etl-tools/airbyte-and-clickhouse",
- "integrations/connectors/data-ingestion/etl-tools/apify-and-clickhouse",
- {
- "group": "Apache Spark",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/apache-spark/index",
- "integrations/connectors/data-ingestion/apache-spark/spark-native-connector",
- "integrations/connectors/data-ingestion/apache-spark/databricks",
- "integrations/connectors/data-ingestion/apache-spark/spark-jdbc"
- ]
- },
- "integrations/connectors/data-ingestion/apache-flink",
- "integrations/connectors/data-ingestion/AWS/glue",
- {
- "group": "Azure Data Factory",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/azure/azure-data-factory/index",
- "integrations/connectors/data-ingestion/azure/azure-data-factory/overview",
- "integrations/connectors/data-ingestion/azure/azure-data-factory/using-azureblobstorage",
- "integrations/connectors/data-ingestion/azure/azure-data-factory/using-http-interface"
- ]
- },
- "integrations/connectors/data-ingestion/azure/azure-synapse",
- "integrations/connectors/data-ingestion/etl-tools/apache-beam",
- {
- "group": "Google Dataflow",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/GCP/google-dataflow/dataflow",
- "integrations/connectors/data-ingestion/GCP/google-dataflow/java-runner",
- "integrations/connectors/data-ingestion/GCP/google-dataflow/templates",
- {
- "group": "Dataflow templates",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/GCP/google-dataflow/templates/bigquery-to-clickhouse"
- ]
- }
- ]
- },
- "integrations/connectors/data-ingestion/etl-tools/bladepipe-and-clickhouse",
- {
- "group": "dbt",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/etl-tools/dbt/index",
- "integrations/connectors/data-ingestion/etl-tools/dbt/features-and-configurations",
- "integrations/connectors/data-ingestion/etl-tools/dbt/materializations",
- "integrations/connectors/data-ingestion/etl-tools/dbt/materialization-materialized-view",
- "integrations/connectors/data-ingestion/etl-tools/dbt/guides"
- ]
- },
- "integrations/connectors/data-ingestion/etl-tools/dlt-and-clickhouse",
- {
- "group": "Fivetran",
- "root": "integrations/connectors/data-ingestion/etl-tools/fivetran/index",
- "pages": [
- "integrations/connectors/data-ingestion/etl-tools/fivetran/reference",
- "integrations/connectors/data-ingestion/etl-tools/fivetran/troubleshooting"
- ]
- },
- "integrations/connectors/data-ingestion/etl-tools/nifi-and-clickhouse",
- "integrations/connectors/data-ingestion/etl-tools/vector-to-clickhouse",
- {
- "group": "Streamkap",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/streamkap/streamkap-and-clickhouse",
- "integrations/connectors/data-ingestion/streamkap/sql-server-clickhouse"
- ]
- },
- {
- "group": "Community integrations",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-ingestion/community-integrations/artie-and-clickhouse",
- "integrations/connectors/data-ingestion/community-integrations/estuary"
- ]
- }
- ]
- },
- {
- "group": "Tools",
- "pages": [
- "integrations/connectors/tools/index",
- {
- "group": "SQL clients",
- "expanded": false,
- "pages": [
- "integrations/connectors/data-integrations/sql-clients/datagrip",
- "integrations/connectors/data-integrations/sql-clients/dbeaver",
- "integrations/connectors/data-integrations/sql-clients/dbvisualizer",
- "integrations/connectors/data-integrations/sql-clients/jupysql",
- "integrations/connectors/data-integrations/sql-clients/qstudio",
- "integrations/connectors/data-integrations/sql-clients/tablum",
- "integrations/connectors/data-integrations/sql-clients/marimo",
- "integrations/connectors/data-integrations/sql-clients/cli"
- ]
- },
- {
- "group": "Data integrations",
- "expanded": false,
- "pages": [
- "integrations/connectors/tools/data-integration-index",
- "integrations/connectors/data-integrations/integrations/retool",
- "integrations/connectors/data-integrations/integrations/easypanel",
- "integrations/connectors/data-integrations/integrations/middleware",
- "integrations/connectors/data-integrations/integrations/splunk",
- {
- "group": "pg_clickhouse",
- "expanded": false,
- "pages": [
- "integrations/connectors/tools/pg_clickhouse/introduction",
- "integrations/connectors/tools/pg_clickhouse/reference",
- "integrations/connectors/tools/pg_clickhouse/tutorial"
- ]
- }
- ]
- },
- {
- "group": "Misc",
- "expanded": false,
- "pages": [
- "integrations/connectors/tools/misc-index",
- "integrations/connectors/tools/gui",
- "integrations/connectors/tools/proxy",
- "integrations/connectors/tools/third-party-libraries"
- ]
- }
- ]
- }
- ]
+ "$ref": "integrations/connectors/navigation.json"
}
]
},
@@ -3129,369 +119,16 @@
"tab": "Resources",
"menu": [
{
- "item": "Support center",
- "icon": "/images/icons/icon-support-center.svg",
- "groups": [
- {
- "group": "Knowledgebase",
- "root": "resources/support-center/home",
- "pages": [
- {
- "group": "Performance & Optimization",
- "pages": [
- "resources/support-center/knowledge-base/performance-optimization/insert-select-settings-tuning",
- "resources/support-center/knowledge-base/performance-optimization/async-vs-optimize-read-in-order",
- "resources/support-center/knowledge-base/performance-optimization/check-query-processing-time-only",
- "resources/support-center/knowledge-base/performance-optimization/find-expensive-queries",
- "resources/support-center/knowledge-base/performance-optimization/finding-expensive-queries-by-memory-usage",
- "resources/support-center/knowledge-base/performance-optimization/improve-map-performance",
- "resources/support-center/knowledge-base/performance-optimization/memory-limit-exceeded-for-query",
- "resources/support-center/knowledge-base/performance-optimization/optimize-final-vs-final",
- "resources/support-center/knowledge-base/performance-optimization/query-max-execution-time",
- "resources/support-center/knowledge-base/performance-optimization/tips-tricks-optimizing-basic-data-types-in-clickhouse",
- "resources/support-center/knowledge-base/performance-optimization/why-is-my-primary-key-not-used"
- ]
- },
- {
- "group": "Cloud",
- "pages": [
- "resources/support-center/knowledge-base/cloud-services/aws-privatelink-setup-for-clickpipes",
- "resources/support-center/knowledge-base/cloud-services/aws-privatelink-setup-for-msk-clickpipes",
- "resources/support-center/knowledge-base/cloud-services/change-billing-email",
- "resources/support-center/knowledge-base/cloud-services/clickhouse-cloud-api-usage",
- "resources/support-center/knowledge-base/cloud-services/custom-dns-alias-for-instance",
- "resources/support-center/knowledge-base/cloud-services/execute-system-queries-in-cloud",
- "resources/support-center/knowledge-base/cloud-services/how-to-check-my-clickhouse-cloud-sevice-state",
- "resources/support-center/knowledge-base/cloud-services/how-to-connect-to-ch-cloud-using-ssh-keys",
- "resources/support-center/knowledge-base/cloud-services/ingest-failures-23-9-release",
- "resources/support-center/knowledge-base/cloud-services/multi-region-replication",
- "resources/support-center/knowledge-base/cloud-services/unable-to-access-cloud-service"
- ]
- },
- {
- "group": "Data Import & Export",
- "pages": [
- "resources/support-center/knowledge-base/data-import-export/cannot-append-data-to-parquet-format",
- "resources/support-center/knowledge-base/data-import-export/file-export",
- "resources/support-center/knowledge-base/data-import-export/importing-geojason-with-nested-object-array",
- "resources/support-center/knowledge-base/data-import-export/importing-and-working-with-json-array-objects",
- "resources/support-center/knowledge-base/data-import-export/ingest-parquet-files-in-s3",
- "resources/support-center/knowledge-base/data-import-export/json-import",
- "resources/support-center/knowledge-base/data-import-export/json-extract-example",
- "resources/support-center/knowledge-base/data-import-export/json-simple-example",
- "resources/support-center/knowledge-base/data-import-export/kafka-clickhouse-json",
- "resources/support-center/knowledge-base/data-import-export/kafka-to-clickhouse-setup",
- "resources/support-center/knowledge-base/data-import-export/mysql-to-parquet-csv-json",
- "resources/support-center/knowledge-base/data-import-export/parquet-to-csv-json",
- "resources/support-center/knowledge-base/data-import-export/postgresql-to-parquet-csv-json",
- "resources/support-center/knowledge-base/data-import-export/s3-export-data-year-month-folders"
- ]
- },
- {
- "group": "Configuration & Settings",
- "pages": [
- "resources/support-center/knowledge-base/configuration-settings/about-quotas-and-query-complexity",
- "resources/support-center/knowledge-base/configuration-settings/alter-user-settings-exception",
- "resources/support-center/knowledge-base/configuration-settings/change-the-prompt-in-clickhouse-client",
- "resources/support-center/knowledge-base/configuration-settings/configure-a-user-setting",
- "resources/support-center/knowledge-base/configuration-settings/configure-cap-ipc-lock-and-cap-sys-nice-in-docker",
- "resources/support-center/knowledge-base/configuration-settings/ignoring-incorrect-settings",
- "resources/support-center/knowledge-base/configuration-settings/maximum-number-of-tables-and-databases"
- ]
- },
- {
- "group": "Integrations & Client Libraries",
- "pages": [
- "resources/support-center/knowledge-base/integrations/node-js-example",
- "resources/support-center/knowledge-base/integrations/ODBC-authentication-failed-error-using-PowerBI-CH-connector",
- "resources/support-center/knowledge-base/integrations/oracle-odbc",
- "resources/support-center/knowledge-base/integrations/how-to-set-up-ch-on-docker-odbc-connect-mssql",
- "resources/support-center/knowledge-base/integrations/python-clickhouse-connect-example",
- "resources/support-center/knowledge-base/integrations/python-http-requests",
- "resources/support-center/knowledge-base/integrations/terraform-example"
- ]
- },
- {
- "group": "Troubleshooting & Errors",
- "root": "resources/support-center/troubleshooting/index",
- "pages": [
- "resources/support-center/knowledge-base/troubleshooting/certificate-verify-failed-error",
- "resources/support-center/knowledge-base/troubleshooting/connection-timeout-remote-remoteSecure",
- "resources/support-center/knowledge-base/troubleshooting/exception-too-many-parts",
- "resources/support-center/knowledge-base/troubleshooting/fix-developer-verification-error-in-macos",
- "resources/support-center/knowledge-base/troubleshooting/part-intersects-previous-part"
- ]
- },
- {
- "group": "Tables & Schema",
- "pages": [
- "resources/support-center/knowledge-base/tables-schema/add-column",
- "resources/support-center/knowledge-base/tables-schema/delete-old-data",
- "resources/support-center/knowledge-base/tables-schema/exchangeStatementToSwitchTables",
- "resources/support-center/knowledge-base/tables-schema/how-to-create-table-to-query-multiple-remote-clusters",
- "resources/support-center/knowledge-base/tables-schema/recreate-table-across-terminals",
- "resources/support-center/knowledge-base/tables-schema/schema-migration-tools",
- "resources/support-center/knowledge-base/tables-schema/search-across-node-for-tables-with-a-wildcard"
- ]
- },
- {
- "group": "Queries & SQL",
- "pages": [
- "resources/support-center/knowledge-base/queries-sql/calculate-pi-using-sql",
- "resources/support-center/knowledge-base/queries-sql/compare-resultsets",
- "resources/support-center/knowledge-base/queries-sql/comparing-metrics-between-queries",
- "resources/support-center/knowledge-base/queries-sql/filtered-aggregates",
- "resources/support-center/knowledge-base/queries-sql/how-to-filter-a-clickhouse-table-by-an-array-column",
- "resources/support-center/knowledge-base/queries-sql/how-to-insert-all-rows-from-another-table",
- "resources/support-center/knowledge-base/queries-sql/pivot",
- "resources/support-center/knowledge-base/queries-sql/useful-queries-for-troubleshooting",
- "resources/support-center/knowledge-base/queries-sql/using-array-join-to-extract-and-query-attributes"
- ]
- },
- {
- "group": "Materialized Views & Projections",
- "pages": [
- "resources/support-center/knowledge-base/materialized-views/are-materialized-views-inserted-asynchronously",
- "resources/support-center/knowledge-base/materialized-views/how-to-display-queries-using-mv",
- "resources/support-center/knowledge-base/materialized-views/how-to-use-parametrised-views",
- "resources/support-center/knowledge-base/materialized-views/projection-example"
- ]
- },
- {
- "group": "Monitoring & Debugging",
- "pages": [
- "resources/support-center/knowledge-base/monitoring-debugging/check-query-cache-in-use",
- "resources/support-center/knowledge-base/monitoring-debugging/generate-har-file",
- "resources/support-center/knowledge-base/monitoring-debugging/mapping-of-system-metrics-to-prometheus-metrics",
- "resources/support-center/knowledge-base/monitoring-debugging/outputSendLogsLevelTracesToFile",
- "resources/support-center/knowledge-base/monitoring-debugging/profiling-clickhouse-with-llvm-xray",
- "resources/support-center/knowledge-base/monitoring-debugging/send-logs-level",
- "resources/support-center/knowledge-base/monitoring-debugging/which-processes-are-currently-running",
- "resources/support-center/knowledge-base/monitoring-debugging/view-number-of-active-mutations",
- "resources/support-center/knowledge-base/monitoring-debugging/why-default-logging-verbose"
- ]
- },
- {
- "group": "Security & Access Control",
- "pages": [
- "resources/support-center/knowledge-base/security/check-users-roles",
- "resources/support-center/knowledge-base/security/common-rbac-queries",
- "resources/support-center/knowledge-base/security/remove-default-user",
- "resources/support-center/knowledge-base/security/row-column-policy",
- "resources/support-center/knowledge-base/security/windows-active-directory-to-ch-roles"
- ]
- },
- {
- "group": "Data Management",
- "pages": [
- "resources/support-center/knowledge-base/data-management/backing-up-a-specific-partition",
- "resources/support-center/knowledge-base/data-management/calculate-ratio-of-zero-sparse-serialization",
- "resources/support-center/knowledge-base/data-management/dictionaries-consistent-state",
- "resources/support-center/knowledge-base/data-management/dictionary-using-strings",
- "resources/support-center/knowledge-base/data-management/read-consistency",
- "resources/support-center/knowledge-base/data-management/when-is-ttl-applied"
- ]
- },
- {
- "group": "Setup & Installation",
- "pages": [
- "resources/support-center/knowledge-base/setup-installation/difference-between-official-builds-and-3rd-party",
- "resources/support-center/knowledge-base/setup-installation/enabling-ssl-with-lets-encrypt",
- "resources/support-center/knowledge-base/setup-installation/how-to-increase-thread-pool-size",
- "resources/support-center/knowledge-base/setup-installation/install-clickhouse-windows10",
- "resources/support-center/knowledge-base/setup-installation/llvm-clang-up-to-date",
- "resources/support-center/knowledge-base/setup-installation/production"
- ]
- },
- {
- "group": "General & FAQs",
- "root": "resources/support-center/knowledge-base/general-faqs/index",
- "pages": [
- {
- "group": "General",
- "root": "resources/support-center/knowledge-base/general-faqs/index",
- "pages": [
- "resources/support-center/knowledge-base/general-faqs/columnar-database",
- "resources/support-center/knowledge-base/general-faqs/concurrency",
- "resources/support-center/knowledge-base/general-faqs/cost-based",
- "resources/support-center/knowledge-base/general-faqs/datalake",
- "resources/support-center/knowledge-base/general-faqs/dbms-naming",
- "resources/support-center/knowledge-base/general-faqs/dependencies",
- "resources/support-center/knowledge-base/general-faqs/distributed-join",
- "resources/support-center/knowledge-base/general-faqs/federated",
- "resources/support-center/knowledge-base/general-faqs/how-do-i-contribute-code-to-clickhouse",
- "resources/support-center/knowledge-base/general-faqs/mapreduce",
- "resources/support-center/knowledge-base/general-faqs/ne-tormozit",
- "resources/support-center/knowledge-base/general-faqs/olap",
- "resources/support-center/knowledge-base/general-faqs/sql",
- "resources/support-center/knowledge-base/general-faqs/updates",
- "resources/support-center/knowledge-base/general-faqs/who-is-using-clickhouse",
- "resources/support-center/knowledge-base/general-faqs/why-recommend-clickhouse-keeper-over-zookeeper"
- ]
- },
- {
- "group": "Use Cases",
- "root": "resources/support-center/knowledge-base/general-faqs/use-cases-index",
- "pages": [
- "resources/support-center/knowledge-base/general-faqs/key-value",
- "resources/support-center/knowledge-base/general-faqs/time-series",
- "resources/support-center/knowledge-base/general-faqs/use-clickhouse-for-log-analytics",
- "resources/support-center/knowledge-base/general-faqs/vector-search"
- ]
- },
- {
- "group": "Integration",
- "root": "resources/support-center/knowledge-base/integrations/index",
- "pages": [
- "resources/support-center/knowledge-base/data-import-export/json-import",
- "resources/support-center/knowledge-base/integrations/oracle-odbc"
- ]
- },
- {
- "group": "Operations",
- "root": "resources/support-center/knowledge-base/general-faqs/operations-index",
- "pages": [
- "resources/support-center/knowledge-base/tables-schema/delete-old-data",
- "resources/support-center/knowledge-base/cloud-services/multi-region-replication",
- "resources/support-center/knowledge-base/setup-installation/production",
- "resources/support-center/knowledge-base/general-faqs/separate-storage"
- ]
- }
- ]
- },
- {
- "group": "Tips & Tricks",
- "pages": [
- "resources/support-center/tips-and-tricks/community-wisdom",
- "resources/support-center/tips-and-tricks/cost-optimization",
- "resources/support-center/tips-and-tricks/debugging-insights",
- "resources/support-center/tips-and-tricks/materialized-views",
- "resources/support-center/tips-and-tricks/performance-optimization",
- "resources/support-center/tips-and-tricks/success-stories",
- "resources/support-center/tips-and-tricks/too-many-parts"
- ]
- }
- ]
- }
- ]
+ "$ref": "resources/support-center/navigation.json"
},
{
- "item": "Contribute",
- "icon": "/images/icons/icon-contribute.svg",
- "groups": [
- {
- "group": "Introduction",
- "pages": [
- "resources/contribute/developer-instruction",
- "resources/contribute/architecture"
- ]
- },
- {
- "group": "Building",
- "pages": [
- "resources/contribute/build",
- "resources/contribute/build-osx",
- "resources/contribute/build-cross-osx",
- "resources/contribute/build-cross-arm",
- "resources/contribute/build-cross-riscv",
- "resources/contribute/build-cross-s390x",
- "resources/contribute/build-cross-loongarch",
- "resources/contribute/build-e2k"
- ]
- },
- {
- "group": "Contributing",
- "pages": [
- "resources/contribute/tests",
- "resources/contribute/continuous-integration",
- "resources/contribute/contrib",
- "resources/contribute/style",
- "resources/contribute/building-and-benchmarking-deflate-qpl",
- "resources/contribute/integrating-rust-libraries",
- "resources/contribute/profile-guided-optimization",
- "resources/contribute/backports"
- ]
- },
- {
- "group": "Roadmap",
- "pages": [
- "resources/contribute/roadmap"
- ]
- }
- ]
+ "$ref": "resources/develop-contribute/navigation.json"
},
{
- "item": "Changelogs",
- "icon": "/images/icons/icon-changelogs.svg",
- "root": "resources/changelogs/cloud/changelog",
- "groups": [
- {
- "group": "Cloud",
- "root": "resources/changelogs/cloud/index",
- "pages": [
- "resources/changelogs/cloud/changelog",
- "resources/changelogs/cloud/release-status",
- {
- "group": "Release notes",
- "pages": [
- "resources/changelogs/cloud/release-notes/26_02",
- "resources/changelogs/cloud/release-notes/25_12",
- "resources/changelogs/cloud/release-notes/25_10",
- "resources/changelogs/cloud/release-notes/25_08",
- "resources/changelogs/cloud/release-notes/25_06",
- "resources/changelogs/cloud/release-notes/25_04",
- "resources/changelogs/cloud/release-notes/24_12",
- "resources/changelogs/cloud/release-notes/24_10",
- "resources/changelogs/cloud/release-notes/24_08",
- "resources/changelogs/cloud/release-notes/24_06",
- "resources/changelogs/cloud/release-notes/24_05",
- "resources/changelogs/cloud/release-notes/24_02"
- ]
- },
- {
- "group": "Archive",
- "pages": [
- "resources/changelogs/cloud/archive/2025",
- "resources/changelogs/cloud/archive/2024",
- "resources/changelogs/cloud/archive/2023",
- "resources/changelogs/cloud/archive/2022"
- ]
- }
- ]
- },
- {
- "group": "Self-managed",
- "pages": [
- "resources/changelogs/oss/2026",
- "resources/changelogs/oss/2025",
- "resources/changelogs/oss/2024",
- "resources/changelogs/oss/2023",
- "resources/changelogs/oss/2022",
- "resources/changelogs/oss/2021",
- "resources/changelogs/oss/2020",
- "resources/changelogs/oss/2019",
- "resources/changelogs/oss/2018",
- "resources/changelogs/oss/2017",
- "resources/changelogs/security-changelog"
- ]
- }
- ]
+ "$ref": "resources/changelogs/navigation.json"
},
{
- "item": "About",
- "icon": "/images/icons/icon-about.svg",
- "groups": [
- {
- "group": "About ClickHouse",
- "root": "resources/about/index",
- "pages": [
- "resources/about/history",
- "resources/about/adopters",
- "resources/about/cloud",
- "resources/about/support"
- ]
- }
- ]
+ "$ref": "resources/about/navigation.json"
}
]
}
@@ -3533,2679 +170,13 @@
]
},
"logo": {
- "light": "/logo/light.svg",
- "dark": "/logo/dark.svg"
+ "light": "/_site/logo/light.svg",
+ "dark": "/_site/logo/dark.svg"
},
"fonts": {
"family": "Inter"
},
"navbar": {},
- "redirects": [
- {
- "source": "/optimize/avoid-mutations",
- "destination": "/concepts/best-practices/avoid-mutations"
- },
- {
- "source": "/optimize/avoidoptimizefinal",
- "destination": "/concepts/best-practices/avoid-optimize-final"
- },
- {
- "source": "/optimize/partitioning-key",
- "destination": "/concepts/best-practices/partitioning-keys"
- },
- {
- "source": "/starter-guides",
- "destination": "/get-started/quickstarts/home"
- },
- {
- "source": "/introduction-clickhouse",
- "destination": "/get-started/about/intro"
- },
- {
- "source": "/install/quick-install-curl",
- "destination": "/get-started/setup/self-managed/quick-install"
- },
- {
- "source": "/integrations/clickpipes/secure-kinesis",
- "destination": "/integrations/clickpipes/kinesis/auth"
- },
- {
- "source": "/integrations/clickpipes/secure-rds",
- "destination": "/integrations/clickpipes/postgres/auth"
- },
- {
- "source": "/docs/en/cloud/manage/service-types",
- "destination": "/products/cloud/features/cloud-tiers"
- },
- {
- "source": "/cloud/reference/byoc/onboarding/customization",
- "destination": "/products/bring-your-own-cloud/onboarding/customization-aws"
- },
- {
- "source": "/knowledgebase/why-clickhouse-is-so-fast",
- "destination": "/get-started/about/why-clickhouse-is-so-fast"
- },
- {
- "source": "/faq/general/why-clickhouse-is-so-fast",
- "destination": "/get-started/about/why-clickhouse-is-so-fast"
- },
- {
- "source": "/integrations/data-formats/json",
- "destination": "/integrations/connectors/data-ingestion/data-formats/json/intro"
- },
- {
- "source": "/faq/marketplace",
- "destination": "/products/cloud/reference/billing/marketplace/overview"
- },
- {
- "source": "/native-protocol/compression",
- "destination": "/guides/cloud-oss/data-modelling/compression/compression-modes"
- },
- {
- "source": "/manage/backups",
- "destination": "/products/cloud/guides/backups"
- },
- {
- "source": "/manage/security/organization-activity",
- "destination": "/products/cloud/reference/security/audit-logging"
- },
- {
- "source": "/cloud/manage/cmek",
- "destination": "/products/cloud/guides/security/cmek"
- },
- {
- "source": "/manage/security/ip-access-list",
- "destination": "/products/cloud/guides/security/connectivity/setting-ip-filters"
- },
- {
- "source": "/faq/billing#faq",
- "destination": "/products/cloud/reference/billing/billing-overview#faqs"
- },
- {
- "source": "/guides/developer/lightweght-delete",
- "destination": "/concepts/operations/delete/lightweight-delete"
- },
- {
- "source": "/guides/developer/shared-merge-tree",
- "destination": "/products/cloud/features/infrastructure/shared-merge-tree"
- },
- {
- "source": "/integrations/data-ingestion",
- "destination": "/reference/statements/insert-into"
- },
- {
- "source": "/integrations/data-ingestion/kafka",
- "destination": "/integrations/connectors/data-ingestion/kafka"
- },
- {
- "source": "/integrations/data-ingestion/kafka/code",
- "destination": "/integrations/connectors/data-ingestion/kafka"
- },
- {
- "source": "/integrations/data-ingestion/kafka/code/connectors",
- "destination": "/integrations/connectors/data-ingestion/kafka"
- },
- {
- "source": "/integrations/deltalake",
- "destination": "/reference/functions/table-functions/deltalake"
- },
- {
- "source": "/integrations/hive",
- "destination": "/reference/engines/table-engines/integrations/hive"
- },
- {
- "source": "/integrations/hudi",
- "destination": "/reference/engines/table-engines/integrations/hudi"
- },
- {
- "source": "/integrations/iceberg",
- "destination": "/reference/functions/table-functions/iceberg"
- },
- {
- "source": "/integrations/mongodb",
- "destination": "/reference/engines/table-engines/integrations/mongodb"
- },
- {
- "source": "/integrations/nats",
- "destination": "/reference/engines/table-engines/integrations/nats"
- },
- {
- "source": "/integrations/rabbitmq",
- "destination": "/reference/engines/table-engines/integrations/rabbitmq"
- },
- {
- "source": "/integrations/redis",
- "destination": "/reference/functions/table-functions/redis"
- },
- {
- "source": "/integrations/rocksdb",
- "destination": "/reference/engines/table-engines/integrations/embedded-rocksdb"
- },
- {
- "source": "/integrations/sqlite",
- "destination": "/reference/engines/table-engines/integrations/sqlite"
- },
- {
- "source": "/integrations/connect-a-client",
- "destination": "/integrations/connectors/data-integrations/drivers-and-interfaces/cli"
- },
- {
- "source": "/cloud/sql-console",
- "destination": "/integrations/connectors/data-integrations/sql-clients/sql-console"
- },
- {
- "source": "/category/cloud-reference",
- "destination": "/products/cloud/getting-started/intro"
- },
- {
- "source": "/about-us/performance",
- "destination": "/get-started/about/why-clickhouse-is-so-fast"
- },
- {
- "source": "/operations/optimizing-performance",
- "destination": "/concepts/features/performance/troubleshoot/sampling-query-profiler"
- },
- {
- "source": "/guides/improving-query-performance/skipping-indexes",
- "destination": "/concepts/features/performance/skip-indexes/skipping-indexes"
- },
- {
- "source": "/guides",
- "destination": "/get-started/oss/starter-guides/creating-tables"
- },
- {
- "source": "/optimize/sparse-primary-indexes",
- "destination": "/guides/cloud-oss/data-modelling/sparse-primary-indexes"
- },
- {
- "source": "/guides/improving-query-performance/sparse-primary-indexes",
- "destination": "/guides/cloud-oss/data-modelling/sparse-primary-indexes"
- },
- {
- "source": "/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-cardinality",
- "destination": "/guides/cloud-oss/data-modelling/sparse-primary-indexes"
- },
- {
- "source": "/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-design",
- "destination": "/guides/cloud-oss/data-modelling/sparse-primary-indexes"
- },
- {
- "source": "/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-intro",
- "destination": "/guides/cloud-oss/data-modelling/sparse-primary-indexes"
- },
- {
- "source": "/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-multiple",
- "destination": "/guides/cloud-oss/data-modelling/sparse-primary-indexes"
- },
- {
- "source": "/guides/improving-query-performance/sparse-primary-indexes/sparse-primary-indexes-uuids",
- "destination": "/guides/cloud-oss/data-modelling/sparse-primary-indexes"
- },
- {
- "source": "/integrations/data-ingestion/dbms/",
- "destination": "/integrations/connectors/home"
- },
- {
- "source": "/integrations/data-ingestion/etl-tools",
- "destination": "/integrations/connectors/home"
- },
- {
- "source": "/integrations/intro",
- "destination": "/integrations/connectors/home"
- },
- {
- "source": "/integrations/migration/clickhouse-local",
- "destination": "/get-started/setup/migration-guides/other-methods/clickhouse-local-etl"
- },
- {
- "source": "/integrations/migration/clickhouse-to-cloud",
- "destination": "/get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud"
- },
- {
- "source": "/integrations/migration/etl-tool-to-clickhouse",
- "destination": "/get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse"
- },
- {
- "source": "/integrations/sql-clients/index",
- "destination": "/integrations/connectors/home"
- },
- {
- "source": "/interfaces",
- "destination": "/integrations/connectors/data-integrations/drivers-and-interfaces/overview"
- },
- {
- "source": "/native-protocol",
- "destination": "/resources/contribute/native-protocol/basics"
- },
- {
- "source": "/manage/users",
- "destination": "/concepts/features/security/access-rights"
- },
- {
- "source": "/manage",
- "destination": "/concepts/features/security/access-rights"
- },
- {
- "source": "/manage/configuration",
- "destination": "/concepts/features/configuration/server-config/configuration-files"
- },
- {
- "source": "/manage/replication-and-sharding",
- "destination": "/guides/oss/deployment-and-scaling/keeper"
- },
- {
- "source": "/integrations/sql-clients/datagrip",
- "destination": "/integrations/connectors/data-integrations/sql-clients/datagrip"
- },
- {
- "source": "/integrations/sql-clients/dbeaver",
- "destination": "/integrations/connectors/data-integrations/sql-clients/dbeaver"
- },
- {
- "source": "/integrations/sql-clients/qstudio",
- "destination": "/integrations/connectors/data-integrations/sql-clients/qstudio"
- },
- {
- "source": "/integrations/sql-clients/jupysql",
- "destination": "/integrations/connectors/data-integrations/sql-clients/jupysql"
- },
- {
- "source": "/integrations/sql-clients/tablum.io",
- "destination": "/integrations/connectors/data-integrations/sql-clients/tablum"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-layout",
- "destination": "/reference/statements/create/dictionary/layouts/overview"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-lifetime",
- "destination": "/reference/statements/create/dictionary/lifetime"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-sources",
- "destination": "/reference/statements/create/dictionary/sources/overview"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-structure",
- "destination": "/reference/statements/create/dictionary/attributes"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-hierarchical",
- "destination": "/reference/statements/create/dictionary/layouts/hierarchical"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-polygon",
- "destination": "/reference/statements/create/dictionary/layouts/polygon"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/regexp-tree",
- "destination": "/reference/statements/create/dictionary/layouts/regexp-tree"
- },
- {
- "source": "/sql-reference/dictionaries/internal-dicts",
- "destination": "/reference/statements/create/dictionary/embedded"
- },
- {
- "source": "/sql-reference/dictionaries",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/operations/clickhouse-keeper/",
- "destination": "/guides/oss/deployment-and-scaling/keeper"
- },
- {
- "source": "/connect-a-ui/grafana-and-clickhouse",
- "destination": "/integrations/connectors/data-visualization/grafana"
- },
- {
- "source": "/connect-a-ui/metabase-and-clickhouse",
- "destination": "/integrations/connectors/data-visualization/metabase-and-clickhouse"
- },
- {
- "source": "/connect-a-ui/mitzu-and-clickhouse",
- "destination": "/integrations/connectors/data-visualization/community-integrations/mitzu-and-clickhouse"
- },
- {
- "source": "/connect-a-ui/rocketbi-and-clickhouse",
- "destination": "/integrations/connectors/data-visualization/community-integrations/rocketbi-and-clickhouse"
- },
- {
- "source": "/connect-a-ui/superset-and-clickhouse",
- "destination": "/integrations/connectors/data-visualization/superset-and-clickhouse"
- },
- {
- "source": "/connect-a-ui/tableau-and-clickhouse",
- "destination": "/integrations/connectors/data-visualization/tableau/tableau-and-clickhouse"
- },
- {
- "source": "/integrations/language-clients/javascript",
- "destination": "/integrations/language-clients/js"
- },
- {
- "source": "/integrations/language-clients/python/intro",
- "destination": "/integrations/language-clients/python"
- },
- {
- "source": "/integrations/language-clients/python/driver-api",
- "destination": "/integrations/language-clients/python"
- },
- {
- "source": "/integrations/language-clients/python/queries",
- "destination": "/integrations/language-clients/python"
- },
- {
- "source": "/integrations/language-clients/python/inserts",
- "destination": "/integrations/language-clients/python"
- },
- {
- "source": "/integrations/language-clients/python/options",
- "destination": "/integrations/language-clients/python"
- },
- {
- "source": "/integrations/go/intro",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/go/choosing-a-client",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/go/clickhouse-go",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/go/clickhouse-go/introduction",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/go/clickhouse-go/installation",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/go/clickhouse-go/clickhouse-api",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/go/clickhouse-go/database-sql-api",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/go/clickhouse-go/performance-tips",
- "destination": "/integrations/language-clients/go"
- },
- {
- "source": "/integrations/language-clients/java/r2dbc",
- "destination": "/integrations/language-clients/java"
- },
- {
- "source": "/integrations/nifi-and-clickhouse",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/nifi-and-clickhouse"
- },
- {
- "source": "/integrations/kafka/intro",
- "destination": "/integrations/connectors/data-ingestion/kafka"
- },
- {
- "source": "/integrations/kafka/self-managed/connect-sink",
- "destination": "/integrations/connectors/data-ingestion/kafka/kafka-clickhouse-connect-sink"
- },
- {
- "source": "/integrations/kafka/self-managed/jdbc",
- "destination": "/integrations/connectors/data-ingestion/kafka/kafka-connect-jdbc"
- },
- {
- "source": "/integrations/kafka/self-managed/vector",
- "destination": "/integrations/connectors/data-ingestion/kafka/kafka-vector"
- },
- {
- "source": "/integrations/data-ingestion/kafka/cloud/msk/connect-sink",
- "destination": "/integrations/connectors/data-ingestion/kafka/msk"
- },
- {
- "source": "/integrations/s3/s3-intro",
- "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
- },
- {
- "source": "/integrations/s3/s3-table-functions",
- "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
- },
- {
- "source": "/integrations/s3/s3-table-engine",
- "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
- },
- {
- "source": "/integrations/s3/s3-merge-tree",
- "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
- },
- {
- "source": "/integrations/s3/s3-optimizing-performance",
- "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
- },
- {
- "source": "/guides/sre/configuring-s3-for-clickhouse-use",
- "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
- },
- {
- "source": "/guides/sre/s3-multi-region",
- "destination": "/integrations/connectors/data-ingestion/AWS/integrating-s3-with-clickhouse"
- },
- {
- "source": "/integrations/s3/s3-minio",
- "destination": "/integrations/connectors/data-ingestion/s3-minio"
- },
- {
- "source": "/integrations/vector-to-clickhouse",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/vector-to-clickhouse"
- },
- {
- "source": "/integrations/airbyte-and-clickhouse",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/airbyte-and-clickhouse"
- },
- {
- "source": "/integrations/postgresql/postgres-with-clickhouse",
- "destination": "/integrations/connectors/data-sources/postgres"
- },
- {
- "source": "/integrations/postgresql/postgres-with-clickhouse-database-engine",
- "destination": "/integrations/connectors/data-sources/postgres"
- },
- {
- "source": "/integrations/mqtt",
- "destination": "/integrations/connectors/data-ingestion/emqx"
- },
- {
- "source": "/integrations/emqx/emqx-intro",
- "destination": "/integrations/connectors/data-ingestion/emqx"
- },
- {
- "source": "/integrations/emqx/clickhouse-service-set-up",
- "destination": "/integrations/connectors/data-ingestion/emqx"
- },
- {
- "source": "/integrations/emqx/create-emqx-cloud-deployment",
- "destination": "/integrations/connectors/data-ingestion/emqx"
- },
- {
- "source": "/integrations/emqx/emqx-cloud-data-integration",
- "destination": "/integrations/connectors/data-ingestion/emqx"
- },
- {
- "source": "/integrations/emqx/workflow-samples",
- "destination": "/integrations/connectors/data-ingestion/emqx"
- },
- {
- "source": "/integrations/dbt/dbt-intro",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-setup",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-connecting",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-view-model",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-table-model",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-incremental-model",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-snapshot",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-seeds",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/integrations/dbt/dbt-limitations",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt"
- },
- {
- "source": "/development",
- "destination": "/resources/contribute/developer-instruction"
- },
- {
- "source": "/guides/sre/keeper/clickhouse-keeper-uuid",
- "destination": "/guides/oss/deployment-and-scaling/keeper"
- },
- {
- "source": "/guides/sre/user-management/alter-permissions",
- "destination": "/concepts/features/security/access-rights"
- },
- {
- "source": "/guides/sre/users-and-roles",
- "destination": "/concepts/features/security/access-rights"
- },
- {
- "source": "/integrations/data-formats/parquet-arrow-avro-orc",
- "destination": "/integrations/connectors/data-ingestion/data-formats/parquet"
- },
- {
- "source": "/guides/developer/working-with-json",
- "destination": "/integrations/connectors/data-ingestion/data-formats/json/intro"
- },
- {
- "source": "/guides/developer/working-with-json/json-intro",
- "destination": "/integrations/connectors/data-ingestion/data-formats/json/intro"
- },
- {
- "source": "/guides/developer/working-with-json/json-load-data",
- "destination": "/integrations/connectors/data-ingestion/data-formats/json/intro"
- },
- {
- "source": "/guides/developer/working-with-json/json-other-approaches",
- "destination": "/integrations/connectors/data-ingestion/data-formats/json/intro"
- },
- {
- "source": "/guides/developer/working-with-json/json-semi-structured",
- "destination": "/integrations/connectors/data-ingestion/data-formats/json/intro"
- },
- {
- "source": "/guides/developer/working-with-json/json-structured",
- "destination": "/integrations/connectors/data-ingestion/data-formats/json/intro"
- },
- {
- "source": "/get-started/sql-console/opening",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/get-started/sql-console/exploring-tables",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/get-started/sql-console/filtering",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/get-started/sql-console/creating",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/get-started/sql-console/advanced",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/get-started/sql-console/visualizing",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/connect-a-ui",
- "destination": "/integrations/connectors/data-visualization"
- },
- {
- "source": "/development/browse_code",
- "destination": "/resources/contribute/developer-instruction"
- },
- {
- "source": "/development/browse-code",
- "destination": "/resources/contribute/developer-instruction"
- },
- {
- "source": "/development/build_cross_arm",
- "destination": "/resources/contribute/build-cross-arm"
- },
- {
- "source": "/development/build_cross_osx",
- "destination": "/resources/contribute/build-cross-osx"
- },
- {
- "source": "/development/build_osx",
- "destination": "/resources/contribute/build-osx"
- },
- {
- "source": "/development/developer_instruction",
- "destination": "/resources/contribute/developer-instruction"
- },
- {
- "source": "/database_engines/",
- "destination": "/reference/engines/database-engines"
- },
- {
- "source": "/engines/database_engines/",
- "destination": "/reference/engines/database-engines"
- },
- {
- "source": "/database_engines/mysql",
- "destination": "/reference/engines/database-engines/mysql"
- },
- {
- "source": "/engines/database_engines/mysql",
- "destination": "/reference/engines/database-engines/mysql"
- },
- {
- "source": "/engines/table_engines",
- "destination": "/reference/engines/table-engines"
- },
- {
- "source": "/operations/table_engines",
- "destination": "/reference/engines/table-engines"
- },
- {
- "source": "/engines/table_engines/integrations",
- "destination": "/reference/engines/table-engines/integrations"
- },
- {
- "source": "/engines/table_engines/integrations/hdfs",
- "destination": "/reference/engines/table-engines/integrations/hdfs"
- },
- {
- "source": "/operations/table_engines/hdfs",
- "destination": "/reference/engines/table-engines/integrations/hdfs"
- },
- {
- "source": "/engines/table_engines/integrations/jdbc",
- "destination": "/reference/engines/table-engines/integrations/jdbc"
- },
- {
- "source": "/operations/table_engines/jdbc",
- "destination": "/reference/engines/table-engines/integrations/jdbc"
- },
- {
- "source": "/engines/table_engines/integrations/kafka",
- "destination": "/reference/engines/table-engines/integrations/kafka"
- },
- {
- "source": "/table_engines/replication",
- "destination": "/guides/oss/deployment-and-scaling/examples/1-shard-2-replicas"
- },
- {
- "source": "/integrations/kafka/kafka-connect-http",
- "destination": "/integrations/connectors/data-ingestion/kafka/confluent/kafka-connect-http"
- },
- {
- "source": "/integrations/kafka/kafka-connect-options",
- "destination": "/integrations/connectors/data-ingestion/kafka"
- },
- {
- "source": "/operations/table_engines/kafka",
- "destination": "/reference/engines/table-engines/integrations/kafka"
- },
- {
- "source": "/integrations/kafka/kafka-intro",
- "destination": "/integrations/connectors/data-ingestion/kafka"
- },
- {
- "source": "/integrations/kafka/kafka-connect-intro",
- "destination": "/integrations/connectors/data-ingestion/kafka/kafka-clickhouse-connect-sink"
- },
- {
- "source": "/engines/table_engines/integrations/mysql",
- "destination": "/reference/engines/table-engines/integrations/mysql"
- },
- {
- "source": "/operations/table_engines/mysql",
- "destination": "/reference/engines/table-engines/integrations/mysql"
- },
- {
- "source": "/engines/table_engines/integrations/odbc",
- "destination": "/reference/engines/table-engines/integrations/odbc"
- },
- {
- "source": "/operations/table_engines/odbc",
- "destination": "/reference/engines/table-engines/integrations/odbc"
- },
- {
- "source": "/engines/table-engines/log-family/log-family",
- "destination": "/reference/engines/table-engines/log-family"
- },
- {
- "source": "/engines/table_engines/log_family",
- "destination": "/reference/engines/table-engines/log-family"
- },
- {
- "source": "/engines/table_engines/log_family/log",
- "destination": "/reference/engines/table-engines/log-family/log"
- },
- {
- "source": "/operations/table_engines/log",
- "destination": "/reference/engines/table-engines/log-family/log"
- },
- {
- "source": "/engines/table_engines/log_family/stripelog",
- "destination": "/reference/engines/table-engines/log-family/stripelog"
- },
- {
- "source": "/operations/table_engines/stripelog",
- "destination": "/reference/engines/table-engines/log-family/stripelog"
- },
- {
- "source": "/engines/table_engines/log_family/tinylog",
- "destination": "/reference/engines/table-engines/log-family/tinylog"
- },
- {
- "source": "/operations/table_engines/tinylog",
- "destination": "/reference/engines/table-engines/log-family/tinylog"
- },
- {
- "source": "/engines/table_engines/mergetree_family",
- "destination": "/reference/engines/table-engines/mergetree-family"
- },
- {
- "source": "/engines/table_engines/mergetree_family/aggregatingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/aggregatingmergetree"
- },
- {
- "source": "/operations/table_engines/aggregatingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/aggregatingmergetree"
- },
- {
- "source": "/engines/table_engines/mergetree_family/collapsingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/collapsingmergetree"
- },
- {
- "source": "/operations/table_engines/collapsingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/collapsingmergetree"
- },
- {
- "source": "/engines/table_engines/mergetree_family/custom_partitioning_key",
- "destination": "/reference/engines/table-engines/mergetree-family/custom-partitioning-key"
- },
- {
- "source": "/operations/table_engines/custom_partitioning_key",
- "destination": "/reference/engines/table-engines/mergetree-family/custom-partitioning-key"
- },
- {
- "source": "/engines/table_engines/mergetree_family/graphitemergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/graphitemergetree"
- },
- {
- "source": "/operations/table_engines/graphitemergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/graphitemergetree"
- },
- {
- "source": "/engines/table_engines/mergetree_family/replacingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/replacingmergetree"
- },
- {
- "source": "/operations/table_engines/replacingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/replacingmergetree"
- },
- {
- "source": "/engines/table_engines/mergetree_family/replication",
- "destination": "/reference/engines/table-engines/mergetree-family/replication"
- },
- {
- "source": "/operations/table_engines/replication",
- "destination": "/reference/engines/table-engines/mergetree-family/replication"
- },
- {
- "source": "/engines/table_engines/mergetree_family/summingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/summingmergetree"
- },
- {
- "source": "/operations/table_engines/summingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/summingmergetree"
- },
- {
- "source": "/engines/table_engines/mergetree_family/versionedcollapsingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree"
- },
- {
- "source": "/operations/table_engines/versionedcollapsingmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/versionedcollapsingmergetree"
- },
- {
- "source": "/engines/table_engines/special",
- "destination": "/reference/engines/table-engines/special"
- },
- {
- "source": "/engines/table_engines/special/buffer",
- "destination": "/reference/engines/table-engines/special/buffer"
- },
- {
- "source": "/operations/table_engines/buffer",
- "destination": "/reference/engines/table-engines/special/buffer"
- },
- {
- "source": "/engines/table_engines/special/dictionary",
- "destination": "/reference/engines/table-engines/special/dictionary"
- },
- {
- "source": "/operations/table_engines/dictionary",
- "destination": "/reference/engines/table-engines/special/dictionary"
- },
- {
- "source": "/engines/table_engines/special/distributed",
- "destination": "/reference/engines/table-engines/special/distributed"
- },
- {
- "source": "/operations/table_engines/distributed",
- "destination": "/reference/engines/table-engines/special/distributed"
- },
- {
- "source": "/engines/table_engines/special/external_data",
- "destination": "/reference/engines/table-engines/special/external-data"
- },
- {
- "source": "/operations/table_engines/external_data",
- "destination": "/reference/engines/table-engines/special/external-data"
- },
- {
- "source": "/engines/table_engines/special/file",
- "destination": "/reference/engines/table-engines/special/file"
- },
- {
- "source": "/operations/table_engines/file",
- "destination": "/reference/engines/table-engines/special/file"
- },
- {
- "source": "/engines/table_engines/special/generate",
- "destination": "/reference/engines/table-engines/special/generate"
- },
- {
- "source": "/operations/table_engines/generate",
- "destination": "/reference/engines/table-engines/special/generate"
- },
- {
- "source": "/engines/table_engines/special/join",
- "destination": "/reference/engines/table-engines/special/join"
- },
- {
- "source": "/operations/table_engines/join",
- "destination": "/reference/engines/table-engines/special/join"
- },
- {
- "source": "/engines/table_engines/special/memory",
- "destination": "/reference/engines/table-engines/special/memory"
- },
- {
- "source": "/operations/table_engines/memory",
- "destination": "/reference/engines/table-engines/special/memory"
- },
- {
- "source": "/engines/table_engines/special/merge",
- "destination": "/reference/engines/table-engines/special/merge"
- },
- {
- "source": "/operations/table_engines/merge",
- "destination": "/reference/engines/table-engines/special/merge"
- },
- {
- "source": "/engines/table_engines/special/null",
- "destination": "/reference/engines/table-engines/special/null"
- },
- {
- "source": "/operations/table_engines/null",
- "destination": "/reference/engines/table-engines/special/null"
- },
- {
- "source": "/engines/table_engines/special/set",
- "destination": "/reference/engines/table-engines/special/set"
- },
- {
- "source": "/operations/table_engines/set",
- "destination": "/reference/engines/table-engines/special/set"
- },
- {
- "source": "/engines/table_engines/special/url",
- "destination": "/reference/engines/table-engines/special/url"
- },
- {
- "source": "/operations/table_engines/url",
- "destination": "/reference/engines/table-engines/special/url"
- },
- {
- "source": "/engines/table_engines/special/view",
- "destination": "/reference/engines/table-engines/special/view"
- },
- {
- "source": "/operations/table_engines/view",
- "destination": "/reference/engines/table-engines/special/view"
- },
- {
- "source": "/guides/ingest/tab_separated_values",
- "destination": "/get-started/sample-datasets/nypd-complaint-data"
- },
- {
- "source": "/getting_started/example_datasets",
- "destination": "/get-started/sample-datasets"
- },
- {
- "source": "/getting_started/example_datasets/amplab_benchmark",
- "destination": "/get-started/sample-datasets/amplab-benchmark"
- },
- {
- "source": "/getting_started/example_datasets/criteo",
- "destination": "/get-started/sample-datasets/criteo"
- },
- {
- "source": "/getting_started/example_datasets/metrica",
- "destination": "/get-started/sample-datasets/anon-web-analytics-metrica"
- },
- {
- "source": "/getting_started/example_datasets/nyc_taxi",
- "destination": "/get-started/sample-datasets/nyc-taxi"
- },
- {
- "source": "/getting_started/example_datasets/ontime",
- "destination": "/get-started/sample-datasets/ontime"
- },
- {
- "source": "/getting_started/example_datasets/star_schema",
- "destination": "/get-started/sample-datasets/star-schema"
- },
- {
- "source": "/getting_started/example_datasets/wikistat",
- "destination": "/get-started/sample-datasets/wikistat"
- },
- {
- "source": "/getting_started/install",
- "destination": "/get-started/setup/self-managed/install"
- },
- {
- "source": "/operations/requirements",
- "destination": "/get-started/setup/self-managed/install"
- },
- {
- "source": "/getting_started/playground",
- "destination": "/get-started/sample-datasets/playground"
- },
- {
- "source": "/getting_started/tutorial",
- "destination": "/get-started/quickstarts/tutorial"
- },
- {
- "source": "/guide",
- "destination": "/products/cloud/guides/cloud-compatibility"
- },
- {
- "source": "/guides/apply_catboost_model",
- "destination": "/reference/functions/regular-functions/other-functions"
- },
- {
- "source": "/guides/developer/apply-catboost-model",
- "destination": "/reference/functions/regular-functions/other-functions"
- },
- {
- "source": "/commercial/cloud",
- "destination": "/products/cloud/getting-started/intro"
- },
- {
- "source": "/formats",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/capnproto",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/csv",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/csvwithnames",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/json",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/jsoncompact",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/jsoneachrow",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/native",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/null",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/pretty",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/prettycompact",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/prettycompactmonoblock",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/prettynoescapes",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/prettyspace",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/rowbinary",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/tabseparated",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/tabseparatedraw",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/tabseparatedwithnames",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/tabseparatedwithnamesandtypes",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/tskv",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/values",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/vertical",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/verticalraw",
- "destination": "/reference/formats"
- },
- {
- "source": "/formats/xml",
- "destination": "/reference/formats"
- },
- {
- "source": "/interfaces/http_interface",
- "destination": "/integrations/connectors/data-integrations/drivers-and-interfaces/http"
- },
- {
- "source": "/interfaces/third_party",
- "destination": "/integrations/connectors/data-integrations/drivers-and-interfaces/third-party"
- },
- {
- "source": "/interfaces/third-party/client_libraries",
- "destination": "/integrations/language-clients/third-party/client-libraries"
- },
- {
- "source": "/interfaces/third-party_client_libraries",
- "destination": "/integrations/language-clients/third-party/client-libraries"
- },
- {
- "source": "/interfaces/third-party_gui",
- "destination": "/integrations/connectors/tools/gui"
- },
- {
- "source": "/introduction/distinctive_features",
- "destination": "/get-started/about/distinctive-features"
- },
- {
- "source": "/introduction/features_considered_disadvantages",
- "destination": "/get-started/about/distinctive-features"
- },
- {
- "source": "/introduction/ya_metrika_task",
- "destination": "/resources/about/history"
- },
- {
- "source": "/operations/access_rights",
- "destination": "/concepts/features/security/access-rights"
- },
- {
- "source": "/guides/sre/user-management/access-rights",
- "destination": "/concepts/features/security/access-rights"
- },
- {
- "source": "/operations/configuration_files",
- "destination": "/concepts/features/configuration/server-config/configuration-files"
- },
- {
- "source": "/operations/optimizing_performance",
- "destination": "/concepts/features/performance/troubleshoot/sampling-query-profiler"
- },
- {
- "source": "/operations/optimizing_performance/sampling_query_profiler",
- "destination": "/concepts/features/performance/troubleshoot/sampling-query-profiler"
- },
- {
- "source": "/operations/performance/sampling_query_profiler",
- "destination": "/concepts/features/performance/troubleshoot/sampling-query-profiler"
- },
- {
- "source": "/operations/performance_test",
- "destination": "/concepts/features/performance/troubleshoot/performance-test"
- },
- {
- "source": "/operations/server_configuration_parameters",
- "destination": "/reference/settings/server-settings/settings"
- },
- {
- "source": "/operations/server_settings",
- "destination": "/reference/settings/server-settings/settings"
- },
- {
- "source": "/operations/server_configuration_parameters/settings",
- "destination": "/reference/settings/server-settings/settings"
- },
- {
- "source": "/operations/server_settings/settings",
- "destination": "/reference/settings/server-settings/settings"
- },
- {
- "source": "/operations/settings/constraints_on_settings",
- "destination": "/concepts/features/configuration/settings/constraints-on-settings"
- },
- {
- "source": "/operations/settings/permissions_for_queries",
- "destination": "/concepts/features/configuration/settings/permissions-for-queries"
- },
- {
- "source": "/operations/settings/query_complexity",
- "destination": "/concepts/features/configuration/settings/query-complexity"
- },
- {
- "source": "/operations/settings/settings_profiles",
- "destination": "/concepts/features/configuration/settings/settings-profiles"
- },
- {
- "source": "/operations/settings/settings_users",
- "destination": "/concepts/features/configuration/settings/settings-users"
- },
- {
- "source": "/operations/system_tables",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.asynchronous_metrics",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.clusters",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.columns",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.databases",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.dictionaries",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.events",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.functions",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.merges",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.metrics",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.numbers",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.numbers_mt",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.one",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.parts",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.processes",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.replicas",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.settings",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.tables",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/system_tables/system.zookeeper",
- "destination": "/reference/system-tables"
- },
- {
- "source": "/operations/utils",
- "destination": "/concepts/features/tools-and-utilities"
- },
- {
- "source": "/operations/utils/clickhouse-benchmark",
- "destination": "/concepts/features/tools-and-utilities/clickhouse-benchmark"
- },
- {
- "source": "/operations/utils/clickhouse-local",
- "destination": "/concepts/features/tools-and-utilities/clickhouse-local"
- },
- {
- "source": "/utils",
- "destination": "/concepts/features/tools-and-utilities"
- },
- {
- "source": "/utils/clickhouse-local",
- "destination": "/concepts/features/tools-and-utilities/clickhouse-local"
- },
- {
- "source": "/query_language/agg_functions",
- "destination": "/reference/functions/aggregate-functions"
- },
- {
- "source": "/sql_reference/aggregate_functions",
- "destination": "/reference/functions/aggregate-functions"
- },
- {
- "source": "/query_language/agg_functions/combinators",
- "destination": "/reference/functions/aggregate-functions/combinators"
- },
- {
- "source": "/sql_reference/aggregate_functions/combinators",
- "destination": "/reference/functions/aggregate-functions/combinators"
- },
- {
- "source": "/query_language/agg_functions/parametric_functions",
- "destination": "/reference/functions/aggregate-functions/parametric-functions"
- },
- {
- "source": "/sql_reference/aggregate_functions/parametric_functions",
- "destination": "/reference/functions/aggregate-functions/parametric-functions"
- },
- {
- "source": "/query_language/agg_functions/reference",
- "destination": "/reference/functions/aggregate-functions/reference"
- },
- {
- "source": "/sql_reference/aggregate_functions/reference",
- "destination": "/reference/functions/aggregate-functions/reference"
- },
- {
- "source": "/data_types",
- "destination": "/reference/data-types"
- },
- {
- "source": "/sql_reference/data_types",
- "destination": "/reference/data-types"
- },
- {
- "source": "/data_types/nested_data_structures/aggregatefunction",
- "destination": "/reference/data-types/aggregatefunction"
- },
- {
- "source": "/sql_reference/data_types/aggregatefunction",
- "destination": "/reference/data-types/aggregatefunction"
- },
- {
- "source": "/data_types/array",
- "destination": "/reference/data-types/array"
- },
- {
- "source": "/sql_reference/data_types/array",
- "destination": "/reference/data-types/array"
- },
- {
- "source": "/data_types/boolean",
- "destination": "/reference/data-types/boolean"
- },
- {
- "source": "/sql_reference/data_types/boolean",
- "destination": "/reference/data-types/boolean"
- },
- {
- "source": "/data_types/date",
- "destination": "/reference/data-types/date"
- },
- {
- "source": "/sql_reference/data_types/date",
- "destination": "/reference/data-types/date"
- },
- {
- "source": "/data_types/datetime",
- "destination": "/reference/data-types/datetime"
- },
- {
- "source": "/sql_reference/data_types/datetime",
- "destination": "/reference/data-types/datetime"
- },
- {
- "source": "/data_types/datetime64",
- "destination": "/reference/data-types/datetime64"
- },
- {
- "source": "/sql_reference/data_types/datetime64",
- "destination": "/reference/data-types/datetime64"
- },
- {
- "source": "/data_types/decimal",
- "destination": "/reference/data-types/decimal"
- },
- {
- "source": "/sql_reference/data_types/decimal",
- "destination": "/reference/data-types/decimal"
- },
- {
- "source": "/sql-reference/data-types/domains/overview",
- "destination": "/reference/data-types/domains"
- },
- {
- "source": "/sql_reference/data_types/domains",
- "destination": "/reference/data-types/domains"
- },
- {
- "source": "/sql-reference/data_types/domains/ipv4",
- "destination": "/reference/data-types/ipv4"
- },
- {
- "source": "/data_types/domains/ipv4",
- "destination": "/reference/data-types/ipv4"
- },
- {
- "source": "/sql_reference/data_types/domains/ipv4",
- "destination": "/reference/data-types/ipv4"
- },
- {
- "source": "/sql-reference/data-types/domains/ipv6",
- "destination": "/reference/data-types/ipv6"
- },
- {
- "source": "/data_types/domains/ipv6",
- "destination": "/reference/data-types/ipv6"
- },
- {
- "source": "/sql_reference/data_types/domains/ipv6",
- "destination": "/reference/data-types/ipv6"
- },
- {
- "source": "/data_types/domains/overview",
- "destination": "/reference/data-types/domains"
- },
- {
- "source": "/sql_reference/data_types/domains/overview",
- "destination": "/reference/data-types/domains"
- },
- {
- "source": "/data_types/enum",
- "destination": "/reference/data-types/enum"
- },
- {
- "source": "/sql_reference/data_types/enum",
- "destination": "/reference/data-types/enum"
- },
- {
- "source": "/data_types/fixedstring",
- "destination": "/reference/data-types/fixedstring"
- },
- {
- "source": "/sql_reference/data_types/fixedstring",
- "destination": "/reference/data-types/fixedstring"
- },
- {
- "source": "/data_types/float",
- "destination": "/reference/data-types/float"
- },
- {
- "source": "/sql_reference/data_types/float",
- "destination": "/reference/data-types/float"
- },
- {
- "source": "/data_types/int_uint",
- "destination": "/reference/data-types/int-uint"
- },
- {
- "source": "/sql_reference/data_types/int_uint",
- "destination": "/reference/data-types/int-uint"
- },
- {
- "source": "/data_types/nested_data_structures",
- "destination": "/reference/data-types/nested-data-structures"
- },
- {
- "source": "/sql_reference/data_types/nested_data_structures",
- "destination": "/reference/data-types/nested-data-structures"
- },
- {
- "source": "/data_types/nested_data_structures/nested",
- "destination": "/reference/data-types/nested-data-structures"
- },
- {
- "source": "/sql_reference/data_types/nested_data_structures/nested",
- "destination": "/reference/data-types/nested-data-structures"
- },
- {
- "source": "/data_types/nullable",
- "destination": "/reference/data-types/nullable"
- },
- {
- "source": "/sql_reference/data_types/nullable",
- "destination": "/reference/data-types/nullable"
- },
- {
- "source": "/sql_reference/data_types/simpleaggregatefunction",
- "destination": "/reference/data-types/simpleaggregatefunction"
- },
- {
- "source": "/data_types/special_data_types",
- "destination": "/reference/data-types/special-data-types"
- },
- {
- "source": "/sql_reference/data_types/special_data_types",
- "destination": "/reference/data-types/special-data-types"
- },
- {
- "source": "/data_types/special_data_types/expression",
- "destination": "/reference/data-types/special-data-types/expression"
- },
- {
- "source": "/sql_reference/data_types/special_data_types/expression",
- "destination": "/reference/data-types/special-data-types/expression"
- },
- {
- "source": "/data_types/special_data_types/interval",
- "destination": "/reference/data-types/special-data-types/interval"
- },
- {
- "source": "/sql_reference/data_types/special_data_types/interval",
- "destination": "/reference/data-types/special-data-types/interval"
- },
- {
- "source": "/data_types/special_data_types/nothing",
- "destination": "/reference/data-types/special-data-types/nothing"
- },
- {
- "source": "/sql_reference/data_types/special_data_types/nothing",
- "destination": "/reference/data-types/special-data-types/nothing"
- },
- {
- "source": "/data_types/special_data_types/set",
- "destination": "/reference/data-types/special-data-types/set"
- },
- {
- "source": "/sql_reference/data_types/special_data_types/set",
- "destination": "/reference/data-types/special-data-types/set"
- },
- {
- "source": "/data_types/string",
- "destination": "/reference/data-types/string"
- },
- {
- "source": "/sql_reference/data_types/string",
- "destination": "/reference/data-types/string"
- },
- {
- "source": "/data_types/tuple",
- "destination": "/reference/data-types/tuple"
- },
- {
- "source": "/sql_reference/data_types/tuple",
- "destination": "/reference/data-types/tuple"
- },
- {
- "source": "/data_types/uuid",
- "destination": "/reference/data-types/uuid"
- },
- {
- "source": "/sql_reference/data_types/uuid",
- "destination": "/reference/data-types/uuid"
- },
- {
- "source": "/query_language/dicts",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/sql_reference/dictionaries",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/query_language/dicts/external_dicts",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/query_language/dicts/external_dicts_dict",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict",
- "destination": "/reference/statements/create/dictionary"
- },
- {
- "source": "/query_language/dicts/external_dicts_dict_hierarchical",
- "destination": "/reference/statements/create/dictionary/layouts/hierarchical"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_hierarchical",
- "destination": "/reference/statements/create/dictionary/layouts/hierarchical"
- },
- {
- "source": "/query_language/dicts/external_dicts_dict_layout",
- "destination": "/reference/statements/create/dictionary/layouts/overview"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_layout",
- "destination": "/reference/statements/create/dictionary/layouts/overview"
- },
- {
- "source": "/query_language/dicts/external_dicts_dict_lifetime",
- "destination": "/reference/statements/create/dictionary/lifetime"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_lifetime",
- "destination": "/reference/statements/create/dictionary/lifetime"
- },
- {
- "source": "/query_language/dicts/external_dicts_dict_sources",
- "destination": "/reference/statements/create/dictionary/sources/overview"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_sources",
- "destination": "/reference/statements/create/dictionary/sources/overview"
- },
- {
- "source": "/query_language/dicts/external_dicts_dict_structure",
- "destination": "/reference/statements/create/dictionary/attributes"
- },
- {
- "source": "/sql_reference/dictionaries/external_dictionaries/external_dicts_dict_structure",
- "destination": "/reference/statements/create/dictionary/attributes"
- },
- {
- "source": "/query_language/dicts/internal_dicts",
- "destination": "/reference/statements/create/dictionary/embedded"
- },
- {
- "source": "/sql_reference/dictionaries/internal_dicts",
- "destination": "/reference/statements/create/dictionary/embedded"
- },
- {
- "source": "/query_language/functions",
- "destination": "/reference/functions/regular-functions"
- },
- {
- "source": "/sql_reference/functions",
- "destination": "/reference/functions/regular-functions"
- },
- {
- "source": "/query_language/functions/arithmetic_functions",
- "destination": "/reference/functions/regular-functions/arithmetic-functions"
- },
- {
- "source": "/sql_reference/functions/arithmetic_functions",
- "destination": "/reference/functions/regular-functions/arithmetic-functions"
- },
- {
- "source": "/query_language/functions/array_functions",
- "destination": "/reference/functions/regular-functions/array-functions"
- },
- {
- "source": "/sql_reference/functions/array_functions",
- "destination": "/reference/functions/regular-functions/array-functions"
- },
- {
- "source": "/query_language/functions/array_join",
- "destination": "/reference/functions/regular-functions/array-join"
- },
- {
- "source": "/sql_reference/functions/array_join",
- "destination": "/reference/functions/regular-functions/array-join"
- },
- {
- "source": "/query_language/functions/bit_functions",
- "destination": "/reference/functions/regular-functions/bit-functions"
- },
- {
- "source": "/sql_reference/functions/bit_functions",
- "destination": "/reference/functions/regular-functions/bit-functions"
- },
- {
- "source": "/query_language/functions/bitmap_functions",
- "destination": "/reference/functions/regular-functions/bitmap-functions"
- },
- {
- "source": "/sql_reference/functions/bitmap_functions",
- "destination": "/reference/functions/regular-functions/bitmap-functions"
- },
- {
- "source": "/query_language/functions/comparison_functions",
- "destination": "/reference/functions/regular-functions/comparison-functions"
- },
- {
- "source": "/sql_reference/functions/comparison_functions",
- "destination": "/reference/functions/regular-functions/comparison-functions"
- },
- {
- "source": "/query_language/functions/conditional_functions",
- "destination": "/reference/functions/regular-functions/conditional-functions"
- },
- {
- "source": "/sql_reference/functions/conditional_functions",
- "destination": "/reference/functions/regular-functions/conditional-functions"
- },
- {
- "source": "/query_language/functions/date_time_functions",
- "destination": "/reference/functions/regular-functions/date-time-functions"
- },
- {
- "source": "/sql_reference/functions/date_time_functions",
- "destination": "/reference/functions/regular-functions/date-time-functions"
- },
- {
- "source": "/query_language/functions/encoding_functions",
- "destination": "/reference/functions/regular-functions/encoding-functions"
- },
- {
- "source": "/sql_reference/functions/encoding_functions",
- "destination": "/reference/functions/regular-functions/encoding-functions"
- },
- {
- "source": "/query_language/functions/ext_dict_functions",
- "destination": "/reference/functions/regular-functions/ext-dict-functions"
- },
- {
- "source": "/sql_reference/functions/ext_dict_functions",
- "destination": "/reference/functions/regular-functions/ext-dict-functions"
- },
- {
- "source": "/query_language/functions/functions_for_nulls",
- "destination": "/reference/functions/regular-functions/functions-for-nulls"
- },
- {
- "source": "/sql_reference/functions/functions_for_nulls",
- "destination": "/reference/functions/regular-functions/functions-for-nulls"
- },
- {
- "source": "/query_language/functions/geo",
- "destination": "/reference/functions/regular-functions/geo"
- },
- {
- "source": "/sql_reference/functions/geo",
- "destination": "/reference/functions/regular-functions/geo"
- },
- {
- "source": "/query_language/functions/hash_functions",
- "destination": "/reference/functions/regular-functions/hash-functions"
- },
- {
- "source": "/sql_reference/functions/hash_functions",
- "destination": "/reference/functions/regular-functions/hash-functions"
- },
- {
- "source": "/query_language/functions/in_functions",
- "destination": "/reference/functions/regular-functions/in-functions"
- },
- {
- "source": "/sql_reference/functions/in_functions",
- "destination": "/reference/functions/regular-functions/in-functions"
- },
- {
- "source": "/query_language/functions/introspection",
- "destination": "/reference/functions/regular-functions/introspection"
- },
- {
- "source": "/sql_reference/functions/introspection",
- "destination": "/reference/functions/regular-functions/introspection"
- },
- {
- "source": "/query_language/functions/ip_address_functions",
- "destination": "/reference/functions/regular-functions/ip-address-functions"
- },
- {
- "source": "/sql_reference/functions/ip_address_functions",
- "destination": "/reference/functions/regular-functions/ip-address-functions"
- },
- {
- "source": "/query_language/functions/json_functions",
- "destination": "/reference/functions/regular-functions/json-functions"
- },
- {
- "source": "/sql_reference/functions/json_functions",
- "destination": "/reference/functions/regular-functions/json-functions"
- },
- {
- "source": "/query_language/functions/logical_functions",
- "destination": "/reference/functions/regular-functions/logical-functions"
- },
- {
- "source": "/sql_reference/functions/logical_functions",
- "destination": "/reference/functions/regular-functions/logical-functions"
- },
- {
- "source": "/query_language/functions/machine_learning_functions",
- "destination": "/reference/functions/regular-functions/machine-learning-functions"
- },
- {
- "source": "/sql_reference/functions/machine_learning_functions",
- "destination": "/reference/functions/regular-functions/machine-learning-functions"
- },
- {
- "source": "/query_language/functions/math_functions",
- "destination": "/reference/functions/regular-functions/math-functions"
- },
- {
- "source": "/sql_reference/functions/math_functions",
- "destination": "/reference/functions/regular-functions/math-functions"
- },
- {
- "source": "/query_language/functions/other_functions",
- "destination": "/reference/functions/regular-functions/other-functions"
- },
- {
- "source": "/sql_reference/functions/other_functions",
- "destination": "/reference/functions/regular-functions/other-functions"
- },
- {
- "source": "/query_language/functions/random_functions",
- "destination": "/reference/functions/regular-functions/random-functions"
- },
- {
- "source": "/sql_reference/functions/random_functions",
- "destination": "/reference/functions/regular-functions/random-functions"
- },
- {
- "source": "/query_language/functions/rounding_functions",
- "destination": "/reference/functions/regular-functions/rounding-functions"
- },
- {
- "source": "/sql_reference/functions/rounding_functions",
- "destination": "/reference/functions/regular-functions/rounding-functions"
- },
- {
- "source": "/query_language/functions/splitting_merging_functions",
- "destination": "/reference/functions/regular-functions/splitting-merging-functions"
- },
- {
- "source": "/sql_reference/functions/splitting_merging_functions",
- "destination": "/reference/functions/regular-functions/splitting-merging-functions"
- },
- {
- "source": "/query_language/functions/string_functions",
- "destination": "/reference/functions/regular-functions/string-functions"
- },
- {
- "source": "/sql_reference/functions/string_functions",
- "destination": "/reference/functions/regular-functions/string-functions"
- },
- {
- "source": "/query_language/functions/string_replace_functions",
- "destination": "/reference/functions/regular-functions/string-replace-functions"
- },
- {
- "source": "/sql_reference/functions/string_replace_functions",
- "destination": "/reference/functions/regular-functions/string-replace-functions"
- },
- {
- "source": "/query_language/functions/string_search_functions",
- "destination": "/reference/functions/regular-functions/string-search-functions"
- },
- {
- "source": "/sql_reference/functions/string_search_functions",
- "destination": "/reference/functions/regular-functions/string-search-functions"
- },
- {
- "source": "/query_language/functions/type_conversion_functions",
- "destination": "/reference/functions/regular-functions/type-conversion-functions"
- },
- {
- "source": "/sql_reference/functions/type_conversion_functions",
- "destination": "/reference/functions/regular-functions/type-conversion-functions"
- },
- {
- "source": "/query_language/functions/url_functions",
- "destination": "/reference/functions/regular-functions/url-functions"
- },
- {
- "source": "/sql_reference/functions/url_functions",
- "destination": "/reference/functions/regular-functions/url-functions"
- },
- {
- "source": "/query_language/functions/uuid_functions",
- "destination": "/reference/functions/regular-functions/uuid-functions"
- },
- {
- "source": "/sql_reference/functions/uuid_functions",
- "destination": "/reference/functions/regular-functions/uuid-functions"
- },
- {
- "source": "/query_language/functions/ym_dict_functions",
- "destination": "/reference/functions/regular-functions/embedded-dict-functions"
- },
- {
- "source": "/sql_reference/functions/ym_dict_functions",
- "destination": "/reference/functions/regular-functions/embedded-dict-functions"
- },
- {
- "source": "/query_language/operators",
- "destination": "/reference/operators"
- },
- {
- "source": "/sql_reference/operators",
- "destination": "/reference/operators"
- },
- {
- "source": "/sql_reference/statements",
- "destination": "/reference/statements"
- },
- {
- "source": "/query_language/alter",
- "destination": "/reference/statements/alter"
- },
- {
- "source": "/sql_reference/statements/alter",
- "destination": "/reference/statements/alter"
- },
- {
- "source": "/sql-reference/statements/alter/index",
- "destination": "/reference/statements/alter/skipping-index"
- },
- {
- "source": "/query_language/create",
- "destination": "/reference/statements/create"
- },
- {
- "source": "/sql_reference/statements/create",
- "destination": "/reference/statements/create"
- },
- {
- "source": "/query_language/insert_into",
- "destination": "/reference/statements/insert-into"
- },
- {
- "source": "/sql_reference/statements/insert_into",
- "destination": "/reference/statements/insert-into"
- },
- {
- "source": "/query_language/misc",
- "destination": "/reference/statements"
- },
- {
- "source": "/sql-reference/statements/misc",
- "destination": "/reference/statements"
- },
- {
- "source": "/sql_reference/statements/misc",
- "destination": "/reference/statements"
- },
- {
- "source": "/query_language/select",
- "destination": "/reference/statements/select"
- },
- {
- "source": "/sql_reference/statements/select",
- "destination": "/reference/statements/select"
- },
- {
- "source": "/query_language/show",
- "destination": "/reference/statements/show"
- },
- {
- "source": "/sql_reference/statements/show",
- "destination": "/reference/statements/show"
- },
- {
- "source": "/query_language/system",
- "destination": "/reference/statements/system"
- },
- {
- "source": "/sql_reference/statements/system",
- "destination": "/reference/statements/system"
- },
- {
- "source": "/query_language/syntax",
- "destination": "/reference/syntax"
- },
- {
- "source": "/sql_reference/syntax",
- "destination": "/reference/syntax"
- },
- {
- "source": "/query_language/table_functions",
- "destination": "/reference/functions/table-functions"
- },
- {
- "source": "/sql_reference/table_functions",
- "destination": "/reference/functions/table-functions"
- },
- {
- "source": "/query_language/table_functions/file",
- "destination": "/reference/functions/table-functions/file"
- },
- {
- "source": "/sql_reference/table_functions/file",
- "destination": "/reference/functions/table-functions/file"
- },
- {
- "source": "/query_language/table_functions/generate",
- "destination": "/reference/functions/table-functions/generate"
- },
- {
- "source": "/sql_reference/table_functions/generate",
- "destination": "/reference/functions/table-functions/generate"
- },
- {
- "source": "/query_language/table_functions/hdfs",
- "destination": "/reference/functions/table-functions/hdfs"
- },
- {
- "source": "/sql_reference/table_functions/hdfs",
- "destination": "/reference/functions/table-functions/hdfs"
- },
- {
- "source": "/query_language/table_functions/input",
- "destination": "/reference/functions/table-functions/input"
- },
- {
- "source": "/sql_reference/table_functions/input",
- "destination": "/reference/functions/table-functions/input"
- },
- {
- "source": "/query_language/table_functions/jdbc",
- "destination": "/reference/functions/table-functions/jdbc"
- },
- {
- "source": "/sql_reference/table_functions/jdbc",
- "destination": "/reference/functions/table-functions/jdbc"
- },
- {
- "source": "/query_language/table_functions/merge",
- "destination": "/reference/functions/table-functions/merge"
- },
- {
- "source": "/sql_reference/table_functions/merge",
- "destination": "/reference/functions/table-functions/merge"
- },
- {
- "source": "/query_language/table_functions/mysql",
- "destination": "/reference/functions/table-functions/mysql"
- },
- {
- "source": "/sql_reference/table_functions/mysql",
- "destination": "/reference/functions/table-functions/mysql"
- },
- {
- "source": "/query_language/table_functions/numbers",
- "destination": "/reference/functions/table-functions/numbers"
- },
- {
- "source": "/sql_reference/table_functions/numbers",
- "destination": "/reference/functions/table-functions/numbers"
- },
- {
- "source": "/query_language/table_functions/odbc",
- "destination": "/reference/functions/table-functions/odbc"
- },
- {
- "source": "/sql_reference/table_functions/odbc",
- "destination": "/reference/functions/table-functions/odbc"
- },
- {
- "source": "/query_language/table_functions/remote",
- "destination": "/reference/functions/table-functions/remote"
- },
- {
- "source": "/sql_reference/table_functions/remote",
- "destination": "/reference/functions/table-functions/remote"
- },
- {
- "source": "/query_language/table_functions/url",
- "destination": "/reference/functions/table-functions/url"
- },
- {
- "source": "/sql_reference/table_functions/url",
- "destination": "/reference/functions/table-functions/url"
- },
- {
- "source": "/whats_new",
- "destination": "/resources/changelogs/oss/2026"
- },
- {
- "source": "/changelog",
- "destination": "/resources/changelogs/oss/2026"
- },
- {
- "source": "/whats_new/changelog",
- "destination": "/resources/changelogs/oss/2026"
- },
- {
- "source": "/changelog/2017",
- "destination": "/resources/changelogs/oss/2017"
- },
- {
- "source": "/whats_new/changelog/2017",
- "destination": "/resources/changelogs/oss/2017"
- },
- {
- "source": "/changelog/2018",
- "destination": "/resources/changelogs/oss/2018"
- },
- {
- "source": "/whats_new/changelog/2018",
- "destination": "/resources/changelogs/oss/2018"
- },
- {
- "source": "/changelog/2019",
- "destination": "/resources/changelogs/oss/2019"
- },
- {
- "source": "/whats_new/changelog/2019",
- "destination": "/resources/changelogs/oss/2019"
- },
- {
- "source": "/extended_roadmap",
- "destination": "/resources/contribute/roadmap"
- },
- {
- "source": "/roadmap",
- "destination": "/resources/contribute/roadmap"
- },
- {
- "source": "/whats_new/roadmap",
- "destination": "/resources/contribute/roadmap"
- },
- {
- "source": "/security_changelog",
- "destination": "/resources/changelogs/security-changelog"
- },
- {
- "source": "/whats_new/security_changelog",
- "destination": "/resources/changelogs/security-changelog"
- },
- {
- "source": "/introduction",
- "destination": "/get-started/about/intro"
- },
- {
- "source": "/introduction/adopters",
- "destination": "/resources/about/adopters"
- },
- {
- "source": "/introduction/distinctive-features",
- "destination": "/get-started/about/distinctive-features"
- },
- {
- "source": "/introduction/history",
- "destination": "/resources/about/history"
- },
- {
- "source": "/introduction/performance",
- "destination": "/get-started/about/why-clickhouse-is-so-fast"
- },
- {
- "source": "/getting-started/tutorial",
- "destination": "/get-started/quickstarts/tutorial"
- },
- {
- "source": "/getting-started/install",
- "destination": "/get-started/setup/self-managed/install"
- },
- {
- "source": "/faq/general/how-do-i-contribute-code-to-clickhouse",
- "destination": "/resources/support-center/knowledge-base/general-faqs/how-do-i-contribute-code-to-clickhouse"
- },
- {
- "source": "/manage/security",
- "destination": "/concepts/features/security/configuring-ldap"
- },
- {
- "source": "/single",
- "destination": "/reference/statements/create/view"
- },
- {
- "source": "/architecture/single-node-deployment",
- "destination": "/get-started/setup/self-managed/install"
- },
- {
- "source": "/home",
- "destination": "/"
- },
- {
- "source": "/chdb/data-formats",
- "destination": "/products/chdb/reference/data-formats"
- },
- {
- "source": "/chdb/sql-reference",
- "destination": "/products/chdb/reference/sql-reference"
- },
- {
- "source": "/get-started/query-endpoints",
- "destination": "/products/cloud/guides/sql-console/query-endpoints"
- },
- {
- "source": "/get-started/query-insights",
- "destination": "/products/cloud/features/sql-console-features/query-insights"
- },
- {
- "source": "/get-started/sql-console",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/manage/billing",
- "destination": "/products/cloud/reference/billing/billing-overview"
- },
- {
- "source": "/cloud/manage/billing/overview#clickpipes-for-streaming-object-storage",
- "destination": "/products/cloud/reference/billing/clickpipes/clickpipes-for-streaming-and-object-storage"
- },
- {
- "source": "/integrations/clickpipes/object-storage",
- "destination": "/integrations/clickpipes/object-storage/amazon-s3/get-started"
- },
- {
- "source": "/integrations/clickpipes/object-storage/reference",
- "destination": "/integrations/clickpipes/object-storage/amazon-s3/overview"
- },
- {
- "source": "/cloud/marketplace",
- "destination": "/products/cloud/reference/billing/marketplace"
- },
- {
- "source": "/deletes",
- "destination": "/concepts/operations/delete/overview"
- },
- {
- "source": "/optimize",
- "destination": "/guides/performance-and-monitoring"
- },
- {
- "source": "/observability",
- "destination": "/guides/observability"
- },
- {
- "source": "/integrations/sql-clients/clickhouse-client-local",
- "destination": "/integrations/connectors/data-integrations/drivers-and-interfaces/cli"
- },
- {
- "source": "/sql-reference/dictionaries/external-dictionaries/external-dict",
- "destination": "/reference/statements/create/dictionary/embedded"
- },
- {
- "source": "/integrations/java/jdbc-driver",
- "destination": "/integrations/language-clients/java/jdbc"
- },
- {
- "source": "/integrations/sql-clients/cli",
- "destination": "/integrations/connectors/data-integrations/drivers-and-interfaces/cli"
- },
- {
- "source": "/operations/clickhouse-keeper",
- "destination": "/concepts/features/tools-and-utilities/clickhouse-keeper-client"
- },
- {
- "source": "/guides/sre/clickhouse-keeper",
- "destination": "/guides/oss/deployment-and-scaling/keeper"
- },
- {
- "source": "/operations/settings/merge-tree",
- "destination": "/reference/settings/merge-tree-settings"
- },
- {
- "source": "/operations/settings/merge-tree-setting",
- "destination": "/reference/settings/merge-tree-settings"
- },
- {
- "source": "/materialized-view",
- "destination": "/concepts/features/materialized-views"
- },
- {
- "source": "/cloud/manage/service-types",
- "destination": "/products/cloud/features/cloud-tiers"
- },
- {
- "source": "/integrations/dlt",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dlt-and-clickhouse"
- },
- {
- "source": "/cloud/security/cloud-endpoints-api",
- "destination": "/products/cloud/guides/sql-console/query-endpoints"
- },
- {
- "source": "/operations/server-configuration-parameters",
- "destination": "/reference/settings/server-settings/settings"
- },
- {
- "source": "/intron",
- "destination": "/get-started/about/intro"
- },
- {
- "source": "/query_language/functions/string_functions/",
- "destination": "/reference/functions/regular-functions/string-functions"
- },
- {
- "source": "/integrations/language-clients/java/client-v2",
- "destination": "/integrations/language-clients/java/client"
- },
- {
- "source": "/integrations/language-clients/java/jdbc-v2",
- "destination": "/integrations/language-clients/java/jdbc"
- },
- {
- "source": "/pricing",
- "destination": "/products/cloud/reference/billing/billing-overview"
- },
- {
- "source": "/operations/input-output-formats",
- "destination": "/reference/formats"
- },
- {
- "source": "/cloud/connect",
- "destination": "/products/cloud/features/sql-console-features/sql-console"
- },
- {
- "source": "/engines/database-engines/materialized-mysql",
- "destination": "/reference/engines/database-engines"
- },
- {
- "source": "/sql-reference/aggregate-functions/reference/array_concat_agg",
- "destination": "/reference/functions/aggregate-functions/reference/groupArrayArray"
- },
- {
- "source": "/integrations/java/jdbc-v2",
- "destination": "/integrations/language-clients/java/jdbc"
- },
- {
- "source": "/integrations/java/client-v2",
- "destination": "/integrations/language-clients/java/jdbc"
- },
- {
- "source": "/interfaces/formats/Protobuf/Protobuf",
- "destination": "/reference/formats/Protobuf/Protobuf"
- },
- {
- "source": "/integrations/jdbc",
- "destination": "/integrations/language-clients/java/jdbc"
- },
- {
- "source": "/sql-reference/table-functions/generateSeries",
- "destination": "/reference/functions/table-functions/generate_series"
- },
- {
- "source": "/cloud/data-ingestion",
- "destination": "/integrations/connectors/data-ingestion"
- },
- {
- "source": "/migrations/postgres/en/migrations/postgresql",
- "destination": "/get-started/setup/migration-guides/postgres/overview"
- },
- {
- "source": "/sql-reference/data-types/bfloat16",
- "destination": "/reference/data-types/float#bfloat16"
- },
- {
- "source": "/cloud/reference/compute-compute-separation",
- "destination": "/products/cloud/features/infrastructure/warehouses#what-is-compute-compute-separation"
- },
- {
- "source": "/cloud/bestpractices/bulk-inserts",
- "destination": "/concepts/best-practices/selecting-an-insert-strategy"
- },
- {
- "source": "/cloud/bestpractices/asynchronous-inserts",
- "destination": "/concepts/best-practices/use-materialized-views"
- },
- {
- "source": "/cloud/bestpractices/avoid-mutations",
- "destination": "/concepts/best-practices/avoid-mutations"
- },
- {
- "source": "/cloud/bestpractices/avoid-nullable-columns",
- "destination": "/concepts/best-practices/select-data-type"
- },
- {
- "source": "/cloud/bestpractices/avoid-optimize-final",
- "destination": "/concepts/best-practices/avoid-optimize-final"
- },
- {
- "source": "/cloud/bestpractices/low-cardinality-partitioning-key",
- "destination": "/concepts/best-practices/partitioning-keys"
- },
- {
- "source": "/integrations/postgresql/postgres-vs-clickhouse",
- "destination": "/get-started/setup/migration-guides/postgres/appendix"
- },
- {
- "source": "/migrations/postgresql/designing-schemas",
- "destination": "/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3"
- },
- {
- "source": "/category/engines",
- "destination": "/reference/engines/engines"
- },
- {
- "source": "/integrations/postgresql/data-type-mappings",
- "destination": "/get-started/setup/migration-guides/postgres/appendix#data-type-mappings"
- },
- {
- "source": "/operations/system-tables/error_log",
- "destination": "/reference/system-tables/error_log"
- },
- {
- "source": "/engines/table-engines/special/replicatedmergetree",
- "destination": "/reference/engines/table-engines/mergetree-family/replication"
- },
- {
- "source": "/integrations/language-clients/java/jdbc-v1",
- "destination": "/integrations/language-clients/java/jdbc"
- },
- {
- "source": "/engines/table-engines/integrations/google-cloud-storage",
- "destination": "/reference/functions/table-functions/gcs"
- },
- {
- "source": "/getting-started/example-datasets/reddit-comments",
- "destination": "/get-started/sample-datasets"
- },
- {
- "source": "/getting-started/example-datasets/recipes",
- "destination": "/get-started/sample-datasets"
- },
- {
- "source": "/development/adding_test_queries",
- "destination": "/resources/contribute/tests#adding-a-new-test"
- },
- {
- "source": "/cloud/get-started/cloud-quick-start",
- "destination": "/get-started/setup/cloud"
- },
- {
- "source": "/integrations/migration/upload-a-csv-file",
- "destination": "/products/cloud/guides/migration/upload-a-csv-file"
- },
- {
- "source": "/faq/troubleshooting",
- "destination": "/resources/support-center/knowledge-base/cloud-services/unable-to-access-cloud-service"
- },
- {
- "source": "/cloud/manage/jan-2025-faq/summary",
- "destination": "/products/cloud/features/cloud-tiers"
- },
- {
- "source": "/cloud/manage/jan-2025-faq/new-tiers",
- "destination": "/products/cloud/features/cloud-tiers"
- },
- {
- "source": "/cloud/manage/jan-2025-faq/scaling",
- "destination": "/products/cloud/features/autoscaling/overview"
- },
- {
- "source": "/cloud/manage/jan-2025-faq/backup",
- "destination": "/products/cloud/guides/backups/review-and-restore-backups"
- },
- {
- "source": "/cloud/manage/jan-2025-faq/pricing-dimensions",
- "destination": "/products/cloud/features/cloud-tiers"
- },
- {
- "source": "/cloud/manage/jan-2025-faq/billing",
- "destination": "/products/cloud/reference/billing"
- },
- {
- "source": "/cloud/manage/jan-2025-faq",
- "destination": "/products/cloud/features/cloud-tiers"
- },
- {
- "source": "/cloud/manage/jan-2025-faq/plan-migrations",
- "destination": "/products/cloud/features/cloud-tiers"
- },
- {
- "source": "/operations/system-tables/latency_log",
- "destination": "/reference/system-tables/histogram_metrics"
- },
- {
- "source": "/operations/system-tables/latency_buckets",
- "destination": "/reference/system-tables/histogram_metrics"
- },
- {
- "source": "/integrations/kafka/cloud/confluent/custom-connector-cloud",
- "destination": "/integrations/connectors/data-ingestion/kafka/confluent/confluent-cloud"
- },
- {
- "source": "/integrations/data-ingestion/clickpipes/mysql/parallel_initial_load",
- "destination": "/integrations/clickpipes/mysql/parallel-initial-load"
- },
- {
- "source": "/integrations/data-ingestion/clickpipes/postgres/parallel_initial_load",
- "destination": "/integrations/clickpipes/postgres/parallel-initial-load"
- },
- {
- "source": "/integrations/redshift",
- "destination": "/get-started/setup/migration-guides/redshift/migration-guide"
- },
- {
- "source": "/integrations/migration",
- "destination": "/get-started/setup/migration-guides/overview"
- },
- {
- "source": "/cloud/security/security-and-compliance",
- "destination": "/products/cloud/reference/security/compliance-overview"
- },
- {
- "source": "/cloud/manage",
- "destination": "/products/cloud/features/admin-features/api"
- },
- {
- "source": "/migrations/migrations",
- "destination": "/get-started/setup/migration-guides/overview"
- },
- {
- "source": "/cloud/security/personal-data-access",
- "destination": "/products/cloud/reference/personal-data-access"
- },
- {
- "source": "/cloud/security/cloud-access-management/overview",
- "destination": "/products/cloud/guides/security/cloud-access-management/manage-database-users"
- },
- {
- "source": "/cloud/security/cloud-access-management",
- "destination": "/products/cloud/guides/security/cloud-access-management"
- },
- {
- "source": "/cloud/guides/sql-console/config-sql-console-role-assignments",
- "destination": "/products/cloud/guides/security/cloud-access-management/manage-sql-console-role-assignments"
- },
- {
- "source": "/cloud/security/secure-s3",
- "destination": "/products/cloud/guides/data-sources/accessing-s3-data-securely"
- },
- {
- "source": "/manage/security/cloud-endpoints-api",
- "destination": "/products/cloud/guides/data-sources/cloud-endpoints-api"
- },
- {
- "source": "/cloud/security/shared-responsibility-model",
- "destination": "/products/cloud/reference/security/console-roles"
- },
- {
- "source": "/cloud/security/cloud-authentication",
- "destination": "/products/cloud/features/security#cloud-console-auth"
- },
- {
- "source": "/cloud/security/private-link-overview",
- "destination": "/products/cloud/guides/security/connectivity/private-networking"
- },
- {
- "source": "/cloud/security/connectivity",
- "destination": "/products/cloud/guides/security/connectivity/private-networking"
- },
- {
- "source": "/cloud/guides/sql-console/configure-org-service-role-assignments",
- "destination": "/products/cloud/guides/security/cloud-access-management"
- },
- {
- "source": "/operations/system-tables/crash-log",
- "destination": "/reference/system-tables/crash_log"
- },
- {
- "source": "/operations/system-tables/current-roles",
- "destination": "/reference/system-tables/current_roles"
- },
- {
- "source": "/operations/system-tables/enabled-roles",
- "destination": "/reference/system-tables/enabled_roles"
- },
- {
- "source": "/operations/system-tables/role-grants",
- "destination": "/reference/system-tables/role_grants"
- },
- {
- "source": "/cloud/reference/byoc",
- "destination": "/products/cloud/guides/infrastructure/deployment-options/byoc/overview"
- },
- {
- "source": "/about-clickhouse",
- "destination": "/get-started/about/intro"
- },
- {
- "source": "/cloud/security/inviting-new-users",
- "destination": "/products/cloud/guides/security/cloud-access-management/manage-cloud-users#invite-users"
- },
- {
- "source": "/sql-reference/functions/time-series-analysis-functions",
- "destination": "/reference/functions/regular-functions/time-series-functions"
- },
- {
- "source": "/use-cases/observability/clickstack/ingesting-data/kubernetes",
- "destination": "/products/clickstack/integration-examples/kubernetes"
- },
- {
- "source": "/operations/backup",
- "destination": "/concepts/features/backup-restore/overview"
- },
- {
- "source": "/sql-reference/data-types/object-data-type",
- "destination": "/reference/data-types/newjson"
- },
- {
- "source": "/about-us/faq",
- "destination": "/resources/support-center/knowledge-base/general-faqs/faq-index"
- },
- {
- "source": "/engines/table-engines/mergetree-family/invertedindexes",
- "destination": "/reference/engines/table-engines/mergetree-family/textindexes"
- },
- {
- "source": "/guides/sre/configuring-ssl",
- "destination": "/concepts/features/security/tls/configuring-tls"
- },
- {
- "source": "/use-cases/observability/clickstack/deployment/hyperdx-clickhouse-cloud",
- "destination": "/products/clickstack/deployment/managed"
- },
- {
- "source": "/use-cases/observability/clickstack/demo-days/2026/04/03-04-2026",
- "destination": "/products/clickstack/demo-days/2026/2026-04-03"
- },
- {
- "source": "/use-cases/observability/clickstack/demo-days/2026/04/10-04-2026",
- "destination": "/products/clickstack/demo-days/2026/2026-04-10"
- },
- {
- "source": "/cloud/security/compliance/hipaa-onboarding#deploy-hippa-services",
- "destination": "/products/cloud/guides/security/compliance/hipaa-onboarding#deploy-hipaa-services"
- },
- {
- "source": "/operations/compression_codecs",
- "destination": "/reference/statements/create/table#column_compression_codec"
- },
- {
- "source": "/operations/server-configuration-parameters/users",
- "destination": "/concepts/features/configuration/settings/settings-users"
- },
- {
- "source": "/operations/performance",
- "destination": "/concepts/features/performance/troubleshoot/sampling-query-profiler"
- },
- {
- "source": "/operations/access-rights/users",
- "destination": "/concepts/features/security/access-rights"
- },
- {
- "source": "/operations/resource-management/resource_pools",
- "destination": "/concepts/features/configuration/server-config/workload-scheduling"
- },
- {
- "source": "/whats-new",
- "destination": "/resources/changelogs/oss/2026"
- },
- {
- "source": "/whats-new/TODO",
- "destination": "/resources/changelogs/oss/2026"
- },
- {
- "source": "/whats-new/cloud",
- "destination": "/resources/changelogs/cloud"
- },
- {
- "source": "/cloud/reference/byoc/faq/:path*",
- "destination": "/products/bring-your-own-cloud/reference/faq"
- },
- {
- "source": "/about-quotas-and-query-complexity",
- "destination": "/resources/support-center/knowledge-base/configuration-settings/about-quotas-and-query-complexity"
- },
- {
- "source": "/integrations/dbt/materialized-views",
- "destination": "/integrations/connectors/data-ingestion/etl-tools/dbt/materialization-materialized-view"
- },
- {
- "source": "/managing-data/update_mutations",
- "destination": "/reference/statements/alter/update"
- },
- {
- "source": "/sql-reference/formats",
- "destination": "/reference/formats"
- }
- ],
"contextual": {
"options": [
"copy",
@@ -6217,5 +188,8 @@
"cursor",
"vscode"
]
+ },
+ "redirects": {
+ "$ref": "_site/redirects.json"
}
}
diff --git a/get-started/quickstarts/_prerequisites/cloud_prerequisite.mdx b/get-started/quickstarts/_prerequisites/cloud_prerequisite.mdx
deleted file mode 100644
index 7b44de98..00000000
--- a/get-started/quickstarts/_prerequisites/cloud_prerequisite.mdx
+++ /dev/null
@@ -1,3 +0,0 @@
-To successfully follow this guide, you'll need the following:
-
-- A running ClickHouse Cloud service. If you don't have one yet, complete the [Create your first Cloud service](/get-started/quickstarts/create-your-first-service-on-cloud) quickstart first.
\ No newline at end of file
diff --git a/get-started/sample-datasets/index.mdx b/get-started/sample-datasets/index.mdx
deleted file mode 100644
index a4322656..00000000
--- a/get-started/sample-datasets/index.mdx
+++ /dev/null
@@ -1,58 +0,0 @@
----
-description: 'Get started with ClickHouse using our tutorials and example datasets'
-keywords: ['clickhouse', 'install', 'tutorial', 'sample', 'datasets']
-sidebarTitle: 'Overview'
-slug: /getting-started/example-datasets/
-title: 'Tutorials and example datasets'
-doc_type: 'landing-page'
----
-
-
-These tutorials work with any ClickHouse deployment, including [ClickHouse Cloud](/get-started/setup/cloud).
-
-
-We have a lot of resources for helping you get started and learn how ClickHouse works:
-
-- If you need to get ClickHouse up and running, check out our [Quick Start](/get-started/setup/overview)
-- The [ClickHouse Tutorial](/get-started/quickstarts/tutorial) analyzes a dataset of New York City taxi rides
-
-In addition, the sample datasets provide a great experience on working with ClickHouse,
-learning important techniques and tricks, and seeing how to take advantage of the many powerful
-functions in ClickHouse. The sample datasets include:
-
-{/* The following table is automatically generated at build time
-by https://github.com/ClickHouse/clickhouse-docs/blob/main/scripts/autogenerate-table-of-contents.sh */}
-
-{/*AUTOGENERATED_START*/}
-| Page | Description |
-|-----|-----|
-| [Amazon customer review](/get-started/sample-datasets/amazon-reviews) | Over 150M customer reviews of Amazon products |
-| [AMPLab Big Data Benchmark](/get-started/sample-datasets/amplab-benchmark) | A benchmark dataset used for comparing the performance of data warehousing solutions. |
-| [Analyzing Stack Overflow data with ClickHouse](/get-started/sample-datasets/stackoverflow) | Analyzing Stack Overflow data with ClickHouse |
-| [Anonymized web analytics](/get-started/sample-datasets/anon-web-analytics-metrica) | Dataset consisting of two tables containing anonymized web analytics data with hits and visits |
-| [Brown University Benchmark](/get-started/sample-datasets/brown-benchmark) | A new analytical benchmark for machine-generated log data |
-| [COVID-19 open data](/get-started/sample-datasets/covid19) | COVID-19 Open-Data is a large, open-source database of COVID-19 epidemiological data and related factors like demographics, economics, and government responses |
-| [dbpedia dataset](/get-started/sample-datasets/dbpedia) | Dataset containing 1 million articles from Wikipedia and their vector embeddings |
-| [Environmental sensors data](/get-started/sample-datasets/environmental-sensors) | Over 20 billion records of data from Sensor.Community, a contributors-driven global sensor network that creates Open Environmental Data. |
-| [Foursquare places](/get-started/sample-datasets/foursquare-os-places) | Dataset with over 100 million records containing information about places on a map, such as shops, restaurants, parks, playgrounds, and monuments. |
-| [Geo data using the cell tower dataset](/get-started/sample-datasets/cell-towers) | Learn how to load OpenCelliD data into ClickHouse, connect Apache Superset to ClickHouse and build a dashboard based on data |
-| [GitHub events dataset](/get-started/sample-datasets/github-events) | Dataset containing all events on GitHub from 2011 to Dec 6 2020, with a size of 3.1 billion records. |
-| [Hacker News dataset](/get-started/sample-datasets/hacker-news) | Dataset containing 28 million rows of hacker news data. |
-| [Hacker News vector search dataset](/get-started/sample-datasets/hacker-news-vector-search) | Dataset containing 28+ million Hacker News postings & their vector embeddings |
-| [LAION 5B dataset](/get-started/sample-datasets/laion5b) | Dataset containing 100 million vectors from the LAION 5B dataset |
-| [Laion-400M dataset](/get-started/sample-datasets/laion) | Dataset containing 400 million images with English image captions |
-| [New York Public Library "What's on the Menu?" dataset](/get-started/sample-datasets/menus) | Dataset containing 1.3 million records of historical data on the menus of hotels, restaurants and cafes with the dishes along with their prices. |
-| [New York taxi data](/get-started/sample-datasets/nyc-taxi) | Data for billions of taxi and for-hire vehicle (Uber, Lyft, etc.) trips originating in New York City since 2009 |
-| [NOAA Global Historical Climatology Network](/get-started/sample-datasets/noaa) | 2.5 billion rows of climate data for the last 120 yrs |
-| [NYPD complaint data](/get-started/sample-datasets/nypd-complaint-data) | Ingest and query Tab Separated Value data in 5 steps |
-| [OnTime](/get-started/sample-datasets/ontime) | Dataset containing the on-time performance of airline flights |
-| [Star Schema Benchmark (SSB, 2009)](/get-started/sample-datasets/star-schema) | The Star Schema Benchmark (SSB) data set and queries |
-| [Taiwan historical weather datasets](/get-started/sample-datasets/tw-weather) | 131 million rows of weather observation data for the last 128 yrs |
-| [Terabyte click logs from Criteo](/get-started/sample-datasets/criteo) | A terabyte of click logs from Criteo |
-| [The UK property prices dataset](/get-started/sample-datasets/uk-price-paid) | Learn how to use projections to improve the performance of queries that you run frequently using the UK property dataset, which contains data about prices paid for real-estate property in England and Wales |
-| [TPC-DS (2012)](/get-started/sample-datasets/tpcds) | The TPC-DS benchmark data set and queries. |
-| [TPC-H (1999)](/get-started/sample-datasets/tpch) | The TPC-H benchmark data set and queries. |
-| [WikiStat](/get-started/sample-datasets/wikistat) | Explore the WikiStat dataset containing 0.5 trillion records. |
-| [Writing queries in ClickHouse using GitHub data](/get-started/sample-datasets/github) | Dataset containing all of the commits and changes for the ClickHouse repository |
-| [YouTube dataset of dislikes](/get-started/sample-datasets/youtube-dislikes) | A collection of dislikes of YouTube videos. |
-{/*AUTOGENERATED_END*/}
diff --git a/get-started/setup/migration-guides/bigquery/index.mdx b/get-started/setup/migration-guides/bigquery/index.mdx
deleted file mode 100644
index d37271ff..00000000
--- a/get-started/setup/migration-guides/bigquery/index.mdx
+++ /dev/null
@@ -1,15 +0,0 @@
----
-slug: /migrations/bigquery
-title: 'BigQuery'
-description: 'Landing page for the BigQuery migrations section'
-keywords: ['BigQuery', 'migration']
-doc_type: 'landing-page'
----
-
-In this section of the docs, learn more about the similarities and differences between BigQuery and ClickHouse Cloud, as well as why you might want to migrate and how to do so.
-
-| Page | Description |
-|-----------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [BigQuery vs ClickHouse Cloud](/get-started/setup/migration-guides/bigquery/overview) | The way resources are organized in ClickHouse Cloud is similar to BigQuery's resource hierarchy. We describe the specific differences in this article. |
-| [Migrating from BigQuery to ClickHouse Cloud](/get-started/setup/migration-guides/bigquery/migrating-to-clickhouse-cloud) | Learn about why you might want to migrate from BigQuery to ClickHouse Cloud. |
-| [Loading Data](/get-started/setup/migration-guides/bigquery/loading-data) | A guide showing you how to migrate data from BigQuery to ClickHouse. |
diff --git a/get-started/setup/migration-guides/overview.mdx b/get-started/setup/migration-guides/overview.mdx
deleted file mode 100644
index e40768d0..00000000
--- a/get-started/setup/migration-guides/overview.mdx
+++ /dev/null
@@ -1,31 +0,0 @@
----
-sidebarTitle: 'Overview'
-slug: /integrations/migration/overview
-keywords: ['clickhouse', 'migrate', 'migration', 'migrating', 'data']
-title: 'Migrating Data into ClickHouse'
-description: 'Page describing the options available for migrating data into ClickHouse'
-doc_type: 'guide'
----
-
-
-
-
-
-
-
-
-
-There are several options for migrating data into ClickHouse Cloud, depending on where your data resides now:
-
-- [Self-managed to Cloud](/get-started/setup/migration-guides/oss-to-cloud/clickhouse-to-cloud): use the `remoteSecure` function to transfer data
-- [Another DBMS](/get-started/setup/migration-guides/other-methods/clickhouse-local-etl): use the [clickhouse-local] ETL tool along with the appropriate ClickHouse table function for your current DBMS
-- [Anywhere!](/get-started/setup/migration-guides/other-methods/etl-tool-to-clickhouse): use one of the many popular ETL/ELT tools that connect to all kinds of different data sources
-- [Object Storage](/get-started/setup/migration-guides/other-methods/object-storage-to-clickhouse): easily insert data from S3 into ClickHouse
-
-In the example [Migrate from Redshift](/get-started/setup/migration-guides/redshift/migration-guide), we present three different ways to migrate data to ClickHouse.
diff --git a/get-started/setup/migration-guides/postgres/index.mdx b/get-started/setup/migration-guides/postgres/index.mdx
deleted file mode 100644
index bda8ca60..00000000
--- a/get-started/setup/migration-guides/postgres/index.mdx
+++ /dev/null
@@ -1,16 +0,0 @@
----
-slug: /migrations/postgresql
-title: 'PostgreSQL'
-description: 'Landing page for the PostgreSQL migrations section'
-doc_type: 'landing-page'
-keywords: ['PostgreSQL migration', 'database migration', 'ClickHouse migration', 'CDC replication', 'data migration']
----
-
-| Page | Description |
-|----------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Overview](/get-started/setup/migration-guides/postgres/overview) | Introduction page for this section |
-| [Connecting to PostgreSQL](/integrations/connectors/data-ingestion/postgresql/connecting-to-postgresql) | This page covers the following options for integrating PostgreSQL with ClickHouse: ClickPipes, PeerDB, PostgreSQL table engine, MaterializedPostgreSQL database engine. |
-| [Migrating data](/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part1) | Part 1 of a guide on migrating from PostgreSQL to ClickHouse. Using a practical example, it demonstrates how to efficiently carry out the migration with a real-time replication (CDC) approach. Many of the concepts covered are also applicable to manual bulk data transfers from PostgreSQL to ClickHouse. |
-|[Rewriting PostgreSQL Queries](/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part2)|Part 2 of a guide on migrating from PostgreSQL to ClickHouse. Using a practical example, it demonstrates how to efficiently carry out the migration with a real-time replication (CDC) approach. Many of the concepts covered are also applicable to manual bulk data transfers from PostgreSQL to ClickHouse.|
-|[Data modeling techniques](/get-started/setup/migration-guides/postgres/migration-guide/migration-guide-part3)|Part 3 of a guide on migrating from PostgreSQL to ClickHouse. Using a practical example, it demonstrates how to model data in ClickHouse if migrating from PostgreSQL.|
-|[Appendix](/get-started/setup/migration-guides/postgres/appendix)|Additional information relevant to migrating from PostgreSQL|
diff --git a/get-started/setup/overview.mdx b/get-started/setup/overview.mdx
deleted file mode 100644
index 43da4ed2..00000000
--- a/get-started/setup/overview.mdx
+++ /dev/null
@@ -1,22 +0,0 @@
----
-slug: /getting-started/quick-start
-title: 'Setup'
-sidebarTitle: 'Overview'
-description: 'Choose how to run ClickHouse — Cloud, self-managed, or migrate from another database.'
-doc_type: 'landing-page'
-keywords: ['setup', 'install', 'cloud', 'self-managed', 'migration']
----
-
-Pick the path that matches how you want to run ClickHouse.
-
-
-
- Spin up a managed ClickHouse service in minutes — no infrastructure to operate.
-
-
- Install and run ClickHouse on your own infrastructure: Linux, macOS, Windows, Docker, or Kubernetes.
-
-
- Move data into ClickHouse from PostgreSQL, BigQuery, Snowflake, Redshift, Elasticsearch, and more.
-
-
\ No newline at end of file
diff --git a/get-started/setup/self-managed/install.mdx b/get-started/setup/self-managed/install.mdx
deleted file mode 100644
index db1fbdfb..00000000
--- a/get-started/setup/self-managed/install.mdx
+++ /dev/null
@@ -1,45 +0,0 @@
----
-description: 'Install ClickHouse'
-keywords: ['clickhouse', 'install', 'getting started', 'quick start']
-sidebarTitle: 'Install'
-slug: /install
-title: 'Install ClickHouse'
-doc_type: 'guide'
----
-
-import InstallSelector from "/snippets/components/Install/Install.jsx";
-import CLIInstall from '/snippets/_cli_install.mdx';
-import Windows from '/snippets/_windows_install.mdx';
-import TarProd from '/snippets/_linux_tar_install.mdx';
-import QuickInstall from '/snippets/_quick_install.mdx';
-import DebianProd from '/snippets/_deb_install.mdx';
-import RPMProd from '/snippets/_rpm_install.mdx';
-import MacOSProd from '/snippets/_macos.mdx';
-import NixOS from '/snippets/_nixos_install.mdx';
-import Docker from '/snippets/_docker.mdx';
-
-import {galaxyOnClick} from "/snippets/lib/galaxy.jsx";
-
-# Installation instructions
-
-
- Start building instantly without having to size and scale your cluster. We take care of sizing, scaling
- , security, reliability and upgrades.
-
-
-
-Alternatively, select a platform, distribution and install method below to view install
-instructions for Opensource ClickHouse:
-
-}
- windows={}
- quickinstall={}
- debian_prod={}
- rpm_prod={}
- tar_prod={}
- macos_prod={}
- nixos={}
- docker={}
-/>
-
diff --git a/get-started/setup/self-managed/quick-install.mdx b/get-started/setup/self-managed/quick-install.mdx
deleted file mode 100644
index d7244075..00000000
--- a/get-started/setup/self-managed/quick-install.mdx
+++ /dev/null
@@ -1,83 +0,0 @@
----
-description: 'Quickly install ClickHouse using the CLI or curl'
-keywords: ['ClickHouse', 'install', 'quick', 'curl', 'clickhousectl', 'CLI']
-sidebarTitle: 'Quick install'
-slug: /install/quick-install
-title: 'Quick install'
-hide_title: true
-doc_type: 'guide'
----
-
-import QuickInstall from '/snippets/_quick_install.mdx';
-
-If you don't need to install ClickHouse for production, the quickest way to get
-set up is using the ClickHouse CLI or running an install script using curl.
-
-
-
-
-The ClickHouse CLI (`clickhousectl`) helps you install and manage local ClickHouse
-versions, launch servers, and run queries.
-
-
-
-## Install the ClickHouse CLI {#install-the-cli}
-
-```bash
-curl https://clickhouse.com/cli | sh
-```
-
-A `chctl` alias is also created automatically for convenience.
-
-
-## Install ClickHouse {#install-clickhouse}
-
-```bash
-clickhousectl local install stable
-```
-
-
-## Start clickhouse-server {#start-clickhouse-server}
-
-```bash
-clickhousectl local server start
-```
-
-The server runs in the background. To verify it's running:
-
-```bash
-clickhousectl local server list
-```
-
-
-## Start clickhouse-client {#start-clickhouse-client}
-
-```bash
-clickhousectl local client
-```
-
-You will see something like this:
-
-```response
-ClickHouse client version 24.5.1.117 (official build).
-Connecting to localhost:9000 as user default.
-Connected to ClickHouse server version 24.5.1.
-
-local-host :)
-```
-
-You're now ready to start sending SQL commands to ClickHouse!
-
-
-The [Quick Start](/get-started/setup/overview) walks you through the steps for creating tables and inserting data.
-
-
-
-
-
-
-
-
-
-
-
diff --git a/guides/ai-ml/MCP/ai-agent-libraries/index.mdx b/guides/ai-ml/MCP/ai-agent-libraries/index.mdx
deleted file mode 100644
index ecd59a20..00000000
--- a/guides/ai-ml/MCP/ai-agent-libraries/index.mdx
+++ /dev/null
@@ -1,28 +0,0 @@
----
-slug: /use-cases/AI/MCP/ai-agent-libraries
-title: 'Integrate AI agent libraries with ClickHouse MCP server'
-description: 'Learn how to build an AI agent with DSPy and the ClickHouse MCP server'
-keywords: ['ClickHouse', 'Agno', 'Chainlit', 'MCP', 'DSPy', 'LangChain', 'LlamaIndex', 'OpenAI agents', 'PydanticAI', 'SlackBot', 'StreamLit']
-doc_type: 'guide'
----
-
-{/*AUTOGENERATED_START*/}
-| Page | Description |
-|-----|-----|
-| [How to build a ClickHouse-backed AI Agent with Streamlit](/guides/ai-ml/MCP/ai-agent-libraries/streamlit) | Learn how to build a web-based AI Agent with Streamlit and the ClickHouse MCP server |
-| [How to build a LangChain/LangGraph AI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/langchain) | Learn how to build a LangChain/LangGraph AI agent that can interact with ClickHouse's SQL playground using ClickHouse's MCP server. |
-| [How to build a LlamaIndex AI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/llamaindex) | Learn how to build a LlamaIndex AI agent that can interact with ClickHouse MCP server. |
-| [How to build a PydanticAI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/pydantic-ai) | Learn how to build a PydanticAI agent that can interact with ClickHouse MCP server. |
-| [How to build a SlackBot agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/slackbot) | Learn how to build a SlackBot agent that can interact with ClickHouse MCP server. |
-| [How to build an AI Agent with Agno and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/agno) | Learn how build an AI Agent with Agno and the ClickHouse MCP server |
-| [How to build an AI Agent with Chainlit and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/chainlit) | Learn how to use Chainlit to build LLM-based chat apps together with the ClickHouse MCP server |
-| [How to build an AI Agent with Claude Agent SDK and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/claude-agent-sdk) | Learn how build an AI Agent with Claude Agent SDK and the ClickHouse MCP server |
-| [How to build an AI Agent with CopilotKit and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/copilotkit) | Learn how to build an agentic application using data stored in ClickHouse with ClickHouse MCP and CopilotKit |
-| [How to build an AI Agent with CrewAI and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/crewai) | Learn how build an AI Agent with CrewAI and the ClickHouse MCP server |
-| [How to build an AI Agent with DSPy and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/dspy) | Learn how to build an AI agent with DSPy and the ClickHouse MCP server |
-| [How to build an AI Agent with mcp-agent and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/mcp-agent) | Learn how build an AI Agent with mcp-agent and the ClickHouse MCP server |
-| [How to build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/microsoft-agent-framework) | Learn how build an AI Agent with Microsoft Agent framework and the ClickHouse MCP server |
-| [How to build an AI Agent with Upsonic and the ClickHouse MCP server](/guides/ai-ml/MCP/ai-agent-libraries/upsonic) | Learn how build an AI Agent with Upsonic and the ClickHouse MCP server |
-| [How to build an OpenAI agent using ClickHouse MCP server.](/guides/ai-ml/MCP/ai-agent-libraries/openai-agents) | Learn how to build an OpenAI agent that can interact with ClickHouse MCP server. |
-{/*AUTOGENERATED_END*/}
-
diff --git a/guides/ai-ml/index.mdx b/guides/ai-ml/index.mdx
deleted file mode 100644
index 70644854..00000000
--- a/guides/ai-ml/index.mdx
+++ /dev/null
@@ -1,19 +0,0 @@
----
-description: 'Landing page for Machine Learning and GenAI use case guides'
-slug: /use-cases/AI/ask-ai
-title: 'Machine learning and GenAI'
-keywords: ['machine learning', 'genAI', 'AI']
-doc_type: 'landing-page'
----
-
-ClickHouse is ideally suited as a real-time database to power Machine Learning workloads.
-With ClickHouse, it's easier than ever to unleash GenAI on your analytics data.
-In this section, you'll find some guides around how ClickHouse is used for
-Machine Learning and GenAI.
-
-| Section | Description |
-| ------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------- |
-| [AI chat](/use-cases/ai-ml/aichat/using-ai-chat) | This guide explains how to enable and use the AI Chat feature in the ClickHouse Cloud Console. |
-| [Semantic Layer](/use-cases/ai-ml/aichat/customizing-semantic-layer) | Learn how to customize the ClickHouse Assistant chat agent with AGENTS.md to provide business-specific rules, calculations, and data structure guidance. |
-| [MCP](/guides/ai-ml/MCP) | A collection of guides to get you setup using Model Context Protocol (MCP) with ClickHouse |
-| [AI-powered SQL generation](/guides/ai-ml/ai-powered-sql-generation) | This feature allows you to describe your data requirements in plain text, which the system then translates into corresponding SQL statements. |
diff --git a/guides/cloud-oss/data-modelling/index.mdx b/guides/cloud-oss/data-modelling/index.mdx
deleted file mode 100644
index e56071e6..00000000
--- a/guides/cloud-oss/data-modelling/index.mdx
+++ /dev/null
@@ -1,18 +0,0 @@
----
-slug: /data-modeling/overview
-title: 'Data modelling overview'
-description: 'Overview of Data Modelling'
-keywords: ['data modelling', 'schema design', 'dictionary', 'materialized view', 'data compression', 'denormalizing data']
-doc_type: 'landing-page'
----
-
-This section is about data modeling in ClickHouse and contains the following topics:
-
-| Page | Description |
-|-----------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Schema Design](/guides/cloud-oss/data-modelling/schema-design) | Discusses ClickHouse schema design for optimal performance, considering factors like queries, data updates, latency, and volume. |
-| [Dictionary](/concepts/features/dictionaries) | An explainer on how to define and use dictionaries to improve query performance and enrich data. |
-| [Materialized Views](/concepts/features/materialized-views) | Information on Materialized Views and Refreshable Materialized Views in ClickHouse. |
-| [Projections](/concepts/features/projections/projections)| Information on Projections in ClickHouse.|
-| [Data Compression](/guides/cloud-oss/data-modelling/compression/compression-in-clickhouse) | Discusses various compression modes in ClickHouse and how to optimize data storage and query performance by choosing the right compression method for your specific data types and workloads. |
-| [Denormalizing Data](/guides/cloud-oss/data-modelling/denormalization) | Discusses the denormalization approach used in ClickHouse which aims to improve query performance by storing related data in a single table. |
diff --git a/guides/cloud-oss/examples/aggregate-function-combinators/maxSimpleState.mdx b/guides/cloud-oss/examples/aggregate-function-combinators/maxSimpleState.mdx
deleted file mode 100644
index 5ddfcdd6..00000000
--- a/guides/cloud-oss/examples/aggregate-function-combinators/maxSimpleState.mdx
+++ /dev/null
@@ -1,24 +0,0 @@
----
-slug: '/examples/aggregate-function-combinators/maxSimpleState'
-title: 'maxSimpleState'
-description: 'Example of using the maxSimpleState combinator'
-keywords: ['max', 'state', 'simple', 'combinator', 'examples', 'maxSimpleState']
-sidebarTitle: 'maxSimpleState'
-doc_type: 'reference'
----
-
-## Description {#description}
-
-The [`SimpleState`](/reference/functions/aggregate-functions/combinators#-simplestate) combinator can be applied to the [`max`](/reference/functions/aggregate-functions/reference/max)
-function to return the maximum value across all input values. It returns the
-result with type `SimpleAggregateState`.
-
-## Example usage {#example-usage}
-
-The example given in [`minSimpleState`](/guides/cloud-oss/examples/aggregate-function-combinators/minSimpleState#example-usage)
-demonstrates a usage of both `maxSimpleState` and `minSimpleState`.
-
-## See also {#see-also}
-- [`max`](/reference/functions/aggregate-functions/reference/max)
-- [`SimpleState combinator`](/reference/functions/aggregate-functions/combinators#-simplestate)
-- [`SimpleAggregateFunction type`](/reference/data-types/simpleaggregatefunction)
diff --git a/guides/cloud/index.mdx b/guides/cloud/index.mdx
deleted file mode 100644
index cc949387..00000000
--- a/guides/cloud/index.mdx
+++ /dev/null
@@ -1,24 +0,0 @@
----
-slug: /guides/cloud
-title: 'ClickHouse Cloud guides'
-description: 'Landing page for guides specific to ClickHouse Cloud'
-keywords: ['cloud', 'clickhouse cloud', 'guides', 'how-to', 'best practices']
-doc_type: 'landing-page'
----
-
-This section contains guides specific to ClickHouse Cloud:
-
-| Page | Description |
-|------|-------------|
-| [Cloud compatibility](/products/cloud/guides/cloud-compatibility) | Differences and compatibility considerations between ClickHouse Cloud and self-managed ClickHouse. |
-| [Production readiness](/products/cloud/guides/production-readiness) | Checklist for taking a ClickHouse Cloud service to production. |
-| [Multitenancy best practices](/products/cloud/guides/best-practices/multitenancy) | Patterns for serving multiple tenants from a single ClickHouse Cloud service. |
-| [Usage limits](/products/cloud/guides/best-practices/usagelimits) | Service-level usage limits and how to plan around them. |
-| [Upload a CSV file](/products/cloud/guides/migration/upload-a-csv-file) | Load data into ClickHouse Cloud from a local CSV file. |
-| [OSS to Cloud backup/restore](/products/cloud/guides/migration/oss-to-cloud-backup-restore) | Migrate from self-managed ClickHouse to ClickHouse Cloud using backup/restore. |
-| [SQL console connection details](/products/cloud/guides/sql-console/connection-details) | Connect to your ClickHouse Cloud service from the SQL console. |
-| [Query endpoints](/products/cloud/guides/sql-console/query-endpoints) | Expose saved queries as HTTP endpoints. |
-| [Review and restore backups](/products/cloud/guides/backups/review-and-restore-backups) | Review backup status and restore a service from a backup. |
-| [Configurable backups](/products/cloud/guides/backups/configurable-backups) | Configure backup frequency and retention. |
-| [Accessing S3 data securely](/products/cloud/guides/data-sources/accessing-s3-data-securely) | Use role-based access to read S3 data from ClickHouse Cloud. |
-| [Cloud endpoints API](/products/cloud/guides/data-sources/cloud-endpoints-api) | Programmatically manage Cloud endpoints. |
\ No newline at end of file
diff --git a/guides/data-modelling/deleting-data/index.mdx b/guides/data-modelling/deleting-data/index.mdx
deleted file mode 100644
index bdcde331..00000000
--- a/guides/data-modelling/deleting-data/index.mdx
+++ /dev/null
@@ -1,18 +0,0 @@
----
-slug: /managing-data/deleting-data/overview
-title: 'Deleting Data'
-description: 'How to delete data in ClickHouse Table Of Contents'
-keywords: ['delete', 'truncate', 'drop', 'lightweight delete']
-doc_type: 'guide'
----
-
-In this section of the documentation,
-we will explore how to delete data in ClickHouse.
-
-| Page | Description |
-|-------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------|
-| [Overview](/concepts/operations/delete/overview) | Provides an overview of the various ways to delete data in ClickHouse. |
-| [Lightweight deletes](/concepts/operations/delete/lightweight-delete) | Learn how to use the Lightweight Delete to delete data. |
-| [Delete mutations](/concepts/operations/delete/delete-mutations) |Learn about Delete Mutations. |
-| [Truncate table](/concepts/operations/delete/truncate) | Learn about how to use Truncate, which allows the data in a table or database to be removed, while preserving its existence. |
-| [Drop partitions](/concepts/operations/delete/drop-partition) | Learn about Dropping Partitions in ClickHouse. |
diff --git a/guides/data-warehousing/index.mdx b/guides/data-warehousing/index.mdx
deleted file mode 100644
index dff5b3d6..00000000
--- a/guides/data-warehousing/index.mdx
+++ /dev/null
@@ -1,62 +0,0 @@
----
-description: 'Use ClickHouse to query, accelerate, and analyze data in open table formats such as Apache Iceberg, Delta Lake, Apache Hudi, and Apache Paimon.'
-slug: /use-cases/data-lake
-title: 'Data Lake'
-keywords: ['data lake', 'lakehouse', 'iceberg', 'delta lake', 'hudi', 'paimon', 'glue', 'unity', 'rest', 'OneLake', 'BigLake']
-doc_type: 'landing-page'
----
-
-ClickHouse integrates with open table formats, including [Apache Iceberg](/reference/engines/table-engines/integrations/iceberg), [Delta Lake](/reference/engines/table-engines/integrations/deltalake), [Apache Hudi](/reference/engines/table-engines/integrations/hudi), and [Apache Paimon](/reference/functions/table-functions/paimon). This allows users to connect ClickHouse to data already stored in these formats across object storage, combining the analytical power of ClickHouse with their existing data lake infrastructure.
-
-## Why use ClickHouse with open table formats? {#why-clickhouse-uses-lake-formats}
-
-### Query existing data in place {#querying-data-in-place}
-
-ClickHouse can query open table formats directly in object storage without duplicating data. Organizations standardized on Iceberg, Delta Lake, Hudi, or Paimon can point ClickHouse at existing tables and immediately use its SQL dialect, analytical functions, and efficient native Parquet reader. At the same time, tools like [clickhouse-local](/concepts/features/tools-and-utilities/clickhouse-local) and [chDB](/products/chdb) enable exploratory, ad hoc analysis across more than 70 file formats in remote storage, allowing users to interactively explore data lake datasets with no infrastructure setup.
-
-Users can achieve this with either direct reading, using [table functions and table engines](/guides/data-warehousing/getting-started/querying-directly), or by [connecting to a data catalogue](/guides/data-warehousing/getting-started/connecting-catalogs).
-
-### Real-time analytical workloads with ClickHouse {#real-time-with-clickhouse}
-
-For workloads that demand high concurrency and low-latency responses, users can load data from open table formats into ClickHouse's [MergeTree](/reference/engines/table-engines/mergetree-family/mergetree) engine. This provides a real-time analytics layer on top of data that originates in a data lake, supporting dashboards, operational reporting, and other latency-sensitive workloads that benefit from MergeTree columnar storage and indexing capabilities.
-
-See the getting started guide for [accelerating analytics with MergeTree](/guides/data-warehousing/getting-started/accelerating-analytics).
-
-## Capabilities {#capabilities}
-
-### Read data directly {#read-data-directly}
-
-ClickHouse provides [table functions](/reference/functions/table-functions) and [engines](/reference/engines/table-engines/integrations) for reading open table formats directly on object storage. Functions such as [`iceberg()`](/reference/functions/table-functions/iceberg), [`deltaLake()`](/reference/functions/table-functions/deltalake), [`hudi()`](/reference/functions/table-functions/hudi), and [`paimon()`](/reference/functions/table-functions/paimon) allow users to query open table format tables from within a SQL statement without any prior configuration. Versions of these functions exist for most common object stores, such as S3, Azure Blob Storage, and GCS. These functions also have equivalent table engines which can be used to create tables within ClickHouse which reference underlying open table format object storage - thus making querying more convenient.
-
-See our getting started guide for [querying directly](/guides/data-warehousing/getting-started/querying-directly), or by [connecting to a data catalogue](/guides/data-warehousing/getting-started/connecting-catalogs).
-
-### Expose catalogs as databases {#expose-catalogs-as-databases}
-
-Using the [`DataLakeCatalog`](/reference/engines/database-engines/datalake) database engine, users can connect ClickHouse to an external catalog and expose it as a database. Tables registered in the catalog appear as tables within ClickHouse, enabling the full range of ClickHouse SQL syntax and analytical functions to be used transparently. This means users can query, join, and aggregate across catalog-managed tables as if they were native ClickHouse tables, benefiting from ClickHouse's query optimization, parallel execution, and reading capabilities.
-
-Supported catalogs include:
-
-| Catalog | Guide |
-|---------|-------|
-| AWS Glue | [Glue Catalog guide](/guides/data-warehousing/glue-catalog) |
-| BigLake Metastore | [BigLake Metastore guide](/guides/data-warehousing/biglake-catalog) |
-| Databricks Unity Catalog | [Unity Catalog guide](/guides/data-warehousing/unity-catalog) |
-| Iceberg REST Catalog | [REST Catalog guide](/guides/data-warehousing/rest-catalog) |
-| Lakekeeper | [Lakekeeper Catalog guide](/guides/data-warehousing/lakekeeper-catalog) |
-| Project Nessie | [Nessie Catalog guide](/guides/data-warehousing/nessie-catalog) |
-| Microsoft OneLake | [OneLake Catalog guide](/guides/data-warehousing/onelake-catalog) |
-
-See the getting started guide for [connecting to catalogs](/guides/data-warehousing/getting-started/connecting-catalogs).
-
-### Write back to open table formats {#write-back-to-lakehouse-formats}
-
-ClickHouse supports writing data back to open table formats, which is relevant in scenarios such as:
-
-- **Real-time to long-term storage** - Data transits through ClickHouse as a real-time analytics layer, and users need to offload results to Iceberg or other formats for durable, cost-effective long-term storage.
-- **Reverse ETL** - Users perform transformations inside ClickHouse using materialized views or scheduled queries and wish to persist the results into open table formats for consumption by other tools in the data ecosystem.
-
-See the getting started guide for [writing to data lakes](/guides/data-warehousing/getting-started/writing-data).
-
-## Next steps {#next-steps}
-
-Ready to try it out? The [Getting Started guide](/guides/data-warehousing/getting-started/overview) walks through querying open table formats directly, connecting to a catalog, loading data into MergeTree for fast analytics, and writing results back - all in a single end-to-end workflow.
diff --git a/guides/data-warehousing/reference/index.mdx b/guides/data-warehousing/reference/index.mdx
deleted file mode 100644
index ff98f62a..00000000
--- a/guides/data-warehousing/reference/index.mdx
+++ /dev/null
@@ -1,18 +0,0 @@
----
-description: 'Reference guides for connecting ClickHouse to data lake catalogs including AWS Glue, Unity, REST, Lakekeeper, Nessie, and OneLake.'
-slug: /use-cases/data-lake/reference
-title: 'Catalog guides'
-keywords: ['data lake', 'lakehouse', 'catalog', 'glue', 'unity', 'rest', 'lakekeeper', 'nessie', 'OneLake']
-doc_type: 'landing-page'
----
-
-ClickHouse integrates with a range of data lake catalogs through the [`DataLakeCatalog`](/reference/engines/database-engines/datalake) database engine. The following guides walk through connecting ClickHouse to each supported catalog, including configuration, authentication, and querying examples.
-
-| Catalog | Description |
-|---------|-------------|
-| [AWS Glue](/guides/data-warehousing/glue-catalog) | Query Iceberg tables registered in the AWS Glue Data Catalog from data stored in S3. |
-| [Databricks Unity Catalog](/guides/data-warehousing/unity-catalog) | Connect to Databricks Unity Catalog for Delta Lake and Iceberg tables. |
-| [Iceberg REST Catalog](/guides/data-warehousing/rest-catalog) | Use any catalog implementing the Iceberg REST specification, such as Tabular. |
-| [Lakekeeper](/guides/data-warehousing/lakekeeper-catalog) | Connect to the Lakekeeper Catalog for Iceberg tables. |
-| [Project Nessie](/guides/data-warehousing/nessie-catalog) | Query Iceberg tables using the Nessie Catalog with Git-like data version control. |
-| [Microsoft OneLake](/guides/data-warehousing/onelake-catalog) | Query Iceberg tables in Microsoft Fabric OneLake. |
diff --git a/guides/data-warehousing/support-matrix.mdx b/guides/data-warehousing/support-matrix.mdx
deleted file mode 100644
index a4515404..00000000
--- a/guides/data-warehousing/support-matrix.mdx
+++ /dev/null
@@ -1,175 +0,0 @@
----
-title: 'Support matrix'
-sidebarTitle: 'Support matrix'
-slug: /use-cases/data-lake/support-matrix
-description: 'Comprehensive support matrices for ClickHouse open table format integrations and data catalog connections.'
-keywords: ['data lake', 'lakehouse', 'support', 'iceberg', 'delta lake', 'hudi', 'paimon', 'catalog', 'features']
-doc_type: 'reference'
----
-
-This page provides comprehensive support matrices for ClickHouse's data lake integrations. It covers the features available for each open table format, the catalogs ClickHouse can connect to, and the capabilities supported by each catalog.
-
-## Open table format support {#format-support}
-
-ClickHouse integrates with four open table formats: [Apache Iceberg](/reference/engines/table-engines/integrations/iceberg), [Delta Lake](/reference/engines/table-engines/integrations/deltalake), [Apache Hudi](/reference/engines/table-engines/integrations/hudi), and [Apache Paimon](/reference/functions/table-functions/paimon). Select a format below to view its support matrix.
-
-**Legend:** ✅ Supported | ⚠️ Partial / Experimental | ❌ Not supported
-
-
-
-
-| Feature | Status | Notes |
-|---------|:-:|-------|
-| **Storage backends** | | |
-| AWS S3 | ✅ | Via [`icebergS3()`](/reference/functions/table-functions/iceberg) or `iceberg()` alias |
-| GCS | ✅ | Via [`icebergS3()`](/reference/functions/table-functions/iceberg) or `iceberg()` alias |
-| Azure Blob Storage | ✅ | Via [`icebergAzure()`](/reference/functions/table-functions/iceberg) |
-| HDFS | ⚠️ | Via [`icebergHDFS()`](/reference/functions/table-functions/iceberg). Deprecated. |
-| Local filesystem | ✅ | Via [`icebergLocal()`](/reference/functions/table-functions/iceberg) |
-| **Access methods** | | |
-| Table function | ✅ | [`icebergS3()`](/reference/functions/table-functions/iceberg) with variants per backend |
-| Table engine | ✅ | [`IcebergS3`](/reference/engines/table-engines/integrations/iceberg) with variants per backend |
-| Cluster-distributed reads | ✅ | [`icebergS3Cluster`](/reference/functions/table-functions/icebergCluster), [`icebergAzureCluster`](/reference/functions/table-functions/icebergCluster), [`icebergHDFSCluster`](/reference/functions/table-functions/icebergCluster) |
-| Named collections | ✅ | [Defining a named collection](/reference/functions/table-functions/iceberg#defining-a-named-collection) |
-| | | |
-| **Read features** | | |
-| Read support | ✅ | Full SELECT support with all ClickHouse SQL functions |
-| Partition pruning | ✅ | See [Partition pruning](/reference/engines/table-engines/integrations/iceberg#partition-pruning). |
-| Hidden partitioning | ✅ | Iceberg transform-based partitioning supported |
-| Partition evolution | ✅ | Reading tables with changing partition specs over time supported |
-| Schema evolution | ✅ | Column addition, removal, and reordering. See [Schema evolution](/reference/engines/table-engines/integrations/iceberg#schema-evolution). |
-| Type promotion / widening | ✅ | `int` → `long`, `float` → `double`, `decimal(P,S)` → `decimal(P',S)` where P' > P. See [Schema evolution](/reference/engines/table-engines/integrations/iceberg#schema-evolution). |
-| Time travel / snapshots | ✅ | Via `iceberg_timestamp_ms` or `iceberg_snapshot_id` settings. See [Time travel](/reference/engines/table-engines/integrations/iceberg#time-travel). |
-| Position deletes | ✅ | See [Processing deleted rows](/reference/engines/table-engines/integrations/iceberg#deleted-rows). |
-| Equality deletes | ✅ | Table engine only, from v25.8+. See [Processing deleted rows](/reference/engines/table-engines/integrations/iceberg#deleted-rows). |
-| Merge-on-read | ⚠️ | Experimental. Supported for [delete operations](/reference/functions/table-functions/iceberg#iceberg-writes-delete). |
-| Format versions | ⚠️ | v1 and v2 supported. V3 not supported. |
-| Column statistics | ✅ | |
-| Bloom filters / puffin files | ❌ | Bloom filter indexes in puffin files not supported |
-| Virtual columns | ✅ | `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/reference/functions/table-functions/iceberg#virtual-columns). |
-| | | |
-| **Write features** | | |
-| Table creation | ✅ | Experimental. Requires `allow_insert_into_iceberg = 1`. From v25.7+. See [Creating a table](/reference/functions/table-functions/iceberg#create-iceberg-table). |
-| INSERT | ✅ | Beta from 26.2. Requires `allow_insert_into_iceberg = 1`. See [Inserting data](/reference/functions/table-functions/iceberg#writes-inserts). |
-| DELETE | ✅ | Experimental. Requires `allow_insert_into_iceberg = 1`. Via `ALTER TABLE ... DELETE WHERE`. See [Deleting data](/reference/functions/table-functions/iceberg#iceberg-writes-delete). |
-| ALTER TABLE (schema changes) | ✅ | Experimental. Requires `allow_insert_into_iceberg = 1`. Add, drop, modify, rename columns. See [Schema evolution](/reference/functions/table-functions/iceberg#iceberg-writes-schema-evolution). |
-| Compaction | ⚠️ | Experimental. Requires `allow_experimental_iceberg_compaction = 1`. Merges position delete files into data files. See [Compaction](/reference/functions/table-functions/iceberg#iceberg-writes-compaction). Other Iceberg compaction operations not supported. |
-| UPDATE / MERGE | ❌ | Not supported. See Compaction. |
-| Copy-on-write | ❌ | Not supported |
-| Expire snapshots | ❌ | Not supported |
-| Remove orphan files | ❌ | Not supported |
-| Writing partitions | ✅ | Supported. |
-| Altering partitions | ❌ | The changing of the partitioning scheme from ClickHouse is not supported. ClickHouse can write to iceberg tables which have an evolved partitioning. |
-| | | |
-| **Metadata** | | |
-| Branching and tagging | ❌ | Iceberg branch/tag references not supported |
-| Metadata file resolution | ✅ | Support for metadata resolution through catalogs, simple directory listing, using 'version-hint' and specific path. Configurable via `iceberg_metadata_file_path` and `iceberg_metadata_table_uuid`. See [Metadata file resolution](/reference/engines/table-engines/integrations/iceberg#metadata-file-resolution). |
-| Data caching | ✅ | Same mechanism as S3/Azure/HDFS storage engines. See [Data cache](/reference/engines/table-engines/integrations/iceberg#data-cache). |
-| Metadata caching | ✅ | Manifest and metadata files cached in memory. Enabled by default via `use_iceberg_metadata_files_cache`. See [Metadata cache](/reference/engines/table-engines/integrations/iceberg#metadata-cache). |
-
-
-
-
-From version 25.6, ClickHouse reads Delta Lake tables using the Delta Lake Rust kernel, providing broader feature support; however, known issues occur when accessing data in Azure Blob Storage. For this reason the Kernel is disabled when reading data on Azure Blob Storage. We indicate below which features require this kernel.
-
-| Feature | Status | Notes |
-|---------|:-:|-------|
-| **Storage backends** | | |
-| AWS S3 | ✅ | Via [`deltaLake()`](/reference/functions/table-functions/deltalake) or `deltaLakeS3()` |
-| GCS | ✅ | Via [`deltaLake()`](/reference/functions/table-functions/deltalake) or `deltaLakeS3()` |
-| Azure Blob Storage | ✅ | Via [`deltaLakeAzure()`](/reference/functions/table-functions/deltalake) |
-| HDFS | ❌ | Not supported |
-| Local filesystem | ✅ | Via [`deltaLakeLocal()`](/reference/functions/table-functions/deltalake) |
-| **Access methods** | | |
-| Table function | ✅ | [`deltaLake()`](/reference/functions/table-functions/deltalake) with variants per backend |
-| Table engine | ✅ | [`DeltaLake`](/reference/engines/table-engines/integrations/deltalake) |
-| Cluster-distributed reads | ✅ | [`deltaLakeCluster`](/reference/functions/table-functions/deltalakeCluster), [`deltaLakeAzureCluster`](/reference/functions/table-functions/deltalakeCluster) |
-| Named collections | ✅ | [Named collection](/reference/functions/table-functions/deltalake#arguments) |
-| **Read features** | | |
-| Read support | ✅ | Full SELECT support with all ClickHouse SQL functions |
-| Partition pruning | ✅ | Requires Delta Kernel. |
-| Schema evolution | ✅ | Requires Delta Kernel. |
-| Time travel | ✅ | Requires Delta Kernel. |
-| Deletion vectors | ✅ | |
-| Column mapping | ✅ | |
-| Change data feed | ✅ | Requires Delta Kernel. |
-| Virtual columns | ✅ | `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/reference/functions/table-functions/deltalake#virtual-columns). |
-| **Write features** | | |
-| INSERT | ✅ | Experimental. Requires `allow_experimental_delta_lake_writes = 1`. See [DeltaLake engine](/reference/engines/table-engines/integrations/deltalake). Requires Delta Kernel. |
-| DELETE / UPDATE / MERGE | ❌ | Not supported |
-| CREATE empty table | ❌ | Creation of a new empty Delta Lake table is not supported. `CREATE TABLE` operation assumes existence of existing Delta Lake on object storage. |
-| **Caching** | | |
-| Data caching | ✅ | Same mechanism as S3/Azure/HDFS storage engines. See [Data cache](/reference/engines/table-engines/integrations/deltalake#data-cache). |
-
-
-
-
-| Feature | Status | Notes |
-|---------|:-:|-------|
-| **Storage backends** | | |
-| AWS S3 | ✅ | Via [`hudi()`](/reference/functions/table-functions/hudi) |
-| GCS | ✅ | Via [`hudi()`](/reference/functions/table-functions/hudi) |
-| Azure Blob Storage | ❌ | Not supported |
-| HDFS | ❌ | Not supported |
-| Local filesystem | ❌ | Not supported |
-| **Access methods** | | |
-| Table function | ✅ | [`hudi()`](/reference/functions/table-functions/hudi) |
-| Table engine | ✅ | [`Hudi`](/reference/engines/table-engines/integrations/hudi) |
-| Cluster-distributed reads | ✅ | [`hudiCluster`](/reference/functions/table-functions/hudiCluster) (S3 only) |
-| Named collections | ✅ | [Hudi arguments](/reference/functions/table-functions/hudi#arguments) |
-| **Read features** | | |
-| Read support | ✅ | Full SELECT support with all ClickHouse SQL functions |
-| Schema evolution | ❌ | Not supported |
-| Time travel | ❌ | Not supported |
-| Virtual columns | ✅ | `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/reference/functions/table-functions/hudi#virtual-columns). |
-| **Write features** | | |
-| INSERT / DELETE / UPDATE | ❌ | Read-only integration |
-| **Caching** | | |
-| Data caching | ❌ | Not supported |
-
-
-
-
-| Feature | Status | Notes |
-|---------|:-:|-------|
-| **Storage backends** | | |
-| S3 | ✅ | Experimental. Via [`paimon()`](/reference/functions/table-functions/paimon) or `paimonS3()` |
-| GCS | ✅ | Experimental. Via [`paimon()`](/reference/functions/table-functions/paimon) or `paimonS3()` |
-| Azure Blob Storage | ✅ | Experimental. Via [`paimonAzure()`](/reference/functions/table-functions/paimon) |
-| HDFS | ⚠️ | Experimental. Via [`paimonHDFS()`](/reference/functions/table-functions/paimon). Deprecated. |
-| Local filesystem | ✅ | Experimental. Via [`paimonLocal()`](/reference/functions/table-functions/paimon) |
-| **Access methods** | | |
-| Table function | ✅ | Experimental. [`paimon()`](/reference/functions/table-functions/paimon) with variants per backend |
-| Table engine | ❌ | No dedicated table engine |
-| Cluster-distributed reads | ✅ | Experimental. [`paimonS3Cluster`](/reference/functions/table-functions/paimonCluster), [`paimonAzureCluster`](/reference/functions/table-functions/paimonCluster), [`paimonHDFSCluster`](/reference/functions/table-functions/paimonCluster) |
-| Named collections | ✅ | Experimental. [Defining a named collection](/reference/functions/table-functions/paimon#defining-a-named-collection) |
-| **Read features** | | |
-| Read support | ✅ | Experimental. Full SELECT support with all ClickHouse SQL functions |
-| Schema evolution | ❌ | Not supported |
-| Time travel | ❌ | Not supported |
-| Virtual columns | ✅ | Experimental. `_path`, `_file`, `_size`, `_time`, `_etag`. See [Virtual columns](/reference/functions/table-functions/paimon#virtual-columns). |
-| **Write features** | | |
-| INSERT / DELETE / UPDATE | ❌ | Read-only integration |
-| **Caching** | | |
-| Data caching | ❌ | Not supported |
-
-
-
-
-## Catalog support {#catalog-support}
-
-ClickHouse can connect to external data catalogs using the [`DataLakeCatalog`](/reference/engines/database-engines/datalake) database engine, which exposes the catalog as a ClickHouse database. Tables registered in the catalog appear automatically and can be queried with standard SQL.
-
-The following catalogs are currently supported. Refer to each catalog's reference guide for full setup instructions.
-
-| Catalog | Formats | Read | Create table | INSERT | Reference guide |
-|---------|---------|:-:|:-:|:-:|---------|
-| [AWS Glue Catalog](/guides/data-warehousing/glue-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [Glue catalog guide](/guides/data-warehousing/glue-catalog) |
-| [BigLake Metastore](/guides/data-warehousing/biglake-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [BigLake Metastore guide](/guides/data-warehousing/biglake-catalog) |
-| [Databricks Unity Catalog](/guides/data-warehousing/unity-catalog) | Delta, Iceberg | ✅ Beta | ❌ | ❌ | [Unity Catalog guide](/guides/data-warehousing/unity-catalog) |
-| [Iceberg REST](/guides/data-warehousing/rest-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [REST catalog guide](/guides/data-warehousing/rest-catalog) |
-| [Lakekeeper](/guides/data-warehousing/lakekeeper-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [Lakekeeper catalog guide](/guides/data-warehousing/lakekeeper-catalog) |
-| [Project Nessie](/guides/data-warehousing/nessie-catalog) | Iceberg | ✅ Experimental | ❌ | ❌ | [Nessie catalog guide](/guides/data-warehousing/nessie-catalog) |
-| [Microsoft OneLake](/guides/data-warehousing/onelake-catalog) | Iceberg | ✅ Beta | ❌ | ❌ | [OneLake catalog guide](/guides/data-warehousing/onelake-catalog) |
-
-All catalog integrations currently require an experimental or beta setting to be enabled and expose **read-only** access — tables can be queried but not created or written to through the catalog connection. To load data from a catalog into ClickHouse for faster analytics, use `INSERT INTO SELECT` as described in the [accelerating analytics guide](/guides/data-warehousing/getting-started/accelerating-analytics). To write data back to open table formats, create standalone Iceberg tables as described in the [writing data guide](/guides/data-warehousing/getting-started/writing-data).
diff --git a/guides/observability/build-your-own/index.mdx b/guides/observability/build-your-own/index.mdx
deleted file mode 100644
index eced9cff..00000000
--- a/guides/observability/build-your-own/index.mdx
+++ /dev/null
@@ -1,18 +0,0 @@
----
-slug: /use-cases/observability/build-your-own
-title: 'Build your own observability stack'
-description: 'Landing page building your own observability stack'
-doc_type: 'landing-page'
-keywords: ['observability', 'custom stack', 'build your own', 'logs', 'traces', 'metrics', 'OpenTelemetry']
----
-
-This guide helps you build a custom observability stack using ClickHouse as the foundation. Learn how to design, implement, and optimize your observability solution for logs, metrics, and traces, with practical examples and best practices.
-
-| Page | Description |
-|-------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| [Introduction](/guides/observability/build-your-own/introduction) | This guide is designed for if you're looking to build your own observability solution using ClickHouse, focusing on logs and traces. |
-| [Schema design](/guides/observability/build-your-own/schema-design) | Learn why users are recommended to create their own schema for logs and traces, along with some best practices for doing so. |
-| [Managing data](/guides/observability/build-your-own/managing-data) | Deployments of ClickHouse for observability invariably involve large datasets, which need to be managed. ClickHouse offers features to assist with data management. |
-| [Integrating OpenTelemetry](/guides/observability/build-your-own/integrating-opentelemetry) | Collecting and exporting logs and traces using OpenTelemetry with ClickHouse. |
-| [Using Visualization Tools](/guides/observability/build-your-own/grafana) | Learn how to use observability visualization tools for ClickHouse, including HyperDX and Grafana. |
-| [Demo Application](/guides/observability/build-your-own/demo-application) | Explore the OpenTelemetry demo application forked to work with ClickHouse for logs and traces. |
diff --git a/guides/performance-and-monitoring/index.mdx b/guides/performance-and-monitoring/index.mdx
deleted file mode 100644
index 9498b8b4..00000000
--- a/guides/performance-and-monitoring/index.mdx
+++ /dev/null
@@ -1,16 +0,0 @@
----
-slug: /operations/overview
-sidebarTitle: 'Performance and optimizations overview'
-description: 'Overview page of Performance and Optimizations'
-title: 'Performance and Optimizations'
-keywords: ['performance optimization', 'best practices', 'optimization guide', 'ClickHouse performance', 'database optimization']
-doc_type: 'reference'
----
-
-import TableOfContents from '/snippets/_performance_optimizations_table_of_contents.mdx';
-
-This section contains tips and best practices for improving performance with ClickHouse.
-We recommend users read [Core Concepts](/concepts/core-concepts/parts) as a precursor to this section,
-which covers the main concepts required to improve performance.
-
-
diff --git a/guides/security/index.mdx b/guides/security/index.mdx
deleted file mode 100644
index 086dbcbf..00000000
--- a/guides/security/index.mdx
+++ /dev/null
@@ -1,12 +0,0 @@
----
-slug: /security-and-authentication
-title: 'Security and authentication'
-description: 'Landing page for Security and authentication'
-doc_type: 'landing-page'
-keywords: ['security and authentication', 'access control', 'RBAC', 'user management', 'SRE guide']
----
-
-| Page | Description |
-|------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|
-| [Users and Roles](/concepts/features/security/access-rights) | Learn more about how ClickHouse supports access control management based on RBAC approach. |
-| [External Authenticators](/concepts/features/security/external-authenticators) | Learn more about how OSS ClickHouse supports authenticating and managing users using external services. |
diff --git a/i18n/ja/index.mdx b/i18n/ja/index.mdx
index 081b0ebb..efe1c2ed 100644
--- a/i18n/ja/index.mdx
+++ b/i18n/ja/index.mdx
@@ -218,12 +218,12 @@ export const ContentSwitcher = () => {
}
links={[
- { label: "What is ClickHouse?", href: "/get-started/about/intro" },
- { label: "Setup/Install", href: "/get-started/install/quick-start-cloud" },
- { label: "Explore quickstarts", href: "/get-started/quickstarts/home" },
- { label: "Migration guides", href: "/get-started/migration-guides/01_overview" },
- { label: "Core concepts & best practices", href: "/concepts/best-practices/index" },
- { label: "Sample datasets", href: "/get-started/sample-datasets/github" }
+ { label: "What is ClickHouse?", href: "/core/get-started/about/intro" },
+ { label: "Setup/Install", href: "/core/get-started/install/quick-start-cloud" },
+ { label: "Explore quickstarts", href: "/core/get-started/quickstarts/home" },
+ { label: "Migration guides", href: "/core/get-started/migration-guides/01_overview" },
+ { label: "Core concepts & best practices", href: "/core/concepts/best-practices/index" },
+ { label: "Sample datasets", href: "/core/get-started/sample-datasets/github" }
]}
/>
{
}
links={[
- { label: "Data modelling topics", href: "/guides/data_modelling/schema-design" },
- { label: "Performance & query optimization guides", href: "/guides/performance_and_monitoring/query-optimization" },
- { label: "ClickHouse Cloud topics", href: "/guides/cloud/cloud-compatibility" },
- { label: "Self-managed topics", href: "/guides/oss/deployment_and_scaling/terminology" },
- { label: "Use-case guides", href: "/guides/use_case_guides/time-series/time-series-filling-gaps" },
+ { label: "Data modelling topics", href: "/core/guides/data_modelling/schema-design" },
+ { label: "Performance & query optimization guides", href: "/core/guides/performance_and_monitoring/query-optimization" },
+ { label: "ClickHouse Cloud topics", href: "/core/guides/cloud/cloud-compatibility" },
+ { label: "Self-managed topics", href: "/core/guides/oss/deployment_and_scaling/terminology" },
+ { label: "Use-case guides", href: "/core/guides/use_case_guides/time-series/time-series-filling-gaps" },
]}
/>
{
}
links={[
- { label: "SQL reference", href: "/reference/statements" },
- { label: "Session settings", href: "/reference/settings/session-settings" },
- { label: "Server settings", href: "/reference/settings/server-settings/settings" },
- { label: "Functions", href: "/reference/functions/regular-functions/overview" },
- { label: "Engines", href: "/reference/engines/engines" },
- { label: "System tables", href: "/reference/system-tables" },
- { label: "Formats", href: "/reference/formats/Arrow/Arrow" },
- { label: "Data types", href: "/reference/data-types/int-uint" }
+ { label: "SQL reference", href: "/core/reference/statements" },
+ { label: "Session settings", href: "/core/reference/settings/session-settings" },
+ { label: "Server settings", href: "/core/reference/settings/server-settings/settings" },
+ { label: "Functions", href: "/core/reference/functions/regular-functions/overview" },
+ { label: "Engines", href: "/core/reference/engines/engines" },
+ { label: "System tables", href: "/core/reference/system-tables" },
+ { label: "Formats", href: "/core/reference/formats/Arrow/Arrow" },
+ { label: "Data types", href: "/core/reference/data-types/int-uint" }
]}
/>
@@ -278,7 +278,7 @@ export const ContentSwitcher = () => {
darkFilename="use-cases/rt-analytics.png"
title="Real-time analytics"
description="Deliver instant insights and dashboards at scale. Analyze billions of rows in real time with millisecond results."
- href="/get-started/use_cases/real-time-analytics"
+ href="/core/get-started/use_cases/real-time-analytics"
/>
{
darkFilename="use-cases/data-warehousing.png"
title="Data warehousing"
description="Analyze and explore data instantly for insights and apps. Scale faster by offloading heavy workloads."
- href="/get-started/use_cases/data_warehousing"
+ href="/core/get-started/use_cases/data_warehousing"
/>
>
@@ -397,7 +397,7 @@ export const ContentSwitcher = () => {